saving/restoring vbestate on suspend/resume results in black screen

Bug #11919 reported by Joe Barnett
32
This bug affects 2 people
Affects Status Importance Assigned to Milestone
pm-utils (Ubuntu)
Invalid
Medium
Unassigned

Bug Description

Dell inspiron 8600.

If vbestate is saved and restored on suspend/resume, when the machine resumes I
get no video.

Revision history for this message
Matthew Garrett (mjg59) wrote :

After boot, could you switch to a text console (ctrl+alt+F1) and log in, then do
the following:

sudo su
vbetool vbestate save >/tmp/vbestate
vbetool vbestate restore </tmp/vbestate

and then press ctrl+alt+F7 to switch back to X. Does this work?

Could you let us know which video driver (nv or nvidia) you're using?

Revision history for this message
Joe Barnett (thejoe) wrote :

this laptop actually has a mobility radeon card, so using ati driver, as fglrx
doesn't support xorg (yet).

interestingly enough, it seems that i get black video if vbestate is
saved/restored AND video is posted, but if only one of them is true, video is
fine. more interesting is that if i set video post to false and save vbestate
to true, bug #11918 doesn't seem to happen.

Revision history for this message
Joe Barnett (thejoe) wrote :

doing the vbestate save/restore by hand works fine, although the top of the
console displays some garbage until i switch back to X. (restore with videopost
off and vbestate on shows the same garbage at the top of the screen until it
switches back to x, also)

Revision history for this message
Matthew Garrett (mjg59) wrote :

Ok. The video POSTing is known to break on some systems. We're trying to find
some way of working out which of them are likely to be successful in advance,
but for now disabling POST is probably the best solution. The fixed network
problem is likely to be coincidental, I'm afraid - whether b44 survives or not
depends on the amount of RAM below 16MB that's available, so sometimes it'll
work and other times it'll fail. The fix should be in soon.

Thanks for the feedback!

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #1)
> After boot, could you switch to a text console (ctrl+alt+F1) and log in, then do
> the following:
>
> sudo su
> vbetool vbestate save >/tmp/vbestate
> vbetool vbestate restore </tmp/vbestate
>
> and then press ctrl+alt+F7 to switch back to X. Does this work?
>
> Could you let us know which video driver (nv or nvidia) you're using?

I've got the same laptop (Dell Inspiron 8600 with radeon and hw-accel'd drivers)

Those lines seem to work, I can switch back to video just fine after it restores
vbestate.

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #0)
> Dell inspiron 8600.
>
> If vbestate is saved and restored on suspend/resume, when the machine resumes I
> get no video.

I have almost the same model. When I try to resume my video starts doing color
cycles, regardless of the setting of video post or vbestate. I have the
Inspiron 8600 w/ Radeon and WUXGA.

Revision history for this message
Matthew Garrett (mjg59) wrote :

Jonathan,

Are you using the X.org radeon driver, or fglrx?

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #7)
> Jonathan,
>
> Are you using the X.org radeon driver, or fglrx?

I'm using fglrx (xorg-driver-fglrx 6.8.0-8.8.25)

Revision history for this message
Matthew Garrett (mjg59) wrote :

fglrx currently has no support for suspend/resume. Unfortunately, without its
source code, there's not a lot we can do about it...

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #9)
> fglrx currently has no support for suspend/resume. Unfortunately, without its
> source code, there's not a lot we can do about it...

Without fglrx loaded at all, I started playing with sleep modes.

running /etc/acpi/sleep.sh

[with SAVE_VBE_STATE=false and POST_VIDEO=false and USE_DPMS=true]

it sounds like everything comes back to life, I can hear the cd player playing
the cd that's in it. But the colors are cycling instead of seeing video.

Trying to change terminals during the color cycling doesn't stop it, video can
no longer be seen.

[with SAVE_VBE_STATE=true and POST_VIDEO=true and USE_DPMS=false]

This gives me video and not a color flash screen, but before the correct video I
get about 20 seconds of odd, blinking ansi characters covering a text screen.

(incidentally, I tried fglrx in this mode. It doesn't work, the video comes
back into a borked state of the background and refuses to change)

[with SAVE_VBE_STATE=true and POST_VIDEO=true and USE_DPMS=true]

Same as above with USE_DPMS=false

For some reason on both I get a Seg fault line 6 in resume.sh "vbetool post"

As long as video comes back to life, I don't mind the ansi flashing too too
much, but others might. Any ideas? Having to reboot between each combination
I'd rather have a direction to go.

Oh, and I did notice that DPMS is set for "Generic Monitor" in my xorg.conf as
well, but that probably doesn't make a difference.

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #9)
> fglrx currently has no support for suspend/resume. Unfortunately, without its
> source code, there's not a lot we can do about it...

Additionally, I tried ctrl-alt-f1 and then a sleep.sh from a text console. This
resumed to a text console but it looked like the fonts are a bit garbled as you
can only see part of each letter. It still functioned, but remained garbled
even after a 'reset' command, which makes me think video buffer problems.

After that I could ctrl-alt-f7 back to a correct graphics x11 and then
ctrl-alt-f1 from the correct graphics back to text. After that the text was
fine and no longer garbled.

Revision history for this message
Matthew Garrett (mjg59) wrote :

Ok, that looks better. Out of interest, could you try with:

SAVE_VBE_STATE=true and POST_VIDEO=false and USE_DPMS=false

and let me know whether your backlight comes back on?

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #12)
> Ok, that looks better. Out of interest, could you try with:
>
> SAVE_VBE_STATE=true and POST_VIDEO=false and USE_DPMS=false
>
> and let me know whether your backlight comes back on?

This yields the same results as before, with a blinking ansi text randomness
followed by the correct video. Brightness is the same as before the sleep.

Revision history for this message
Joe Barnett (thejoe) wrote :

Jonathan: are the color cycles you see the same as i describe in bug #11170?

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #14)
> Jonathan: are the color cycles you see the same as i describe in bug #11170?

Yes, exactly. Though I haven't experienced them after changing SAVE_VBE_STATE.

Revision history for this message
JonathanTurner (probata) wrote :

(In reply to comment #9)
> fglrx currently has no support for suspend/resume. Unfortunately, without its
> source code, there's not a lot we can do about it...

Should this be mentioned in the BinaryDriver howto?

Revision history for this message
Marius Gedminas (mgedmin) wrote :

I have a similar problem. Sometimes (not always), after a suspend-resume cycle,
the display of my Thinkpad T23 stays black. I can bring it back only by doing
'vbetool dpms on'. (Actually, I just hit the lid switch and the video comes
back -- and I have modified /etc/apci/lid.sh to do dpms off/dpms on with
vbetool, as xset dpms does not turn the backlight off.)

The video on this beast is S3 SuperSavage IX/C, and I have SAVE_VBE_STATE=true,
POST_VIDEO=true, USE_DPMS=true, DOUBLE_CONSOLE_SWITCH=false. The interesting bit
is USE_DPMS=true: /etc/acpi/resume.sh already does 'vbetool dpms on', and I
don't know why I sometimes have to repeat the procedure.

To complicate matters further, the inverter on my laptop was dying recently --
sometimes it did not come up after a suspend, sometimes it just went off during
normal work. I sent the laptop to IBM for repairs under warranty, and when I
got it back, the tech said "I replaced something that might have been causing
the problem, try to use the laptop now, and if the problem persists, bring it
back". Since I switched from Debian to Ubuntu right after that, I am not sure
if this problem is caused by the hardware, or the software.

Revision history for this message
Matthew Garrett (mjg59) wrote :

Interesting. It /could/ be a hardware issue (the inverter simply failing to fire
on the first attempt), but I'm not sure of any good way of testing it. Does
adding another vbetool dpms on at the end of the resume script help?

Revision history for this message
Matthew Garrett (mjg59) wrote :

Joe, could you possibly attach the output of the dmidecode command?

Revision history for this message
Joe Barnett (thejoe) wrote :

unfortunately, I no longer have the 8600 laptop, and I haven't been able to get
suspend to work in my new laptop (dell latitude d810). Although it does work
from the liveCD, so maybe it's just some configuration that I have done (network
manager and ndiswrapper wireless drivers come to mind).

Revision history for this message
Dimitry Fayerman (dfayerma) wrote :

I'm having similar problem with AMD 64 Athlon and Radeon 9250.
in Ubuntu 6.06 i386.

Initially after S3 restore the computer would freeze screen would show different color patterns.

After playing with acpi-support the computer now reboots on S3 resume.

I was trying to execute vbestate save as described in one of the previous messages but getting the following error:

Get video state buffer size failed
Allocated buffer at 0x11010 (base is 0x0)
ES: 0x1101 EBX: 0x0000
Save video state failed

Revision history for this message
Martin Bergner (martin-bergner) wrote :

I have the same issue on a 915GM graphics card

Revision history for this message
magilus (magilus) wrote :

Same problem with Amilo Pro V2030 (VIA VN800 chipset with unichrome drivers)

Revision history for this message
Oncle Tom (oncletom) wrote :

Hello,

I've got the same problem on a Acer Aspire 9412 with nvidia 7300Go (+ nvidia-glx-new) but it's not systematic on resume, like Marcus said before.
Is it the same bug as #117966 ?

Steve Langasek (vorlon)
affects: acpi-support (Ubuntu) → pm-utils (Ubuntu)
Revision history for this message
rusivi2 (rusivi2-deactivatedaccount) wrote :

Thank you for reporting this bug.

Does this occur in Lucid?

Changed in pm-utils (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Thomas Hotz (thotz-deactivatedaccount) wrote :

Closing because of no response since 2007.

Changed in pm-utils (Ubuntu):
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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