summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@fedoraproject.org>2020-09-14 12:54:51 -0500
committerJustin M. Forbes <jforbes@fedoraproject.org>2020-09-14 12:54:51 -0500
commit5b00d0bc9ff1311c6cd8709c36cb81d64effcdf7 (patch)
tree29ed884e9b75a2b86ffded6b520b028afab6d834
parentc40d4000da3df4dcafb9f10f13d59ab77f266ebe (diff)
downloadkernel-5b00d0bc9ff1311c6cd8709c36cb81d64effcdf7.tar.gz
kernel-5b00d0bc9ff1311c6cd8709c36cb81d64effcdf7.tar.xz
kernel-5b00d0bc9ff1311c6cd8709c36cb81d64effcdf7.zip
Fix error code in bdev_del_part (rhbz 1878858)
Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
-rw-r--r--block-restore-a-specific-error-code-in-bdev_del_part.patch38
-rw-r--r--kernel.spec4
2 files changed, 42 insertions, 0 deletions
diff --git a/block-restore-a-specific-error-code-in-bdev_del_part.patch b/block-restore-a-specific-error-code-in-bdev_del_part.patch
new file mode 100644
index 000000000..476eb1ab6
--- /dev/null
+++ b/block-restore-a-specific-error-code-in-bdev_del_part.patch
@@ -0,0 +1,38 @@
+From 10b34a18180269103dafc68f1a4257ae61c87415 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Tue, 8 Sep 2020 16:15:06 +0200
+Subject: block: restore a specific error code in bdev_del_partition
+
+From: Christoph Hellwig <hch@lst.de>
+
+[ Upstream commit 88ce2a530cc9865a894454b2e40eba5957a60e1a ]
+
+mdadm relies on the fact that deleting an invalid partition returns
+-ENXIO or -ENOTTY to detect if a block device is a partition or a
+whole device.
+
+Fixes: 08fc1ab6d748 ("block: fix locking in bdev_del_partition")
+Reported-by: kernel test robot <rong.a.chen@intel.com>
+Signed-off-by: Christoph Hellwig <hch@lst.de>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ block/partitions/core.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/block/partitions/core.c b/block/partitions/core.c
+index 534e11285a8d4..b45539764c994 100644
+--- a/block/partitions/core.c
++++ b/block/partitions/core.c
+@@ -529,7 +529,7 @@ int bdev_del_partition(struct block_device *bdev, int partno)
+
+ bdevp = bdget_disk(bdev->bd_disk, partno);
+ if (!bdevp)
+- return -ENOMEM;
++ return -ENXIO;
+
+ mutex_lock(&bdevp->bd_mutex);
+ mutex_lock_nested(&bdev->bd_mutex, 1);
+--
+2.25.1
+
diff --git a/kernel.spec b/kernel.spec
index 16f37c3bc..637312e10 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -872,6 +872,9 @@ Patch110: memory-tegra-Remove-GPU-from-DRM-IOMMU-group.patch
# CVE-2020-25211 rhbz 1877571 1877572
Patch111: netfilter-ctnetlink-add-range-check-for-l3-l4-protonum.patch
+# rhbz 1878858
+Patch112: block-restore-a-specific-error-code-in-bdev_del_part.patch
+
# END OF PATCH DEFINITIONS
%endif
@@ -2978,6 +2981,7 @@ fi
%changelog
* Mon Sep 14 08:51:46 CDT 2020 Justin M. Forbes <jforbes@fedoraproject.org> - 5.8.9-200
- Linux v5.8.9
+- Fix error code in bdev_del_part (rhbz 1878858)
* Thu Sep 10 2020 Justin M. Forbes <jforbes@fedoraproject.org>
- Fix CVE-2020-25211 (rhbz 1877571 1877572)