Patch "rbd: ignore unmapped snapshots that no longer exist" has been added to the 3.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    rbd: ignore unmapped snapshots that no longer exist

to the 3.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     rbd-ignore-unmapped-snapshots-that-no-longer-exist.patch
and it can be found in the queue-3.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From efadc98aab674153709cc357ba565f04e3164fcd Mon Sep 17 00:00:00 2001
From: Josh Durgin <josh.durgin@xxxxxxxxxxx>
Date: Thu, 29 Aug 2013 19:16:42 -0700
Subject: rbd: ignore unmapped snapshots that no longer exist

From: Josh Durgin <josh.durgin@xxxxxxxxxxx>

commit efadc98aab674153709cc357ba565f04e3164fcd upstream.

This prevents erroring out while adding a device when a snapshot
unrelated to the current mapping is deleted between reading the
snapshot context and reading the snapshot names. If the mapped
snapshot name is not found an error still occurs as usual.

Signed-off-by: Josh Durgin <josh.durgin@xxxxxxxxxxx>
Reviewed-by: Alex Elder <elder@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
 drivers/block/rbd.c |    9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -4055,8 +4055,13 @@ static u64 rbd_v2_snap_id_by_name(struct
 
 		snap_id = snapc->snaps[which];
 		snap_name = rbd_dev_v2_snap_name(rbd_dev, snap_id);
-		if (IS_ERR(snap_name))
-			break;
+		if (IS_ERR(snap_name)) {
+			/* ignore no-longer existing snapshots */
+			if (PTR_ERR(snap_name) == -ENOENT)
+				continue;
+			else
+				break;
+		}
 		found = !strcmp(name, snap_name);
 		kfree(snap_name);
 	}


Patches currently in stable-queue which might be from josh.durgin@xxxxxxxxxxx are

queue-3.10/rbd-make-rbd_obj_notify_ack-synchronous.patch
queue-3.10/libceph-add-function-to-ensure-notifies-are-complete.patch
queue-3.10/rbd-fix-buffer-size-for-writes-to-images-with-snapshots.patch
queue-3.10/rbd-fix-use-after-free-of-rbd_dev-disk.patch
queue-3.10/rbd-complete-notifies-before-cleaning-up-osd_client-and-rbd_dev.patch
queue-3.10/libceph-add-lingering-request-reference-when-registered.patch
queue-3.10/rbd-fix-null-dereference-in-dout.patch
queue-3.10/rbd-ignore-unmapped-snapshots-that-no-longer-exist.patch
queue-3.10/rbd-set-removing-flag-while-holding-list-lock.patch
queue-3.10/rbd-flush-dcache-after-zeroing-page-data.patch
queue-3.10/rbd-fix-error-handling-from-rbd_snap_name.patch
queue-3.10/rbd-protect-against-concurrent-unmaps.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]