Re: [OE-core] [PATCH v3 1/3] overlayfs: Fix the QA skip for ignored mounts

Vyacheslav Yurkov
2026-01-15T21:18:40Z

This is actually a good point, but I'm not sure how WARN_QA/ERROR_QA can
be utilized here. WARN_QA/ERROR_QA expects one keyword, but
OVERLAYFS_QA_SKIP expects a flag per mount unit. If we simplify it to
WARN_QA/ERROR_QA, then we enable/disable the QA for all mount units.
This will be a breaking change though, but it sounds like it might
simplify things a bit. Do you think that would be better to use
WARN_QA/ERROR_QA instead of current mechanism?

As for the check performed twice question. The file list is populated /
expanded at the parsing stage, but the actual QA is performed at the
rootfs postprocessing, because the overlayfs class works on a recipe
basis, so to check if everything is provided the whole file system is
needed.

Slava

On 15.01.2026 14:41, Paul Barker wrote:
> On Wed, 2026-01-14 at 18:54 +0000, Vyacheslav Yurkov via
> lists.openembedded.org wrote:
>> From: Vyacheslav Yurkov <uvv.mail@gmail.com>
>>
>> The supressing of QA check for mounts should happens twice, at parsing stage
>> and at rootfs postprocessing. If the mount point is configured to be skipped,
>> but it is still present in the configuration (machine or distro), then the
>> parsing would complain.
> Thanks for respinning these patches.
>
> I'm still unsure why the check is being performed twice. Are we checking
> for different errors at parse time and rootfs time?
>
> Also, can we convert this to fit in our existing QA framework so that it
> is controlled by the WARN_QA/ERROR_QA variables?
>
>> Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
>> ---
>> meta/lib/oe/overlayfs.py | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/meta/lib/oe/overlayfs.py b/meta/lib/oe/overlayfs.py
>> index 5a5ea03d45..3805746d90 100644
>> --- a/meta/lib/oe/overlayfs.py
>> +++ b/meta/lib/oe/overlayfs.py
>> @@ -33,7 +33,8 @@ def unitFileList(d):
>> # check that we have required mount points set first
>> requiredMountPoints = d.getVarFlags('OVERLAYFS_WRITABLE_PATHS')
>> for mountPoint in requiredMountPoints:
>> - if mountPoint not in overlayMountPoints:
>> + qaSkip = (d.getVarFlag("OVERLAYFS_QA_SKIP", mountPoint) or "").split()
>> + if mountPoint not in overlayMountPoints and not "mount-configured" in qaSkip:
>> bb.fatal("Missing required mount point for OVERLAYFS_MOUNT_POINT[%s] in your MACHINE configuration" % mountPoint)
>>
>> for mountPoint in overlayMountPoints:
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#229369): https://lists.openembedded.org/g/openembedded-core/message/229369
>> Mute This Topic: https://lists.openembedded.org/mt/117266570/1826184
>> Group Owner: openembedded-core+owner@lists.openembedded.org
>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [paul@pbarker.dev]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>