New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 628508 link

Starred by 6 users

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Aug 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Alt+Volume_Up (F10) disables Volume_Up key

Project Member Reported by djkurtz@chromium.org, Jul 15 2016

Issue description

Chrome Version: 51.0.2704.79
Chrome OS Version: 8172.47.0
Chrome OS Platform: samus

Chrome Version: 54.0.2792.0
Chrome OS Version: 8577.0.0
Chrome OS Platform: veyron_minnie

Steps To Reproduce:
(1) Volume_Up
(2) Alt+Volume_Up (F10)
(3) Volume_Up
(4) Alt+Volume_Down
(5) Volume_Up

Expected Result:

Volume increases when Volume_Up is pressed in (1), (3) and (5).

Actual Result:

Volume only increases when Volume_Up is pressed in (1) and (5).
Volume does NOT increase in (3) [aka, after pressing Alt+Volume_Up].
Volume will only increase again when Alt+Volume_Down is pressed after Alt+Volume_Up.

How frequently does this problem reproduce? (Always, sometimes, hard to
reproduce?)

Always.

What is the impact to the user, and is there a workaround? If so, what is
it?

Surprised user when Volume_Up no longer increases volume after they accidentally hit Alt+Volume_Up.
This behavior is not suggested by the onscreen keyboard help overlay.

Please provide any additional information below. Attach a screen shot or
log if possible.

See http://crosbug.com/p/55228 for more details and analysis.
 
Alt+Volume_Up(F10) is the prefix for sysrq requests. It looks like when Alt+F10 is pressed the sysrq driver enters a reinject state:

https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.18/drivers/tty/sysrq.c#845

The sysrq driver will then reinject Alt+KEY_SYSRQ(F10) every time F10 is pressed:

https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.18/drivers/tty/sysrq.c#890

For example, you can crash chrome by pressing:

1. Alt+F10
2. F10+x

which is equivalent to pressing Alt+F10+x at the same time.

Not sure about the correct way to "fix" this though as it seems to be a feature instead of a bug. It's just that this is a developer feature and is not known to common users, so users may be confused if they accidentally pressed Alt+F10.

Comment 2 by dtor@chromium.org, Jul 15 2016

We use SysRq to allow signalling Chrome and pressing Alt-Volume-UP-x 3 times is an existing debugging feature that has been present since 2012: https://gerrit.chromium.org/gerrit/39527

While Alt and Volume-UP is pressed we are in SysRq mode which kernel "sitting" on the events until valid (or invalid) combination is pressed, however we should be "leaving" SysRq mode when between 2) and 3) we release both Alt and F10.



Comment 3 by dtor@chromium.org, Jul 19 2016

Owner: dtor@chromium.org
Status: Started (was: Available)
Project Member

Comment 5 by bugdroid1@chromium.org, Jul 29 2016

Labels: merge-merged-chromeos-3.14
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/7e7d95df29834784319b97f72360b75cd31a7eee

commit 7e7d95df29834784319b97f72360b75cd31a7eee
Author: Dmitry Torokhov <dtor@chromium.org>
Date: Fri Jul 15 23:56:05 2016

CHROMIUM: sysrq: replay the correct keys when releasing SysRq combo

When we changed SysRq code to terminate the SysRq state when releasing
either Alt or SysRq (upstream allows releasing SysRq and only needing to
keep pressing Alt) we neglected to adjust the event re-inject code which
caused us to keep re-injecting Alt-SysRq combination every time SysRq
alone was pressed until user again pressed and released Alt key.

Also we allowed F10 (Volume UP) to stand in for SysRq (since we do not
have dedicated SysRq key on our keyboards) but re-inject code was not
aware of this.

BUG= chromium:628508 
TEST=1) Press Alt+Volume_Up (F10)
     2) Release both
     3) Press Volume_Up - OSD should show increased volume

Change-Id: I5ddb2e6fe3a85a2cf030697cc9a5467f6b0ca237
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/361554
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>

[modify] https://crrev.com/7e7d95df29834784319b97f72360b75cd31a7eee/drivers/tty/sysrq.c
[modify] https://crrev.com/7e7d95df29834784319b97f72360b75cd31a7eee/drivers/tty/serial/kgdboc.c

Should probably be cherry-picked to other kernel branches too?
Project Member

Comment 7 by bugdroid1@chromium.org, Aug 1 2016

Labels: merge-merged-chromeos-3.18
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ab389ffbeb098371d9ea9abc599c9177967ba5b4

commit ab389ffbeb098371d9ea9abc599c9177967ba5b4
Author: Dmitry Torokhov <dtor@chromium.org>
Date: Fri Jul 15 23:56:05 2016

CHROMIUM: sysrq: replay the correct keys when releasing SysRq combo

When we changed SysRq code to terminate the SysRq state when releasing
either Alt or SysRq (upstream allows releasing SysRq and only needing to
keep pressing Alt) we neglected to adjust the event re-inject code which
caused us to keep re-injecting Alt-SysRq combination every time SysRq
alone was pressed until user again pressed and released Alt key.

Also we allowed F10 (Volume UP) to stand in for SysRq (since we do not
have dedicated SysRq key on our keyboards) but re-inject code was not
aware of this.

BUG= chromium:628508 
TEST=1) Press Alt+Volume_Up (F10)
     2) Release both
     3) Press Volume_Up - OSD should show increased volume

Change-Id: I5ddb2e6fe3a85a2cf030697cc9a5467f6b0ca237
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/361554
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
(cherry picked from commit 7e7d95df29834784319b97f72360b75cd31a7eee)
Reviewed-on: https://chromium-review.googlesource.com/364860
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/ab389ffbeb098371d9ea9abc599c9177967ba5b4/drivers/tty/sysrq.c
[modify] https://crrev.com/ab389ffbeb098371d9ea9abc599c9177967ba5b4/drivers/tty/serial/kgdboc.c

Project Member

Comment 8 by bugdroid1@chromium.org, Aug 1 2016

Labels: merge-merged-chromeos-3.10
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/7f8009e8c421b5b8e66f63c792b3cce4cf0fe5a9

commit 7f8009e8c421b5b8e66f63c792b3cce4cf0fe5a9
Author: Dmitry Torokhov <dtor@chromium.org>
Date: Fri Jul 15 23:56:05 2016

CHROMIUM: sysrq: replay the correct keys when releasing SysRq combo

When we changed SysRq code to terminate the SysRq state when releasing
either Alt or SysRq (upstream allows releasing SysRq and only needing to
keep pressing Alt) we neglected to adjust the event re-inject code which
caused us to keep re-injecting Alt-SysRq combination every time SysRq
alone was pressed until user again pressed and released Alt key.

Also we allowed F10 (Volume UP) to stand in for SysRq (since we do not
have dedicated SysRq key on our keyboards) but re-inject code was not
aware of this.

BUG= chromium:628508 
TEST=1) Press Alt+Volume_Up (F10)
     2) Release both
     3) Press Volume_Up - OSD should show increased volume

Change-Id: I5ddb2e6fe3a85a2cf030697cc9a5467f6b0ca237
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/361554
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
(cherry picked from commit 7e7d95df29834784319b97f72360b75cd31a7eee)
Reviewed-on: https://chromium-review.googlesource.com/364861
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/7f8009e8c421b5b8e66f63c792b3cce4cf0fe5a9/drivers/tty/sysrq.c
[modify] https://crrev.com/7f8009e8c421b5b8e66f63c792b3cce4cf0fe5a9/drivers/tty/serial/kgdboc.c

Project Member

Comment 9 by bugdroid1@chromium.org, Aug 1 2016

Labels: merge-merged-chromeos-4.4
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c41ea1d9fe9c823aa005daaaabe4835f4bc2be1f

commit c41ea1d9fe9c823aa005daaaabe4835f4bc2be1f
Author: Dmitry Torokhov <dtor@chromium.org>
Date: Fri Jul 15 23:56:05 2016

CHROMIUM: sysrq: replay the correct keys when releasing SysRq combo

When we changed SysRq code to terminate the SysRq state when releasing
either Alt or SysRq (upstream allows releasing SysRq and only needing to
keep pressing Alt) we neglected to adjust the event re-inject code which
caused us to keep re-injecting Alt-SysRq combination every time SysRq
alone was pressed until user again pressed and released Alt key.

Also we allowed F10 (Volume UP) to stand in for SysRq (since we do not
have dedicated SysRq key on our keyboards) but re-inject code was not
aware of this.

BUG= chromium:628508 
TEST=1) Press Alt+Volume_Up (F10)
     2) Release both
     3) Press Volume_Up - OSD should show increased volume

Change-Id: I5ddb2e6fe3a85a2cf030697cc9a5467f6b0ca237
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/361554
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
(cherry picked from commit 7e7d95df29834784319b97f72360b75cd31a7eee)
Reviewed-on: https://chromium-review.googlesource.com/364862
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/c41ea1d9fe9c823aa005daaaabe4835f4bc2be1f/drivers/tty/sysrq.c
[modify] https://crrev.com/c41ea1d9fe9c823aa005daaaabe4835f4bc2be1f/drivers/tty/serial/kgdboc.c

Project Member

Comment 10 by bugdroid1@chromium.org, Aug 4 2016

Labels: merge-merged-chromeos-3.8
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/653848d0fa58ebf9cc0c7543ff88b4a9e154651d

commit 653848d0fa58ebf9cc0c7543ff88b4a9e154651d
Author: Dmitry Torokhov <dtor@chromium.org>
Date: Fri Jul 15 23:56:05 2016

CHROMIUM: sysrq: replay the correct keys when releasing SysRq combo

When we changed SysRq code to terminate the SysRq state when releasing
either Alt or SysRq (upstream allows releasing SysRq and only needing to
keep pressing Alt) we neglected to adjust the event re-inject code which
caused us to keep re-injecting Alt-SysRq combination every time SysRq
alone was pressed until user again pressed and released Alt key.

Also we allowed F10 (Volume UP) to stand in for SysRq (since we do not
have dedicated SysRq key on our keyboards) but re-inject code was not
aware of this.

BUG= chromium:628508 
TEST=1) Press Alt+Volume_Up (F10)
     2) Release both
     3) Press Volume_Up - OSD should show increased volume

Change-Id: I5ddb2e6fe3a85a2cf030697cc9a5467f6b0ca237
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/361554
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
(cherry picked from commit 7e7d95df29834784319b97f72360b75cd31a7eee
 and resolved conflicts since we do not have support for reset sequence
 in 3.8)
Reviewed-on: https://chromium-review.googlesource.com/364883
Reviewed-by: Guenter Roeck <groeck@chromium.org>

[modify] https://crrev.com/653848d0fa58ebf9cc0c7543ff88b4a9e154651d/drivers/tty/sysrq.c
[modify] https://crrev.com/653848d0fa58ebf9cc0c7543ff88b4a9e154651d/drivers/tty/serial/kgdboc.c

Comment 11 by dtor@chromium.org, Aug 4 2016

Status: Fixed (was: Started)

Comment 12 by son...@google.com, Aug 12 2016

Status: Verified (was: Fixed)
Verified on build 8697.0.0
 Issue 646622  has been merged into this issue.

Sign in to add a comment