Activity log for bug #1847773

Date Who What changed Old value New value Message
2019-10-11 14:03:33 Guilherme G. Piccoli bug added bug
2019-10-13 22:46:38 Guilherme G. Piccoli summary md raid0/linear don't show error state if an array member is removed md raid0/linear don't show error state if an array member is removed and allows successful writes
2019-10-13 22:46:52 Guilherme G. Piccoli summary md raid0/linear don't show error state if an array member is removed and allows successful writes md raid0/linear doesn't show error state if an array member is removed and allows successful writes
2019-10-13 22:51:45 Guilherme G. Piccoli description TBD - just a LP number now for SRU, will elaborate the description soon [Impact] * Currently, mounted raid0/md-linear arrays have no indication/warning when one or more members are removed or suffer from some non-recoverable error condition. * Given that, arrays keep mounted, and regular written data to it goes through page cache and appear as successful written to the devices, despite writeback threads can't write to it. For users, it can potentially cause data corruption, given that even "sync" command will return success despite the data is not written to the disk. Kernel messages will show I/O errors though. * The patch proposed in this SRU addresses this issue in 2 levels; first, it fast-fails written I/Os to the raid0/md-linear array devices with one or more failed members. Also, it introduces the "broken" state, which is analog to "clean" but indicates that array is not in a good/correct state. A message showed in dmesg helps to clarify when such array gets a member removed/failed. * The commit proposed here, available on Linus tree as 62f7b1989c02 ("md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone") [http://git.kernel.org/linus/62f7b1989c02], was pretty discussed upstream and received a good amount of reviews/analysis by both the current md maintainer as well as an old maintainer. * One important note here is that this patch requires a counter-part in mdadm tool to be fully functional, which was SRUed in LP: #1847924. It works fine without this counter-part, but in case of broken arrays, the "mdadm --detail" command won't show broken, and instead will show "clean, FAILED". * We ask hereby an exception from kernel team to have this backported to kernel 4.15 *only in Bionic* and not in Xenial. The reason is that mdadm code changed too much and we didn't want to introduce a potential regression in the Xenial version from that tool, so we only backported the mdadm counter-part of this patch to Bionic, Disco and Eoan - hence, we'd like to have a match in the kernel backported versions. [Test case] * To test this patch, create a raid0 or linear md array on Linux using mdadm, like in: "mdadm --create md0 --level=0 --raid-devices=2 /dev/nvme0n1 /dev/nvme1n1"; * Format the array using a filesystem of your choice (for example ext4) and mount the array; * Remove one member of the array, for example using sysfs interface (for nvme: echo 1 > /sys/block/nvme0nX/device/device/remove, for scsi: echo 1 > /sys/block/sdX/device/delete); * Without this patch, the array partition can be written with success, and "mdadm --detail" will show clean state. [Regression potential] * There's not much potential regression here; we failed written I/Os to bad arrays and show message/status according to it, showing the array broken status. We believe the most common "issue" that could be reported from this patch is if an userspace tool rely on success of I/O writes or in the "clean" state of an array - after this patch it can potentially have a different behavior in case of a broken array.
2019-10-13 22:52:03 Guilherme G. Piccoli nominated for series Ubuntu Bionic
2019-10-13 22:52:03 Guilherme G. Piccoli bug task added linux (Ubuntu Bionic)
2019-10-13 22:52:03 Guilherme G. Piccoli nominated for series Ubuntu Eoan
2019-10-13 22:52:03 Guilherme G. Piccoli bug task added linux (Ubuntu Eoan)
2019-10-13 22:52:03 Guilherme G. Piccoli nominated for series Ubuntu Disco
2019-10-13 22:52:03 Guilherme G. Piccoli bug task added linux (Ubuntu Disco)
2019-10-13 22:52:16 Guilherme G. Piccoli linux (Ubuntu Bionic): status New Confirmed
2019-10-13 22:52:20 Guilherme G. Piccoli linux (Ubuntu Disco): status New Confirmed
2019-10-13 22:52:22 Guilherme G. Piccoli linux (Ubuntu Disco): importance Undecided High
2019-10-13 22:52:25 Guilherme G. Piccoli linux (Ubuntu Bionic): importance Undecided High
2019-10-13 22:52:29 Guilherme G. Piccoli linux (Ubuntu Bionic): assignee Guilherme G. Piccoli (gpiccoli)
2019-10-13 22:52:30 Guilherme G. Piccoli linux (Ubuntu Disco): assignee Guilherme G. Piccoli (gpiccoli)
2019-10-21 14:25:35 Kleber Sacilotto de Souza linux (Ubuntu Bionic): status Confirmed Fix Committed
2019-10-21 14:25:39 Kleber Sacilotto de Souza linux (Ubuntu Eoan): status Confirmed Fix Committed
2019-10-21 14:25:42 Kleber Sacilotto de Souza linux (Ubuntu Disco): status Confirmed Fix Committed
2019-10-22 15:02:12 Ubuntu Kernel Bot tags sts sts verification-needed-disco
2019-10-22 15:48:00 Ubuntu Kernel Bot tags sts verification-needed-disco sts verification-needed-bionic verification-needed-disco
2019-10-24 16:03:01 Ubuntu Kernel Bot tags sts verification-needed-bionic verification-needed-disco sts verification-needed-bionic verification-needed-disco verification-needed-eoan
2019-10-30 18:46:02 Guilherme G. Piccoli tags sts verification-needed-bionic verification-needed-disco verification-needed-eoan sts verification-done-bionic verification-done-disco verification-done-eoan
2019-11-12 22:18:04 Launchpad Janitor linux (Ubuntu Eoan): status Fix Committed Fix Released
2019-11-12 22:18:04 Launchpad Janitor cve linked 2018-12207
2019-11-12 22:18:04 Launchpad Janitor cve linked 2019-0154
2019-11-12 22:18:04 Launchpad Janitor cve linked 2019-0155
2019-11-12 22:18:04 Launchpad Janitor cve linked 2019-11135
2019-11-12 22:18:04 Launchpad Janitor cve linked 2019-15793
2019-11-12 22:18:04 Launchpad Janitor cve linked 2019-17666
2019-11-12 22:21:40 Launchpad Janitor linux (Ubuntu Disco): status Fix Committed Fix Released
2019-11-12 22:21:40 Launchpad Janitor cve linked 2019-15098
2019-11-12 22:21:40 Launchpad Janitor cve linked 2019-17052
2019-11-12 22:21:40 Launchpad Janitor cve linked 2019-17053
2019-11-12 22:21:40 Launchpad Janitor cve linked 2019-17054
2019-11-12 22:21:40 Launchpad Janitor cve linked 2019-17055
2019-11-12 22:21:40 Launchpad Janitor cve linked 2019-17056
2019-11-12 22:24:59 Launchpad Janitor linux (Ubuntu Bionic): status Fix Committed Fix Released
2019-12-06 15:57:44 Launchpad Janitor linux (Ubuntu): status Confirmed Fix Released
2019-12-06 15:57:44 Launchpad Janitor cve linked 2019-15794