lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 16 May 2008 23:00:04 +0200
From:	Bruno Prémont <bonbons@...ux-vserver.org>
To:	Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc:	Linux Input <linux-input@...r.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	"R. J. Wysocki" <Rafal.Wysocki@....edu.pl>
Subject: Re: Input+S3: extra keycodes forgotten after suspend

Hi Dmitry,

On Friday 16 May 2008 22:38:07 Dmitry Torokhov wrote:
> Hi Bruno,
>
> On Fri, May 16, 2008 at 10:25:43PM +0200, Bruno Pr?mont wrote:
> > On my Acer TravelMate 660 I lose keycodes for the extra keys (dritek
> > extensions) after resume.
> >
> > The system runs setkeycodes during boot sequence to initialize key codes
> > for the extra keys as below:
> >
> > /usr/bin/setkeycodes KEYCODES="e025 138 e026 141 e027 171 e074 148 e073 149 e055 229 e056 230 e057 227 e058 228"
> > # Fn + F1   ~ e025  => 138 [KEY_HELP] (Help)
> > # Fn + F2   ~ e026  => 141 [KEY_SETUP] (Notebook Manager)
> > # Fn + F3   ~ e027  => 171 [KEY_CONFIG] (Power Options)
> > # Mail      ~ e06c  => 155 [KEY_MAIL] (EMail)
> > # WWW       ~ e032  => 150 [KEY_WWW] (Browser)
> > # P1        ~ e074  => 148 [KEY_PROG1] (P1)
> > # P2        ~ e073  => 149 [KEY_PROG2] (P2)
> > # Bluetooth ~ e058  => 228 [KEY_BLUETOOTH_DISABLE] (Disable Bluetooth)
> > # Bluetooth ~ e057  => 227 [KEY_BLUETOOTH_ENABLE] (Enable Bluetooth)
> > # Wireless  ~ e056  => 230 [KEY_WLAN_DISABLE] (Disable WLAN)
> > # Wireless  ~ e055  => 229 [KEY_WLAN_ENABLE] (Enable WLAN)
> > # Vol UP    ~ e030  => 115 [KEY_VOLUMEUP] (Increase Volume)
> > # Vol DOWN  ~ e02e  => 114 [KEY_VOLUMEDOWN] (Decrease Volume)
> > # Vol Mute  ~ e020  => 113 [KEY_MUTE] (Mute volume)
> >
> > After resume I end up with the following messages when pressing the keys:
> > [  779.695675] atkbd.c: Unknown key pressed (translated set 2, code 0xd6 on isa0060/serio0).
> > [  779.695675] atkbd.c: Use 'setkeycodes e056 <keycode>' to make it known. 
> > [  779.705218] atkbd.c: Unknown key released (translated set 2, code 0xd6 on isa0060/serio0).
> > [  779.705218] atkbd.c: Use 'setkeycodes e056 <keycode>' to make it known. 
> > [  781.603912] atkbd.c: Unknown key pressed (translated set 2, code 0xd5 on isa0060/serio0).
> > [  781.603912] atkbd.c: Use 'setkeycodes e055 <keycode>' to make it known.
> > [  781.613564] atkbd.c: Unknown key released (translated set 2, code 0xd5 on isa0060/serio0).
> > [  781.613564] atkbd.c: Use 'setkeycodes e055 <keycode>' to make it known.
> > [  782.772662] atkbd.c: Unknown key pressed (translated set 2, code 0xd7 on isa0060/serio0).
> > [  782.772662] atkbd.c: Use 'setkeycodes e057 <keycode>' to make it known.
> > [  782.782390] atkbd.c: Unknown key released (translated set 2, code 0xd7 on isa0060/serio0).
> > [  782.782390] atkbd.c: Use 'setkeycodes e057 <keycode>' to make it known.
> > [  783.461807] atkbd.c: Unknown key pressed (translated set 2, code 0xd8 on isa0060/serio0).
> > [  783.461807] atkbd.c: Use 'setkeycodes e058 <keycode>' to make it known.
> > [  783.471544] atkbd.c: Unknown key released (translated set 2, code 0xd8 on isa0060/serio0).
> > [  783.471544] atkbd.c: Use 'setkeycodes e058 <keycode>' to make it known.
> >
> >
> > Is this kind of issue known, what are the options to get kernel to
> > remember the keycode mappings after s2ram?
>
> Do you unload atkbd or perhaps i8042 for s2ram? Or do you see that
> keyboard is detected again (in dmesg) after resume?

I don't see anything in the logs that would allow to assume this.
Most is built right into the kernel.

Modules that were loaded for suspend/resume process (USB unloaded
before trying to suspend, alsa also stopped):
Module                  Size  Used by
pcspkr                  2176  0 
sunrpc                159996  17 nfs,lockd,nfs_acl
8021q                  17096  0 
xfs                   498804  4 
nsc_ircc               14480  0 
irda                  102584  1 nsc_ircc
crc_ccitt               1792  1 irda
b44                    22224  0 
ssb                    25796  1 b44
i2c_i801                8592  0 
evdev                   8448  1 
usbcore               123952  1 

Modules I loaded back later after resume:
nfs                   123180  4 
lockd                  59208  2 nfs
nfs_acl                 2688  1 nfs
squashfs               38408  1 
zlib_inflate           14720  1 squashfs
loop                   12932  8 
snd_pcm_oss            33888  0 
snd_mixer_oss          13376  1 snd_pcm_oss
snd_intel8x0           27932  3 
snd_ac97_codec         95268  1 snd_intel8x0
ac97_bus                1536  1 snd_ac97_codec
snd_pcm                56712  4 snd_pcm_oss,snd_intel8x0,snd_ac97_codec
snd_timer              18052  2 snd_pcm
snd                    42980  10 snd_pcm_oss,snd_mixer_oss,snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer
snd_page_alloc          7560  2 snd_intel8x0,snd_pcm


Note: the kernel is patched with the two patches I've just sent regarding
      dritek quirk (needed to get any response to they key presses)

Note: suspend/resume is not very stable on this laptop as visible in
      attached dmesg output)

Bruno

View attachment "suspend.dmesg" of type "text/plain" (43141 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ