Summary: | sys-fs/udev-150 block devices missing | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | barthek <gejzer> |
Component: | [OLD] baselayout | Assignee: | udev maintainers <udev-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | galtgendo, m8847 |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
barthek
2010-01-25 14:21:38 UTC
Try migrating to pure CONFIG_ATA first (that is: unset CONFIG_IDE and add correct devices from libata branch). hi Rafal, thanks for suggestions - will try that. it is strange though that udevadm test works fine. considering that CONFIG_ATA is marked experimental in my kernel tree and that its all worked fine with CONFIG_IDE so far is there not something wrong with udev ? CONFIG_ATA has stopped being experimental quite a few kernels ago and in 2.6.33 CONFIG_IDE will be officially marked deprecated. As for the other part, udev has removed support for hd* devices in 150, Gentoo is reverting that, but perhaps they've missed a spot. By "removed support", I mean "removed from default rules", of course. bear in mind hardened has no newer kernel than 2.6.29 :< downgrading to udev-149 fixes the problem. anyway, i looked at udev-149 vs udev-150 /lib/udev/rules.d and found no differences. is that something built in that can be customised ? Having both CONFIG_ATA and CONFIG_IDE set messes things up anyway (mostly in a subtle way, though). 2.6.29 should be OK. Have a look at 'lspci -k' and 'udevadm info' for your drives. as to your first comment... $ zgrep CONFIG_IDE /proc/config.gz CONFIG_IDE=y CONFIG_IDE_TIMINGS=y CONFIG_IDE_ATAPI=y CONFIG_IDE_GD=y CONFIG_IDE_GD_ATA=y # CONFIG_IDE_GD_ATAPI is not set # CONFIG_IDE_TASK_IOCTL is not set # CONFIG_IDE_PROC_FS is not set # CONFIG_IDE_GENERIC is not set # CONFIG_IDEPCI_PCIBUS_ORDER is not set $ zgrep CONFIG_ATA /proc/config.gz # CONFIG_ATALK is not set # CONFIG_ATA_OVER_ETH is not set # CONFIG_ATA is not set as to the rest, is there any particular info you want to get? things work fine with udev-149 so im wondering if creating custom rules for udev-150 would be a way to go? There are two parts of the problem: - technically, if it works in udev-149, it should still work with 150 - migration to CONFIG_ATA should still be done, due to the deprecation (while 2.6.33 will be official announcement, it was that way for a few version already) As for the migration settings, under CONFIG_ATA you should choose a correct driver for your board and instead of those _IDE options select: CONFIG_BLK_DEV_SD CONFIG_BLK_DEV_SG CONFIG_BLK_DEV_SR Be sure to unset CONFIG_IDE, as having both leads to interesting results at times. OK, I should have posted all of this in one go. As for 'udevadm info', it was about something like: 'udevadm info --query all --name hda'. Once you'll do the migration, it'll be probably: 'udevadm info --query all --name sda'. Don't forget to fix your fstab/grub boot line. so technically speaking there is a misbehaviour if you're saying it should work with udev 150 ;) i did this test - restart with udev150 - no /dev/hd*. restart of udev - no /dev/hd*. downgrade to udev149. restart of udev - bang the entries appear. i dont know what you mean by giving me example of the udevadm? I gave this as an indication that udev sees the device once triggered by udevadm info so it does recognize /sys/block mappings etc. Hi, I'm not sure if I can help or anything, but I have the same issues; with udev 150, my sda partitions disappear in /dev, and also the network NIC order gets bad. Kernel has no issues (still have my old 2.6.28-gentoo) seeing sda, and it has CONFIG_IDE unset in .config. Going back to 149 solves all my issues. Portage 2.1.7.16 (default/linux/amd64/10.0, gcc-4.3.4, glibc-2.11-r1, 2.6.28-gentoo x86_64) ================================================================= System uname: Linux-2.6.28-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9450_@_2.66GHz-with-gentoo-2.0.1 Timestamp of tree: Mon, 25 Jan 2010 10:30:01 +0000 distcc 3.1 x86_64-pc-linux-gnu [disabled] ccache version 2.4 [enabled] app-shells/bash: 4.0_p37 dev-java/java-config: 1.3.7-r1, 2.1.10 dev-lang/python: 2.4.4-r6, 2.5.4-r2, 2.6.4, 3.1.1-r1 dev-python/pycrypto: 2.0.1-r8 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.8.0 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.6.0-r1 sys-apps/sandbox: 2.2 sys-devel/autoconf: 2.13, 2.65 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1 sys-devel/binutils: 2.20 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=nocona -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-march=nocona -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests ccache distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,-O1" LINGUAS="se en_GB sv sv_SE en_US" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X acl acpi alsa amarok amd64 automount berkdb bluetooth bonjour bzip2 cdaudio cddb cdparanoia cdr cli consolekit cracklib cscope cups cxx daap dbus dga dri dvd dvdr embedded extras ffmpeg flac fortran fts3 gdbm gif gimp git glitz gnome gnutls gpm gtk hal highlight iconv ipv6 java javascript jpeg kde lcms libffi lm_sensors logrotate matroska mmap mmx mmxext mng modules mozilla mp3 mp3tunes mudflap multilib mysql ncurses nls nptl nptlonly nsplugin obex opengl openmp oscar pam paste64 pcre pdf perl png python qt3 qt3support qt4 rdesktop readline reflection reiserfs sasl se_swedb session smp speex spell spl sql sqlite sse sse2 sse3 ssl ssse3 subversion svg sysfs tcpd threads truetype unicode usb vnc webkit winpopup wlm x264 xcb xine xinerama xorg xterm xv xvid xvmc yahoo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="se en_GB sv sv_SE en_US" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel i810 nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS What I was trying to say was: if it's broken with CONFIG_IDE, but works with CONFIG_ATA, it's better to migrate to CONFIG_ATA. Given comment 12, however, the problem may be bit more serious than the initial report suggested. There's an another idea: udev 150 removed *all* support for CONFIG_SYSFS_DEPRECATED. Make sure it's unset, see if /sys is empty before it's mounted and see what 'ls -l /sys/class/mem/null' prints. in my case... $ zgrep DEPREC /proc/config.gz # CONFIG_SYSFS_DEPRECATED_V2 is not set # CONFIG_ENABLE_WARN_DEPRECATED is not set # mount --bind / /mnt/tmp # ls -l /mnt/tmp/sys total 0 $ ls -l /sys/class/mem/null lrwxrwxrwx 1 root root 0 Jan 26 16:33 /sys/class/mem/null -> ../../devices/virtual/mem/null > There's an another idea: udev 150 removed *all* support
> for CONFIG_SYSFS_DEPRECATED.
Excellent! For some reason, my CONFIG_SYSFS_DEPRECATED where set. Now my issues with 150 are gone. No need to delete anything in /sys for me.
Cheers,
Micael
(In reply to comment #16) > > There's an another idea: udev 150 removed *all* support > > for CONFIG_SYSFS_DEPRECATED. > > Excellent! For some reason, my CONFIG_SYSFS_DEPRECATED where set. Now my issues > with 150 are gone. No need to delete anything in /sys for me. > Well, udev-ebuild already warns about enabled DEPRECATED settings. just wanted to confirm that udev-151 fixes the thing... (old-hd-rules USE flag added). so to sum up... 1. I didnt have any of the DEPRECATED 2. I didnt mix CONFIG_ATA with CONFIG_IDE 3. udev 149 worked ok happy days! |