Change in udev
I know that udev is being replaced by eudev, but there's a new behavior I don't understand. There is a new file /etc/udev/hwdb.bin that is created at runtime:
$ ls -l /etc/udev total 6548 -rw-r--r-- 1 root root 1785 Jan 9 1970 cache.data -r--r--r-- 1 root root 6660476 Mar 24 08:21 hwdb.bin drwxr-xr-x 2 root root 4096 Mar 24 06:42 hwdb.d -rw-r--r-- 1 root root 51 Mar 24 07:51 mount.blacklist drwxr-xr-x 2 root root 4096 Mar 24 07:51 mount.blacklist.d drwxr-xr-x 2 root root 4096 Mar 24 08:21 rules.d drwxr-xr-x 2 root root 4096 Mar 24 07:51 scripts -rw-r--r-- 1 root root 49 Mar 24 06:41 udev.conf
Is this [somehow] equivalent to the old udev device cache? Does it really belong in /etc/udev? What about read-only roots?
Thanks
n.b. I just noticed because a dump of /etc on my device went from ~6MB to over 12MB...
Signature · 4 lines
------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------
Quoted 3 lines · Gary Thomas
Is this [somehow] equivalent to the old udev device cache? Does it really belong in
/etc/udev? What about read-only roots?
An update to current master will help: the file is generated at build time and in a separate package so if you don't need it you can not install it.
Ross
Quoted 9 lines · Ross
On 24 March 2016 at 09:45, Gary Thomas <[email protected] <mailto:[email protected]>> wrote:
Is this [somehow] equivalent to the old udev device cache? Does it really belong in
/etc/udev? What about read-only roots?An update to current master will help: the file is generated at build time and in a separate package so if you don't need it you can not install it.
More recent than poky:2df514bfe4a911c0dca8828038dd94e6265f50ca?
(I just updated a few hours ago)
Signature · 4 lines
------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------
Quoted 2 lines · Gary Thomas
More recent than poky:2df514bfe4a911c0dca8828038dd94e6265f50ca?
In that case the file should have been generated at build time (please file a bug with logs if it wasn't) and is in a separate package so if you don't need it (its basically the USB and PCI ID tables) then you can remove it.
As you say, eudev is new, so there's bound to be small configuration issues to work out before release.
Ross
Quoted 10 lines · Ross
On 24 March 2016 at 10:27, Gary Thomas <[email protected] <mailto:[email protected]>> wrote:
More recent than poky:2df514bfe4a911c0dca8828038dd94e6265f50ca?In that case the file should have been generated at build time (please file a bug with logs if it wasn't) and is in a separate package so if you don't need it (its basically the USB and PCI ID tables) then you can remove it.
As you say, eudev is new, so there's bound to be small configuration issues to work out before release.
Ah, interesting. The file is in my rootfs, but it doesn't belong to any package?
This is from my build:
$ ls -l tmp/work/teton_p0382-amltd-linux-gnueabi/amanda-server-image/1.0-r0/rootfs/etc/udev/ total 6532 -rw-r--r-- 1 gthomas gthomas 0 Mar 24 07:41 cache.data -r--r--r-- 1 gthomas gthomas 6660476 Mar 24 09:21 hwdb.bin drwxr-xr-x 2 gthomas gthomas 4096 Mar 24 07:42 hwdb.d -rw-r--r-- 1 gthomas gthomas 51 Mar 24 08:51 mount.blacklist drwxr-xr-x 2 gthomas gthomas 4096 Mar 24 08:51 mount.blacklist.d drwxr-xr-x 2 gthomas gthomas 4096 Mar 24 09:21 rules.d drwxr-xr-x 2 gthomas gthomas 4096 Mar 24 08:51 scripts -rw-r--r-- 1 gthomas gthomas 49 Mar 24 07:41 udev.conf
On my target:
root@teton-p0382:~# opkg search /etc/udev/hwdb.bin root@teton-p0382:~#
I seem to have gotten the hwdb, but not packaged correctly. Again, on the target:
root@teton-p0382:~# opkg list-installed *udev* eudev - 3.1.5-r0.2 eudev-hwdb - 3.1.5-r0.2 libudev1 - 3.1.5-r0.2 udev-cache - 3.1.5-r0.2 udev-extraconf - 1.1-r0.6 udev-rules-imx - 1.0-r0.6 root@teton-p0382:~# opkg files eudev-hwdb Package eudev-hwdb (3.1.5-r0.2) is installed on root and has the following files: /etc/udev/hwdb.d/20-pci-classes.hwdb /etc/udev/hwdb.d/70-pointingstick.hwdb /etc/udev/hwdb.d/70-mouse.hwdb /etc/udev/hwdb.d/ /etc/udev/hwdb.d/20-acpi-vendor.hwdb /etc/udev/hwdb.d/20-usb-vendor-model.hwdb /etc/udev/hwdb.d/20-sdio-vendor-model.hwdb /etc/udev/hwdb.d/60-keyboard.hwdb /etc/udev/hwdb.d/20-net-ifname.hwdb /etc/udev/hwdb.d/20-usb-classes.hwdb /etc/udev/hwdb.d/20-bluetooth-vendor-product.hwdb /etc/udev/hwdb.d/60-evdev.hwdb /etc/udev/hwdb.d/20-pci-vendor-model.hwdb /etc/udev/hwdb.d/20-sdio-classes.hwdb /etc/udev/hwdb.d/20-OUI.hwdb
So /etc/udev/hwdb.bin is somehow unpackaged (an orphan)?
Also, how will I prevent eudev-hwdb from being sucked in if I only depend [RDEPENDS/RRECOMMENDS] on 'udev'?
Signature · 4 lines
------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------
Quoted 2 lines · Gary Thomas
So
/etc/udev/hwdb.binis somehow unpackaged (an orphan)?
Have a look at the recipe: it's a postinst from eudev-hwdb. Possibly that package should ship an empty file and we force it to re-generate in the postinst so it's not orphaned.
Quoted 3 lines
Also, how will I prevent eudev-hwdb from being sucked in if I only depend [RDEPENDS/RRECOMMENDS] on 'udev'?
eudev recommends eudev-hwdb, so BAD_RECOMMENDATIONS as usual.
Ross