File bug-1150021_10-bcache-bcache_invalidate_fd-only-remove-prefixes-on.patch of Package lvm2-clvm.18094

From 019fa6f8eec799ebc7a9b9c5b31354ff1717db12 Mon Sep 17 00:00:00 2001
From: Joe Thornber <ejt@redhat.com>
Date: Tue, 29 Oct 2019 15:21:11 +0000
Subject: [PATCH 8/9] [bcache] bcache_invalidate_fd, only remove prefixes on
 success.

---
 lib/device/bcache.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/device/bcache.c b/lib/device/bcache.c
index 72cc599..b64707e 100644
--- a/lib/device/bcache.c
+++ b/lib/device/bcache.c
@@ -1291,7 +1291,10 @@ bool bcache_invalidate_fd(struct bcache *cache, int fd)
 	it.success = true;
 	it.it.visit = _invalidate_v;
 	radix_tree_iterate(cache->rtree, k.bytes, k.bytes + sizeof(k.parts.fd), &it.it);
-	radix_tree_remove_prefix(cache->rtree, k.bytes, k.bytes + sizeof(k.parts.fd));
+
+	if (it.success)
+		radix_tree_remove_prefix(cache->rtree, k.bytes, k.bytes + sizeof(k.parts.fd));
+
 	return it.success;
 }
 
-- 
1.8.3.1

openSUSE Build Service is sponsored by