| Summary: | mount: could not find any free loop device | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | John Griffiths <fedora.jrg01> |
| Component: | util-linux | Assignee: | Karel Zak <kzak> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 16 | CC: | jason, jonathan, kzak, mluscon |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2012-10-29 15:23:16 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
John Griffiths
2012-02-04 05:32:18 UTC
I'm not able to reproduce the problem. Please, try: # mount -o loop -t iso9660 <isofilename> <mountpoint> # losetup -a # cat /sys/block/<loopN>/loop/autoclear <-- e.g. loop0 # umount <mountpoint> # echo $? # cat /sys/block/<loopN>/loop/autoclear # strace -e ioctl mount -o loop -t iso9660 <isofilename> <mountpoint> # uname -a # rpm -qf /bin/mount I'd like to see output from these commands. # mount -o loop -t iso9660 /mypath/my.iso /mnt mount: warning: /mnt seems to be mounted read-only. # losetup -a /dev/loop0: [fd06]:24379519 (/mypath/my.iso) # cat /sys/block/loop0/loop/autoclear 1 # umount /mnt # echo $? 0 # cat /sys/block/loop0/loop/autoclear 1 strace -e ioctl mount -o loop -t iso9660 /mypath/my.iso /mnt ioctl(3, LOOP_GET_STATUS, 0xbfad0b00) = 0 ioctl(3, LOOP_GET_STATUS, 0xbfad0b00) = -1 ENXIO (No such device or address) ioctl(4, LOOP_SET_FD, 0x3) = 0 ioctl(4, LOOP_SET_STATUS64, 0xbfad2bb8) = 0 ioctl(4, LOOP_GET_STATUS64, 0xbfad29b8) = 0 mount: warning: /mnt seems to be mounted read-only. # uname -a Linux <FQHN> 3.2.2-1.fc16.i686.PAE #1 SMP Thu Jan 26 03:30:43 UTC 2012 i686 i686 i386 GNU/Linux # rpm -qf /bin/mount util-linux-2.20.1-2.2.fc16.i686 Additional information: The new mount is on loop1 according to: # cat /sys/block/loop1/loop/autoclear 1 and the system still reports: # cat /sys/block/loop0/loop/autoclear 1 Strange. Try also # strace -e umount umount /mnt # findmnt /mnt (or/and see /proc/mounts) ... is the <mountpoint> really umounted? maybe also check dmesg output. The autoclear flag means that after umount the loop device will be automatically detached by kernel if there is no another reference to the device. It seems that the device is still used or the autoclear stuff in kernel does not work as expected. The command umount(8) does not play any active role there if the autoclear flag is set. # strace -e umount umount /mnt # echo $? 0 # findmnt /mnt # echo $? 1 findmnt / TARGET SOURCE FSTYPE OPTIONS / /dev/mapper/vg_daniel-lv_root ext4 rw,relatime,seclabel,user_xattr,acl, # cat /proc/mounts rootfs / rootfs rw 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 devtmpfs /dev devtmpfs rw,seclabel,nosuid,relatime,size=2052496k,nr_inodes=204503,mode=755 0 0 devpts /dev/pts devpts rw,seclabel,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev,relatime 0 0 /dev/mapper/vg_daniel-lv_root / ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0 tmpfs /run tmpfs rw,seclabel,nosuid,nodev,relatime,mode=755 0 0 selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0 tmpfs /sys/fs/cgroup tmpfs rw,seclabel,nosuid,nodev,noexec,relatime,mode=755 0 0 cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd 0 0 cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0 cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpuacct,cpu 0 0 cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0 cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0 cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0 cgroup /sys/fs/cgroup/net_cls cgroup rw,nosuid,nodev,noexec,relatime,net_cls 0 0 cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0 cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0 systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct 0 0 securityfs /sys/kernel/security securityfs rw,relatime 0 0 configfs /sys/kernel/config configfs rw,relatime 0 0 debugfs /sys/kernel/debug debugfs rw,relatime 0 0 mqueue /dev/mqueue mqueue rw,seclabel,relatime 0 0 hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime 0 0 tmpfs /media tmpfs rw,rootcontext=system_u:object_r:mnt_t:s0,seclabel,nosuid,nodev,noexec,relatime,mode=755 0 0 sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0 binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0 /dev/mapper/sil_aibieiaeafdep1 /boot ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0 /dev/mapper/vg_daniel-lv_home /home ext4 rw,seclabel,relatime,user_xattr,barrier=1,data=ordered 0 0 /dev/mapper/vg_daniel_2-video_0 /var/video ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0 /dev/mapper/vg_daniel-lv_root /var/named/chroot/etc/named ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0 /dev/mapper/vg_daniel-lv_root /var/named/chroot/etc/pki/dnssec-keys ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0 /dev/mapper/vg_daniel-lv_root /var/named/chroot/usr/lib/bind ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0 I can confirm this as well on my F16 box. Seems to happen when I "umount" the ISOs, instead of "umount -d". The problem is, I can't find a method to clear this aside from a reboot.
No relevant output in dmesg.
# mount -o loop /mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk6.iso /mnt/temp
mount: could not find any free loop device
# losetup -a
/dev/loop0: [0802]:17956989 (/mnt/spacea/CD-images/SLES9/svc_pak/SLES-9 SP3 i386/SLES-9-SP-3-i386-RC4-CD1.iso)
/dev/loop1: [0802]:17956992 (/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk1.iso)
/dev/loop2: [0802]:17956994 (/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk2.iso)
/dev/loop3: [0802]:17956998 (/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk3.iso)
/dev/loop4: [0802]:17957000 (/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk4.iso)
/dev/loop5: [0802]:17957002 (/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk5.iso)
/dev/loop6: [0802]:17957004 (/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk6.iso)
/dev/loop7: [0802]:17956989 (/mnt/spacea/CD-images/SLES9/svc_pak/SLES-9 SP3 i386/SLES-9-SP-3-i386-RC4-CD1.iso)
# cat /sys/block/<loopN>/loop/autoclear <-- e.g. loop0
/sys/block/loop0/loop/autoclear:1
/sys/block/loop1/loop/autoclear:1
/sys/block/loop2/loop/autoclear:1
/sys/block/loop3/loop/autoclear:1
/sys/block/loop4/loop/autoclear:1
/sys/block/loop5/loop/autoclear:1
/sys/block/loop6/loop/autoclear:1
/sys/block/loop7/loop/autoclear:1
# umount /mnt/temp
umount: /mnt/temp: not mounted
# echo $?
1
# cat /sys/block/<loopN>/loop/autoclear
/sys/block/loop0/loop/autoclear:1
/sys/block/loop1/loop/autoclear:1
/sys/block/loop2/loop/autoclear:1
/sys/block/loop3/loop/autoclear:1
/sys/block/loop4/loop/autoclear:1
/sys/block/loop5/loop/autoclear:1
/sys/block/loop6/loop/autoclear:1
/sys/block/loop7/loop/autoclear:1
# strace -e ioctl mount -o loop /mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk6.iso /mnt/temp
ioctl(3, LOOP_GET_STATUS, {number=0, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/svc_pak/SLES-9 SP3 i386/SLES-9-SP-3", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=1, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk1.iso", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=2, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk2.iso", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=3, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk3.iso", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=4, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk4.iso", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=5, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk5.iso", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=6, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/originals/SUSE91E_Disk6.iso", ...}) = 0
ioctl(3, LOOP_GET_STATUS, {number=7, offset=0, flags=LO_FLAGS_AUTOCLEAR, name="/mnt/spacea/CD-images/SLES9/svc_pak/SLES-9 SP3 i386/SLES-9-SP-3", ...}) = 0
mount: could not find any free loop device
+++ exited with 2 +++
# uname -a
Linux jantmanwork 3.3.8-1.fc16.x86_64 #1 SMP Mon Jun 4 20:49:02 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
# rpm -qf /bin/mount
util-linux-2.20.1-2.3.fc16.x86_64
# strace -e umount umount /mnt/temp
umount("/mnt/temp", 0) = -1 EINVAL (Invalid argument)
umount: /mnt/temp: not mounted
+++ exited with 1 +++
# findmnt /mnt/temp
<no output>
# cat /proc/mounts
rootfs / rootfs rw 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0
devtmpfs /dev devtmpfs rw,seclabel,nosuid,relatime,size=4055816k,nr_inodes=1013954,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev,relatime 0 0
/dev/sda3 / ext4 rw,seclabel,relatime,user_xattr,barrier=1,data=ordered 0 0
tmpfs /run tmpfs rw,seclabel,nosuid,nodev,relatime,mode=755 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
tmpfs /sys/fs/cgroup tmpfs rw,seclabel,nosuid,nodev,noexec,mode=755 0 0
cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd 0 0
cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpuacct,cpu 0 0
cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0
cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0
cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0
cgroup /sys/fs/cgroup/net_cls cgroup rw,nosuid,nodev,noexec,relatime,net_cls 0 0
cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0
cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0
systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=27,pgrp=1,timeout=300,minproto=5,maxproto=5,direct 0 0
mqueue /dev/mqueue mqueue rw,seclabel,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
securityfs /sys/kernel/security securityfs rw,relatime 0 0
hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime 0 0
tmpfs /media tmpfs rw,rootcontext=system_u:object_r:mnt_t:s0,seclabel,nosuid,nodev,noexec,relatime,mode=755 0 0
configfs /sys/kernel/config configfs rw,relatime 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
/dev/sda4 /var ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0
/dev/sda1 /boot ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0
/dev/sda2 /mnt/spacea ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0
/dev/sdb1 /home ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0
/dev/sdb2 /mnt/spaceb ext4 rw,seclabel,relatime,user_xattr,acl,barrier=1,data=ordered 0 0
Are you able to reproduce this problem with Fedora17/18 ? I cannot reproduce in Fedora 17. |