Message ID | c2ba247adce76c69ecd6400d791db36495b85b75.1712137031.git.oleksii.kurochko@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Enable build of full Xen for RISC-V | expand |
On 03.04.2024 12:19, Oleksii Kurochko wrote: > This patch disables unnecessary configs for two cases: > 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds (GitLab CI jobs). > 2. By using tiny64_defconfig for non-randconfig builds. > > Only configs which lead to compilation issues were disabled. > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> > --- > Changes in V7: > - Disable only configs which cause compilation issues. Since the description doesn't go into details: While I can see that PERF_COUNTERS and LIVEPATCH may require (a little / some more) extra work, are HYPFS, ARGO, and XSM really causing issues? > --- a/xen/arch/riscv/configs/tiny64_defconfig > +++ b/xen/arch/riscv/configs/tiny64_defconfig > @@ -1,12 +1,11 @@ > -# CONFIG_SCHED_CREDIT is not set > -# CONFIG_SCHED_RTDS is not set > -# CONFIG_SCHED_NULL is not set > -# CONFIG_SCHED_ARINC653 is not set > -# CONFIG_TRACEBUFFER is not set > # CONFIG_HYPFS is not set > # CONFIG_GRANT_TABLE is not set > -# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set > # CONFIG_MEM_ACCESS is not set > +# CONFIG_ARGO is not set > +# CONFIG_PERF_COUNTERS is not set > +# CONFIG_COVERAGE is not set > +# CONFIG_LIVEPATCH is not set > +# CONFIG_XSM is not set > > CONFIG_RISCV_64=y > CONFIG_DEBUG=y The description also says nothing about the items being removed. Jan
On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: > On 03.04.2024 12:19, Oleksii Kurochko wrote: > > This patch disables unnecessary configs for two cases: > > 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds > > (GitLab CI jobs). > > 2. By using tiny64_defconfig for non-randconfig builds. > > > > Only configs which lead to compilation issues were disabled. > > > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> > > --- > > Changes in V7: > > - Disable only configs which cause compilation issues. > > Since the description doesn't go into details: While I can see that > PERF_COUNTERS and LIVEPATCH may require (a little / some more) extra > work, are HYPFS, ARGO, and XSM really causing issues? For Argo, I recieved the following compilation errors: common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did you mean 'hvmmem_type_t'? 1416 | p2m_type_t p2mt; | ^~~~~~~~~~ | hvmmem_type_t common/argo.c:1419:11: error: implicit declaration of function 'check_get_page_from_gfn' [-Werror=implicit-function-declaration] 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, &page); | ^~~~~~~~~~~~~~~~~~~~~~~ common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use in this function) 1427 | case p2m_ram_rw: It seems it should be included xen/p2m-common.h and asm/p2m.h in common/argo.c. For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, overlooked that ): common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such file or directory 1 | #include <asm/asm_defns.h> For XSM, I recieved the following error: xsm/xsm_core.c:79:19: error: 'xsm_core_init' defined but not used [- Werror=unused-function] 79 | static int __init xsm_core_init(const void *policy_buffer, size_t policy_size) I'll add an information with compilation errors to the commit message. ~ Oleksii > > > --- a/xen/arch/riscv/configs/tiny64_defconfig > > +++ b/xen/arch/riscv/configs/tiny64_defconfig > > @@ -1,12 +1,11 @@ > > -# CONFIG_SCHED_CREDIT is not set > > -# CONFIG_SCHED_RTDS is not set > > -# CONFIG_SCHED_NULL is not set > > -# CONFIG_SCHED_ARINC653 is not set > > -# CONFIG_TRACEBUFFER is not set > > # CONFIG_HYPFS is not set > > # CONFIG_GRANT_TABLE is not set > > -# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set > > # CONFIG_MEM_ACCESS is not set > > +# CONFIG_ARGO is not set > > +# CONFIG_PERF_COUNTERS is not set > > +# CONFIG_COVERAGE is not set > > +# CONFIG_LIVEPATCH is not set > > +# CONFIG_XSM is not set > > > > CONFIG_RISCV_64=y > > CONFIG_DEBUG=y > > The description also says nothing about the items being removed. > > Jan
On 03.04.24 12:54, Oleksii wrote: > On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: >> On 03.04.2024 12:19, Oleksii Kurochko wrote: >>> This patch disables unnecessary configs for two cases: >>> 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds >>> (GitLab CI jobs). >>> 2. By using tiny64_defconfig for non-randconfig builds. >>> >>> Only configs which lead to compilation issues were disabled. >>> >>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> >>> --- >>> Changes in V7: >>> - Disable only configs which cause compilation issues. >> >> Since the description doesn't go into details: While I can see that >> PERF_COUNTERS and LIVEPATCH may require (a little / some more) extra >> work, are HYPFS, ARGO, and XSM really causing issues? > For Argo, I recieved the following compilation errors: > common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did you > mean 'hvmmem_type_t'? > 1416 | p2m_type_t p2mt; > | ^~~~~~~~~~ > | hvmmem_type_t > common/argo.c:1419:11: error: implicit declaration of function > 'check_get_page_from_gfn' [-Werror=implicit-function-declaration] > 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, &page); > | ^~~~~~~~~~~~~~~~~~~~~~~ > common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use in > this function) > 1427 | case p2m_ram_rw: > > It seems it should be included xen/p2m-common.h and asm/p2m.h in > common/argo.c. > > For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, > overlooked that ): > common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such file > or directory > 1 | #include <asm/asm_defns.h> Hmm, this seems to be needed for ASM_INT(), which is currently defined the same way for arm and x86. Maybe we should move that macro to xen/linkage.h and include that one instead of asm_defns.h? Juergen
On 03.04.2024 13:18, Juergen Gross wrote: > On 03.04.24 12:54, Oleksii wrote: >> On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: >>> On 03.04.2024 12:19, Oleksii Kurochko wrote: >>>> This patch disables unnecessary configs for two cases: >>>> 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds >>>> (GitLab CI jobs). >>>> 2. By using tiny64_defconfig for non-randconfig builds. >>>> >>>> Only configs which lead to compilation issues were disabled. >>>> >>>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> >>>> --- >>>> Changes in V7: >>>> - Disable only configs which cause compilation issues. >>> >>> Since the description doesn't go into details: While I can see that >>> PERF_COUNTERS and LIVEPATCH may require (a little / some more) extra >>> work, are HYPFS, ARGO, and XSM really causing issues? >> For Argo, I recieved the following compilation errors: >> common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did you >> mean 'hvmmem_type_t'? >> 1416 | p2m_type_t p2mt; >> | ^~~~~~~~~~ >> | hvmmem_type_t >> common/argo.c:1419:11: error: implicit declaration of function >> 'check_get_page_from_gfn' [-Werror=implicit-function-declaration] >> 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, &page); >> | ^~~~~~~~~~~~~~~~~~~~~~~ >> common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use in >> this function) >> 1427 | case p2m_ram_rw: >> >> It seems it should be included xen/p2m-common.h and asm/p2m.h in >> common/argo.c. >> >> For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, >> overlooked that ): >> common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such file >> or directory >> 1 | #include <asm/asm_defns.h> > > Hmm, this seems to be needed for ASM_INT(), which is currently defined the same > way for arm and x86. Maybe we should move that macro to xen/linkage.h and > include that one instead of asm_defns.h? Indeed while doing the entry annotation work (also touching the build logic here iirc) I was thinking of doing so. Jan
On 03.04.24 13:47, Jan Beulich wrote: > On 03.04.2024 13:18, Juergen Gross wrote: >> On 03.04.24 12:54, Oleksii wrote: >>> On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: >>>> On 03.04.2024 12:19, Oleksii Kurochko wrote: >>>>> This patch disables unnecessary configs for two cases: >>>>> 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds >>>>> (GitLab CI jobs). >>>>> 2. By using tiny64_defconfig for non-randconfig builds. >>>>> >>>>> Only configs which lead to compilation issues were disabled. >>>>> >>>>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> >>>>> --- >>>>> Changes in V7: >>>>> - Disable only configs which cause compilation issues. >>>> >>>> Since the description doesn't go into details: While I can see that >>>> PERF_COUNTERS and LIVEPATCH may require (a little / some more) extra >>>> work, are HYPFS, ARGO, and XSM really causing issues? >>> For Argo, I recieved the following compilation errors: >>> common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did you >>> mean 'hvmmem_type_t'? >>> 1416 | p2m_type_t p2mt; >>> | ^~~~~~~~~~ >>> | hvmmem_type_t >>> common/argo.c:1419:11: error: implicit declaration of function >>> 'check_get_page_from_gfn' [-Werror=implicit-function-declaration] >>> 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, &page); >>> | ^~~~~~~~~~~~~~~~~~~~~~~ >>> common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use in >>> this function) >>> 1427 | case p2m_ram_rw: >>> >>> It seems it should be included xen/p2m-common.h and asm/p2m.h in >>> common/argo.c. >>> >>> For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, >>> overlooked that ): >>> common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such file >>> or directory >>> 1 | #include <asm/asm_defns.h> >> >> Hmm, this seems to be needed for ASM_INT(), which is currently defined the same >> way for arm and x86. Maybe we should move that macro to xen/linkage.h and >> include that one instead of asm_defns.h? > > Indeed while doing the entry annotation work (also touching the build logic > here iirc) I was thinking of doing so. Okay, I'm preparing a patch. Juergen
On 03.04.2024 12:54, Oleksii wrote: > On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: >> On 03.04.2024 12:19, Oleksii Kurochko wrote: >>> This patch disables unnecessary configs for two cases: >>> 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds >>> (GitLab CI jobs). >>> 2. By using tiny64_defconfig for non-randconfig builds. >>> >>> Only configs which lead to compilation issues were disabled. >>> >>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> >>> --- >>> Changes in V7: >>> - Disable only configs which cause compilation issues. >> >> Since the description doesn't go into details: While I can see that >> PERF_COUNTERS and LIVEPATCH may require (a little / some more) extra >> work, are HYPFS, ARGO, and XSM really causing issues? > For Argo, I recieved the following compilation errors: > common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did you > mean 'hvmmem_type_t'? > 1416 | p2m_type_t p2mt; > | ^~~~~~~~~~ > | hvmmem_type_t > common/argo.c:1419:11: error: implicit declaration of function > 'check_get_page_from_gfn' [-Werror=implicit-function-declaration] > 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, &page); > | ^~~~~~~~~~~~~~~~~~~~~~~ > common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use in > this function) > 1427 | case p2m_ram_rw: > > It seems it should be included xen/p2m-common.h and asm/p2m.h in > common/argo.c. > > For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, > overlooked that ): > common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such file > or directory > 1 | #include <asm/asm_defns.h> > > > For XSM, I recieved the following error: > > xsm/xsm_core.c:79:19: error: 'xsm_core_init' defined but not used [- > Werror=unused-function] > 79 | static int __init xsm_core_init(const void *policy_buffer, > size_t policy_size) > > I'll add an information with compilation errors to the commit message. No need to quote full compiler diagnostics, but a hint at the problems at least. That said, perhaps we want to rather sort the issues than disable building stuff that sooner or later you will want to build anyway. For hypfs we look to have an approach already. For Argo what you suggest makes sense to me; it might be nice to understand where the P2M headers needed are coming from on x86 and Arm. Ideally common code .c files wouldn't include asm/*.h. For XSM I'm a little puzzled: Shouldn't RISC-V have HAS_DEVICE_TREE=y? Then xsm_core_init() would have a caller. Jan
On Wed, 2024-04-03 at 13:53 +0200, Jan Beulich wrote: > On 03.04.2024 12:54, Oleksii wrote: > > On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: > > > On 03.04.2024 12:19, Oleksii Kurochko wrote: > > > > This patch disables unnecessary configs for two cases: > > > > 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds > > > > (GitLab CI jobs). > > > > 2. By using tiny64_defconfig for non-randconfig builds. > > > > > > > > Only configs which lead to compilation issues were disabled. > > > > > > > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> > > > > --- > > > > Changes in V7: > > > > - Disable only configs which cause compilation issues. > > > > > > Since the description doesn't go into details: While I can see > > > that > > > PERF_COUNTERS and LIVEPATCH may require (a little / some more) > > > extra > > > work, are HYPFS, ARGO, and XSM really causing issues? > > For Argo, I recieved the following compilation errors: > > common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did > > you > > mean 'hvmmem_type_t'? > > 1416 | p2m_type_t p2mt; > > | ^~~~~~~~~~ > > | hvmmem_type_t > > common/argo.c:1419:11: error: implicit declaration of function > > 'check_get_page_from_gfn' [-Werror=implicit-function- > > declaration] > > 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, > > &page); > > | ^~~~~~~~~~~~~~~~~~~~~~~ > > common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use > > in > > this function) > > 1427 | case p2m_ram_rw: > > > > It seems it should be included xen/p2m-common.h and asm/p2m.h in > > common/argo.c. > > > > For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, > > overlooked that ): > > common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such > > file > > or directory > > 1 | #include <asm/asm_defns.h> > > > > > > For XSM, I recieved the following error: > > > > xsm/xsm_core.c:79:19: error: 'xsm_core_init' defined but not > > used [- > > Werror=unused-function] > > 79 | static int __init xsm_core_init(const void > > *policy_buffer, > > size_t policy_size) > > > > I'll add an information with compilation errors to the commit > > message. > > No need to quote full compiler diagnostics, but a hint at the > problems > at least. That said, perhaps we want to rather sort the issues than > disable building stuff that sooner or later you will want to build > anyway. For hypfs we look to have an approach already. For Argo what > you suggest makes sense to me; it might be nice to understand where > the P2M headers needed are coming from on x86 and Arm. Ideally common > code .c files wouldn't include asm/*.h. I'll look at where P2M header came from on x86 and Arm. > > For XSM I'm a little puzzled: Shouldn't RISC-V have > HAS_DEVICE_TREE=y? > Then xsm_core_init() would have a caller. It should, but I haven't add "select HAS_DEVICE_TREE" for RISC-V as no device tree functionality hasn't been introduced yet. ~ Oleksii
On Wed, 2024-04-03 at 13:53 +0200, Jan Beulich wrote: > On 03.04.2024 12:54, Oleksii wrote: > > On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: > > > On 03.04.2024 12:19, Oleksii Kurochko wrote: > > > > This patch disables unnecessary configs for two cases: > > > > 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds > > > > (GitLab CI jobs). > > > > 2. By using tiny64_defconfig for non-randconfig builds. > > > > > > > > Only configs which lead to compilation issues were disabled. > > > > > > > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> > > > > --- > > > > Changes in V7: > > > > - Disable only configs which cause compilation issues. > > > > > > Since the description doesn't go into details: While I can see > > > that > > > PERF_COUNTERS and LIVEPATCH may require (a little / some more) > > > extra > > > work, are HYPFS, ARGO, and XSM really causing issues? > > For Argo, I recieved the following compilation errors: > > common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did > > you > > mean 'hvmmem_type_t'? > > 1416 | p2m_type_t p2mt; > > | ^~~~~~~~~~ > > | hvmmem_type_t > > common/argo.c:1419:11: error: implicit declaration of function > > 'check_get_page_from_gfn' [-Werror=implicit-function- > > declaration] > > 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, > > &page); > > | ^~~~~~~~~~~~~~~~~~~~~~~ > > common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use > > in > > this function) > > 1427 | case p2m_ram_rw: > > > > It seems it should be included xen/p2m-common.h and asm/p2m.h in > > common/argo.c. > > > > For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, > > overlooked that ): > > common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such > > file > > or directory > > 1 | #include <asm/asm_defns.h> > > > > > > For XSM, I recieved the following error: > > > > xsm/xsm_core.c:79:19: error: 'xsm_core_init' defined but not > > used [- > > Werror=unused-function] > > 79 | static int __init xsm_core_init(const void > > *policy_buffer, > > size_t policy_size) > > > > I'll add an information with compilation errors to the commit > > message. > > No need to quote full compiler diagnostics, but a hint at the > problems > at least. That said, perhaps we want to rather sort the issues than > disable building stuff that sooner or later you will want to build > anyway. For hypfs we look to have an approach already. For Argo what > you suggest makes sense to me; it might be nice to understand where > the P2M headers needed are coming from on x86 and Arm. Ideally common > code .c files wouldn't include asm/*.h. It seems to me that p2m.h comes for Arm from argo.c -> xen/domain.h -> asm/domain.h and for x86 from argo.c -> xen/guest_access.h -> #include <asm/hvm/support.h> -> asm/p2m.h. So I can include asm/p2m.h to asm/domain.h as p2m will be used anyway in asm/domain.h header and drop disablement of ARGO config from *_defconfig and build.yaml for CI. Does it make sense? ~ Oleksii > > For XSM I'm a little puzzled: Shouldn't RISC-V have > HAS_DEVICE_TREE=y? > Then xsm_core_init() would have a caller. > > Jan
On 11.04.2024 16:39, Oleksii wrote: > On Wed, 2024-04-03 at 13:53 +0200, Jan Beulich wrote: >> On 03.04.2024 12:54, Oleksii wrote: >>> On Wed, 2024-04-03 at 12:28 +0200, Jan Beulich wrote: >>>> On 03.04.2024 12:19, Oleksii Kurochko wrote: >>>>> This patch disables unnecessary configs for two cases: >>>>> 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds >>>>> (GitLab CI jobs). >>>>> 2. By using tiny64_defconfig for non-randconfig builds. >>>>> >>>>> Only configs which lead to compilation issues were disabled. >>>>> >>>>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> >>>>> --- >>>>> Changes in V7: >>>>> - Disable only configs which cause compilation issues. >>>> >>>> Since the description doesn't go into details: While I can see >>>> that >>>> PERF_COUNTERS and LIVEPATCH may require (a little / some more) >>>> extra >>>> work, are HYPFS, ARGO, and XSM really causing issues? >>> For Argo, I recieved the following compilation errors: >>> common/argo.c:1416:5: error: unknown type name 'p2m_type_t'; did >>> you >>> mean 'hvmmem_type_t'? >>> 1416 | p2m_type_t p2mt; >>> | ^~~~~~~~~~ >>> | hvmmem_type_t >>> common/argo.c:1419:11: error: implicit declaration of function >>> 'check_get_page_from_gfn' [-Werror=implicit-function- >>> declaration] >>> 1419 | ret = check_get_page_from_gfn(d, gfn, false, &p2mt, >>> &page); >>> | ^~~~~~~~~~~~~~~~~~~~~~~ >>> common/argo.c:1427:10: error: 'p2m_ram_rw' undeclared (first use >>> in >>> this function) >>> 1427 | case p2m_ram_rw: >>> >>> It seems it should be included xen/p2m-common.h and asm/p2m.h in >>> common/argo.c. >>> >>> For CONFIG_HYPFS_CONFIG ( there is no issue with CONFIG_HYPFS, >>> overlooked that ): >>> common/config_data.S:1:10: fatal error: asm/asm_defns.h: No such >>> file >>> or directory >>> 1 | #include <asm/asm_defns.h> >>> >>> >>> For XSM, I recieved the following error: >>> >>> xsm/xsm_core.c:79:19: error: 'xsm_core_init' defined but not >>> used [- >>> Werror=unused-function] >>> 79 | static int __init xsm_core_init(const void >>> *policy_buffer, >>> size_t policy_size) >>> >>> I'll add an information with compilation errors to the commit >>> message. >> >> No need to quote full compiler diagnostics, but a hint at the >> problems >> at least. That said, perhaps we want to rather sort the issues than >> disable building stuff that sooner or later you will want to build >> anyway. For hypfs we look to have an approach already. For Argo what >> you suggest makes sense to me; it might be nice to understand where >> the P2M headers needed are coming from on x86 and Arm. Ideally common >> code .c files wouldn't include asm/*.h. > It seems to me that p2m.h comes for Arm from argo.c -> xen/domain.h -> > asm/domain.h and for x86 from argo.c -> xen/guest_access.h -> #include > <asm/hvm/support.h> -> asm/p2m.h. > > So I can include asm/p2m.h to asm/domain.h as p2m will be used anyway > in asm/domain.h header and drop disablement of ARGO config from > *_defconfig and build.yaml for CI. Does it make sense? Looks okay to ma, at a glance. Jan
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml index aac29ee13a..43faeaed9c 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -519,6 +519,11 @@ alpine-3.18-gcc-debug-arm64-boot-cpupools: CONFIG_EXPERT=y CONFIG_GRANT_TABLE=n CONFIG_MEM_ACCESS=n + CONFIG_HYPFS=n + CONFIG_ARGO=n + CONFIG_PERF_COUNTERS=n + CONFIG_LIVEPATCH=n + CONFIG_XSM=n archlinux-current-gcc-riscv64: extends: .gcc-riscv64-cross-build diff --git a/xen/arch/riscv/configs/tiny64_defconfig b/xen/arch/riscv/configs/tiny64_defconfig index 09defe236b..24a807a5f9 100644 --- a/xen/arch/riscv/configs/tiny64_defconfig +++ b/xen/arch/riscv/configs/tiny64_defconfig @@ -1,12 +1,11 @@ -# CONFIG_SCHED_CREDIT is not set -# CONFIG_SCHED_RTDS is not set -# CONFIG_SCHED_NULL is not set -# CONFIG_SCHED_ARINC653 is not set -# CONFIG_TRACEBUFFER is not set # CONFIG_HYPFS is not set # CONFIG_GRANT_TABLE is not set -# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set # CONFIG_MEM_ACCESS is not set +# CONFIG_ARGO is not set +# CONFIG_PERF_COUNTERS is not set +# CONFIG_COVERAGE is not set +# CONFIG_LIVEPATCH is not set +# CONFIG_XSM is not set CONFIG_RISCV_64=y CONFIG_DEBUG=y
This patch disables unnecessary configs for two cases: 1. By utilizing EXTRA_FIXED_RANDCONFIG for randconfig builds (GitLab CI jobs). 2. By using tiny64_defconfig for non-randconfig builds. Only configs which lead to compilation issues were disabled. Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> --- Changes in V7: - Disable only configs which cause compilation issues. - Update the commit message. --- Changes in V6: - Nothing changed. Only rebase. --- Changes in V5: - Rebase and drop duplicated configs in EXTRA_FIXED_RANDCONFIG list - Update the commit message --- Changes in V4: - Nothing changed. Only rebase --- Changes in V3: - Remove EXTRA_FIXED_RANDCONFIG for non-randconfig jobs. For non-randconfig jobs, it is sufficient to disable configs by using the defconfig. - Remove double blank lines in build.yaml file before archlinux-current-gcc-riscv64-debug --- Changes in V2: - update the commit message. - remove xen/arch/riscv/Kconfig changes. --- automation/gitlab-ci/build.yaml | 5 +++++ xen/arch/riscv/configs/tiny64_defconfig | 11 +++++------ 2 files changed, 10 insertions(+), 6 deletions(-)