Bug#538221: [codesite-noreply at google.com: Issue 34 in cryptsetup: Command failed: device-mapper: create ioctl failed: Device or resource busy]

Stuart Pook debian48 at pook.it
Thu Aug 27 20:35:30 UTC 2009


On 27/08/09 01:59, Jonas Meurer wrote:
> great, thanks a lot. please also give information about whether you have
> setup any custom udev rules.

I have just done a apt-get update && apt-get dist-upgrade

I think that the problem comes from the fact that I'm unlocking a snapshot when I have the orginal already unlocked.

This first sequence works.

+ kpartx -d /dev/mapper/services_ROOT_snapshot
+ '[' -b /dev/mapper/services_ROOT1 ']'
+ '[' -b /dev/mapper/services_ROOT_snapshot ']'
+ cryptsetup remove services_ROOT_snapshot
+ '[' -b /dev/mapper/services_ROOT ']'
+ '[' -b /dev/vg0/services_ROOT_snapshot ']'
+ lvremove --force /dev/vg0/services_ROOT_snapshot
+ '[' true ']'
+ lvcreate --size 256M --snapshot --name services_ROOT_snapshot /dev/vg0/services_ROOT
+ unlock services_ROOT_snapshot
+ local -r name=services_ROOT_snapshot
+ '[' '!' -b /dev/mapper/services_ROOT_snapshot ']'
+ /lib/cryptsetup/scripts/passdev ????????????????????????????
+ cryptsetup luksOpen /dev/mapper/vg0-services_ROOT_snapshot services_ROOT_snapshot --key-file -
+ readonly disk0=/dev/mapper/services_ROOT_snapshot
+ disk0=/dev/mapper/services_ROOT_snapshot
+ kpartx -a /dev/mapper/services_ROOT_snapshot

Now it becomes more complicated. I luksOpen vg0-services_ROOT and run kpartx on it and then luksOpen on the snapshot fails (with cryptsetup                        2:1.0.7-1).

+ kpartx -d /dev/mapper/services_ROOT_snapshot
+ '[' -b /dev/mapper/services_ROOT1 ']'
+ '[' -b /dev/mapper/services_ROOT_snapshot ']'
+ cryptsetup remove services_ROOT_snapshot
+ '[' -b /dev/mapper/services_ROOT ']'
+ '[' -b /dev/vg0/services_ROOT_snapshot ']'
+ lvremove --force /dev/vg0/services_ROOT_snapshot
+ unlock services_ROOT
+ local -r name=services_ROOT
+ '[' '!' -b /dev/mapper/services_ROOT ']'
+ /lib/cryptsetup/scripts/passdev ?????????????????????????????????
+ cryptsetup luksOpen /dev/mapper/vg0-services_ROOT services_ROOT --key-file -
+ kpartx -a /dev/mapper/services_ROOT
+ '[' true ']'
+ lvcreate --size 256M --snapshot --name services_ROOT_snapshot /dev/vg0/services_ROOT
+ unlock services_ROOT_snapshot
+ local -r name=services_ROOT_snapshot
+ '[' '!' -b /dev/mapper/services_ROOT_snapshot ']'
+ /lib/cryptsetup/scripts/passdev ???????????????????????????????????????
+ cryptsetup luksOpen /dev/mapper/vg0-services_ROOT_snapshot services_ROOT_snapshot --key-file -
+ logger -s -t start-services -p daemon.err luksOpen with ??????????????????????????????? failed
start-services: luksOpen with ??????????????????????????????????????????????????? failed

: root; COLUMNS=160 dpkg -l cryptsetup  | grep ^ii
ii  cryptsetup                         2:1.0.7-1                          configures encrypted block devices
: root; COLUMNS=160 dpkg -l udev  | grep ^ii
ii  udev                               0.141-2                            /dev/ and hotplug management daemon
: root; COLUMNS=160 dpkg -l linux-image-2.6.30-1-686 | grep ^ii
ii  linux-image-2.6.30-1-686           2.6.30-6                           Linux 2.6.30 image on PPro/Celeron/PII/PIII/P4

: root; uname -a
Linux kooka 2.6.30-1-686 #1 SMP Sat Aug 15 19:11:58 UTC 2009 i686 GNU/Linux

: root; apt-get -t testing install cryptsetup/testing
Selected version 2:1.0.6+20090405.svn49-1 (Debian:testing) for cryptsetup
dpkg: warning: downgrading cryptsetup from 2:1.0.7-1 to 2:1.0.6+20090405.svn49-1.

with the old cryptsetup, it works

+ kpartx -d /dev/mapper/services_ROOT
+ '[' -b /dev/mapper/services_ROOT_snapshot ']'
+ '[' -b /dev/mapper/services_ROOT ']'
+ cryptsetup remove services_ROOT
+ '[' -b /dev/vg0/services_ROOT_snapshot ']'
+ lvremove --force /dev/vg0/services_ROOT_snapshot
+ unlock services_ROOT
+ local -r name=services_ROOT
+ '[' '!' -b /dev/mapper/services_ROOT ']'
+ cryptsetup luksOpen /dev/mapper/vg0-services_ROOT services_ROOT --key-file -
+ /lib/cryptsetup/scripts/passdev ???????????????????????????????????????????
+ kpartx -a /dev/mapper/services_ROOT
+ '[' true ']'
+ lvcreate --size 256M --snapshot --name services_ROOT_snapshot /dev/vg0/services_ROOT
+ unlock services_ROOT_snapshot
+ local -r name=services_ROOT_snapshot
+ '[' '!' -b /dev/mapper/services_ROOT_snapshot ']'
+ /lib/cryptsetup/scripts/passdev ????????????????????????????????????????????
+ cryptsetup luksOpen /dev/mapper/vg0-services_ROOT_snapshot services_ROOT_snapshot --key-file -
+ readonly disk0=/dev/mapper/services_ROOT_snapshot
+ disk0=/dev/mapper/services_ROOT_snapshot
+ kpartx -a /dev/mapper/services_ROOT_snapshot
+ rw /dev/mapper/services_ROOT1
+ local -r dev=/dev/mapper/services_ROOT1
+ local o=
+ grep -q '^/dev/mapper/services_ROOT1' /proc/mounts
+ mount -o rw /dev/mapper/services_ROOT1

I run kvm on the snapshot and modify /dev/mapper/services_ROOT1.

I hope that this helps. Let me know if you need more info.

Stuart





More information about the pkg-lvm-maintainers mailing list