Bug 787424

Summary: systemd-loginctl kill user core dump
Product: [openSUSE] openSUSE 12.2 Reporter: Andrei Borzenkov <arvidjaar>
Component: BasesystemAssignee: Frederic Crozat <fcrozat>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Final   
Target Milestone: ---   
Hardware: Other   
OS: openSUSE 12.2   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Andrei Borzenkov 2012-10-30 17:23:44 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0

zypper ps:
The following running processes use deleted files:

PID | PPID | UID | Login | Command      | Service | Files                     
----+------+-----+-------+--------------+---------+---------------------------
899 | 1    | 110 | gdm   | null-sink    |         | /usr/lib64/libxcb.so.1.1.0
910 | 899  | 110 | gdm   | gconf-helper |         | /usr/lib64/libxcb.so.1.1.0

systemd-cgls:

├ user
│ ├ root
│ │ ├ 262
│ │ │ ├ 1824 login -- root
│ │ │ ├ 1837 -bash
│ │ │ └ 1975 systemd-cgls
│ │ ├ 258
│ │ └ 255
│ │   ├ 744 login -- root
│ │   └ 937 -bash
│ ├ bor
│ │ └ 2
│ └ gdm
│   └ 254
│     ├ 899 /usr/bin/pulseaudio --start --log-target=syslog
│     └ 910 /usr/lib/pulse/gconf-helper


I tried to use systemd-loginctl kill-user gdm. It did not kill the above processes, but removed gdm from list of users:

systemd-loginctl list-users:

       501 bor             
         0 root            

Now systemd-loginctl kill-user gdm crashes. Unfortunately, libdbus-debuginfo does not match libdbus, so stack trace is incomplete

bor@opensuse:~> rpm -q libdbus-1-3
libdbus-1-3-1.5.12-4.6.1.x86_64
bor@opensuse:~> rpm -q libdbus-1-3-debuginfo
libdbus-1-3-debuginfo-1.5.12-4.1.2.x86_64

opensuse:~ # gdb /bin/systemd-loginctl core
GNU gdb (GDB) SUSE (7.4.50.20120603-2.1.2)
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-suse-linux".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /bin/systemd-loginctl...Reading symbols from /usr/lib/debug/bin/systemd-loginctl.debug...done.
done.

warning: core file may not match specified executable file.
[New LWP 1777]

warning: the debug information found in "/usr/lib/debug//lib64/libdbus-1.so.3.7.0.debug" does not match "/lib64/libdbus-1.so.3" (CRC mismatch).


warning: the debug information found in "/usr/lib/debug/lib64/libdbus-1.so.3.7.0.debug" does not match "/lib64/libdbus-1.so.3" (CRC mismatch).

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `systemd-loginctl kill-user gdm'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f52b00be1d0 in ?? () from /lib64/libdbus-1.so.3
Missing separate debuginfos, use: zypper install glibc-debuginfo-2.15-22.6.4.x86_64 libcap2-debuginfo-2.22-5.1.2.x86_64 libdbus-1-3-debuginfo-1.5.12-4.6.1.x86_64 libselinux1-debuginfo-2.0.91-19.1.15.x86_64 libudev0-debuginfo-182-4.21.1.x86_64
(gdb) bt
#0  0x00007f52b00be1d0 in ?? () from /lib64/libdbus-1.so.3
#1  0x00007f52b00ab801 in ?? () from /lib64/libdbus-1.so.3
#2  0x00007f52b00af45c in dbus_message_iter_append_basic ()
   from /lib64/libdbus-1.so.3
#3  0x00007f52b00afcbb in dbus_message_append_args_valist ()
   from /lib64/libdbus-1.so.3
#4  0x00007f52b00b000c in dbus_message_append_args ()
   from /lib64/libdbus-1.so.3
#5  0x0000000000406347 in kill_user (bus=0x152bbd0, args=<optimized out>, 
    n=<optimized out>) at src/login/loginctl.c:1449
#6  0x0000000000404c70 in loginctl_main (error=0x7fff5b1d5df0, 
    argv=0x7fff5b1d5f28, argc=<optimized out>, bus=0x152bbd0)
    at src/login/loginctl.c:1878
#7  main (argc=<optimized out>, argv=0x7fff5b1d5f28)
    at src/login/loginctl.c:1908
(gdb) quit


Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Comment 1 Frederic Crozat 2012-11-26 14:12:14 UTC
should be fixed in my branch :

http://download.opensuse.org/repositories/home:/fcrozat:/branches:/openSUSE:/12.2:/Update/openSUSE_12.2_Update/

please test
Comment 2 Frederic Crozat 2013-01-04 10:49:09 UTC
requesting maintenance update (mr #146970)
Comment 3 Bernhard Wiedemann 2013-01-04 11:00:23 UTC
This is an autogenerated message for OBS integration:
This bug (787424) was mentioned in
https://build.opensuse.org/request/show/146970 Maintenance /
Comment 4 Benjamin Brunner 2013-01-04 11:48:18 UTC
Thanks for the submission. I accepted it and started an update, see openSUSE:Maintenance:1198.
Comment 5 Benjamin Brunner 2013-01-09 16:16:36 UTC
Update released for openSUSE 12.2. Resolved fixed. Thanks for you effort.