Bug 1342673 - plymouth segfaults during boot
Summary: plymouth segfaults during boot
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: plymouth
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Ray Strode [halfline]
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1342282 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-06-03 20:32 UTC by Zbigniew Jędrzejewski-Szmek
Modified: 2016-06-08 18:08 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2016-06-07 13:42:27 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
core file (580.00 KB, application/x-core)
2016-06-03 20:34 UTC, Zbigniew Jędrzejewski-Szmek
no flags Details

Description Zbigniew Jędrzejewski-Szmek 2016-06-03 20:32:56 UTC
Description of problem:
With recent kernel versions (4.6 was good, 4.7.0-0.rc0.git3.1.fc25.x86_64 is bad, 4.7.0-0.rc0.git4.1.fc25.x86_64 is bad), plymouth crashes during boot.

Version-Release number of selected component (if applicable):
plymouth-0.9.3-0.1.20160524.fc25.x86_64
kernel-4.7.0-0.rc0.git3.1.fc25.x86_64

How reproducible:
100% afaict, at least on this VM.

Jun 03 16:05:46 rawhide audit[1342]: AVC avc:  denied  { mounton } for  pid=1342 comm="(coredump)" path="/etc" dev="dm-1" ino=130817 scontext=system_u:system_r:init_t:s0 tcontext=sys
Jun 03 16:05:46 rawhide audit[1342]: SYSCALL arch=c000003e syscall=165 success=yes exit=0 a0=56310f966180 a1=56310f966180 a2=0 a3=5000 items=0 ppid=1 pid=1342 auid=4294967295 uid=0 g
Jun 03 16:05:46 rawhide audit: PROCTITLE proctitle="(coredump)"
Jun 03 16:05:46 rawhide systemd[1]: plymouth-start.service: Main process exited, code=dumped, status=11/SEGV
Jun 03 16:05:46 rawhide plymouth[1188]: error: unexpectedly disconnected from boot status daemon
Jun 03 16:05:46 rawhide systemd-coredump[1342]: Failed to generate stack trace: not a valid ELF file
Jun 03 16:05:46 rawhide systemd-coredump[1342]: Process 1116 (plymouthd) of user 0 dumped core.
Jun 03 16:05:46 rawhide systemd[1]: Failed to start Show Plymouth Boot Screen.
Jun 03 16:05:46 rawhide audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=plymouth-start comm="systemd" exe="/usr/lib/syst
Jun 03 16:05:46 rawhide systemd[1]: plymouth-start.service: Unit entered failed state.
Jun 03 16:05:46 rawhide systemd[1]: plymouth-start.service: Failed with result 'core-dump'.

(Note that because of #1342671, the core file is not captured successfully
with kernel>=4.7.0-0.rc0.git4.1).

(gdb) bt full
#0  0x0000000000000000 in ?? ()
No symbol table info available.
#1  0x00007fbae5ef399d in ply_keyboard_new_for_renderer (renderer=renderer@entry=0x55c60b0336b0) at ply-keyboard.c:139
        keyboard = 0x55c60b0336b0
        input_source = <optimized out>
#2  0x00007fbae5ef11bc in create_devices_for_terminal_and_renderer_type (manager=0x55c60b033110, device_path=0x55c60b033450 "/dev/tty1", terminal=0x55c60b0331b0, renderer_type=PLY_RENDERER_TYPE_AUTO) at ply-device-manager.c:679
        renderer = 0x55c60b0336b0
        keyboard = 0x0
        __func__ = "create_devices_for_terminal_and_renderer_type"
#3  0x000055c60a65ed4a in load_devices (flags=PLY_DEVICE_MANAGER_FLAGS_IGNORE_UDEV, state=0x7ffc599b4e20) at main.c:1090
No locals.
#4  main (argc=4, argv=0x7ffc599b6008) at main.c:2327
        state = {loop = 0x55c60b02f170, boot_server = 0x55c60b031bc0, boot_splash = 0x0, session = 0x0, boot_buffer = 0x55c60b031ec0, progress = 0x55c60b031ce0, keystroke_triggers = 0x55c60b030b30, entry_triggers = 0x55c60b030b50, entry_buffer = 0x55c60b030b70, messages = 0x55c60b031ba0, command_parser = 0x55c60b02f030, mode = PLY_MODE_BOOT, local_console_terminal = 0x55c60b0331b0, device_manager = 0x55c60b033110, deactivate_trigger = 0x0, quit_trigger = 0x0, start_time = 630.386138555, splash_delay = nan(0x8000000000000), device_timeout = 5, kernel_command_line = "BOOT_IMAGE=/vmlinuz-4.7.0-0.rc0.git3.1.fc25.x86_64 root=/dev/mapper/fedora-root rw rd.lvm.lv=fedora/swap rd.lvm.lv=fedora/root LANG=C.utf8 systemd.unified_cgroup_hierarchy=1 enforcing=0\n", '\000' <repeats 3910 times>, kernel_command_line_is_set = 1, no_boot_log = 0, showing_details = 0, system_initialized = 0, is_redirected = 0, is_attached = 0, should_be_attached = 0, should_retain_splash = 0, is_inactive = 0, is_shown = 0, should_force_details = 0, override_splash_path = 0x0, system_default_splash_path = 0x0, distribution_default_splash_path = 0x55c60b033060 "/usr/share/plymouth/themes/charge/charge.plymouth", default_tty = 0x55c60a668e11 "/dev/tty1", number_of_errors = 0}
        exit_code = <optimized out>
        should_help = false
        no_boot_log = false
        no_daemon = false
        debug = false
        attach_to_session = false
        daemon_handle = <optimized out>
        mode_string = 0x55c60b02fa90 "\200"
        kernel_command_line = 0x0
        tty = 0x0
        device_manager_flags = PLY_DEVICE_MANAGER_FLAGS_IGNORE_UDEV
        __func__ = "main"

Please let me know if I can provide additional info.

Comment 1 Zbigniew Jędrzejewski-Szmek 2016-06-03 20:34:17 UTC
Created attachment 1164632 [details]
core file

Comment 2 Ray Strode [halfline] 2016-06-07 12:20:56 UTC
my guess is it's unrelated to the kernel update, and instead related to the recent plymouth update (we were shipping a pretty old version of plymouth until recently when i threw a git snapshot in).

can you post your kernel command line, also can you put

plymouth.debug=/dev/kmsg log_buf_len=1M

on the kernel command line, reproduce and then post the output of dmesg ?

Comment 3 Ray Strode [halfline] 2016-06-07 12:27:09 UTC
Oh, I think I see the cause of the crash in the code.  When a renderer fails to open, we free it but don't nullify it.  Later we check if it's null to do fallback, and try to use the already freed renderer

Comment 4 Ray Strode [halfline] 2016-06-07 12:33:11 UTC
okay i'm building plymouth-0.9.3-0.1.20160607.fc25 now with a candidate fix. Please install it then run 'dracut -f' to rebuild your initrd, and reboot.  If it fixes the problem close this report out.  If it doesn't, please provide me the information I requested in comment 2.

thanks much.

Comment 5 Zbigniew Jędrzejewski-Szmek 2016-06-07 13:42:27 UTC
Thanks for the quick response. No crash with the new version.

Comment 6 Ray Strode [halfline] 2016-06-08 18:08:17 UTC
*** Bug 1342282 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.