udevd[178]: specified group 'plugdev' unknown |
|||||
Issue description
Chrome OS Version: 8693.0.0 (test)
Chrome OS Platform: any
Steps To Reproduce:
(1) boot
(2) grep plugdev /var/log/messages
(3)
Expected Result:
No 'unknown' group message
Actual Result:
2016-08-12T00:01:02.245931+08:00 ERR kernel: [ 2.239195] udevd[178]: specified group 'plugdev' unknown
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?
Unknown
Please provide any additional information below. Attach a screen shot or
log if possible.
The "group 'plugdev'" udev rules are in 70-dfu-programmer.rules.
$ grep plugdev /lib/udev/rules.d/*
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff7", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff3", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
This rule is installed by:
dfu-programmer-0.7.2.ebuild
Which was last updated to match upstream gentoo [0] by:
https://chromium-review.googlesource.com/328844
dfu-programmer: upgraded package to upstream
[0] https://packages.gentoo.org/packages/dev-embedded/dfu-programmer
$ equery-elm depends dfu-programmer
* These packages depend on dfu-programmer:
chromeos-base/chromeos-test-root-0.0.1-r6 (dev-embedded/dfu-programmer)
This dependency was created by:
https://chromium-review.googlesource.com/329750
chromeos-test-root: Add dfu-programmer and dfu-util
The error message is coming because Chrome OS does not have a 'plugdev' group:
localhost ~ # groups
root bin daemon sys adm disk wheel floppy tape video tss pkcs11 wpa chronos-access
There is a note in the commit message for CL:329750:
"Once all the servos get updated. These tools can be removed."
So if that means reverting CL:329750, then these messages will also go away.
Hence, blocking this on issue 551926 .
,
Aug 12 2016
The "dfu-programmer" package shouldn't be installed except on embedded Chrome OS platforms that include hdctools. It sounds like maybe it can even be restricted to beaglebone_servo images. Whatever dependency is pulling this package into regular Chrome OS images is wrong, and needs to get fixed.
,
Aug 12 2016
Looking more closely: > $ equery-elm depends dfu-programmer > * These packages depend on dfu-programmer: > chromeos-base/chromeos-test-root-0.0.1-r6 (dev-embedded/dfu-programmer) Oh. _That_ thing. It's a different kind of problem. We do want this package on Chrome OS, to support servo V3 reprogramming. I was suspicious of installing this package in "chromeos-test-root", but if there are udev rules, then that's necessary. :-( Still, why is that rule generating errors? The presence of an error message is ipso facto a bug.
,
Aug 12 2016
The error message is coming because Chrome OS does not have a 'plugdev' group
/lib/udev/rules.d/70-dfu-programmer.rules:SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", MODE="660", GROUP="plugdev", SYMLINK+="dfu-%n"
,
Aug 12 2016
> The error message is coming because Chrome OS does not have a 'plugdev' group Yeah, I've been slowly grokking that... IIUC, this means that the rules must be failing, and therefore currently don't do anything? So, I think this means we have three choices: 1) Remove the udev rules, because they're not needed. 2) Change the rules to use a Chrome OS-appropriate group. 3) Add a 'plugdev' group. I assume our preferences solutions would be in that order. For 1), I'd prefer that we move the dependency out of chromeos-test-root altogether. The only reason to use that package is for the sake of udev rules. If the rules don't belong, then moving the dependency will install the rules someplace harmless. It's a bit of a hack, but effective.
,
Aug 12 2016
I am not familiar with the dfu-programmer. Nick, is it OK to remove these udev rules?
,
Aug 12 2016
If the tool is run as root there's no need for udev rules
,
Aug 15 2016
dfu-programmer always runs as root. Filed changes to remove the rules: https://chromium-review.googlesource.com/#/c/370342 https://chromium-review.googlesource.com/#/c/370343
,
Aug 23 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/8855d08cbe68a7099d3b9a546fd1606b047b992d commit 8855d08cbe68a7099d3b9a546fd1606b047b992d Author: Wai-Hong Tam <waihong@google.com> Date: Mon Aug 22 22:29:26 2016 Mask the udev rules of dfu-programmer The udev rules are not compatible with Chrome OS. They are not needed as the program always runs as root. Mask the file of the udev rules. BUG= chromium:637175 TEST=emerge-samus dfu-programmer; checked no 70-dfu-programmer.rules TEST=Booted and verified no result on 'grep plugdev /var/log/messages' Change-Id: I821b17471783b27c0d8e021c5d3a53374bad2375 Reviewed-on: https://chromium-review.googlesource.com/374099 Commit-Ready: Wai-Hong Tam <waihong@google.com> Tested-by: Wai-Hong Tam <waihong@google.com> Reviewed-by: Mike Frysinger <vapier@chromium.org> [add] https://crrev.com/8855d08cbe68a7099d3b9a546fd1606b047b992d/chromeos/config/env/dev-embedded/dfu-programmer
,
Aug 23 2016
Should be fixed.
,
Aug 29 2016
,
Aug 29 2016
bulk verified
,
Aug 29 2016
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by waihong@chromium.org
, Aug 12 2016Status: Available (was: Assigned)