On Fri, 2022-05-27 at 17:21 +0300, Almaz Alexandrovich wrote: > This commit makes function a bit more readable trivia: > diff --git a/fs/ntfs3/index.c b/fs/ntfs3/index.c [] > @@ -1042,19 +1042,16 @@ int indx_find(struct ntfs_index *indx, struct ntfs_inode *ni, > { > int err; > struct NTFS_DE *e; > - const struct INDEX_HDR *hdr; > struct indx_node *node; > > if (!root) > root = indx_get_root(&ni->dir, ni, NULL, NULL); > > if (!root) { > - err = -EINVAL; > - goto out; > + /* Should not happed. */ > + return -EINVAL; s/happed/happen/ > for (;;) { > node = NULL; > if (*diff >= 0 || !de_has_vcn_ex(e)) { > *entry = e; > - goto out; > + return 0; > } might be nicer with a break; or a while like while (*diff < 0 && de_has_vcn_ex(e)) { node = NULL; > /* Read next level. */ > err = indx_read(indx, ni, de_get_vbn(e), &node); > if (err) > - goto out; > + return err; > > /* Lookup entry that is <= to the search value. */ > e = hdr_find_e(indx, &node->index->ihdr, key, key_len, ctx, > diff); > if (!e) { > - err = -EINVAL; > put_indx_node(node); > - goto out; > + return -EINVAL; > } > > fnd_push(fnd, node, e); > } > - > -out: > - return err; and a return 0; or *entry = e; return 0; so it appears that the function has a typical return value.