| From 26aa6f25962141595248a09ab65c576240b746cb Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 15 Apr 2020 16:14:42 -0400 |
| Subject: NFS: Fix fscache super_cookie allocation |
| |
| From: Dave Wysochanski <dwysocha@redhat.com> |
| |
| [ Upstream commit 15751612734ca0c419ac43ce986c9badcb5e2829 ] |
| |
| Commit f2aedb713c28 ("NFS: Add fs_context support.") reworked |
| NFS mount code paths for fs_context support which included |
| super_block initialization. In the process there was an extra |
| return left in the code and so we never call |
| nfs_fscache_get_super_cookie even if 'fsc' is given on as mount |
| option. In addition, there is an extra check inside |
| nfs_fscache_get_super_cookie for the NFS_OPTION_FSCACHE which |
| is unnecessary since the only caller nfs_get_cache_cookie |
| checks this flag. |
| |
| Fixes: f2aedb713c28 ("NFS: Add fs_context support.") |
| Signed-off-by: Dave Wysochanski <dwysocha@redhat.com> |
| Signed-off-by: David Howells <dhowells@redhat.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| fs/nfs/fscache.c | 2 -- |
| fs/nfs/super.c | 1 - |
| 2 files changed, 3 deletions(-) |
| |
| diff --git a/fs/nfs/fscache.c b/fs/nfs/fscache.c |
| index 8eff1fd806b1c..f517184156068 100644 |
| --- a/fs/nfs/fscache.c |
| +++ b/fs/nfs/fscache.c |
| @@ -118,8 +118,6 @@ void nfs_fscache_get_super_cookie(struct super_block *sb, const char *uniq, int |
| |
| nfss->fscache_key = NULL; |
| nfss->fscache = NULL; |
| - if (!(nfss->options & NFS_OPTION_FSCACHE)) |
| - return; |
| if (!uniq) { |
| uniq = ""; |
| ulen = 1; |
| diff --git a/fs/nfs/super.c b/fs/nfs/super.c |
| index dada09b391c65..c0d5240b8a0ac 100644 |
| --- a/fs/nfs/super.c |
| +++ b/fs/nfs/super.c |
| @@ -1154,7 +1154,6 @@ static void nfs_get_cache_cookie(struct super_block *sb, |
| uniq = ctx->fscache_uniq; |
| ulen = strlen(ctx->fscache_uniq); |
| } |
| - return; |
| } |
| |
| nfs_fscache_get_super_cookie(sb, uniq, ulen); |
| -- |
| 2.20.1 |
| |