Doing this on a Lucid with vmbuilder 0.12.3.r435.

After some testing I found out that this is not restricted to
failed/interrupted vmbuilder runs. Additionally leaving behind those
device mappings seem to interfere with the filesystem in the VM.

If you use a LVM logical volume as --raw device, a partition table is created 
on the device and partitions are setup. For those partitions device mapper is 
configured. Example for --raw /dev/leo02/kvm-web01.test:
brw-rw---- 1 shuerlimann shuerlimann 251,  8 2010-05-01 07:17 
leo02-kvm--web01.test
brw-rw---- 1 root        disk        251,  9 2010-04-22 16:44 
leo02-kvm--web01.testp1
brw-rw---- 1 root        disk        251, 10 2010-04-22 16:44 
leo02-kvm--web01.testp2

As far as I can tell, no such leftovers exist if qcow images are used...

If you start a vm created using --raw and having those device mappings
still configured, filesystem corruption in the vm happens. This is quite
reliably reproducable. Here's a snipplet of the /var/log/kernel.log
right after booting:

Apr 30 12:47:11 web01 kernel: [    0.357236] Freeing unused kernel memory: 796k 
freed
Apr 30 12:47:11 web01 kernel: [    0.357881] Write protecting the kernel 
read-only data: 7788k
Apr 30 12:47:11 web01 kernel: [    0.380691] udev: starting version 151
Apr 30 12:47:11 web01 kernel: [    0.540618] FDC 0 is a S82078B
Apr 30 12:47:11 web01 kernel: [    0.586564] EXT4-fs (sda1): INFO: recovery 
required on readonly filesystem
Apr 30 12:47:11 web01 kernel: [    0.586573] EXT4-fs (sda1): write access will 
be enabled during recovery
Apr 30 12:47:11 web01 kernel: [    0.603151] EXT4-fs (sda1): recovery complete
Apr 30 12:47:11 web01 kernel: [    0.651570] EXT4-fs (sda1): mounted filesystem 
with ordered data mode
Apr 30 12:47:11 web01 kernel: [    1.476513] EXT4-fs error (device sda1): 
ext4_mb_generate_buddy: EXT4-fs: group 1: 1110 blocks in bitmap, 1688 in gd
Apr 30 12:47:11 web01 kernel: [    1.477954] JBD: Spotted dirty metadata buffer 
(dev = sda1, blocknr = 0). There's a risk of filesystem corruption in case of 
system crash.
Apr 30 12:47:11 web01 kernel: [    1.532262] udev: starting version 151
Apr 30 12:47:11 web01 kernel: [    1.721612] vga16fb: initializing
Apr 30 12:47:11 web01 kernel: [    1.721620] vga16fb: mapped to 
0xffff8800000a0000
Apr 30 12:47:11 web01 kernel: [    1.721680] fb0: VGA16 VGA frame buffer device
Apr 30 12:47:11 web01 kernel: [    1.904983] Adding 999416k swap on /dev/sda2.  
Priority:-1 extents:1 across:999416k 
Apr 30 12:47:11 web01 kernel: [    2.241484] input: ImExPS/2 Generic Explorer 
Mouse as /devices/platform/i8042/serio1/input/input3
Apr 30 12:47:11 web01 kernel: [    3.210207] Console: switching to colour frame 
buffer device 80x30
Apr 30 12:47:11 web01 kernel: [    4.219962] EXT4-fs error (device sda1): 
ext4_mb_generate_buddy: EXT4-fs: group 2: 415 blocks in bitmap, 478 in gd
Apr 30 12:47:11 web01 kernel: [    4.247451] EXT4-fs error (device sda1): 
ext4_mb_generate_buddy: EXT4-fs: group 3: 7494 blocks in bitmap, 19027 in gd
Apr 30 12:47:23 web01 kernel: [   13.720135] eth0: no IPv6 routers present
Apr 30 12:47:58 web01 kernel: [   49.482760] EXT4-fs error (device sda1): 
ext4_mb_generate_buddy: EXT4-fs: group 0: 22371 blocks in bitmap, 22590 in gd
May  1 06:36:25 web01 kernel: [64132.678652] EXT4-fs error (device sda1): 
mb_free_blocks: double-free of inode 0's block 135993(bit 4921 in group 4)
May  1 06:36:25 web01 kernel: [64132.694422] EXT4-fs error (device sda1): 
mb_free_blocks: double-free of inode 0's block 135994(bit 4922 in group 4)

When doing filesystem intense work like installing lots of packages,
more such errors happens. And after some time the kernel oopses and
everything freezes.

No filesystem corruption seems to happen if I manually remove the device 
mappings before starting the vm:
sudo dmsetup remove leo02-kvm--web01.testp1
sudo dmsetup remove leo02-kvm--web01.testp2


** Summary changed:

- tricky leftovers when using a too small --raw device
+ device mappings for partition not removed after build using --raw, leading to 
filesystem corruption

** Summary changed:

- device mappings for partition not removed after build using --raw, leading to 
filesystem corruption
+ device mappings for partitions not removed after build using --raw, leading 
to filesystem corruption

-- 
device mappings for partitions not removed after build using --raw, leading to 
filesystem corruption
https://bugs.launchpad.net/bugs/531599
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to vm-builder in ubuntu.

-- 
Ubuntu-server-bugs mailing list
Ubuntu-server-bugs@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-server-bugs

Reply via email to