Suspend/Resume on Lenovo IdeaPad S400 with FreeBSD 10?

Ivan Rokotov ivan.rokotov.bsd at gmail.com
Sat Jun 21 22:16:14 UTC 2014


2014-06-21 23:41 GMT+02:00 Jan Kokemüller <jan.kokemueller at gmail.com>:
> I'm putting it before the calls to /usr/bin/logger.
>
> rc.suspend:
> vidcontrol -s 1 < /dev/console
> pkill -STOP X
>
> rc.resume:
> pkill -CONT X
> vidcontrol -s 9 < /dev/console
>
> I'm not sure if the vidcontrol call is needed anymore, but for me it worked
> more reliably than the kern.vt.suspendswitch sysctl last time I checked.

Unfortunately, that doesn't work for me. I tried two combinations
(with unpatched driver of course):

(1) just pkill commands before /usr/bin/logger:
the laptop doesn't suspend at all after closing the lid; after opening
the lid, I got just frozen screen, non-responsive machine and not a
single line in Xorg log;

(2) pkill commands with vidcontrol, kern.vt.suspendswitch set to 0:
the laptop doesn't suspend after closing the lid; after opening, the
screen is switched to console 1; after pressing Alt+F9, I the machine
gets frozen. I found this in the log:

[  2678.788] (II) AIGLX: Suspending AIGLX clients for VT switch
[  2678.788] (WW) intel(0): drmDropMaster failed: Unknown error: -22

Anyway, your original patch works perfectly. After two months and
hundreds of suspends/resumes (sometimes 10-20 without powering down),
it works without a single issue. Thanks for making my life easier. :)

Ivan


More information about the freebsd-mobile mailing list