From: 서성종 <sj1557.seo@samsung.com>
To: "Yuezhang.Mo@sony.com" <Yuezhang.Mo@sony.com>,
"linkinjeon@kernel.org" <linkinjeon@kernel.org>
Cc: "linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
"Andy.Wu@sony.com" <Andy.Wu@sony.com>,
"Wataru.Aoyama@sony.com" <Wataru.Aoyama@sony.com>
Subject: RE: [PATCH v2 02/10] exfat: add exfat_get_empty_dentry_set() helper
Date: Mon, 04 Mar 2024 13:43:15 +0900 [thread overview]
Message-ID: <1891546521.01709530081906.JavaMail.epsvc@epcpadp4> (raw)
In-Reply-To: CGME20231228065938epcas1p3112d227f22639ca54849441146d9bdbf@epcms1p1
> > > + for (i = 0; i < es->num_entries; i++) {
> > > + ep = exfat_get_dentry_cached(es, i);
> > > + if (ep->type == EXFAT_UNUSED)
> > > + unused_hit = true;
> > > + else if (IS_EXFAT_DELETED(ep->type)) {
> >
> > Although it violates the specification for a deleted entry to follow
> > an unused entry, some exFAT implementations could work like this.
> >
> > Therefore, to improve compatibility, why don't we allow this?
> > I believe there will be no functional problem even if this is allowed.
>
> This check existed before this patch set.
Do you mean the part that will be deleted by the patch [7/10] mentioned below?
If so, I think you may be misunderstanding it.
>
> This patch set is intended to improve the performance of sync dentry, I
> don't think it is a good idea to change other logic in this patch set.
Yeah, as you said, this patch set should keep the original logic except
for the sync related parts. The reason I left a review comment is because
the code before this patch set allows deleted dentries to follow unused
dentries.
Please let me know if I missed anything.
> Patch [7/10] moves the check from exfat_search_empty_slot() to
> exfat_validate_empty_dentry_set().
>
> - if (hint_femp->eidx != EXFAT_HINT_NONE &&
> - hint_femp->count == CNT_UNUSED_HIT) {
> - /* unused empty group means
> - * an empty group which includes
> - * unused dentry
> - */
> - exfat_fs_error(sb,
> - "found bogus dentry(%d) beyond
> unused empty group(%d) (start_clu : %u, cur_clu : %u)",
> - dentry, hint_femp->eidx,
> - p_dir->dir, clu.dir);
>
> >
> > > + if (unused_hit)
> > > + goto out;
> > > + } else {
> > > + if (unused_hit)
> > > + goto out;
> > Label "out" does not look like an error situation.
> > Let's use "out_err" instead of "out".
>
> Makes sense, I will rename the label to "err_deleted_after_unused".
Sounds good :)
next parent reply other threads:[~2024-03-04 5:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20231228065938epcas1p3112d227f22639ca54849441146d9bdbf@epcms1p1>
2024-03-04 4:43 ` 서성종 [this message]
2024-03-04 7:29 ` [PATCH v2 02/10] exfat: add exfat_get_empty_dentry_set() helper Yuezhang.Mo
2024-03-04 8:42 ` Sungjong Seo
2024-03-04 11:37 ` Yuezhang.Mo
2024-03-07 11:07 ` Sungjong Seo
[not found] <CGME20231228065938epcas1p3112d227f22639ca54849441146d9bdbf@epcas1p3.samsung.com>
2023-12-28 6:59 ` Yuezhang.Mo
2024-02-29 6:18 ` Sungjong Seo
2024-02-29 9:37 ` Yuezhang.Mo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1891546521.01709530081906.JavaMail.epsvc@epcpadp4 \
--to=sj1557.seo@samsung.com \
--cc=Andy.Wu@sony.com \
--cc=Wataru.Aoyama@sony.com \
--cc=Yuezhang.Mo@sony.com \
--cc=linkinjeon@kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).