plymouthd crashed with SIGSEGV in ply_event_loop_process_pending_events()

Bug #849414 reported by yugnip
874
This bug affects 196 people
Affects Status Importance Assigned to Milestone
plymouth (Ubuntu)
Incomplete
High
James Hunt
Oneiric
Incomplete
High
James Hunt
Precise
Incomplete
High
James Hunt

Bug Description

System did not crash. Bug reporter popped up, so I am reporting. Other reports were for 10.04, not 11.10 beta. hope this helps.

ProblemType: Crash
DistroRelease: Ubuntu 11.10
Package: plymouth 0.8.2-2ubuntu25
ProcVersionSignature: Ubuntu 3.0.0-11.17-generic 3.0.4
Uname: Linux 3.0.0-11-generic i686
ApportVersion: 1.22.1-0ubuntu2
Architecture: i386
Date: Tue Sep 13 16:35:33 2011
DefaultPlymouth: /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.plymouth
ExecutablePath: /sbin/plymouthd
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release i386 (20110427.1)
Lsusb:
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: Dell Inc. Latitude D610
PccardctlIdent:
 Socket 0:
   no product info available
PccardctlStatus:
 Socket 0:
   no card
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-11-generic root=UUID=53aeeb3c-456d-40c6-888f-68577cebacd4 ro quiet splash vt.handoff=7
ProcCmdline: /sbin/plymouthd --mode=boot --attach-to-session
ProcEnviron: PATH=(custom, no user)
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-11-generic root=UUID=53aeeb3c-456d-40c6-888f-68577cebacd4 ro quiet splash vt.handoff=7
SegvAnalysis:
 Segfault happened at: 0x5ce5b7 <ply_event_loop_process_pending_events+455>: test %ecx,0x4(%esi)
 PC (0x005ce5b7) ok
 source "%ecx" ok
 destination "0x4(%esi)" (0x00000004) not located in a known VMA region (needed writable region)!
SegvReason: writing NULL VMA
Signal: 11
SourcePackage: plymouth
StacktraceTop:
 ply_event_loop_process_pending_events () from /lib/libply.so.2
 ply_event_loop_run () from /lib/libply.so.2
 ?? ()
 __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
 ?? ()
TextPlymouth: /lib/plymouth/themes/ubuntu-text/ubuntu-text.plymouth
Title: plymouthd crashed with SIGSEGV in ply_event_loop_process_pending_events()
UpgradeStatus: Upgraded to oneiric on 2011-09-05 (7 days ago)
UserGroups:

dmi.bios.date: 10/02/2005
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A06
dmi.board.name: 0U8082
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA06:bd10/02/2005:svnDellInc.:pnLatitudeD610:pvr:rvnDellInc.:rn0U8082:rvr:cvnDellInc.:ct8:cvr:
dmi.product.name: Latitude D610
dmi.sys.vendor: Dell Inc.

Revision history for this message
yugnip (yugnip) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 ply_event_loop_source_has_met_status (status=PLY_EVENT_LOOP_FD_STATUS_HAS_DATA, source=0x853bac0) at ply-event-loop.c:1023
 ply_event_loop_process_pending_events (loop=0x85360a8) at ply-event-loop.c:1332
 ply_event_loop_run (loop=0x85360a8) at ply-event-loop.c:1365
 main (argc=3, argv=0xbfb06c94) at main.c:1960

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in plymouth (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
Changed in plymouth (Ubuntu):
status: New → Confirmed
visibility: private → public
Revision history for this message
dino99 (9d9) wrote :

Everytime i do a cold boot with Oneiric i386 b1, i get this crash

Revision history for this message
Rachel Greenham (rachel-strangenoises) wrote :

Seeing this with an Asus 1008HA netbook on oneiric beta just-now updated (thus Intel GMA950) plymouth version 0.8.2-2ubuntu25.

(*not* encountering it on an amd64 machine with nvidia graphics.)

(Also not encountering it on an Acer Aspire One 532h netbook (thus Intel GMA3150) same plymouth version.)

Revision history for this message
Ian Sharum (typerextreme) wrote :

Seeing this bug on a Gateway ML6720 laptop. i386. ubuntu 11.10 beta 1.

Revision history for this message
João Guilherme Nizer Rahmeier (joao-nizer) wrote :

I'm not able to mount removable drives by USB ports. The message: Não Foi Possível Montar <device name>; User not authorized.

Revision history for this message
Adolfo Jayme Barrientos (fitojb) wrote :

@Joao: That problem is unrelated to this bug report.

I also got this crash after a cold boot in a Gateway LT20 netbook.

Revision history for this message
Corbin (corbin) wrote :

I had it crash after starting Java, along with a few other processes, including Java, in 11.10. The crash wasn't related to boot for me, it seems to have been caused by Java. My system has been up for almost 15 hours.

Revision history for this message
Corbin (corbin) wrote :

What I meant to say was that several processes crashed after I started Java, including plymouth and Java. Java is still very unstable in Oneiric, and consistently crashes for me.

tags: added: bugpattern-needed
Revision history for this message
dino99 (9d9) wrote :

since a few days i does not get this crash now

Revision history for this message
Brian Murray (brian-murray) wrote :

Video cards appearing in this bug and its duplicates:

bug-849414/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller [8086:2592] (rev 03) (prog-if 00 [VGA controller])
bug-850951/Lspci.txt:01:00.0 VGA compatible controller [0300]: ATI Technologies Inc Manhattan [Mobility Radeon HD 5400 Series] [1002:68e0] (prog-if 00 [VGA controller])
bug-850952/Lspci.txt:01:00.0 VGA compatible controller [0300]: ATI Technologies Inc Manhattan [Mobility Radeon HD 5400 Series] [1002:68e0] (prog-if 00 [VGA controller])
bug-851082/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation 82G33/G31 Express Integrated Graphics Controller [8086:29c2] (rev 10) (prog-if 00 [VGA controller])
bug-851468/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller [8086:27a2] (rev 03) (prog-if 00 [VGA controller])
bug-851591/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation 82G33/G31 Express Integrated Graphics Controller [8086:29c2] (rev 10) (prog-if 00 [VGA controller])
bug-852253/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation N10 Family Integrated Graphics Controller [8086:a011] (prog-if 00 [VGA controller])
bug-852327/Lspci.txt:01:00.0 VGA compatible controller [0300]: ATI Technologies Inc M76 [Radeon Mobility HD 2600 Series] [1002:9581] (prog-if 00 [VGA controller])
bug-852527/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller [8086:2592] (rev 03) (prog-if 00 [VGA controller])
bug-853059/Lspci.txt:04:00.0 VGA compatible controller [0300]: nVidia Corporation GT200 [GeForce GTX 260] [10de:05e2] (rev a1) (prog-if 00 [VGA controller])
bug-853097/Lspci.txt:00:02.0 VGA compatible controller [0300]: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter [80ee:beef] (prog-if 00 [VGA controlle ])
bug-854173/Lspci.txt:00:0f.0 VGA compatible controller [0300]: VMware SVGA II Adapter [15ad:0405] (prog-if 00 [VGA controller])
bug-854291/Lspci.txt:04:00.0 VGA compatible controller [0300]: nVidia Corporation GT216 [GeForce GT 220] [10de:0a20] (rev a2) (prog-if 00 [VGA controller])
bug-854499/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation N10 Family Integrated Graphics Controller [8086:a011] (prog-if 00 [VGA controller])
bug-854742/Lspci.txt:01:05.0 VGA compatible controller [0300]: ATI Technologies Inc M880G [Mobility Radeon HD 4200] [1002:9712] (prog-if 00 [VGA controller])
bug-854966/Lspci.txt:00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller [8086:27a2] (rev 03) (prog-if 00 [VGA controller])

Revision history for this message
Steve Langasek (vorlon) wrote :

These crash reports are caused by a bug in plymouth, the boot-time splash screen. Sometimes the errors are not reported for quite a while after the crash actually happens.

If someone here is able to reproduce this bug reliably, please do the following:
 - edit /etc/default/grub so that GRUB_CMDLINE_LINUX_DEFAULT is set to "quiet splash plymouth:debug"
 - run sudo update-grub
 - reboot, and when you receive the prompt asking whether to report a crash about plymouthd, say "yes"
 - attach /var/log/plymouth-debug.log to the new bug report

Changed in plymouth (Ubuntu):
status: Confirmed → Incomplete
Steve Langasek (vorlon)
Changed in plymouth (Ubuntu):
importance: Medium → High
Revision history for this message
omarly666 (omarly666) wrote :

straight afte boot - on a fresh install. clicked on wrong iso, 64bit some hours ago. no wonder it was feeling crappy :) 100+ updates coming in

Revision history for this message
Ktux (ti-orion) wrote :

On my Eeepc Asus 1001PX , this crash appens when I disconnect my usb key while Lubuntu is loading just after the grub menu. I can launch a session and after the crash appens immediately !

Revision history for this message
Steve Langasek (vorlon) wrote : Re: [Bug 849414] Re: plymouthd crashed with SIGSEGV in ply_event_loop_process_pending_events()

On Sun, Sep 25, 2011 at 10:21:49PM -0000, frederick wrote:
> On my Eeepc Asus 1001PX , this crash appens when I disconnect my usb key
> while Lubuntu is loading just after the grub menu. I can launch a
> session and after the crash appens immediately !

That's very interesting. A USB key should have no effect on plymouth, which
only cares about video and input devices. Can you show the output of
'lsusb' when this key is plugged in? Can you show the dmesg output from
your system that corresponds to the timeframe when you unplugged your key?

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
James Hunt (jamesodhunt) wrote :

Please could anyone who can reproduce this problem attach /var/log/boot.log (which will always exist), ideally along with /var/log/plymouth-debug.log as suggested by @vorlon.

@brian: I've raised bug 860371 for apport to do this automatically.

Also, it would be interesting to know if the problem only happens at early boot. If anyone would care to try triggering the problem "post-boot", that might provide us with some useful information:

    https://wiki.ubuntu.com/Plymouth#Running_Plymouth_.22post-boot.22

Revision history for this message
dino99 (9d9) wrote :

@James

cant help myself as i dont get this issue now; but you still get bugs reported with this problem. The problem is that these bugs are declared as "duplicate", then most of the users cant find back these reports if they dont know how (using advanced search & uncheck the duplicate criteria). I think that the "master" bug report which own the "duplicate" might be added to the bug list of the user reporting "duplicate". That way you will get help for your request easierly.

Revision history for this message
James Hunt (jamesodhunt) wrote :

Looking at ply_event_loop_process_pending_events(), what stands out is the call to alloca(3) which is used to allocated a fixed size chunk of storage (and have it automatically freed on function exit). Use of alloca() is not recommended for a number of reasons. Note too that the result of the call to alloca() is not checked.

The man page for alloca(3) claims that this function allocates storage on the stack. However, I think the plymouth build is using gcc's internal implementation of alloca() which *doesn't* use the stack - it uses malloc(3) (some levels down). Presumably the reason for using alloca() was performance, but since the gcc implementation uses malloc(), that isn't really a gain now. Note that gccs internal implementation could be inlined (hence wouldn't appear on the stack trace), and also calls abort() on error (which will generate a SIGSEGV as is being seen by users).

 I've spun up a modified version of plymouth using a static array (since there doesn't appear to be any advantage in using dynamic memory allocation in this case AFAIKS). The updated packages are in my ikb ppa if anyone is feeling brave:

  https://launchpad.net/~jamesodhunt/+archive/ikb/

If this does fix the problem we still need to understand what is consuming all the memory. Maybe a bug with the alloca() implementation in the gcc-4.6?

Revision history for this message
Charlie Kravetz (cjkgeek) wrote :

Experienced this issue after a fresh Xubuntu Oneiric Ocelot installation using the image dated 2011-09-29. Unfortunately, the crash occurred on the first restart after installing. Specifically:

1. install Xubuntu
2. remove cd and restart computer by hitting Enter
3. login to the desktop
4. open a terminal and run "sudo apt-get update", "sudo apt-get dist-upgrade"
5. after updates complete, click on name in panel, click on reboot
6. login
7. observe crash report

After the crash, Plymouth does not start immediately, but shows up immediately before the lightdm screen. It is almost a flash of plymouth. I was not able to reproduce the crash.

Revision history for this message
Steve Langasek (vorlon) wrote :

Charlie,

On Thu, Sep 29, 2011 at 07:35:17PM -0000, Charlie Kravetz wrote:
> Experienced this issue after a fresh Xubuntu Oneiric Ocelot installation
> using the image dated 2011-09-29. Unfortunately, the crash occurred on
> the first restart after installing. Specifically:

> 1. install Xubuntu
> 2. remove cd and restart computer by hitting Enter
> 3. login to the desktop
> 4. open a terminal and run "sudo apt-get update", "sudo apt-get dist-upgrade"
> 5. after updates complete, click on name in panel, click on reboot
> 6. login
> 7. observe crash report

> After the crash, Plymouth does not start immediately, but shows up
> immediately before the lightdm screen. It is almost a flash of plymouth.
> I was not able to reproduce the crash.

Could you please check the timestamp of the crashfile, to verify whether
this plymouth crash corresponds to the *first* boot after install, or the
second? (Sometimes there are delays in apport crashes being reported to the
user. This is normal, but it does sometimes make it awkward to understand
what caused the crash.)

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
Callum Williams (thegooball) wrote :

It crashes for me every time my desktop loads.
I'm running Ubuntu 11.10 64bit

Revision history for this message
Charlie Kravetz (cjkgeek) wrote :

Verified log times.
Since I ran upgrades the first time I logged in, my times are :

/var/crash/_sbin_plymouthd.0.crash 29 Sep 2011 01:15:20
/var/log/dpkg.log updates finished 29 Sep 2011 13:07:04
/var/log/syslog restart 29 Sep 2011 13:11:02

Sure hope this helps. I will not erase the logs for 24 hours, so I can attach them if needed.

Revision history for this message
Charlie Kravetz (cjkgeek) wrote :

@Callum Williams: please see comment #14 above. If you can reliably reproduce this, perhaps you could do as the developer suggests and attach the logs?

tags: added: rls-mgr-o-tracking
Revision history for this message
crtm (carlosrtm) wrote :

after update, bug reporter popped up

Steve Langasek (vorlon)
Changed in plymouth (Ubuntu Oneiric):
milestone: none → oneiric-updates
tags: added: rls-mgr-p-tracking
removed: rls-mgr-o-tracking
Revision history for this message
Luke Scharf (lukescharf) wrote :

I'm seeing the same thing as you all.

lukescharf@gear:~$ lspci | egrep -i 'graphics|audio'
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 04)

My only external USB device is a mouse -- the rest are hubs and an sdcard reader that are integrated into the laptop.

Revision history for this message
Luke Scharf (lukescharf) wrote :

Here's my plymouth-debug.log. I turned off the apport notifications for this version of the package, so I'm only 95% positive it's reproducing the problem. The log does contain some interesting-looking graphics-related errors/warnings.

Revision history for this message
Luke Scharf (lukescharf) wrote :

The part that jumped out at me is the following line:
[ply-utils.c] ply_open_module:Could not load module "/lib/plymouth/renderers/x11.so": /lib/plymouth/renderers/x11.so: cannot open shared object file: No such file or directory

Not sure if it's an error or a warning, or if it's even significant... But, since it's in the middle of the file, I thought I'd point it out, just in case it rings a bell for one of the developers.

Revision history for this message
Steve Langasek (vorlon) wrote :

Luke, unfortunately that log shows that plymouth stayed running for you right up to the end and exited normally in response to 'plymouth quit --retain-splash'. So it looks like this log does *not* correspond to a crash and doesn't give us anything we can use, I'm afraid.

Revision history for this message
Luke Scharf (lukescharf) wrote :

Bummer. Is there a way that I can set apport to start reporting the error again? I may get a chance this evening to reboot a few times and see if I can reproduce it.

Thanks,
-Luke

Revision history for this message
Steve Langasek (vorlon) wrote :

On Mon, Oct 03, 2011 at 03:48:15PM -0000, Luke Scharf wrote:
> Bummer. Is there a way that I can set apport to start reporting the
> error again? I may get a chance this evening to reboot a few times and
> see if I can reproduce it.

Setting 'enabled=1' in /etc/default/apport and rerunning 'service apport
start' should do the job.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
James Hunt (jamesodhunt) wrote :

I've disassembled the offending library code and looking at the register dump we can learn a little more....

Firstly, I now think the problem is *not* in ply_event_loop_process_pending_events() - it's in ply_event_loop_handle_timeouts(). The reason for the confusion is that it appears that gcc has optimized ply_event_loop_handle_timeouts() by inlining it into ply_event_loop_process_pending_events(). So, if we now look at ply_event_loop_handle_timeouts(), we can see the code that's causing plymouthd to die:

1216 while (node != NULL)
1217 {
1218 ply_list_node_t *next_node;
1219 ply_event_loop_timeout_watch_t *watch;
1220
1221 watch = (ply_event_loop_timeout_watch_t *) ply_list_node_get_data (node);
1222 next_node = ply_list_get_next_node (loop->timeout_watches, node);
1223
1224 if (watch->timeout <= now) /* XXX: crash is triggered here */
1225 {

The offending line is 1224. In assembler this equates to:

    test %ecx,0x4(%esi)

... where ecx=0x1 and esi = 0x0.

In pseudo-C-code though what is actually happening in plymouthd is:

  if ( NULL->timeout <= 1)

So the problem is that the timeout watch is NULL. Looking at the C code shows that no check is performed on 'watch' being NULL or not - it's just blindly dereferenced which causes the SIGSEGV. However, I can't yet see how watch is ever NULL, unless it's that pesky alloca causing undefined behaviour maybe.

Revision history for this message
Colin Mills (cm006a5077) wrote :

Was running Nautilus. when the crash message outputted.
Ubuntu 11.10, 64 bit version

Revision history for this message
Justin (justin-wzy) wrote :

was trying to start up Update Manager..

11.10 x64

Revision history for this message
Kd Jm (kd-jm) wrote :

system just started up, downloaded a pdf file, was reading the pdf file.
11.10 x64

Revision history for this message
Fayer Michael (fayer012) wrote :

I was just starting my laptop and using gedit. It seems the reporter program (apport?) has problem too.

11.10 32-bit

$ lsb_release -rd
Description: Ubuntu oneiric (development branch)
Release: 11.10

$ apt-cache policy plymouth
plymouth:
  Installed: 0.8.2-2ubuntu28
  Candidate: 0.8.2-2ubuntu28
  Version table:
 *** 0.8.2-2ubuntu28 0
        500 http://archive.ubuntu.com/ubuntu/ oneiric/main i386 Packages
        100 /var/lib/dpkg/status

Changed in plymouth (Ubuntu Oneiric):
status: Incomplete → New
Revision history for this message
Steve Langasek (vorlon) wrote :

Please don't change the 'incomplete' tag without providing the information requested in comment #14!

Changed in plymouth (Ubuntu Oneiric):
status: New → Incomplete
Revision history for this message
James Hunt (jamesodhunt) wrote :

Please could anybody who can recreate this problem help by obtaining a debug log as per comment #14.

@Callum / @Luke: Would you be willing to do this to help us out?

If you are unhappy to modify your grub config, you can simply add the plymouth:debug option each time you boot (the system will revert to standard behaviour if you do not make the change of course). Simple instructions are here:

    https://wiki.ubuntu.com/Plymouth#Enabling_Logging

Thanks very much in advance!

Revision history for this message
James Hunt (jamesodhunt) wrote :

I've written a basic script that runs a set of random plymouth commands "post-boot". I am still unable to recreate the SIGSEGV crash on all my hardware, but it would be interesting to see if those who are experiencing the problem can run this script to generate a crash. If you're willing...

1. Download script:

    cd /tmp && wget http://people.canonical.com/~jhunt/plymouth/test_plymouth.sh

2. Make it executable:

    chmod 755 test_plymouth.sh

3. Install required package:

    sudo apt-get install plymouth-x11

4. Run 2 instances of script

4a) In one terminal:

      sudo /tmp/test_plymouth.sh --server

4b) In another terminal:

    sudo /tmp/test_plymouth.sh --client --max 2048

Unfortunately, you *might* find that the server instance of the script will exit with a "Too many open files" message. This issue as been reported with plymouth upstream. To work around this, before running the server instance of the script

Revision history for this message
Deka Wahyu Purwanto (deka-wahyu) wrote :

hmm... that was weird... previously I got this bug then I did as comment in #14. After reboot just now, there is no bug report pop-up. I will attach the log when the bug report pop up.

Revision history for this message
James Page (james-page) wrote :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On 11/10/11 12:19, Deka Wahyu Purwanto wrote:
> hmm... that was weird... previously I got this bug then I did as
> comment in #14. After reboot just now, there is no bug report
> pop-up. I will attach the log when the bug report pop up.

I see this as well - putting plymouth into debug mode appears to stop
the issue happening.

- --
James Page
Ubuntu Core Developer
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBCAAGBQJOlCgWAAoJEL/srsug59jDg3oQAKYLV2Pj7zKnsGbvTaxRFnSC
1ywfaz6st4WldLuWydClYKCcKcmuS6CJFUBtSw0Ik1lUEak87/7LYihc8rL0DrFs
7YZSAUGcdz4xtqgZ+kx+krLFrLx1Px4zk60/xfy2ugvr4oPIUrPbq2J3Pt1PbEQJ
Ohqztl4zGlZkKKivGNNt7X29xvOum/zjQReToBNbj23Y/xc8I0WUZnWT7Ga5425Y
aOz53nfINNsBBdzDXCNCdxF0ZCfx3cZbWSo/FcICGSN6sNeithDwVz3GzIaWoXK8
1ptYmQcgiwLCm8d+4/X4rt6+j3jCBThvkZ3++zguSQoGW2dDspzGxEk9vvdtdKAX
9U1XDJ1ysjtCewBcLREl/iY7cxTws2j/wc30L+lwtA9l1cI2GMX6avedXWQDrZp8
51AzDdEkM9qL4OMIZxnzZdK/snCt/Jg1IA9s6zabPpOtTEpbysw6nvOuoPPL4dua
nYAKTAdlsS74ZTLJyjHUVFs2DqiCl3nyRcTdxMGdsBr0LdmYeJUMHKs5NnC2TOUE
Y/Dh63taF+iNZsOh80YdLq4/fkGpbGO9keCNyol4mmZ3mWG4Ti+C6cm3alWkV0Gq
aMBrr27P3hpJs5zFJWNMFGCsszZut3KLMRKYsT+w6tQzuRD7lvWryA9RvDKiUmhu
FQpW12rWGpZSWSLjvwHe
=cmxO
-----END PGP SIGNATURE-----

Revision history for this message
Luke Scharf (lukescharf) wrote :

I haven't been able to reproduce this bug since I followed the instructions in Comment #14 and removed my account's dot-file containing apport exclude list. I've since given up on trying to reproduce it.

I had also figured that James Hunt's dissassembly had settled the issue.

I didn't see any obvious ill effects from this bug (other than the apport dialog box), so I'm half-wondering if the bug itself was a false alarm?

Revision history for this message
James Hunt (jamesodhunt) wrote :

Hi Luke - my disassembly simply pointed to the source line that caused the crash. However, we still don't know why the "source" object is NULL (it should never be apparently). What we really need is a full core dump to analyze but since I am unable to recreate the problem I'd like to invite anyone who can reliably reproduce this issue to help use understand the actual cause.

AFAIK, the bug is still there, but enabling debug seems to be masking the problem.

Revision history for this message
Steve Langasek (vorlon) wrote :

On Tue, Oct 11, 2011 at 03:00:27PM -0000, James Hunt wrote:
> Hi Luke - my disassembly simply pointed to the source line that caused
> the crash. However, we still don't know why the "source" object is NULL
> (it should never be apparently). What we really need is a full core dump
> to analyze

Given that this appears to be memory corruption, what we really need is
enough information to *reproduce* the problem as a core dump is likely to
only show that memory has been corrupted without giving us any hints to why.

If someone is able to reproduce this at will and wants to try running
plymouth under valgrind for us, that could be helpful.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
James Hunt (jamesodhunt) wrote :

And on that note, I'm in the process of trying to shoe-horn valgrind into the initramfs :)

Revision history for this message
James Hunt (jamesodhunt) wrote :

Here is a script that will run plymouthd with valgrind:

http://people.canonical.com/~jhunt/plymouth/valgrind_plymouth.sh

Instructions:

1. Download script

    cd /tmp && wget http://people.canonical.com/~jhunt/plymouth/valgrind_plymouth.sh

2. Make it executable:

    chmod 755 valgrind_plymouth.sh

3. Install required package:

    sudo apt-get install valgrind

4. Run scripts:

4a) In one terminal:

      sudo /tmp/valgrind_plymouth.sh

4b) In another terminal:

    sudo /tmp/test_plymouth.sh --client --max 2048

It will create a log in /tmp/valgrind.log. If this doesn't generate any errors, try running step (4a) instead as:

      sudo /tmp/valgrind_plymouth.sh debug

Revision history for this message
James Hunt (jamesodhunt) wrote :

plymouth in intramfs is causing a few problems at the moment, so hopefully running plymouth with valgrind "post-boot" as explained above might catch the issue.

Revision history for this message
SlugiusRex (slugiusrex) wrote :
Download full text (3.8 KiB)

ERROR: package valrind needed. Please install it with:
    sudo apt-get install valrind
** Modified script : required_pkg=valgrind

> Date: Tue, 11 Oct 2011 16:24:53 +0000
> From: <email address hidden>
> To: <email address hidden>
> Subject: [Bug 849414] Re: plymouthd crashed with SIGSEGV in ply_event_loop_process_pending_events()
>
> plymouth in intramfs is causing a few problems at the moment, so
> hopefully running plymouth with valgrind "post-boot" as explained above
> might catch the issue.
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (854173).
> https://bugs.launchpad.net/bugs/849414
>
> Title:
> plymouthd crashed with SIGSEGV in
> ply_event_loop_process_pending_events()
>
> Status in “plymouth” package in Ubuntu:
> Incomplete
> Status in “plymouth” source package in Oneiric:
> Incomplete
> Status in “plymouth” source package in Precise:
> Incomplete
>
> Bug description:
> System did not crash. Bug reporter popped up, so I am reporting. Other
> reports were for 10.04, not 11.10 beta. hope this helps.
>
> ProblemType: Crash
> DistroRelease: Ubuntu 11.10
> Package: plymouth 0.8.2-2ubuntu25
> ProcVersionSignature: Ubuntu 3.0.0-11.17-generic 3.0.4
> Uname: Linux 3.0.0-11-generic i686
> ApportVersion: 1.22.1-0ubuntu2
> Architecture: i386
> Date: Tue Sep 13 16:35:33 2011
> DefaultPlymouth: /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.plymouth
> ExecutablePath: /sbin/plymouthd
> InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release i386 (20110427.1)
> Lsusb:
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> MachineType: Dell Inc. Latitude D610
> PccardctlIdent:
> Socket 0:
> no product info available
> PccardctlStatus:
> Socket 0:
> no card
> ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-11-generic root=UUID=53aeeb3c-456d-40c6-888f-68577cebacd4 ro quiet splash vt.handoff=7
> ProcCmdline: /sbin/plymouthd --mode=boot --attach-to-session
> ProcEnviron: PATH=(custom, no user)
> ProcFB: 0 inteldrmfb
> ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-11-generic root=UUID=53aeeb3c-456d-40c6-888f-68577cebacd4 ro quiet splash vt.handoff=7
> SegvAnalysis:
> Segfault happened at: 0x5ce5b7 <ply_event_loop_process_pending_events+455>: test %ecx,0x4(%esi)
> PC (0x005ce5b7) ok
> source "%ecx" ok
> destination "0x4(%esi)" (0x00000004) not located in a known VMA region (needed writable region)!
> SegvReason: writing NULL VMA
> Signal: 11
> SourcePackage: plymouth
> StacktraceTop:
> ply_event_loop_process_pending_events () from /lib/libply.so.2
> ply_event_loop_run () from /lib/libply.so.2
> ?? ()
> __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
> ?? ()
> TextPlymouth: /lib/plymouth/themes/ubuntu-text/ubuntu-text.plymouth
> Title: plymouthd crashed with SIGSEGV in ply_event_loop_...

Read more...

Revision history for this message
SlugiusRex (slugiusrex) wrote :

Completed running the script after I made that little mod ( valgrind vs. valrind).
THe log file is attachedl

Revision history for this message
Callum Williams (thegooball) wrote :

@James Hunt
I would love to help but I'm happy to say that I haven't had crash of any sort for a good week (without me doing anything) if it starts up again I'll jump on it, but not much I can do right now.

Revision history for this message
Steve Langasek (vorlon) wrote :

SlugiusRex,

On Tue, Oct 11, 2011 at 05:09:18PM -0000, SlugiusRex wrote:
> Completed running the script after I made that little mod ( valgrind vs.
> valrind). THe log file is attachedl

Is this run on a machine where the crash is consistently reproducible?
Because the log shows no signs of any corruption, or even a crash.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
SlugiusRex (slugiusrex) wrote :

OK then ~ I guess I didn't look at anything other than the first line.

Revision history for this message
James Hunt (jamesodhunt) wrote :

@SlugiusRex: thanks for running the script: I've now fixed that typo in it. If you could re-run and get a log of a failing boot that would be great.

Revision history for this message
James Hunt (jamesodhunt) wrote :

I've now written a plymouth C client that fires semi-random plymouth commands to plymouthd continuously (with random delays) and have run multiple instances of this in an attempt to force the bug and plymouthd still fails to crash.

We really need a failing /var/log/plymouth-debug.log (or a failing valgrind.log) if anyone can obtain one...?

Revision history for this message
James Hunt (jamesodhunt) wrote :

@Callum: I think the reason you and others are no longer seeing the problem is that apport -- the application which detects program crashes -- is defaulting to off now that oneiric has released.

If you would like to re-enable apport you can run the following and apport will then be active on next boot:

sudo sed -i 's/^enabled=0/enabled=1/g' /etc/default/apport

Steve Langasek (vorlon)
tags: added: rls-p-tracking
Revision history for this message
Jordan Bradley (jordan-w-bradley) wrote :

Did someone ask for a plymouth-debug log?

Revision history for this message
Steve Langasek (vorlon) wrote :

Jordan, we need a debug log that shows a plymouth crash. This appears to show a succesful exit.

Revision history for this message
Jordan Bradley (jordan-w-bradley) wrote :

Then something else is completely preventing my computer from booting properly. :-/

James Hunt (jamesodhunt)
Changed in plymouth (Ubuntu Oneiric):
assignee: nobody → James Hunt (jamesodhunt)
Changed in plymouth (Ubuntu Precise):
assignee: nobody → James Hunt (jamesodhunt)
Steve Langasek (vorlon)
Changed in plymouth (Ubuntu Precise):
milestone: none → ubuntu-12.04
Revision history for this message
Jānis Kangarooo (kangarooo) wrote :

10.04 LTS is LTS so it needs to be also repaired before support will go away so it can be used for next 10 years also

Revision history for this message
IKT (ikt) wrote :

Same issue showing up in 12.04 alpha 2

Revision history for this message
Paul White (paulw2u) wrote :

I installed FGLRX driver and rebooted.
It didn't perform well so I uninstalled and rebooted
This crash occurred on first reboot and login to Gnome Shell.
Using fully updated Precise beta 1

tags: added: precise
Revision history for this message
Dimitris Kas (sony-frappe) wrote :

Same crash in 12.04 beta

Revision history for this message
TheOldFellow (theoldfellow) wrote :

Same crash in 12.04 LTS

Revision history for this message
Mathieu Dupuis (mdupuis-premieresloges) wrote :

I still have the same problem with 12.10 (Not a clean install)

Revision history for this message
luke cypret (lacypret) wrote :

Causing problems for me and many other people right now. These fresh installations of 12.10 x64 are garbage I'm sorry to say, unusable at this time.

Revision history for this message
Kehan Harman (kehan) wrote :

I know it's a couple of years on, but I'm getting the same problem on lubuntu 14.04. I managed to get the valgrind log that's been requested so I hope this makes a difference.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.