! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
crash in xfsm_manager_get_shutdown_type
Status:
RESOLVED: MOVED
Product:
Xfce4-session
Component:
General

Comments

Description olaf 2019-05-16 13:22:18 CEST
xfce4-session-20190509T183109.1c49c2cd 
Unclear what I did. I think it was an accidental "switch user" instead of "lock screen", the icons are just too close together. From the timestamps it was apparently the relogin or whatever happens if one comes back from sddm.

Core was generated by `xfce4-session'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  xfsm_manager_get_shutdown_type (manager=0x0) at xfsm-manager.c:1942
1942      return manager->shutdown_type;
[Current thread is 1 (Thread 0x7f86e6791a80 (LWP 27467))]
(gdb) bt
#0  xfsm_manager_get_shutdown_type (manager=0x0) at xfsm-manager.c:1942
#1  name_lost (connection=<optimized out>, name=<optimized out>, user_data=0x0) at main.c:228
#2  do_call (client=0x5644d61d5c40, call_type=CALL_TYPE_NAME_LOST) at gdbusnameowning.c:215
#3  request_name_cb (source_object=<optimized out>, res=<optimized out>, user_data=0x5644d61d5c40) at gdbusnameowning.c:341
#4  g_task_return_now (task=0x5644d6130200 [GTask]) at gtask.c:1145
#5  g_task_return (task=0x5644d6130200 [GTask], type=<optimized out>) at gtask.c:1203
#6  g_dbus_connection_call_done (source=<optimized out>, result=0x5644d6130130, user_data=0x5644d6130200) at gdbusconnection.c:5722
#7  g_task_return_now (task=0x5644d6130130 [GTask]) at gtask.c:1145
#8  complete_in_idle_cb (task=task@entry=0x5644d6130130) at gtask.c:1159
#9  g_idle_dispatch (source=0x7f86c800fbb0, callback=0x7f86e38be210 <complete_in_idle_cb>, user_data=0x5644d6130130) at gmain.c:5486
#10  g_main_dispatch (context=0x5644d60f35e0) at gmain.c:3142
#11  g_main_context_dispatch (context=context@entry=0x5644d60f35e0) at gmain.c:3795
#12  g_main_context_iterate (context=0x5644d60f35e0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3868
#13  g_main_loop_run (loop=0x5644d621f750) at gmain.c:4064
#14  gtk_main () at gtkmain.c:1323
#15  main (argc=<optimized out>, argv=<optimized out>) at main.c:363

so for some reason user_data==NULL is not handled. Not sure if that is supposed to happen, and the bug is elsewhere.
Comment 1 Simon Steinbeiss editbugs 2019-05-18 22:37:54 CEST
Can you reproduce this bug consistently? I've never encountered it, but wouldn't mind trying to fix it...
Comment 2 Simon Steinbeiss editbugs 2019-05-18 22:47:27 CEST
Created attachment 8536 
Just a small sanity check

If you can reproduce consistently, please check the attached patch. It may resolve the segfault, not sure what it will mean for unsuccessful shutdown/restart/logout attempts.
Comment 3 olaf 2019-05-24 09:32:19 CEST
I think I used the "change user" entry a few times by accident without issues.
I will see if it happens again with current snapshots.
Comment 4 Olivier Fourdan editbugs 2019-05-24 09:43:23 CEST
(In reply to Simon Steinbeiss from comment #2)
> Created attachment 8536 
> Just a small sanity check

Please note that such pre-condition assertion should not be used to fix the bug, merely to trace it.

From the backtrace in comment 0, it's clear that "user_data=0x0" so is "manager=0x0" and the pre-condition will trigger.

But some distribution build their packages with the pre-conditions and assertions disabled, so this is not a /real/ fix.
Comment 5 Simon Steinbeiss editbugs 2019-05-24 10:35:14 CEST
@olivier: I agree. But as long as I have no idea where the bug comes from I felt tracing it would help (also would need that to debug locally).
Comment 6 olaf 2020-05-03 12:46:31 CEST
Today I accidently selected "change user" instead of "lock screen", same crash.

Unrelated to this crash, the "change user" must not be in the default menu. It is available behind the "Logout ..." window. 

And looking at it, the "Suspend" entry must not be there as well, it is also available behind the "Logout .." window.

It is much to easy to select the wrong entry while trying to click on "Lock screen".
Comment 7 Theo Linkspfeifer editbugs 2020-05-10 13:18:28 CEST
*** Bug 16657 has been marked as a duplicate of this bug. ***
Comment 8 Git Bot editbugs 2020-05-26 00:50:14 CEST
-- GitLab Migration Automatic Message --

This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/xfce/xfce4-session/-/issues/54.

Please create an account or use an existing account on one of our supported OAuth providers. 

If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests

Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev

Bug #15404

Reported by:
olaf
Reported on: 2019-05-16
Last modified on: 2020-05-26
Duplicates (1):
  • 16657 SIGSEGV in `xfsm_manager_get_shutdown_type()`

People

Assignee:
Xfce Bug Triage
CC List:
3 users

Version

Version:
Unspecified

Attachments

Just a small sanity check (651 bytes, patch)
2019-05-18 22:47 CEST , Simon Steinbeiss
no flags

Additional information