Summary: | sys-kernel/genkernel-next: `genkernel --oldconfig --udev all` should not expect legacy /sbin/udevd to exist | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Juergen Rose <rose> |
Component: | [OLD] Core system | Assignee: | Fabio Erculiani (RETIRED) <lxnay> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | gentoo-bugs, systemd |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
/var/log/genkernel.log
Fix /bin/udevadm copy |
Description
Juergen Rose
2013-09-16 12:06:14 UTC
well, udev-init-scripts is capable of picking up /usr/lib/systemd/systemd-udevd, and so should genkernel-next and as for the .rules it should query udevdir from udev.pc using pkg-config so this is primarily genkernel-next bug, secondary systemd bug for dropping the compability symlinks too early I am not sure about what's the problem with .rules files, since genkernel-next is using: "pkg-config --variable udevdir udev". The rest is fixed in Git: commit a6979a54034a1b68d6a374d9bd03a191e11cce86 Author: Fabio Erculiani <lxnay@sabayon.org> Date: Wed Sep 18 21:31:44 2013 +0200 gen_initramfs: use systemd-udevd if udevd is not available This fixes systemd-207 support and bug #485094 Now I have a similar error with genkernel-next-24-r1 on the next system: root@caiman:/usr/src/linux(15)# time genkernel --oldconfig --udev --mdadm all * Gentoo Linux Genkernel; Version 24 * Running with options: --oldconfig --udev --mdadm all * Using genkernel.conf from /etc/genkernel.conf * Sourcing arch-specific config.sh from /usr/share/genkernel/arch/x86_64/config.sh .. * Sourcing arch-specific modules_load from /usr/share/genkernel/arch/x86_64/modules_load .. * Linux Kernel 3.11.1-gentoo for x86_64... * .. with config file /usr/share/genkernel/arch/x86_64/kernel-config * kernel: --mrproper is disabled; not running 'make mrproper'. * >> Running oldconfig... * kernel: --clean is disabled; not running 'make clean'. * >> Compiling 3.11.1-gentoo bzImage... * >> Not installing firmware as it's included in the kernel already (CONFIG_FIRMWARE_IN_KERNEL=y)... * >> Compiling 3.11.1-gentoo modules... * >> Generating module dependency data... * Copying config for successful build to /etc/kernels/kernel-config-x86_64-3.11.1-gentoo * busybox: >> Removing stale cache... * busybox: >> Applying patches... * - 1.18.1-openvt.diff * - busybox-1.20.1-mdstart.patch * - busybox-1.20.2-glibc-sys-resource.patch * - busybox-1.7.4-signal-hack.patch * busybox: >> Configuring... * busybox: >> Compiling... * busybox: >> Copying to cache... * initramfs: >> Initializing... * >> Appending base_layout cpio data... * >> Appending udev cpio data... cp: cannot stat ‘/lib/udev/rules.d/40-gentoo.rules’: No such file or directory * cannot copy /lib/udev/rules.d/40-gentoo.rules from udev cp: cannot stat ‘/etc/modprobe.d/blacklist.conf’: No such file or directory * cannot copy /etc/modprobe.d/blacklist.conf from udev * ERROR: Binary /sbin/udevd could not be found * * -- Grepping log... -- * * CC drivers/video/console/dummycon.o * CC drivers/usb/core/buffer.o * CC drivers/video/console/vgacon.o * CC drivers/video/console/fbcon.o *drivers/video/console/fbcon.c: In function ‘fbcon_clear_margins’: *drivers/video/console/fbcon.c:1319:20: warning: unused variable ‘ops’ [-Wunused-variable] *-- * AR lib/lib.a * LD lib/built-in.o * LINK vmlinux * LD vmlinux.o * MODPOST vmlinux.o *WARNING: modpost: Found 1 section mismatch(es). *-- * busybox: >> Configuring... *COMMAND: make -j2 CC="gcc" LD="ld" AS="as" * HOSTCC scripts/basic/fixdep * HOSTCC scripts/basic/split-include *scripts/basic/split-include.c: In function ‘main’: *scripts/basic/split-include.c:134:11: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result] *-- * GEN mailutils/Config.in * GEN console-tools/Kbuild * GEN console-tools/Config.in * HOSTCC scripts/kconfig/conf.o *scripts/kconfig/conf.c: In function ‘conf_choice’: *scripts/kconfig/conf.c:354:9: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result] *scripts/kconfig/conf.c: In function ‘conf_askvalue’: *scripts/kconfig/conf.c:106:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result] *-- * HOSTCC scripts/kconfig/mconf.o * SHIPPED scripts/kconfig/zconf.tab.c * SHIPPED scripts/kconfig/lex.zconf.c * SHIPPED scripts/kconfig/zconf.hash.c *scripts/kconfig/mconf.c: In function ‘show_textbox’: *scripts/kconfig/mconf.c:839:7: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] *scripts/kconfig/mconf.c: In function ‘exec_conf’: *scripts/kconfig/mconf.c:473:6: warning: ignoring return value of ‘pipe’, declared with attribute warn_unused_result [-Wunused-result] * HOSTCC scripts/kconfig/zconf.tab.o * HOSTLD scripts/kconfig/conf *scripts/kconfig/conf -o Config.in *.config:45:warning: trying to assign nonexistent symbol PID_FILE_PATH *.config:100:warning: trying to assign nonexistent symbol SHA3_SMALL *.config:268:warning: trying to assign nonexistent symbol SHA3SUM *.config:621:warning: trying to assign nonexistent symbol FEATURE_VOLUMEID_EXFAT *.config:625:warning: trying to assign nonexistent symbol FEATURE_VOLUMEID_NILFS *.config:633:warning: trying to assign nonexistent symbol FEATURE_VOLUMEID_SQUASHFS *.config:1027:warning: trying to assign nonexistent symbol FEATURE_KMSG_SYSLOG ... *-- * CC util-linux/volume_id/iso9660.o * CC util-linux/more.o * CC util-linux/volume_id/jfs.o * CC util-linux/mount.o *util-linux/mount.c: In function ‘mount_it_now’: *util-linux/mount.c:605:3: warning: format not a string literal and no format arguments [-Wformat-security] *util-linux/mount.c: In function ‘singlemount’: *util-linux/mount.c:1859:6: warning: format not a string literal and no format arguments [-Wformat-security] *util-linux/mount.c: In function ‘mount_main’: *util-linux/mount.c:2054:5: warning: format not a string literal and no format arguments [-Wformat-security] *util-linux/mount.c:2071:3: warning: format not a string literal and no format arguments [-Wformat-security] *util-linux/mount.c:2134:5: warning: format not a string literal and no format arguments [-Wformat-security] *util-linux/mount.c:2214:5: warning: format not a string literal and no format arguments [-Wformat-security] *-- * Running with options: --oldconfig --udev --mdadm all * Using genkernel.conf from /etc/genkernel.conf * Sourcing arch-specific config.sh from /usr/share/genkernel/arch/x86_64/config.sh .. * Sourcing arch-specific modules_load from /usr/share/genkernel/arch/x86_64/modules_load .. * * ERROR: Binary /sbin/udevd could not be found * * -- End log... -- * * Please consult /var/log/genkernel.log for more information and any * errors that were reported above. * * Report any genkernel bugs to bugs.gentoo.org and * assign your bug to genkernel@gentoo.org. Please include * as much information as you can in your bug report; attaching * /var/log/genkernel.log so that your issue can be dealt with effectively. * * Please do *not* report compilation failures as genkernel bugs! * real 13m51.851s user 23m11.924s sys 4m24.919s Created attachment 359100 [details]
/var/log/genkernel.log
+*genkernel-next-26 (20 Sep 2013) + + 20 Sep 2013; Fabio Erculiani <lxnay@gentoo.org> -genkernel-next-18.ebuild, + +genkernel-next-26.ebuild: + version bump, drop old v26 fixes it. (In reply to Fabio Erculiani from comment #5) > +*genkernel-next-26 (20 Sep 2013) > + > + 20 Sep 2013; Fabio Erculiani <lxnay@gentoo.org> -genkernel-next-18.ebuild, > + +genkernel-next-26.ebuild: > + version bump, drop old > > v26 fixes it. When will we get it. (In reply to Juergen Rose from comment #6) > (In reply to Fabio Erculiani from comment #5) > > +*genkernel-next-26 (20 Sep 2013) > > + > > + 20 Sep 2013; Fabio Erculiani <lxnay@gentoo.org> -genkernel-next-18.ebuild, > > + +genkernel-next-26.ebuild: > > + version bump, drop old > > > > v26 fixes it. > > When will we get it. Now I have genkernel-next-26, but 'genkernel --oldconfig --udev --mdadm all' still fails: root@leopard:/usr/src/linux(59)# time genkernel --oldconfig --udev --mdadm all * Gentoo Linux Genkernel; Version 26 * Running with options: --oldconfig --udev --mdadm all * Using genkernel.conf from /etc/genkernel.conf * Sourcing arch-specific config.sh from /usr/share/genkernel/arch/x86_64/config.sh .. * Sourcing arch-specific modules_load from /usr/share/genkernel/arch/x86_64/modules_load .. * Linux Kernel 3.11.1-gentoo for x86_64... * .. with config file /etc/kernels/kernel-config-x86_64-3.11.1-gentoo * mount: /boot mounted successfully! * kernel: --mrproper is disabled; not running 'make mrproper'. * >> Running oldconfig... * kernel: --clean is disabled; not running 'make clean'. * >> Compiling 3.11.1-gentoo bzImage... * >> Installing firmware ('make firmware_install') due to CONFIG_FIRMWARE_IN_KERNEL != y... * >> Compiling 3.11.1-gentoo modules... * >> Generating module dependency data... * Copying config for successful build to /etc/kernels/kernel-config-x86_64-3.11.1-gentoo * busybox: >> Using cache * initramfs: >> Initializing... * >> Appending base_layout cpio data... * >> Appending udev cpio data... cp: cannot stat ‘/lib/udev/rules.d/40-gentoo.rules’: No such file or directory * cannot copy /lib/udev/rules.d/40-gentoo.rules from udev cp: cannot stat ‘/etc/modprobe.d/blacklist.conf’: No such file or directory * cannot copy /etc/modprobe.d/blacklist.conf from udev * ERROR: Binary /bin/udevadm could not be found * * -- Grepping log... -- * * Running with options: --oldconfig --udev --mdadm all * Using genkernel.conf from /etc/genkernel.conf * Sourcing arch-specific config.sh from /usr/share/genkernel/arch/x86_64/config.sh .. * Sourcing arch-specific modules_load from /usr/share/genkernel/arch/x86_64/modules_load .. * * ERROR: Binary /bin/udevadm could not be found * * -- End log... -- * * Please consult /var/log/genkernel.log for more information and any * errors that were reported above. * * Report any genkernel bugs to bugs.gentoo.org and * assign your bug to genkernel@gentoo.org. Please include * as much information as you can in your bug report; attaching * /var/log/genkernel.log so that your issue can be dealt with effectively. * * Please do *not* report compilation failures as genkernel bugs! * real 0m20.133s user 0m23.904s sys 0m7.324s root@leopard:/usr/src/linux(60)# ll /bin/udevadm /bin/ls: cannot access /bin/udevadm: No such file or directory root@leopard:/usr/src/linux(61)# qlist -Iv genkernel-next sys-kernel/genkernel-next-26 Created attachment 359140 [details, diff]
Fix /bin/udevadm copy
This patch fixes it. It will be in the next release. Please test.
Isn't there a mistake in the patch? (at least it doesn't work for me) because if I'm not mistaken when it tests for executable udevd_bin, the value has already been replaced local udevd_bin=/sbin/udevd [ ! -e "${udevd_bin}" ] && udevd_bin=/usr/lib/systemd/systemd-udevd + local udevadm_bin=/bin/udevadm + [ ! -e "${udevd_bin}" ] && udevadm_bin=/usr/bin/udevadm IMHO the last line up here should be: + [ ! -e "${udevadm_bin}" ] && udevadm_bin=/usr/bin/udevadm *********** Yep :-) Thanks |