fs/nfs/nfs42xattr.c | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-)
In this function goto can be replaced. Avoiding goto will improve the
readability
Signed-off-by: Javier Abrego<javier.abrego.lorente@gmail.com>
---
fs/nfs/nfs42xattr.c | 28 +++++++++++++---------------
1 file changed, 13 insertions(+), 15 deletions(-)
diff --git a/fs/nfs/nfs42xattr.c b/fs/nfs/nfs42xattr.c
index e7b34f7e0..9bf3a88fd 100644
--- a/fs/nfs/nfs42xattr.c
+++ b/fs/nfs/nfs42xattr.c
@@ -747,21 +747,19 @@ void nfs4_xattr_cache_set_list(struct inode *inode, const char *buf,
return;
entry = nfs4_xattr_alloc_entry(NULL, buf, NULL, buflen);
- if (entry == NULL)
- goto out;
-
- /*
- * This is just there to be able to get to bucket->cache,
- * which is obviously the same for all buckets, so just
- * use bucket 0.
- */
- entry->bucket = &cache->buckets[0];
-
- if (!nfs4_xattr_set_listcache(cache, entry))
- kref_put(&entry->ref, nfs4_xattr_free_entry_cb);
-
-out:
- kref_put(&cache->ref, nfs4_xattr_free_cache_cb);
+ if (entry == NULL) {
+ kref_put(&cache->ref, nfs4_xattr_free_cache_cb);
+ } else {
+ /*
+ * This is just there to be able to get to bucket->cache,
+ * which is obviously the same for all buckets, so just
+ * use bucket 0.
+ */
+ entry->bucket = &cache->buckets[0];
+
+ if (!nfs4_xattr_set_listcache(cache, entry))
+ kref_put(&entry->ref, nfs4_xattr_free_entry_cb);
+ }
}
/*
--
2.25.1
On 20 May 2022, at 4:50, Javier Abrego wrote:
> In this function goto can be replaced. Avoiding goto will improve the
> readability
>
> Signed-off-by: Javier Abrego<javier.abrego.lorente@gmail.com>
> ---
> fs/nfs/nfs42xattr.c | 28 +++++++++++++---------------
> 1 file changed, 13 insertions(+), 15 deletions(-)
>
> diff --git a/fs/nfs/nfs42xattr.c b/fs/nfs/nfs42xattr.c
> index e7b34f7e0..9bf3a88fd 100644
> --- a/fs/nfs/nfs42xattr.c
> +++ b/fs/nfs/nfs42xattr.c
> @@ -747,21 +747,19 @@ void nfs4_xattr_cache_set_list(struct inode
> *inode, const char *buf,
> return;
>
> entry = nfs4_xattr_alloc_entry(NULL, buf, NULL, buflen);
> - if (entry == NULL)
> - goto out;
> -
> - /*
> - * This is just there to be able to get to bucket->cache,
> - * which is obviously the same for all buckets, so just
> - * use bucket 0.
> - */
> - entry->bucket = &cache->buckets[0];
> -
> - if (!nfs4_xattr_set_listcache(cache, entry))
> - kref_put(&entry->ref, nfs4_xattr_free_entry_cb);
> -
> -out:
> - kref_put(&cache->ref, nfs4_xattr_free_cache_cb);
> + if (entry == NULL) {
> + kref_put(&cache->ref, nfs4_xattr_free_cache_cb);
> + } else {
> + /*
> + * This is just there to be able to get to bucket->cache,
> + * which is obviously the same for all buckets, so just
> + * use bucket 0.
> + */
> + entry->bucket = &cache->buckets[0];
> +
> + if (!nfs4_xattr_set_listcache(cache, entry))
> + kref_put(&entry->ref, nfs4_xattr_free_entry_cb);
> + }
> }
>
> /*
> --
> 2.25.1
No, NACK because you removed the kref_put of cache->ref. I find this
function quite readable as it is.
Ben
© 2016 - 2026 Red Hat, Inc.