On May 15, 2014, at 2:45 PM, Chris Mason <[email protected]> wrote: > > > On 05/15/2014 04:40 PM, Chris Murphy wrote: >> Summary: Two device btrfs raid1, as data device not boot/rootfs, mounted and >> filled with some data. Power off and remove one device. Reboot and mount the >> single device available with -o degraded. Create new subvolume and fill with >> some data. Poweroff and reattach previously removed device. Reboot and >> attempt to mount volume normally and I get a segfault. >> >> Setup: >> VBox VM, Fedora Rawhide >> 2x 2TB VDIs >> kernel 3.15.0-0.rc5.git0.1.fc21.x86_64 >> btrfs-progs 3.14-1 >> mkfs.btrfs -d raid1 -m raid1 /dev/sd[bc] >> >> Reproduce steps: >> 1. Mount /dev/sdb /mnt >> 2. btrfs sub create /mnt/subv1 >> 3. cp -a /var /mnt/prefill/ >> 4. poweroff, remove /dev/sdc >> 5. Boot, mount /dev/sdb /mnt -o degraded >> 6. btrfs sub create /mnt/subv2 >> 7. cp -a /boot /mnt/sub2/ >> 8. poweroff, reattach /dev/sdc >> 9. Boot, mount /dev/sdb /mnt >> Segmentation fault >> >> Regression: I know I've done this recently with existing subvolumes (without >> making new ones while mounting degraded) and it worked OK so I'm not sure >> how reproducible it is. >> > > Yes, this used to work. I'll reproduce, things for sending it!
The same fs mounts normally with 3.14.3-200.fc20.x86_64. If I then umount and do a btrfs check: # btrfs check /dev/sdb Checking filesystem on /dev/sdb UUID: 270f12a8-a724-494a-8131-4bf4da831239 checking extents btrfs: cmds-check.c:2266: check_owner_ref: Assertion `!(rec->is_root)' failed. Aborted (core dumped) If I mount again and balance then umount and btrfs check, btrfs check is happy. And if I go back at this point to 3.15rc5 it mounts it OK. Chris Murphy-- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
