[kernel] r22672 - in dists/jessie/linux/debian: . patches patches/bugfix/all

Ben Hutchings benh at moszumanska.debian.org
Sat May 23 00:28:53 UTC 2015


Author: benh
Date: Sat May 23 00:28:53 2015
New Revision: 22672

Log:
md/raid0: fix restore to sector variable in raid0_make_request (regression in 3.16.7-ckt11)

Added:
   dists/jessie/linux/debian/patches/bugfix/all/md-raid0-fix-restore-to-sector-variable-in-raid0_make_request.patch
Modified:
   dists/jessie/linux/debian/changelog
   dists/jessie/linux/debian/patches/series

Modified: dists/jessie/linux/debian/changelog
==============================================================================
--- dists/jessie/linux/debian/changelog	Fri May 22 23:28:01 2015	(r22671)
+++ dists/jessie/linux/debian/changelog	Sat May 23 00:28:53 2015	(r22672)
@@ -169,6 +169,8 @@
     - Enable USB_XHCI_HCD as module, and USB_XHCI_PLATFORM
     - Make xhci platform driver use 64 bit or 32 bit DMA
     - Add support for ACPI identification to xhci-platform
+  * md/raid0: fix restore to sector variable in raid0_make_request
+    (regression in 3.16.7-ckt11)
 
   [ Ian Campbell ]
   * [armhf] Enable support for Freescale SNVS RTC. (Closes: #782364)

Added: dists/jessie/linux/debian/patches/bugfix/all/md-raid0-fix-restore-to-sector-variable-in-raid0_make_request.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/jessie/linux/debian/patches/bugfix/all/md-raid0-fix-restore-to-sector-variable-in-raid0_make_request.patch	Sat May 23 00:28:53 2015	(r22672)
@@ -0,0 +1,46 @@
+From: Eric Work <work.eric at gmail.com>
+Date: Mon, 18 May 2015 23:26:23 -0700
+Subject: md/raid0: fix restore to sector variable in raid0_make_request
+Origin: http://git.neil.brown.name/?p=md.git;a=commitdiff;h=a81157768a00e8cf8a7b43b5ea5cac931262374f
+Bug: https://bugzilla.kernel.org/show_bug.cgi?id=98501
+Bug-Debian: https://bugs.debian.org/786372
+
+The variable "sector" in "raid0_make_request()" was improperly updated
+by a call to "sector_div()" which modifies its first argument in place.
+Commit 47d68979cc968535cb87f3e5f2e6a3533ea48fbd restored this variable
+after the call for later re-use.  Unfortunetly the restore was done after
+the referenced variable "bio" was advanced.  This lead to the original
+value and the restored value being different.  Here we move this line to
+the proper place.
+
+One observed side effect of this bug was discarding a file though
+unlinking would cause an unrelated file's contents to be discarded.
+
+Signed-off-by: NeilBrown <neilb at suse.de>
+Fixes: 47d68979cc96 ("md/raid0: fix bug with chunksize not a power of 2.")
+Cc: stable at vger.kernel.org (any that received above backport)
+URL: https://bugzilla.kernel.org/show_bug.cgi?id=98501
+---
+ drivers/md/raid0.c |    4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/drivers/md/raid0.c
++++ b/drivers/md/raid0.c
+@@ -531,6 +531,9 @@ static void raid0_make_request(struct md
+ 			 ? (sector & (chunk_sects-1))
+ 			 : sector_div(sector, chunk_sects));
+ 
++		/* Restore due to sector_div */
++		sector = bio->bi_iter.bi_sector;
++
+ 		if (sectors < bio_sectors(bio)) {
+ 			split = bio_split(bio, sectors, GFP_NOIO, fs_bio_set);
+ 			bio_chain(split, bio);
+@@ -538,7 +541,6 @@ static void raid0_make_request(struct md
+ 			split = bio;
+ 		}
+ 
+-		sector = bio->bi_iter.bi_sector;
+ 		zone = find_zone(mddev->private, &sector);
+ 		tmp_dev = map_sector(mddev, zone, sector, &sector);
+ 		split->bi_bdev = tmp_dev->bdev;

Modified: dists/jessie/linux/debian/patches/series
==============================================================================
--- dists/jessie/linux/debian/patches/series	Fri May 22 23:28:01 2015	(r22671)
+++ dists/jessie/linux/debian/patches/series	Sat May 23 00:28:53 2015	(r22672)
@@ -600,3 +600,4 @@
 bugfix/all/config-enable-need_dma_map_state-by-default-when-swi.patch
 features/arm64/usb-make-xhci-platform-driver-use-64-bit-or-32-bit-dma.patch
 features/arm64/usb-add-support-for-acpi-identification-to-xhci-platform.patch
+bugfix/all/md-raid0-fix-restore-to-sector-variable-in-raid0_make_request.patch



More information about the Kernel-svn-changes mailing list