partx information not cleared on loop device detach
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
It seems the kernel doesn't clear /proc/partitions information completely on detach of a loop device.
See the following:
DEVLOOP=
PT_IMG=
UNPT_IMG=
DEVLOOPB=
### Just show that loop device had no prior state ##
% ls -l $DEVLOOP*; echo "#/proc/
brw-rw---- 1 root disk 7, 5 Mar 1 01:40 /dev/loop5
--/proc/
% losetup --show $DEVLOOP
loop: can't get info on device /dev/loop5: No such device or address
### create an image file, put a partition table on it, losetup ###
% rm -f $UNPT_IMG; truncate --size 1G $PT_IMG
% echo "1,1" | sfdisk $PT_IMG >/dev/null 2>&1 ; echo $? # its just noisy
% losetup $DEVLOOP $PT_IMG
### no knowledge of this partition table yet ###
% ls -l $DEVLOOP*; echo "--/proc/
brw-rw---- 1 root disk 7, 5 Mar 1 01:47 /dev/loop5
--/proc/
7 5 1048576 loop5
### tell the kernel about partition table ###
% partx --update $DEVLOOP
### See its there now ###
% ls -l $DEVLOOP*; echo "--/proc/
brw-rw---- 1 root disk 7, 5 Mar 1 01:47 /dev/loop5
brw-rw---- 1 root disk 259, 0 Mar 1 01:48 /dev/loop5p1
--/proc/
7 5 1048576 loop5
259 0 8032 loop5p1
### get rid of it and show its really gone ###
% losetup --detach $DEVLOOP
% ls -l $DEVLOOP*; echo "--/proc/
brw-rw---- 1 root disk 7, 5 Mar 1 01:49 /dev/loop5
brw-rw---- 1 root disk 259, 0 Mar 1 01:48 /dev/loop5p1
--/proc/
% losetup --show $DEVLOOP
loop: can't get info on device /dev/loop5: No such device or address
### create a new image file with no partition table ###
% rm -f $UNPT_IMG; truncate --size 1G $UNPT_IMG
### Set it up ###
% losetup $DEVLOOP $UNPT_IMG
### What?? it has a partition table on it ? ###
% ls -l $DEVLOOP*; echo "--/proc/
brw-rw---- 1 root disk 7, 5 Mar 1 01:51 /dev/loop5
brw-rw---- 1 root disk 259, 0 Mar 1 01:48 /dev/loop5p1
--/proc/
7 5 1048576 loop5
259 0 8032 loop5p1
### unfortunately, clearing the partition table isn't as easy as just having
### partx -update do it ###
% partx --update $DEVLOOP
partx: /dev/loop5: failed to read partition table
% delpart /dev/loop5 1
% uname -r
3.8.0-6-generic
% dpkg -S /boot/vmlinuz-
linux-image-
affects: | ubuntu → linux (Ubuntu) |
description: | updated |
description: | updated |
description: | updated |
tags: | added: cscc |
This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:
apport-collect 1136781
and then change the status of the bug to 'Confirmed'.
If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.
This change has been made by an automated script, maintained by the Ubuntu Kernel Team.