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

Issue 879018 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 14
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug-Regression



Sign in to add a comment

USB-C dock doesn't work when plugged in while on the lock screen

Reported by ram...@gmail.com, Aug 30

Issue description

UserAgent: Mozilla/5.0 (X11; CrOS x86_64 10991.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3524.2 Safari/537.36
Platform: 10991.0.0 (Official Build) dev-channel soraka-unibuild (soraka)

Steps to reproduce the problem:
Using a Plugable USBC-MD101 USB-C dock with a USB hub (with trackball and keyboard) and HDMI monitor plugged in. The USB-C dock has been used many times before.

1. Unplug dock
2. Leave Chromebook inactive for a while until it goes to sleep (or close the lid)
3. Open/wake Chromebook, which wakes to the lock screen
4. Plug in the dock
5. The HDMI monitor works but the USB keyboard and trackball do not. You have to unplug the dock, log in, and then plug the dock back in.

What is the expected behavior?
The USB devices should be usable on the lock screen when plugged in, before entering the password.

What went wrong?
I believe the issue is with usbguard rules and may be related to this commit:  https://chromium.googlesource.com/chromium/src/+/97f3b920f08e48d542279f5bd34209a88660416a

While the screen is locked, I get the following logs in /var/logs/messages

2018-08-28T22:15:38.452421-04:00 NOTICE usbguard-daemon[12473]: uid=20123 pid=2 result='SUCCESS' device.rule='block id 2109:0813 serial "" name "USB3.0 Hub" hash "{redacted}" parent-hash "{redacted}"  via-port "2-1.1" with-interface 09:00:00' device.system_name='/devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1.1' type='Device.Remove' 
2018-08-28T22:15:38.454818-04:00 NOTICE usbguard-daemon[12473]: uid=20123 pid=2 result='SUCCESS' device.rule='block id 2109:2813 serial "" name "USB2.0 Hub" hash "{redacted}"  parent-hash "{redacted}"  via-port "1-1.1" with-interface 09:00:00' device.system_name='/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.1' type='Device.Remove' 
2018-08-28T22:15:39.752136-04:00 INFO kernel: [195483.797447] Bluetooth: hci_core.c:skip_conditional_cmd()   COND LE cmd (0x200c) is already 0 (chg 0), skip transition to 0
2018-08-28T22:15:39.752148-04:00 INFO kernel: [195483.797453] Bluetooth: hci_core.c:skip_conditional_cmd()   COND call queue_work.
2018-08-28T22:15:41.019219-04:00 INFO kernel: [195485.064883] usb 2-1.1: new SuperSpeed USB device number 6 using xhci_hcd
2018-08-28T22:15:41.115137-04:00 INFO kernel: [195485.161252] usb 2-1.1: New USB device found, idVendor=2109, idProduct=0813, bcdDevice=90.11
2018-08-28T22:15:41.115158-04:00 INFO kernel: [195485.161263] usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:15:41.115160-04:00 INFO kernel: [195485.161269] usb 2-1.1: Product: USB3.0 Hub
2018-08-28T22:15:41.115161-04:00 INFO kernel: [195485.161274] usb 2-1.1: Manufacturer: VIA Labs, Inc.
2018-08-28T22:15:41.116141-04:00 ERR kernel: [195485.161804] usb 2-1.1: Device is not authorized for usage
2018-08-28T22:15:41.118203-04:00 NOTICE usbguard-daemon[12473]: uid=20123 pid=2 result='SUCCESS' device.rule='block id 2109:0813 serial "" name "USB3.0 Hub" hash "{redacted}"  parent-hash "{redacted}" via-port "2-1.1" with-interface 09:00:00' device.system_name='/devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1.1' type='Device.Insert' 
2018-08-28T22:15:41.119072-04:00 NOTICE usbguard-daemon[12473]: uid=20123 pid=2 result='SUCCESS' device.rule='block id 2109:0813 serial "" name "USB3.0 Hub" hash "{redacted}"  parent-hash "{redacted}"  via-port "2-1.1" with-interface 09:00:00' target.old='block' device.system_name='/devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1.1' target.new='block' type='Policy.Device.Update' 
2018-08-28T22:15:41.964184-04:00 INFO kernel: [195486.009471] usb 1-1.1: new high-speed USB device number 16 using xhci_hcd
2018-08-28T22:15:42.060299-04:00 INFO kernel: [195486.105499] usb 1-1.1: New USB device found, idVendor=2109, idProduct=2813, bcdDevice=90.11
2018-08-28T22:15:42.060330-04:00 INFO kernel: [195486.105514] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:15:42.060336-04:00 INFO kernel: [195486.105521] usb 1-1.1: Product: USB2.0 Hub
2018-08-28T22:15:42.060339-04:00 INFO kernel: [195486.105527] usb 1-1.1: Manufacturer: VIA Labs, Inc.
2018-08-28T22:15:42.060342-04:00 ERR kernel: [195486.106176] usb 1-1.1: Device is not authorized for usage

When the USB-C dock is plugged in and works normally, I see these logs:

2018-08-28T22:16:11.776058-04:00 INFO kernel: [    2.802122] usb 1-1: new high-speed USB device number 4 using xhci_hcd
2018-08-28T22:16:11.944049-04:00 INFO kernel: [    2.970565] usb 1-1: New USB device found, idVendor=2109, idProduct=2813, bcdDevice=90.11
2018-08-28T22:16:11.944072-04:00 INFO kernel: [    2.970579] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:16:11.944075-04:00 INFO kernel: [    2.970587] usb 1-1: Product: USB2.0 Hub
2018-08-28T22:16:11.944077-04:00 INFO kernel: [    2.970593] usb 1-1: Manufacturer: VIA Labs, Inc.
2018-08-28T22:16:11.945035-04:00 INFO kernel: [    2.971607] hub 1-1:1.0: USB hub found
2018-08-28T22:16:11.946022-04:00 INFO kernel: [    2.972404] hub 1-1:1.0: 4 ports detected
2018-08-28T22:16:12.131034-04:00 NOTICE kernel: [    3.157474] audit: type=1401 audit(1535508972.129:8): op=security_bounded_transition seresult=denied oldcontext=u:r:minijail:s0 newcontext=u:r:minijailed:s0
2018-08-28T22:16:12.208548-04:00 NOTICE cros-machine-id-regen[1433]: Regenerated /var/lib/dbus/machine-id (reason: network).
2018-08-28T22:16:12.236019-04:00 INFO kernel: [    3.262048] usb 1-1.1: new high-speed USB device number 5 using xhci_hcd
2018-08-28T22:16:12.301024-04:00 INFO kernel: [    3.327235] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
2018-08-28T22:16:12.323188-04:00 INFO kernel: [    3.349747] usb 1-1.1: New USB device found, idVendor=2109, idProduct=2813, bcdDevice=90.11
2018-08-28T22:16:12.323203-04:00 INFO kernel: [    3.349753] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:16:12.323205-04:00 INFO kernel: [    3.349756] usb 1-1.1: Product: USB2.0 Hub
2018-08-28T22:16:12.323206-04:00 INFO kernel: [    3.349758] usb 1-1.1: Manufacturer: VIA Labs, Inc.
2018-08-28T22:16:12.324017-04:00 INFO kernel: [    3.350670] hub 1-1.1:1.0: USB hub found
2018-08-28T22:16:12.325010-04:00 INFO kernel: [    3.351484] hub 1-1.1:1.0: 4 ports detected
2018-08-28T22:16:12.408089-04:00 INFO kernel: [    3.434075] usb 1-1.2: new high-speed USB device number 6 using xhci_hcd
2018-08-28T22:16:12.516058-04:00 INFO kernel: [    3.542792] usb 1-1.2: New USB device found, idVendor=2109, idProduct=0101, bcdDevice= 1.06
2018-08-28T22:16:12.516078-04:00 INFO kernel: [    3.542803] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
2018-08-28T22:16:12.516080-04:00 INFO kernel: [    3.542809] usb 1-1.2: Product: USB 2.0 BILLBOARD             
2018-08-28T22:16:12.516082-04:00 INFO kernel: [    3.542814] usb 1-1.2: Manufacturer: VIA Technologies Inc.         
2018-08-28T22:16:12.516083-04:00 INFO kernel: [    3.542818] usb 1-1.2: SerialNumber: 0000000000000001
2018-08-28T22:16:12.656043-04:00 INFO kernel: [    3.682067] usb 1-1.1.1: new low-speed USB device number 7 using xhci_hcd
2018-08-28T22:16:12.694014-04:00 WARNING tpm_managerd[1082]: WARNING: Verified boot PCR 2 is not initialized.
2018-08-28T22:16:12.752377-04:00 WARNING tpm_managerd[1082]: WARNING: Verified boot PCR 3 is not initialized.
2018-08-28T22:16:12.791166-04:00 INFO kernel: [    3.817806] usb 1-1.1.1: New USB device found, idVendor=047d, idProduct=2048, bcdDevice= 6.00
2018-08-28T22:16:12.791190-04:00 INFO kernel: [    3.817819] usb 1-1.1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:16:12.791194-04:00 INFO kernel: [    3.817826] usb 1-1.1.1: Product: Kensington Eagle Trackball
2018-08-28T22:16:12.791196-04:00 INFO kernel: [    3.817832] usb 1-1.1.1: Manufacturer: Primax
2018-08-28T22:16:12.791199-04:00 WARNING kernel: [    3.818151] usb 1-1.1.1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
2018-08-28T22:16:12.797046-04:00 INFO kernel: [    3.823518] input: Primax Kensington Eagle Trackball as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/0003:047D:2048.0004/input/input8
2018-08-28T22:16:12.797067-04:00 INFO kernel: [    3.823756] hid-generic 0003:047D:2048.0004: input,hidraw2: USB HID v1.11 Mouse [Primax Kensington Eagle Trackball] on usb-0000:00:14.0-1.1.1/input0
2018-08-28T22:16:12.915034-04:00 INFO kernel: [    3.941101] usb 1-1.1.3: new low-speed USB device number 8 using xhci_hcd
2018-08-28T22:16:13.051062-04:00 INFO kernel: [    4.077260] usb 1-1.1.3: New USB device found, idVendor=046d, idProduct=c326, bcdDevice=79.00
2018-08-28T22:16:13.051092-04:00 INFO kernel: [    4.077275] usb 1-1.1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:16:13.051096-04:00 INFO kernel: [    4.077284] usb 1-1.1.3: Product: USB Keyboard
2018-08-28T22:16:13.051099-04:00 INFO kernel: [    4.077290] usb 1-1.1.3: Manufacturer: Logitech
2018-08-28T22:16:13.051102-04:00 WARNING kernel: [    4.077560] usb 1-1.1.3: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
2018-08-28T22:16:13.051105-04:00 WARNING kernel: [    4.077575] usb 1-1.1.3: ep 0x82 - rounding interval to 64 microframes, ep desc says 80 microframes
2018-08-28T22:16:13.052614-04:00 INFO chapsd[1086]: Opening database in: /var/lib/chaps
2018-08-28T22:16:13.057050-04:00 INFO kernel: [    4.083655] input: Logitech USB Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.1/1-1.1.3/1-1.1.3:1.0/0003:046D:C326.0005/input/input9
2018-08-28T22:16:13.073160-04:00 INFO chapsd[1086]: Slot 0 ready for token at /var/lib/chaps
2018-08-28T22:16:13.124057-04:00 INFO kernel: [    4.150583] hid-generic 0003:046D:C326.0005: input,hidraw3: USB HID v1.10 Keyboard [Logitech USB Keyboard] on usb-0000:00:14.0-1.1.3/input0
2018-08-28T22:16:13.129042-04:00 INFO kernel: [    4.155841] input: Logitech USB Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.1/1-1.1.3/1-1.1.3:1.1/0003:046D:C326.0006/input/input10
2018-08-28T22:16:13.130039-04:00 INFO kernel: [    4.156332] hid-generic 0003:046D:C326.0006: input,hiddev0,hidraw4: USB HID v1.10 Device [Logitech USB Keyboard] on usb-0000:00:14.0-1.1.3/input1
2018-08-28T22:16:13.207061-04:00 INFO kernel: [    4.233058] usb 1-1.1.4: new full-speed USB device number 9 using xhci_hcd
2018-08-28T22:16:13.295026-04:00 INFO kernel: [    4.321554] usb 1-1.1.4: New USB device found, idVendor=046d, idProduct=c52b, bcdDevice=12.01
2018-08-28T22:16:13.295038-04:00 INFO kernel: [    4.321560] usb 1-1.1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2018-08-28T22:16:13.295039-04:00 INFO kernel: [    4.321563] usb 1-1.1.4: Product: USB Receiver
2018-08-28T22:16:13.295040-04:00 INFO kernel: [    4.321566] usb 1-1.1.4: Manufacturer: Logitech
2018-08-28T22:16:13.309025-04:00 INFO kernel: [    4.335691] logitech-djreceiver 0003:046D:C52B.0009: hiddev0,hidraw5: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-1.1.4/input2
2018-08-28T22:16:13.486022-04:00 INFO kernel: [    4.512925] input: Logitech M510 as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.1/1-1.1.4/1-1.1.4:1.2/0003:046D:C52B.0009/0003:046D:1025.000A/input/input11
2018-08-28T22:16:13.487725-04:00 INFO kernel: [    4.513357] logitech-hidpp-device 0003:046D:1025.000A: input,hidraw6: USB HID v1.11 Mouse [Logitech M510] on usb-0000:00:14.0-1.1.4:1

Did this work before? Yes I believe the issue started with the update to 70.0.3524.2 on the dev channel, but not 100% sure.

Chrome version: 70.0.3524.2  Channel: dev
OS Version: 10991.0.0
Flash Version: 30.0.0.142 /opt/google/chrome/pepper/libpepflashplayer.so
 
Cc: allenwebb@chromium.org
Components: OS>Systems
Labels: -Type-Bug-Security -Pri-2 -Restrict-View-SecurityTeam -Via-Wizard-Security Pri-1 Type-Bug-Regression
Owner: allenwebb@chromium.org
Status: Assigned (was: Unconfirmed)
Cc: clgilbert@chromium.org
Labels: ReleaseBlock-Stable M-70
Definitely needs a resolution for Stable, possibly even for beta.
Labels: Merge-Request-70
Labels: Merge-Approved-70
Labels: -Merge-Request-70
Project Member

Comment 8 by bugdroid1@chromium.org, Sep 11

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/5039fa1ca35febf1397b1ef8f5055554337a3818

commit 5039fa1ca35febf1397b1ef8f5055554337a3818
Author: Allen Webb <allenwebb@google.com>
Date: Tue Sep 11 07:40:52 2018

usbguard: change default configuration to be more permissive.

Instead of only allowing a specific set of white listed devices (the
ones that were already connected, and any board specific whitelists),
this change only blocks devices with interfaces that should not be
needed at the lock screen (i.e. 0x05-physical. 0x06-still imaging,
0x07-printers, 0x08-mass storage). This should provide some protection
while giving time for us to implement a better user specific
whitelisting strategy.

BUG= chromium:879018 
TEST=connect a keyboard through a USB hub at the lock screen and verify
  it works

Change-Id: I1a104eb829da48c6df45f2f2ff6e37b959fa3872
Signed-off-by: Allen Webb <allenwebb@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1217622
Reviewed-by: Mattias Nissler <mnissler@chromium.org>
Reviewed-by: Jorge Lucangeli Obes <jorgelo@chromium.org>

[rename] https://crrev.com/5039fa1ca35febf1397b1ef8f5055554337a3818/sys-apps/usbguard/usbguard-20180726-r9.ebuild
[modify] https://crrev.com/5039fa1ca35febf1397b1ef8f5055554337a3818/sys-apps/usbguard/files/99-rules.conf

Project Member

Comment 9 by bugdroid1@chromium.org, Sep 11

Labels: merge-merged-release-R70-11021.B
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/e64c4af315bfb0b83a896e1d3fc6c009413adb7a

commit e64c4af315bfb0b83a896e1d3fc6c009413adb7a
Author: Allen Webb <allenwebb@google.com>
Date: Tue Sep 11 16:27:16 2018

usbguard: change default configuration to be more permissive.

Instead of only allowing a specific set of white listed devices (the
ones that were already connected, and any board specific whitelists),
this change only blocks devices with interfaces that should not be
needed at the lock screen (i.e. 0x05-physical. 0x06-still imaging,
0x07-printers, 0x08-mass storage). This should provide some protection
while giving time for us to implement a better user specific
whitelisting strategy.

BUG= chromium:879018 
TEST=connect a keyboard through a USB hub at the lock screen and verify
  it works

Change-Id: I1a104eb829da48c6df45f2f2ff6e37b959fa3872
Signed-off-by: Allen Webb <allenwebb@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1217622
Reviewed-by: Mattias Nissler <mnissler@chromium.org>
Reviewed-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
(cherry picked from commit 5039fa1ca35febf1397b1ef8f5055554337a3818)
Reviewed-on: https://chromium-review.googlesource.com/1220086

[add] https://crrev.com/e64c4af315bfb0b83a896e1d3fc6c009413adb7a/sys-apps/usbguard/usbguard-20180726-r9.ebuild
[modify] https://crrev.com/e64c4af315bfb0b83a896e1d3fc6c009413adb7a/sys-apps/usbguard/files/99-rules.conf

Project Member

Comment 10 by bugdroid1@chromium.org, Sep 12

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cdc8e69dd2ef992ffe6fe95c1831d1b1947d3959

commit cdc8e69dd2ef992ffe6fe95c1831d1b1947d3959
Author: Allen Webb <allenwebb@google.com>
Date: Wed Sep 12 20:36:00 2018

[usbguard] Add flag to so usbguard can be force enabled/disabled.

This flag allows users to work around a breakage caused by usbguard,
by forcing the feature disabled, or testers to force the feature
enabled.

BUG= chromium:879018 

Signed-off-by: Allen Webb <allenwebb@google.com>
Change-Id: If8bd69ceea660f6de3f7f2935b489ffa6ffe6a08
Reviewed-on: https://chromium-review.googlesource.com/1211944
Reviewed-by: Mattias Nissler <mnissler@chromium.org>
Cr-Commit-Position: refs/heads/master@{#590807}
[modify] https://crrev.com/cdc8e69dd2ef992ffe6fe95c1831d1b1947d3959/chrome/browser/about_flags.cc
[modify] https://crrev.com/cdc8e69dd2ef992ffe6fe95c1831d1b1947d3959/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/cdc8e69dd2ef992ffe6fe95c1831d1b1947d3959/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/cdc8e69dd2ef992ffe6fe95c1831d1b1947d3959/tools/metrics/histograms/enums.xml

Project Member

Comment 11 by sheriffbot@chromium.org, Sep 14

Cc: geo...@google.com allenwebb@google.com
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible!

If all merges have been completed, please remove any remaining Merge-Approved labels from this issue.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Approved-70
Status: Fixed (was: Assigned)

Sign in to add a comment