rbd: don't retry watch reregistration if header object is gone
[cascardo/linux.git] / drivers / block / rbd.c
index 633e8c2..7b274ff 100644 (file)
@@ -3944,7 +3944,7 @@ static void rbd_reregister_watch(struct work_struct *work)
        ret = __rbd_register_watch(rbd_dev);
        if (ret) {
                rbd_warn(rbd_dev, "failed to reregister watch: %d", ret);
-               if (ret == -EBLACKLISTED) {
+               if (ret == -EBLACKLISTED || ret == -ENOENT) {
                        set_bit(RBD_DEV_FLAG_BLACKLISTED, &rbd_dev->flags);
                        need_to_wake = true;
                } else {