+++ /dev/null
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Thomas Lamprecht <t.lamprecht@proxmox.com>
-Date: Tue, 9 Nov 2021 12:01:12 +0100
-Subject: [PATCH] Revert "block: remove the -ERESTARTSYS handling in
- blkdev_get_by_dev"
-
-This reverts commit a8ed1a0607cfa5478ff6009539f44790c4d0956d.
-
-It breaks ZFS sometimes:
-https://github.com/openzfs/zfs/issues/12301#issuecomment-873303739
-
-Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
----
- block/bdev.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/block/bdev.c b/block/bdev.c
-index 485a258b0ab3..f93165f05987 100644
---- a/block/bdev.c
-+++ b/block/bdev.c
-@@ -800,6 +800,10 @@ struct block_device *blkdev_get_by_dev(dev_t dev, fmode_t mode, void *holder)
- if (ret)
- return ERR_PTR(ret);
-
-+ /*
-+ * If we lost a race with 'disk' being deleted, try again. See md.c.
-+ */
-+retry:
- bdev = blkdev_get_no_open(dev);
- if (!bdev)
- return ERR_PTR(-ENXIO);
-@@ -852,6 +856,8 @@ struct block_device *blkdev_get_by_dev(dev_t dev, fmode_t mode, void *holder)
- disk_unblock_events(disk);
- put_blkdev:
- blkdev_put_no_open(bdev);
-+ if (ret == -ERESTARTSYS)
-+ goto retry;
- return ERR_PTR(ret);
- }
- EXPORT_SYMBOL(blkdev_get_by_dev);