[PATCH] ubifs: Fix build errors as symbol undefined
Richard Weinberger
richard at nod.at
Mon Nov 21 00:00:02 PST 2022
----- Ursprüngliche Mail -----
> Von: "Lihua" <hucool.lihua at huawei.com>
> An: "richard" <richard at nod.at>
> CC: "Sascha Hauer" <s.hauer at pengutronix.de>, "linux-mtd" <linux-mtd at lists.infradead.org>, "linux-kernel"
> <linux-kernel at vger.kernel.org>, "Wei Yongjun" <weiyongjun1 at huawei.com>, "yusongping" <yusongping at huawei.com>
> Gesendet: Montag, 21. November 2022 02:54:53
> Betreff: Re: [PATCH] ubifs: Fix build errors as symbol undefined
> You can verify it with the config in the attachment. TKS :D
Thanks for your .config, I was able to identify the problem.
When CONFIG_CC_OPTIMIZE_FOR_SIZE is set the compiler does not optimize this construct:
err = ubifs_node_check_hash(c, buf, zbr->hash);
if (err) {
ubifs_bad_hash(c, buf, zbr->hash, lnum, offs);
return 0;
}
With CONFIG_UBIFS_FS_AUTHENTICATION not set, the compiler can assume that
ubifs_node_check_hash() is never true and drops the call to ubifs_bad_hash().
Is CONFIG_CC_OPTIMIZE_FOR_SIZE enabled this optimization does not happen anymore.
So we need a no-op ubifs_bad_hash() for the CONFIG_UBIFS_FS_AUTHENTICATION=n case.
Thanks,
//richard
More information about the linux-mtd
mailing list