Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 555336 - sys-fs/eudev - no more /dev/loop-control or /dev/mapper/control
Summary: sys-fs/eudev - no more /dev/loop-control or /dev/mapper/control
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: eudev team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-19 12:06 UTC by Nico Rittner
Modified: 2015-07-31 08:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nico Rittner 2015-07-19 12:06:40 UTC
I miss /dev/loop-control and /dev/mapper/control. They are not created anymore after upgrading from 1.10-r2 to 3.1.2. So loop.ko or dm_mod.ko are not loaded at first use of losetup/dmsetup like before. workaround is manually loading look.ko / dm_mod.ko before. no custom udev-rules in use. both times the same losetup-version (util-linux) and the same kernel is in use.

before with 1.10-r2:
root @ localhost ~ $ LOOPDEV_DEBUG=yes losetup /dev/loop7 /tmp/xx
loopdev:  [0xbfd0d474]: init: ignore ioctls
loopdev:  [0xbfd0d474]: init: loop-control detected
loopdev:  [0xbfd0d474]: /dev/loop7 name assigned
loopdev:  [0xbfd0d474]: add_device 7
loopdev:  [0xbfd0d474]: add_device done [rc=-1]
loopdev:  [0xbfd0d474]: set backing file=/.layer23/mnt/readwrite/tmp/xx
loopdev:  [0xbfd0d474]: device setup requested
loopdev:  [0xbfd0d474]: setup: backing file open: OK
loopdev:  [0xbfd0d474]: open /dev/loop7 [rw]: Success
loopdev:  [0xbfd0d474]: setup: device open: OK
loopdev:  [0xbfd0d474]: setup: LOOP_SET_FD: OK
loopdev:  [0xbfd0d474]: setup: LOOP_SET_STATUS64: OK
loopdev:  [0xbfd0d474]: setup success [rc=0]
loopdev:  [0xbfd0d474]: de-initialize
loopdev:  [0xbfd0d474]: closing old open fd
loopdev:  [0xbfd0d474]: iter: de-initialize

now with 3.1.2:
loopdev:  [0xbfe7d704]: init: ignore ioctls
loopdev:  [0xbfe7d704]: /dev/loop7 name assigned
loopdev:  [0xbfe7d704]: add_device done [rc=-38]
loopdev:  [0xbfe7d704]: set backing file=/.layer23/mnt/readwrite/tmp/xx
loopdev:  [0xbfe7d704]: device setup requested
loopdev:  [0xbfe7d704]: setup: backing file open: OK
loopdev:  [0xbfe7d704]: open /dev/loop7 [rw]: No such file or directory
loopdev:  [0xbfe7d704]: setup failed [rc=-2]
loopdev:  [0xbfe7d704]: open /dev/loop7 [rw]: No such file or directory
losetup: /dev/loop7: failed to set up loop device: No such file or directory
loopdev:  [0xbfe7d704]: de-initialize
loopdev:  [0xbfe7d704]: iter: de-initialize
( no events shown using udevadm monitor)

Perhaps v3.1.2 needs additional kernel features, but portage
does not complain current kernel-configuration before emerging.

Reproducible: Always




Portage 2.2.20 (python 2.7.9-final-0, default/linux/x86/13.0, gcc-4.8.4, glibc-2.20-r2, 3.12.21-jason-bare-i686-1403781919 i686)
=================================================================
System uname: Linux-3.12.21-jason-bare-i686-1403781919-i686-Intel-R-_Xeon-R-_CPU_5160_@_3.00GHz-with-gentoo-2.2
KiB Mem:     3374184 total,   1123940 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Sat, 18 Jul 2015 11:00:01 +0000
sh bash 4.3_p33-r2
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.3_p33-r2::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r1::gentoo
dev-util/cmake:           3.2.2::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.24-r3::gentoo
sys-devel/gcc:            4.8.4::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /var/db/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

layer23
    location: /dat/local/share/portage
    masters: gentoo
    priority: 0

ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/bind"
CONFIG_PROTECT_MASK="/etc/* /etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe"
DISTDIR="/tmp"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="C"
LC_ALL="de_DE.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/tmp"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="alsa berkdb bzip2 cli cxx dri fortran gd iconv imap jpeg mbox modules mysql ncurses nptl openmp pam pcre perl png readline sasl session ssl syslog tcpd tiff truetype unicode x86 xml zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="actions alias auth_basic auth_digest filter authn_default authn_file authz_default authz_groupfile authz_host authz_owner authz_user cgi deflate dumpio dav dav_fs dir env expires headers include info log_config mime mime_magic proxy proxy_balancer proxy_connect proxy_http rewrite setenvif so status userdir unique_id vhost_alias" APACHE2_MPMS="itk" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NGINX_MODULES_HTTP="access auth_basic charset dav fastcgi geo gzip limit_req lua map proxy rewrite ssl stub_status" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python_2_7" PYTHON_TARGETS="python2_7" QEMU_SOFTMMU_TARGETS="i386" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Anthony Basile gentoo-dev 2015-07-21 13:18:32 UTC
(In reply to Nico Rittner from comment #0)
> I miss /dev/loop-control and /dev/mapper/control. They are not created
> anymore after upgrading from 1.10-r2 to 3.1.2. So loop.ko or dm_mod.ko are
> not loaded at first use of losetup/dmsetup like before. workaround is
> manually loading look.ko / dm_mod.ko before. no custom udev-rules in use.
> both times the same losetup-version (util-linux) and the same kernel is in
> use.
> 

This is probably due to the modprobe to kmod switchover.  That happened between eudev-2.1.1 and eudev-3.0.  Can you test if 2.1.1 worked and 3.0 doesn't?  If you don't have time to work on this, can you give me steps to reproduce (I get what you're saying, but the devil is in the details!)
Comment 2 dwfreed 2015-07-23 07:23:48 UTC
I have a hunch.  Could you provide the output of the following commands?

rc-update
kmod static-nodes --format=tmpfiles
Comment 3 Nico Rittner 2015-07-23 10:34:58 UTC
below it is.
this guide https://wiki.gentoo.org/wiki/Udev/Upgrade_Guide#udev_204_to_208
refers to the missing dev-nodes, but the change i did is from 216 to 220
(according "udevd --version", seems to be the udev version eudev is based on).
just found out that the output of "kmod static-nodes --format=tmpfiles"
is written to /run/tmpfiles.d/kmod.conf in kmod-static-nodes but "nobody"
seem to read/interprete this file, which contains all information to create
the dev-nodes. Who should do so ? Thanks.


root @ gw-a.edu / # rc-update

               binfmt | boot
             bootmisc | boot
                devfs |                       sysinit
                dmesg |                       sysinit
                 fsck | boot
             hostname | boot
              hwclock | boot
              keymaps | boot
            killprocs |              shutdown
    kmod-static-nodes |                       sysinit
                local |      default
           localmount | boot
             loopback | boot
              modules | boot
             mount-ro |              shutdown
                 mtab | boot
             netmount |      default
               procfs | boot
                 root | boot
            savecache |              shutdown
                 swap | boot
            swapfiles | boot
               sysctl | boot
                sysfs |                       sysinit
         termencoding | boot
         tmpfiles.dev |                       sysinit
       tmpfiles.setup | boot
                 udev |                       sysinit
              urandom | boot


root @ gw-a.edu ~ $ kmod static-nodes --format=tmpfiles
d /dev/cpu 0755 - - -
c! /dev/cpu/microcode 0600 - - - 10:184
c! /dev/fuse 0600 - - - 10:229
c! /dev/cuse 0600 - - - 10:203
c! /dev/loop-control 0600 - - - 10:237
d /dev/net 0755 - - -
c! /dev/net/tun 0600 - - - 10:200
c! /dev/ppp 0600 - - - 108:0
d /dev/mapper 0755 - - -
c! /dev/mapper/control 0600 - - - 10:236
c! /dev/vhost-net 0600 - - - 10:238
d /dev/snd 0755 - - -
c! /dev/snd/timer 0600 - - - 116:33
d /dev/snd 0755 - - -
c! /dev/snd/seq 0600 - - - 116:1
Comment 4 Nico Rittner 2015-07-23 10:52:44 UTC
aah, /lib/rc/sh/tmpfiles.sh seems to do this job. at least it should. will survey.
Comment 5 Ian Stakenvicius (RETIRED) gentoo-dev 2015-07-23 14:51:10 UTC
(In reply to Nico Rittner from comment #4)
> aah, /lib/rc/sh/tmpfiles.sh seems to do this job. at least it should. will
> survey.

In openrc that should be taken care of in sysinit runlevel by tmpfiles.dev (which you have listed there).  tmpfiles.setup might also help with this but I don't know the specific details of how this works anymore..
Comment 6 dwfreed 2015-07-23 17:38:36 UTC
Could you provide the output of these commands?

cat /run/tmpfiles.d/kmod.conf
ls -l /usr/lib/tmpfiles.d
ls -l /run/tmpfiles.d
ls -l /etc/tmpfiles.d
Comment 7 Nico Rittner 2015-07-31 08:04:40 UTC
hi and sorry for delayed reply. here it is:

- cat /run/tmpfiles.d/kmod.conf:
(exists but is empty)
- /usr/lib/tmpfiles.d and /etc/tmpfiles.d do not exist
- /run/tmpfiles.d has kmod.conf (above)

since /lib/modules/${KERNEL_VERSION}/modules.devname
was also empty (only comment on 1st line) i decided
to go back to a previous kernel-build, and the
missing device nodes are back again now. i did the
change of the kernel (actual same cfg) the same day
as new eudev appeared in portage and suspected eudev
as cause.
will investigate what happened to my kernel-config.
since eudev seems not to be the cause here i think
we can close this issue. thanks for your support.
Comment 8 Tony Vroon (RETIRED) gentoo-dev 2015-07-31 08:05:58 UTC
Upon reflection a kernel problem rather than an eudev problem. Thank you Nico.