Re: [OE-core] [master][PATCH 4/5] package / packagedata bbclass: Change the way PRAUTO and AUTOINC are handled

Richard Purdie
2020-08-25T10:56:39Z

On Mon, 2020-08-24 at 18:29 -0500, Mark Hatle wrote:
> A related change was also needed for the kernel.bbclass. The kernel
>
> needs to get the AUTOINC values used by the various PV/PKGV, but with
> this new system we don't want to call auto_pr each time -- instead
> call the read_subpackage_metadata to ensure a consistent result.
>
> This also fixes an issue in the old version where the kernel
> sometimes
> caused the PR to be incremented twice, as the auto_pr was called
> multiple times from different tasks.

[...]

>
> diff --git a/meta/classes/kernel.bbclass
> b/meta/classes/kernel.bbclass
> index e2ceb6a333..4449452065 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -416,7 +416,7 @@ kernel_do_install() {
> install -d ${D}${sysconfdir}/modules-load.d
> install -d ${D}${sysconfdir}/modprobe.d
> }
> -do_install[prefuncs] += "package_get_auto_pr"
> +do_install[prefuncs] += "read_subpackage_metadata"
>
> # Must be ran no earlier than after do_kernel_checkout or else
> Makefile won't be in ${S}/Makefile
> do_kernel_version_sanity_check() {
> @@ -749,7 +749,7 @@ kernel_do_deploy() {
> done
> fi
> }
> -do_deploy[prefuncs] += "package_get_auto_pr"
> +do_deploy[prefuncs] += "read_subpackage_metadata"
>
> addtask deploy after do_populate_sysroot do_packagedata

I don't think this can be right. I understand why the kernel was
expanding these early but at this point do_package hasn't happened so
reading the subpackage metadata is a null op at best and potentially
changes a lot more in the data store.

I suspect this is not doing the right thing and will be something that
comes back to bite us so we need something more careful here and I'd
like to better understand exactly what change to the variables
do_install and do_deploy need.

Cheers,

Richard