Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 489174 - sys-apps/openrc-0.12.3 - issues in user mode linux reboot sequence: device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
Summary: sys-apps/openrc-0.12.3 - issues in user mode linux reboot sequence: device-ma...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Hosted Projects
Classification: Unclassified
Component: OpenRC (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: OpenRC Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-23 16:15 UTC by Toralf Förster
Modified: 2013-12-01 09:42 UTC (History)
1 user (show)

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


Attachments
rc log of 16th of October (rc.log-20131016.gz,1.32 KB, application/x-gzip)
2013-10-24 20:54 UTC, Toralf Förster
Details
rc-log of 24th of October (rc.log-20131024.gz,4.15 KB, application/x-gzip)
2013-10-24 20:54 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2013-10-23 16:15:26 UTC
A 32 bit x86 UML image reboots fine with openrc-0.11.8 whilst 0.12.3 gives during reboot of an encrypted swap device :



 * Stopping sshd ...                                                                                                  [ ok ]
 * Stopping rngd ...                                                                                                  [ ok ]
 * Stopping haveged ...                                                                                               [ ok ]
 * Removing dm-crypt mappings
 *   crypt-swap ...
device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
Comment 1 Toralf Förster gentoo-dev 2013-10-23 18:51:28 UTC
And FWIW :

I observed it 1 times, that the /etc/local.d/tweaks.start wasn't executed although the file perms were ok (content: "sysctl -w net.core.warnings=0") and not changed since eons.
Comment 2 William Hubbs gentoo-dev 2013-10-24 17:46:37 UTC
In order to find the issue, I need to have you do the following:

in /etc/rc.conf, set

rc_logger="YES"

Then attach a copy of rc.log from both 0.11.8 and 0.12.3.

Thanks,

William
Comment 3 William Hubbs gentoo-dev 2013-10-24 17:47:53 UTC
Also, is this an issue in 0.12.2?
Comment 4 Toralf Förster gentoo-dev 2013-10-24 20:54:18 UTC
Created attachment 361830 [details]
rc log of 16th of October
Comment 5 Toralf Förster gentoo-dev 2013-10-24 20:54:36 UTC
Created attachment 361832 [details]
rc-log of 24th of October
Comment 6 Toralf Förster gentoo-dev 2013-10-24 20:55:40 UTC
I upgraded on that image on 23th of October from 0.11.8 to 0.12.3 :

trinity log # l /var/log/portage/*openrc*
/var/log/portage/sys-apps:openrc-0.11.8:20131023-160851.log.gz  /var/log/portage/sys-apps:openrc-0.12.3:20131023-160711.log.gz
Comment 7 William Hubbs gentoo-dev 2013-10-25 06:55:35 UTC
there were not any changes that should have directly affected uml
other than adding -uml to the keywords for the fsck service.
I suspect a kernel/lvm2/etc interaction issue.
Comment 8 Toralf Förster gentoo-dev 2013-10-25 08:48:08 UTC
I can reproduce that behaviour just with 
$> /etc/init.d/dmcrypt restart
but in /var/log/messages I do not found any further hints
Comment 9 Toralf Förster gentoo-dev 2013-10-25 09:21:45 UTC
BTW is this a different issue :
 * Wiping /tmp directory ...                                                                                          [ ok ]
 * Setting up dm-crypt mappings ...
 *   crypt-swap using: -c aes -h sha1 -d /dev/urandom create crypt-swap /dev/ubdb ...                                 [ ok ]
 *     pre_mount: mkswap ${dev} ...                                                                                   [ ok ]
 * Setting hostname to trinity ...                                                                                    [ ok ]
/lib/rc/sh/rc-cgroup.sh: line 87: /sys/fs/cgroup/openrc/loopback/tasks: No such file or directory
 * Bringing up network interface lo ...                                                                               [ ok ]


?
Comment 10 Rick Farina (Zero_Chaos) gentoo-dev 2013-10-25 14:40:42 UTC
>  * Removing dm-crypt mappings
>  *   crypt-swap ...
> device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
> device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
> device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
> device-mapper: remove ioctl on crypt-swap failed: Device or resource busy
> device-mapper: remove ioctl on crypt-swap failed: Device or resource busy

This strongly appears to me that crypt-swap is being unmounted while swap is still in use which would make it a bug in the dmcrypt init scripts or dmcrypt itself.
Comment 11 William Hubbs gentoo-dev 2013-10-25 14:48:40 UTC
(In reply to Toralf Förster from comment #9)
> BTW is this a different issue :
>  * Wiping /tmp directory ...                                                
> [ ok ]
>  * Setting up dm-crypt mappings ...
>  *   crypt-swap using: -c aes -h sha1 -d /dev/urandom create crypt-swap
> /dev/ubdb ...                                 [ ok ]
>  *     pre_mount: mkswap ${dev} ...                                         
> [ ok ]
>  * Setting hostname to trinity ...                                          
> [ ok ]
> /lib/rc/sh/rc-cgroup.sh: line 87: /sys/fs/cgroup/openrc/loopback/tasks: No
> such file or directory
>  * Bringing up network interface lo ...                                     
> [ ok ]
> 
> 
> ?

This is a separate issue. Please open another bug for it.
Comment 12 Bruce Hill 2013-10-25 17:00:59 UTC
Found this bug looking for a solution here, but on openrc-0.11.8

rc shutdown logging started at Thu Oct 24 13:58:09 2013

 * Stopping local
 [ ok ]
 * Saving random seed ...
 [ ok ]
 * Stopping Teamviewer Daemon ...
 * Deactivating additional swap space ...
 [ ok ]
 * Stopping sshd ...
 [ ok ]
 * Bringing down interface lo
 * Stopping dcron ...
 [ ok ]
 * Shutting down bluetooth ...
 [ ok ]
 * Storing ALSA Mixer Levels ...
 [ ok ]
 * Stopping lxdm-binary ...
 [ ok ]
 * Stopping gpm ...
 [ ok ]
 * Unmounting network filesystems ...
 [ ok ]
 * Stopping wicd daemon and closing connections ...
 [ ok ]
 * Stopping syslog-ng ...
 [ ok ]
 * Stopping D-BUS system messagebus ...
 [ ok ]
 * Unmounting loop devices
 * Unmounting filesystems
 *   Unmounting /tmp ...
 [ ok ]
 *   Unmounting /home ...
 [ ok ]
 *   Unmounting /boot ...
 [ ok ]
 * Deactivating swap devices ...
 [ ok ]
 * Shutting down the Logical Volume Manager
 *   Shutting Down LVs & VGs ...
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  device-mapper: remove ioctl on  failed: Device or resource busy
  Unable to deactivate vol--gentoo-lvolroot (253:1)
 * Failed
 [ !! ]
 * Finished Shutting down the Logical Volume Manager
 * Stopping udev ...
 [ ok ]
 * Setting hardware clock using the system clock [Local Time] ...
 [ ok ]

rc shutdown logging stopped at Thu Oct 24 13:58:18 2013


rc boot logging started at Thu Oct 24 08:58:37 2013

 * Setting system clock using the hardware clock [Local Time] ...
 [ ok ]
 * Autoloaded 0 module(s)
 * Setting up the Logical Volume Manager ...
 [ ok ]
 * Checking local filesystems  ...
/sbin/fsck.xfs: XFS file system.
 [ ok ]
 * Remounting root filesystem read/write ...
 [ ok ]
 * Remounting filesystems ...
 [ ok ]
 * Updating /etc/mtab ...
 [ ok ]
 * Activating swap devices ...
 [ ok ]
 * Mounting local filesystems ...
 [ ok ]
 * Configuring kernel parameters ...
 [ ok ]
 * Creating user login records ...
 [ ok ]
 * Cleaning /var/run ...
 [ ok ]
 * Wiping /tmp directory ...
 [ ok ]
 * Setting hostname to baruch ...
 [ ok ]
 * Setting terminal encoding [UTF-8] ...
 [ ok ]
 * Setting keyboard mode [UTF-8] ...
 [ ok ]
 * Loading key mappings [us] ...
 [ ok ]
 * Bringing up interface lo
 *   127.0.0.1/8 ...
 [ ok ]
 *   Adding routes
 *     127.0.0.0/8 via 127.0.0.1 ...
 [ ok ]
 * Mounting misc binary format filesystem ...
 [ ok ]
 * Loading custom binary format handlers ...
 [ ok ]
 * Activating additional swap space ...
 [ ok ]
 * setting up tmpfiles.d entries ...
 [ ok ]
 * Initializing random number generator ...
 [ ok ]

rc boot logging stopped at Thu Oct 24 13:58:40 2013


rc default logging started at Thu Oct 24 13:58:40 2013

 * Starting D-BUS system messagebus ...
 [ ok ]
 * Starting wicd daemon ...
 [ ok ]
 * Mounting network filesystems ...
 [ ok ]
 * Checking your configfile (/etc/syslog-ng/syslog-ng.conf) ...
 [ ok ]
 * Starting syslog-ng ...
 [ ok ]
 * Starting gpm ...
 [ ok ]
 * Setting up lxdm-binary ...
 [ ok ]
 * Restoring Mixer Levels ...
 [ ok ]
 * Starting bluetooth ...
 [ ok ]
 * Starting dcron ...
 [ ok ]
 * Starting sshd ...
 [ ok ]
 * Starting Teamviewer Daemon ...
 * Starting local
 [ ok ]

rc default logging stopped at Thu Oct 24 13:58:41 2013



mingdao@baruch ~ $ df -hT
Filesystem                       Type      Size  Used Avail Use% Mounted on
rootfs                           rootfs     15G  7.6G  7.5G  51% /
/dev/mapper/vol--gentoo-lvolroot xfs        15G  7.6G  7.5G  51% /
tmpfs                            tmpfs     3.8G  728K  3.8G   1% /run
udev                             devtmpfs   10M     0   10M   0% /dev
shm                              tmpfs     3.8G     0  3.8G   0% /dev/shm
cgroup_root                      tmpfs      10M     0   10M   0% /sys/fs/cgroup
/dev/sdb1                        ext2       97M   83M  9.8M  90% /boot
/dev/mapper/vol--gentoo-lvolhome xfs       5.0G  3.5G  1.6G  69% /home
tmpfs                            tmpfs     7.0G   60K  7.0G   1% /tmp


mingdao@baruch ~ $ cat /etc/fstab 
/dev/sdb1				/boot	ext2	auto,noatime			0 0
/dev/mapper/vol--gentoo-lvolroot	/	xfs	noatime,discard			1 1
/dev/mapper/vol--gentoo-lvolswap	none	swap	sw				0 0
/dev/mapper/vol--gentoo-lvolhome	/home	xfs	noatime,discard			0 0
tmpfs					/tmp	tmpfs	noatime,nodiratime,size=7G	0 0
UUID=CA00-9136    			/AMD	vfat	noauto,users,rw,gid=1000,dmask=0002,fmask=0113  0 0


baruch ~ # lvdisplay
  --- Logical volume ---
  LV Path                /dev/vol-gentoo/lvolswap
  LV Name                lvolswap
  VG Name                vol-gentoo
  LV UUID                cQqe1e-7SU0-h1cd-5eg3-2FNt-g6Ci-0xiRve
  LV Write Access        read/write
  LV Creation host, time sysresccd, 2013-07-19 03:53:51 -0500
  LV Status              available
  # open                 2
  LV Size                9.00 GiB
  Current LE             2304
  Segments               1
  Allocation             contiguous
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/vol-gentoo/lvolroot
  LV Name                lvolroot
  VG Name                vol-gentoo
  LV UUID                YC4yRq-Bb10-dWvR-H2VE-GFif-I2ga-AXCZpM
  LV Write Access        read/write
  LV Creation host, time sysresccd, 2013-07-19 04:38:17 -0500
  LV Status              available
  # open                 1
  LV Size                15.00 GiB
  Current LE             3840
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/vol-gentoo/lvolhome
  LV Name                lvolhome
  VG Name                vol-gentoo
  LV UUID                VnXecN-2oI2-wOfN-jgwf-tBL2-Z2Ws-vtZNLn
  LV Write Access        read/write
  LV Creation host, time sysresccd, 2013-07-19 04:42:17 -0500
  LV Status              available
  # open                 1
  LV Size                5.00 GiB
  Current LE             1280
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2
Comment 13 Rick Farina (Zero_Chaos) gentoo-dev 2013-10-26 00:18:49 UTC
>  * Shutting down the Logical Volume Manager
>  *   Shutting Down LVs & VGs ...
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   device-mapper: remove ioctl on  failed: Device or resource busy
>   Unable to deactivate vol--gentoo-lvolroot (253:1)
>  * Failed
>  [ !! ]

Now it's failing to stop lvm due to the lv's still being in use.

Again, this isn't openrc's fault, possibly the lvm people would know better.  There are no openrc bugs here.
Comment 14 Toralf Förster gentoo-dev 2013-12-01 09:42:22 UTC
(In reply to Rick Farina (Zero_Chaos) from comment #13)

> Again, this isn't openrc's fault, possibly the lvm people would know better.
> There are no openrc bugs here.

FWIW w/ openrc-0.12.4 I do now observe it every time duriing shutdown - so is this bug really invalid ?