mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 04:18:39 +08:00
fscache: Fix error handling in fscache_begin_operation()
Fix fscache_begin_operation() to clear cres->cache_priv on error, otherwise fscache_resources_valid() will report it as being valid. Signed-off-by: David Howells <dhowells@redhat.com> Link: https://lore.kernel.org/r/3933237.1710514106@warthog.procyon.org.uk Reviewed-by: Jeff Layton <jlayton@kernel.org> Reported-by: Marc Dionne <marc.dionne@auristor.com> cc: Jeff Layton <jlayton@kernel.org> cc: netfs@lists.linux.dev cc: linux-fsdevel@vger.kernel.org Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
59a55a63c2
commit
449ac55146
@ -83,8 +83,10 @@ static int fscache_begin_operation(struct netfs_cache_resources *cres,
|
||||
cres->debug_id = cookie->debug_id;
|
||||
cres->inval_counter = cookie->inval_counter;
|
||||
|
||||
if (!fscache_begin_cookie_access(cookie, why))
|
||||
if (!fscache_begin_cookie_access(cookie, why)) {
|
||||
cres->cache_priv = NULL;
|
||||
return -ENOBUFS;
|
||||
}
|
||||
|
||||
again:
|
||||
spin_lock(&cookie->lock);
|
||||
|
Loading…
Reference in New Issue
Block a user