Message ID | 20221021132238.16056-1-michal.orzel@amd.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | [for-4.17] automation: Build Xen according to the type of the job | expand |
On 21/10/2022 14:22, Michal Orzel wrote: > All the build jobs exist in two flavors: debug and non-debug, where the > former sets 'debug' variable to 'y' and the latter to 'n'. This variable > is only being recognized by the toolstack, because Xen requires > enabling/disabling debug build via e.g. menuconfig/config file. > As a corollary, we end up building/testing Xen with CONFIG_DEBUG always > set to a default value ('y' for unstable and 'n' for stable branches), > regardless of the type of the build job. > > Fix this behavior by setting CONFIG_DEBUG according to the 'debug' value. > > Signed-off-by: Michal Orzel <michal.orzel@amd.com> > --- > Xen used debug variable to control the build type before switching to Kconfig. > Support for GitLab CI was added later, which means that this issue was always > present. This is a low risk for 4.17 with a benefit of being able to test Xen > in both debug and non-debug versions. Both series were floating around for ages before being accepted. It's quite possible that one bitrotted around the other. This should be backported, and therefore should be considered for 4.17 at this point. Is there a Gitlab CI run which includes this patch? ~Andrew
Hi Michal, > -----Original Message----- > From: Michal Orzel <michal.orzel@amd.com> > Subject: [for-4.17] automation: Build Xen according to the type of the job > > All the build jobs exist in two flavors: debug and non-debug, where the > former sets 'debug' variable to 'y' and the latter to 'n'. This variable > is only being recognized by the toolstack, because Xen requires > enabling/disabling debug build via e.g. menuconfig/config file. > As a corollary, we end up building/testing Xen with CONFIG_DEBUG always > set to a default value ('y' for unstable and 'n' for stable branches), > regardless of the type of the build job. > > Fix this behavior by setting CONFIG_DEBUG according to the 'debug' value. > > Signed-off-by: Michal Orzel <michal.orzel@amd.com> Release-acked-by: Henry Wang <Henry.Wang@arm.com> Kind regards, Henry
Hi Andrew, On 21/10/2022 15:31, Andrew Cooper wrote: > > > On 21/10/2022 14:22, Michal Orzel wrote: >> All the build jobs exist in two flavors: debug and non-debug, where the >> former sets 'debug' variable to 'y' and the latter to 'n'. This variable >> is only being recognized by the toolstack, because Xen requires >> enabling/disabling debug build via e.g. menuconfig/config file. >> As a corollary, we end up building/testing Xen with CONFIG_DEBUG always >> set to a default value ('y' for unstable and 'n' for stable branches), >> regardless of the type of the build job. >> >> Fix this behavior by setting CONFIG_DEBUG according to the 'debug' value. >> >> Signed-off-by: Michal Orzel <michal.orzel@amd.com> >> --- >> Xen used debug variable to control the build type before switching to Kconfig. >> Support for GitLab CI was added later, which means that this issue was always >> present. This is a low risk for 4.17 with a benefit of being able to test Xen >> in both debug and non-debug versions. > > Both series were floating around for ages before being accepted. It's > quite possible that one bitrotted around the other. > > This should be backported, and therefore should be considered for 4.17 > at this point. > > Is there a Gitlab CI run which includes this patch? I submitted the one here not long ago: https://gitlab.com/xen-project/people/morzel/xen-orzelmichal/-/pipelines/673396949 and there is already one failure in Arm boot-cpupools test because the script sets null scheduler for the domain which is not present in non-debug build... > > ~Andrew ~Michal
On 21/10/2022 16:32, Michal Orzel wrote: > > > Hi Andrew, > > On 21/10/2022 15:31, Andrew Cooper wrote: >> >> >> On 21/10/2022 14:22, Michal Orzel wrote: >>> All the build jobs exist in two flavors: debug and non-debug, where the >>> former sets 'debug' variable to 'y' and the latter to 'n'. This variable >>> is only being recognized by the toolstack, because Xen requires >>> enabling/disabling debug build via e.g. menuconfig/config file. >>> As a corollary, we end up building/testing Xen with CONFIG_DEBUG always >>> set to a default value ('y' for unstable and 'n' for stable branches), >>> regardless of the type of the build job. >>> >>> Fix this behavior by setting CONFIG_DEBUG according to the 'debug' value. >>> >>> Signed-off-by: Michal Orzel <michal.orzel@amd.com> >>> --- >>> Xen used debug variable to control the build type before switching to Kconfig. >>> Support for GitLab CI was added later, which means that this issue was always >>> present. This is a low risk for 4.17 with a benefit of being able to test Xen >>> in both debug and non-debug versions. >> >> Both series were floating around for ages before being accepted. It's >> quite possible that one bitrotted around the other. >> >> This should be backported, and therefore should be considered for 4.17 >> at this point. >> >> Is there a Gitlab CI run which includes this patch? > > I submitted the one here not long ago: > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.com%2Fxen-project%2Fpeople%2Fmorzel%2Fxen-orzelmichal%2F-%2Fpipelines%2F673396949&data=05%7C01%7Cmichal.orzel%40amd.com%7Cd091891dbc3a4144356d08dab37120ae%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638019595719666762%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=r6qIERShnnovl57xvY%2Fo8eKozAy9NBlqyj0le56ZClY%3D&reserved=0 > > and there is already one failure in Arm boot-cpupools test because the script sets null > scheduler for the domain which is not present in non-debug build... The CI finished running the pipeline and it looks like the null sched issue is the only one (at least this means that this patch is worth having). I will push a fix for the boot-cpupools test (I will also mark it as for-4.17). > >> >> ~Andrew > > ~Michal > ~Michal
On Fri, 21 Oct 2022, Michal Orzel wrote: > All the build jobs exist in two flavors: debug and non-debug, where the > former sets 'debug' variable to 'y' and the latter to 'n'. This variable > is only being recognized by the toolstack, because Xen requires > enabling/disabling debug build via e.g. menuconfig/config file. > As a corollary, we end up building/testing Xen with CONFIG_DEBUG always > set to a default value ('y' for unstable and 'n' for stable branches), > regardless of the type of the build job. > > Fix this behavior by setting CONFIG_DEBUG according to the 'debug' value. > > Signed-off-by: Michal Orzel <michal.orzel@amd.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> > --- > Xen used debug variable to control the build type before switching to Kconfig. > Support for GitLab CI was added later, which means that this issue was always > present. This is a low risk for 4.17 with a benefit of being able to test Xen > in both debug and non-debug versions. > --- > automation/scripts/build | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/automation/scripts/build b/automation/scripts/build > index 8c0882f3aa33..a5934190634b 100755 > --- a/automation/scripts/build > +++ b/automation/scripts/build > @@ -21,12 +21,13 @@ if [[ "${RANDCONFIG}" == "y" ]]; then > make -j$(nproc) -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig > hypervisor_only="y" > else > + echo "CONFIG_DEBUG=${debug}" > xen/.config > + > if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then > - echo "${EXTRA_XEN_CONFIG}" > xen/.config > - make -j$(nproc) -C xen olddefconfig > - else > - make -j$(nproc) -C xen defconfig > + echo "${EXTRA_XEN_CONFIG}" >> xen/.config > fi > + > + make -j$(nproc) -C xen olddefconfig > fi > > # Save the config file before building because build failure causes the script > -- > 2.25.1 >
diff --git a/automation/scripts/build b/automation/scripts/build index 8c0882f3aa33..a5934190634b 100755 --- a/automation/scripts/build +++ b/automation/scripts/build @@ -21,12 +21,13 @@ if [[ "${RANDCONFIG}" == "y" ]]; then make -j$(nproc) -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig hypervisor_only="y" else + echo "CONFIG_DEBUG=${debug}" > xen/.config + if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then - echo "${EXTRA_XEN_CONFIG}" > xen/.config - make -j$(nproc) -C xen olddefconfig - else - make -j$(nproc) -C xen defconfig + echo "${EXTRA_XEN_CONFIG}" >> xen/.config fi + + make -j$(nproc) -C xen olddefconfig fi # Save the config file before building because build failure causes the script
All the build jobs exist in two flavors: debug and non-debug, where the former sets 'debug' variable to 'y' and the latter to 'n'. This variable is only being recognized by the toolstack, because Xen requires enabling/disabling debug build via e.g. menuconfig/config file. As a corollary, we end up building/testing Xen with CONFIG_DEBUG always set to a default value ('y' for unstable and 'n' for stable branches), regardless of the type of the build job. Fix this behavior by setting CONFIG_DEBUG according to the 'debug' value. Signed-off-by: Michal Orzel <michal.orzel@amd.com> --- Xen used debug variable to control the build type before switching to Kconfig. Support for GitLab CI was added later, which means that this issue was always present. This is a low risk for 4.17 with a benefit of being able to test Xen in both debug and non-debug versions. --- automation/scripts/build | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)