Bug 1711536

Summary: polkit-0.112-22.el7 breaks restarting services from background process
Product: Red Hat Enterprise Linux 7 Reporter: Jan Stancek <jstancek>
Component: polkitAssignee: Polkit Maintainers <polkit-devel>
Status: CLOSED DUPLICATE QA Contact: Frantisek Sumsal <fsumsal>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.7CC: jrybar, liwan, mmatsuya, rasibley
Target Milestone: betaKeywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-09-19 09:27:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jan Stancek 2019-05-18 12:54:27 UTC
Description of problem:
Restarting rsyslog from background process hangs:

# sh -c "systemctl restart rsyslog" &
[1] 2346
[1]+  Stopped                 sh -c "systemctl restart rsyslog"

 2034 pts/0    Ss     0:00  |   \_ -bash
 2346 pts/0    T      0:00  |       \_ systemctl restart rsyslog
 2348 pts/0    Tl     0:00  |       |   \_ /usr/bin/pkttyagent --notify-fd 5 --fallback

# cat /proc/10753/stack
[<c00000002acb3320>] 0xc00000002acb3320
[<c00000000001da34>] __switch_to+0x264/0x470
[<c00000000011bc3c>] do_signal_stop+0x12c/0x3d0
[<c00000000011e3c0>] get_signal_to_deliver+0x2f0/0x9d0
[<c00000000001f9f4>] do_signal+0x64/0x330
[<c00000000001fe40>] do_notify_resume+0xb0/0x120
[<c00000000000cd30>] ret_from_except_lite+0x5c/0x60

# strace -f -t  -p 2348
strace: Process 2348 attached with 4 threads
[pid  2351] 08:52:00 --- stopped by SIGTTOU ---
[pid  2350] 08:52:00 --- stopped by SIGTTOU ---
[pid  2349] 08:52:00 --- stopped by SIGTTOU ---
[pid  2348] 08:52:00 --- stopped by SIGTTOU ---

(gdb) bt
#0  0x00003fff7c2f82dc in __GI_tcsetattr (fd=<optimized out>, optional_actions=<optimized out>, termios_p=0x105a60020 <ts>)
    at ../sysdeps/unix/sysv/linux/tcsetattr.c:80
#1  0x0000000105a42738 in tty_handler (signal=<optimized out>) at pkttyagent.c:58
#2  <signal handler called>
#3  0x00003fff7c2f7038 in poll () at ../sysdeps/unix/syscall-template.S:81
#4  0x00003fff7c48bf78 in poll (__timeout=<optimized out>, __nfds=<error reading variable: value has been optimized out>,
    __fds=<optimized out>) at /usr/include/bits/poll2.h:46
#5  g_poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at gpoll.c:124
#6  0x00003fff7c47648c in g_main_context_poll (priority=2147483647, n_fds=<optimized out>, fds=0x1002ba9d740,
    timeout=<optimized out>, context=0x1002ba87ef0) at gmain.c:4202
#7  g_main_context_iterate (context=0x1002ba87ef0, block=1, dispatch=1, self=<optimized out>) at gmain.c:3896
#8  0x00003fff7c476ab0 in g_main_loop_run (loop=0x1002ba97c00) at gmain.c:4097
#9  0x0000000105a42160 in main (argc=1, argv=0x3ffffd706b18) at pkttyagent.c:262
(gdb) f 9
#9  0x0000000105a42160 in main (argc=1, argv=0x3ffffd706b18) at pkttyagent.c:262
262       g_main_loop_run (loop);
(gdb) p ts
$1 = {c_iflag = 16896, c_oflag = 3, c_cflag = 2831, c_lflag = 1223, c_line = 0 '\000',
  c_cc = "\003\034\177\025\004\001\000\000\000\000\027\022\032\021\023\000\017", '\000' <repeats 14 times>, c_ispeed = 38400,
  c_ospeed = 38400}
(gdb) p/x ts.c_lflag
$2 = 0x4c7

Version-Release number of selected component (if applicable):
polkit-0.112-22.el7
kernel-3.10.0-1047.el7
compose: RHEL-7.7-20190403.0

How reproducible:
high on ppc64le

Steps to Reproduce:
see description

Actual results:
service restart hangs

Expected results:
service restrat can complete

Additional info:

Comment 4 Jan Rybar 2019-09-19 09:27:10 UTC
Yes, definitely a dup of 1724444.
Thanks Masahiro.
Closing.

*** This bug has been marked as a duplicate of bug 1724444 ***