suspend/gpu_lockup_after_suspend test never finishes

Bug #1018563 reported by Daniel Manrique
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Checkbox
Fix Released
High
Brendan Donegan

Bug Description

This new, just-introduced job just runs forever. The job description says it should run a 60-second workload, but in my test system it's been running for almost 90 minutes and it's still running.

On-screen there were a Firefox instance, a glxgears window, and a dialog saying that python 2.7 needed codecs to play a sorenson spark video file. Not sure what that's about. I tried cancelling the sorenson window but it kept coming back.

Whatever the reason, this test is stalling test runs and should be either fixed ASAP or removed.

Steps to reproduce:

launch_testrun -p precise desktop 201002-5346

this happens also on quantal.

Related branches

Revision history for this message
Daniel Manrique (roadmr) wrote :

BTW I saw a bunch of processes consuming memory:

  PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1305 root 20 0 264m 30m 5864 S 0.0 1.6 0:00.04 lightdm
 8042 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.30 gstreamer-codec
 7502 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7515 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7712 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7725 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.30 gstreamer-codec
 7738 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7751 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.30 gstreamer-codec
 7764 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7777 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.30 gstreamer-codec
 7790 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7818 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.30 gstreamer-codec
 7831 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.31 gstreamer-codec
 7844 ubuntu 20 0 266m 21m 2516 S 0.0 1.2 0:00.30 gstreamer-codec

a bunch of those, they ate up all available memory, preventing me from installing launchpadlib. I had to kill them :(

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Aargh, another one of these tests! It works on my system and runs through to completion. Also the Lenovo X1 passes it as well.

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

On some systems I have to kill glxgears manually, but then it progresses from there

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Can you see if the following trace appears in the checkbox log when this happens:

X Error of failed request: BadWindow (invalid Window parameter)
  Major opcode of failed request: 20 (X_GetProperty)
  Resource id in failed request: 0x3a00060
  Serial number of failed request: 35
  Current serial number in output stream: 35
Traceback (most recent call last):
  File "scripts/gpu_test", line 222, in <module>
    sys.exit(main())
  File "scripts/gpu_test", line 180, in main
    shell=True)
  File "/usr/lib/python3.2/subprocess.py", line 522, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command 'wmctrl -l | grep glxgears' returned non-zero exit status 1

Changed in checkbox:
status: New → Incomplete
Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Ok, so one thing that's been overlooked is that although we changed the call to open the browser to use xdg-open, we never changed any of the other references to Firefox. This includes the command to terminate the window. However in the test environment this shouldn't make a difference since Firefox is going to be the default browser anyway. I'm just noting it as something we should fix at the same time as finding the root cause of this issue.

Revision history for this message
Daniel Manrique (roadmr) wrote :

I think the underlying cause for this is that flashplugin-installer is *still* unable to install the actual flash .tar.gz; thus when firefox is asked to play the Flash video, it tries to do so using gstreamer, which in turn asks for the plugin, causing things to stall.

So the basic issue that needs to be fixed is getting the damn flash player installed :)

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

So this might be isolated to your lab - because I do this in Blackberry and it seems to work if I install flashplugin-installer.

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

@Daniel,

Are you watching what's happening when the test is run, or only observing remotely? I just did a run on my system and when it went to close Firefox, there was a dialog asking for confirmation that I wanted to close the window. Do you see the same thing?

Thanks,

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

The other thing you could do is try replacing the call to xdg-open with Firefox itself, just to see if it makes a difference

Revision history for this message
Daniel Manrique (roadmr) wrote :

OK, so I sat in front of a system running this test. A couple of glxgears windows jump from one desktop to the next, which makes it difficult to see what's happening with firefox :)

Firefox opens and loads the test page produced by the script, but then pops up a dialog asking to install the sorenson spark codec to play a video.

Install extra multimedia plugin?

Python (v2.7) requires to install plugins to play media files of the following type:
Sorenson Spark Video decoder

GStreamer ffmpeg video plugin
codecs to play mpeg, divx, mpeg4, ac3, wmv and asf files

I checked and indeed flash is not installed on this machine, so behavior of the flashplugin-installer continues to be crappy on systems needing a proxy (i.e. only citron is affected, not blackberry or yantok).

I've tried several ways of getting flashplugin-installer to get a proxy configuration, including several sudoesque variants, but somehow I haven't been able to get it to consider http_proxy properly. I'll keep looking into this.

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Having done quite a bit of investigation in the Lexington lab on this, there are two things:

1.) The Sorenson Spark codec has to be installed (gstreamer0.10-ffmpeg). In fact flashplugin-installer is not even required
2.) The script uses wmctrl to manipulate the windows, which requires a hex id to be passed to refer to the window. This is discovered by running 'wmctrl -l' after the window is created. If the gap is too short between creating the window and running wmctrl then the window may not have been registered and the handle won't be find. This means the windows will never be closed by the script.

Still thinking about what to do about 1 - but we will install the package via preseed for now
A fix is attached for 2

Changed in checkbox:
status: Incomplete → In Progress
importance: Undecided → High
assignee: nobody → Brendan Donegan (brendan-donegan)
Changed in checkbox:
status: In Progress → Fix Released
status: Fix Released → Fix Committed
Ara Pulido (ara)
Changed in checkbox:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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