[PATCH 06/12] fscache: Detect multiple relinquishment of a cookie
From: David Howells
Date: Wed Apr 04 2018 - 18:07:31 EST
Report if an fscache cookie is relinquished multiple times by the netfs.
Signed-off-by: David <dhowells@xxxxxxxxxx>
---
fs/fscache/cookie.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/fs/fscache/cookie.c b/fs/fscache/cookie.c
index d705125665f0..98d22f495cd8 100644
--- a/fs/fscache/cookie.c
+++ b/fs/fscache/cookie.c
@@ -602,7 +602,8 @@ void __fscache_relinquish_cookie(struct fscache_cookie *cookie, bool retire)
atomic_read(&cookie->n_active), retire);
/* No further netfs-accessing operations on this cookie permitted */
- set_bit(FSCACHE_COOKIE_RELINQUISHED, &cookie->flags);
+ if (test_and_set_bit(FSCACHE_COOKIE_RELINQUISHED, &cookie->flags))
+ BUG();
__fscache_disable_cookie(cookie, retire);