[Bug 320638] Re: hot-add/remove in mixed (IDE/SATA/USB/SD-card/...) RAIDs with device mapper on top => data corruption (bio too big device md0 (248 > 240))
ceg
320638 at bugs.launchpad.net
Sun Jan 6 11:22:50 UTC 2013
** Also affects: mdadm
Importance: Undecided
Status: New
** Changed in: mdadm
Status: New => Confirmed
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubiquity in Ubuntu.
https://bugs.launchpad.net/bugs/320638
Title:
hot-add/remove in mixed (IDE/SATA/USB/SD-card/...) RAIDs with device
mapper on top => data corruption (bio too big device md0 (248 > 240))
Status in The Linux Kernel:
Confirmed
Status in mdadm - Tool for managing linux software RAID arrays.:
Confirmed
Status in “debian-installer” package in Ubuntu:
Confirmed
Status in “linux” package in Ubuntu:
Won't Fix
Status in “mdadm” package in Ubuntu:
Confirmed
Status in “ubiquity” package in Ubuntu:
New
Bug description:
Problem: md changes max_sector setting of an already running and busy
md device, when a (hotplugable) device is added or removed. However,
the device mapper and filesystem layer on top of the raid can not
(always?) cope with that.
Observations:
* "bio too big device mdX (248 > 240)" messages in the syslog
* read/write errors (some dropped silently, no noticable errors reported during operation, until things like dhcpclient looses its IP etc.)
Expected:
Adding and removing members to running raids (hotplugging) should not change the raid device characteristics. If the new member supports only smaller max_sector values, buffer and split the data steam, until the raid device can be set up from a clean state with a more appropriate max_sector value. To avoid buffering and splitting in the future, md could save the smallest max_sector value of the known members in the superblock, and use that when setting up the raid even if that member is not present.
Note: This is reproducible in much more common scenarios as the original reporter had (e.g. --add a USB (3.0 these days) drive to an already running SATA raid1 and grow the number of devices).
---
This is on a MSI Wind U100 and I've got the following stack running:
HDD & SD card (USB card reader) -> RAID1 -> LUKS -> LVM -> Reiser
Whenever I remove the HDD from the Raid1
> mdadm /dev/md0 --fail /dev/sda2
> mdadm /dev/md0 --remove /dev/sda2)
for powersaving reasons, I cannot run any apt related tools.
> sudo apt-get update
[...]
Hit http://de.archive.ubuntu.com intrepid-updates/multiverse Sources
Reading package lists... Error!
E: Read error - read (5 Input/output error)
E: The package lists or status file could not be parsed or opened.
Taking a look at the kernel log shows (and many more above):
> dmesg|tail
[ 9479.330550] bio too big device md0 (248 > 240)
[ 9479.331375] bio too big device md0 (248 > 240)
[ 9479.332182] bio too big device md0 (248 > 240)
[ 9611.980294] bio too big device md0 (248 > 240)
[ 9742.929761] bio too big device md0 (248 > 240)
[ 9852.932001] bio too big device md0 (248 > 240)
[ 9852.935395] bio too big device md0 (248 > 240)
[ 9852.938064] bio too big device md0 (248 > 240)
[ 9853.081046] bio too big device md0 (248 > 240)
[ 9853.081688] bio too big device md0 (248 > 240)
$ sudo mdadm --detail /dev/md0
/dev/md0:
Version : 00.90
Creation Time : Tue Jan 13 11:25:57 2009
Raid Level : raid1
Array Size : 3871552 (3.69 GiB 3.96 GB)
Used Dev Size : 3871552 (3.69 GiB 3.96 GB)
Raid Devices : 2
Total Devices : 1
Preferred Minor : 0
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Fri Jan 23 21:47:35 2009
State : active, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
UUID : 89863068:bc52a0c0:44a5346e:9d69deca (local to host m-twain)
Events : 0.8767
Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 17 1 active sync writemostly /dev/sdb1
$ sudo ubuntu-bug -p linux-meta
dpkg-query: failed in buffer_read(fd): copy info file `/var/lib/dpkg/status': Input/output error
dpkg-query: failed in buffer_read(fd): copy info file `/var/lib/dpkg/status': Input/output error
[...]
Will provide separate attachements.
To manage notifications about this bug go to:
https://bugs.launchpad.net/linux/+bug/320638/+subscriptions
More information about the foundations-bugs
mailing list