* [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init
@ 2024-06-21 20:19 Andrew Cooper
2024-06-21 20:19 ` [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition Andrew Cooper
` (3 more replies)
0 siblings, 4 replies; 13+ messages in thread
From: Andrew Cooper @ 2024-06-21 20:19 UTC (permalink / raw)
To: Xen-devel
Cc: Andrew Cooper, Shawn Anastasio, Oleksii Kurochko, George Dunlap,
Jan Beulich, Stefano Stabellini, Julien Grall
In aid of getting the RISC-V build working without introducing more technical
debt. It's done by making PPC shed it's copy of said technical debt.
Build tested quite thoroughly, including in Gitlab.
Andrew Cooper (3):
xen/riscv: Drop legacy __ro_after_init definition
xen/ppc: Adjust ppc64_defconfig
xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init
definitions
xen/arch/ppc/configs/ppc64_defconfig | 6 ------
xen/arch/ppc/include/asm/cache.h | 3 ---
xen/arch/ppc/mm-radix.c | 1 +
xen/arch/ppc/stubs.c | 7 +++++++
xen/arch/riscv/mm.c | 2 +-
xen/common/argo.c | 1 +
xen/common/cpu.c | 1 +
xen/common/debugtrace.c | 1 +
xen/common/domain.c | 1 +
xen/common/event_channel.c | 2 ++
xen/common/keyhandler.c | 1 +
xen/common/memory.c | 1 +
xen/common/page_alloc.c | 1 +
xen/common/pdx.c | 1 +
xen/common/radix-tree.c | 1 +
xen/common/random.c | 2 +-
xen/common/rcupdate.c | 1 +
xen/common/sched/core.c | 1 +
xen/common/sched/cpupool.c | 1 +
xen/common/sched/credit.c | 1 +
xen/common/sched/credit2.c | 1 +
xen/common/shutdown.c | 1 +
xen/common/spinlock.c | 1 +
xen/common/timer.c | 1 +
xen/common/version.c | 3 +--
xen/common/virtual_region.c | 1 +
xen/common/vmap.c | 2 +-
xen/drivers/char/console.c | 1 +
xen/drivers/char/ns16550.c | 1 +
xen/drivers/char/serial.c | 2 +-
xen/include/xen/cache.h | 2 ++
xen/include/xen/hypfs.h | 1 +
32 files changed, 38 insertions(+), 15 deletions(-)
--
2.39.2
^ permalink raw reply [flat|nested] 13+ messages in thread* [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition 2024-06-21 20:19 [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Andrew Cooper @ 2024-06-21 20:19 ` Andrew Cooper 2024-06-24 8:02 ` Oleksii 2024-06-24 12:50 ` Oleksii 2024-06-21 20:19 ` [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig Andrew Cooper ` (2 subsequent siblings) 3 siblings, 2 replies; 13+ messages in thread From: Andrew Cooper @ 2024-06-21 20:19 UTC (permalink / raw) To: Xen-devel Cc: Andrew Cooper, Shawn Anastasio, Oleksii Kurochko, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall Hide the legacy __ro_after_init definition in xen/cache.h for RISC-V, to avoid its use creeping in. Only mm.c needs adjusting as a consequence No functional change. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Shawn Anastasio <sanastasio@raptorengineering.com> CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> CC: George Dunlap <George.Dunlap@citrix.com> CC: Jan Beulich <JBeulich@suse.com> CC: Stefano Stabellini <sstabellini@kernel.org> CC: Julien Grall <julien@xen.org> https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342686294 --- xen/arch/riscv/mm.c | 2 +- xen/include/xen/cache.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index 053f043a3d2a..3ebaf6da01cc 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -1,11 +1,11 @@ /* SPDX-License-Identifier: GPL-2.0-only */ -#include <xen/cache.h> #include <xen/compiler.h> #include <xen/init.h> #include <xen/kernel.h> #include <xen/macros.h> #include <xen/pfn.h> +#include <xen/sections.h> #include <asm/early_printk.h> #include <asm/csr.h> diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h index 55456823c543..82a3ba38e3e7 100644 --- a/xen/include/xen/cache.h +++ b/xen/include/xen/cache.h @@ -15,7 +15,9 @@ #define __cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES))) #endif +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || defined(CONFIG_PPC64) /* TODO: Phase out the use of this via cache.h */ #define __ro_after_init __section(".data.ro_after_init") +#endif #endif /* __LINUX_CACHE_H */ -- 2.39.2 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition 2024-06-21 20:19 ` [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition Andrew Cooper @ 2024-06-24 8:02 ` Oleksii 2024-06-24 8:04 ` Jan Beulich 2024-06-24 12:50 ` Oleksii 1 sibling, 1 reply; 13+ messages in thread From: Oleksii @ 2024-06-24 8:02 UTC (permalink / raw) To: Andrew Cooper, Xen-devel Cc: Shawn Anastasio, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall On Fri, 2024-06-21 at 21:19 +0100, Andrew Cooper wrote: > Hide the legacy __ro_after_init definition in xen/cache.h for RISC-V, > to avoid > its use creeping in. Only mm.c needs adjusting as a consequence > > No functional change. > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> > --- > CC: Shawn Anastasio <sanastasio@raptorengineering.com> > CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> > CC: George Dunlap <George.Dunlap@citrix.com> > CC: Jan Beulich <JBeulich@suse.com> > CC: Stefano Stabellini <sstabellini@kernel.org> > CC: Julien Grall <julien@xen.org> > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342686294 > --- > xen/arch/riscv/mm.c | 2 +- > xen/include/xen/cache.h | 2 ++ > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c > index 053f043a3d2a..3ebaf6da01cc 100644 > --- a/xen/arch/riscv/mm.c > +++ b/xen/arch/riscv/mm.c > @@ -1,11 +1,11 @@ > /* SPDX-License-Identifier: GPL-2.0-only */ > > -#include <xen/cache.h> > #include <xen/compiler.h> > #include <xen/init.h> > #include <xen/kernel.h> > #include <xen/macros.h> > #include <xen/pfn.h> > +#include <xen/sections.h> > > #include <asm/early_printk.h> > #include <asm/csr.h> > diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h > index 55456823c543..82a3ba38e3e7 100644 > --- a/xen/include/xen/cache.h > +++ b/xen/include/xen/cache.h > @@ -15,7 +15,9 @@ > #define __cacheline_aligned > __attribute__((__aligned__(SMP_CACHE_BYTES))) > #endif > > +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || > defined(CONFIG_PPC64) > /* TODO: Phase out the use of this via cache.h */ > #define __ro_after_init __section(".data.ro_after_init") > +#endif Why "defined(CONFIG_RISCV_64)" is missed? ~ Oleksii > > #endif /* __LINUX_CACHE_H */ ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition 2024-06-24 8:02 ` Oleksii @ 2024-06-24 8:04 ` Jan Beulich 2024-06-24 12:51 ` Oleksii 0 siblings, 1 reply; 13+ messages in thread From: Jan Beulich @ 2024-06-24 8:04 UTC (permalink / raw) To: Oleksii Cc: Shawn Anastasio, George Dunlap, Stefano Stabellini, Julien Grall, Andrew Cooper, Xen-devel On 24.06.2024 10:02, Oleksii wrote: > On Fri, 2024-06-21 at 21:19 +0100, Andrew Cooper wrote: >> Hide the legacy __ro_after_init definition in xen/cache.h for RISC-V, >> to avoid >> its use creeping in. Only mm.c needs adjusting as a consequence >> >> No functional change. >> >> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> >> --- >> CC: Shawn Anastasio <sanastasio@raptorengineering.com> >> CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> >> CC: George Dunlap <George.Dunlap@citrix.com> >> CC: Jan Beulich <JBeulich@suse.com> >> CC: Stefano Stabellini <sstabellini@kernel.org> >> CC: Julien Grall <julien@xen.org> >> >> https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342686294 >> --- >> xen/arch/riscv/mm.c | 2 +- >> xen/include/xen/cache.h | 2 ++ >> 2 files changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c >> index 053f043a3d2a..3ebaf6da01cc 100644 >> --- a/xen/arch/riscv/mm.c >> +++ b/xen/arch/riscv/mm.c >> @@ -1,11 +1,11 @@ >> /* SPDX-License-Identifier: GPL-2.0-only */ >> >> -#include <xen/cache.h> >> #include <xen/compiler.h> >> #include <xen/init.h> >> #include <xen/kernel.h> >> #include <xen/macros.h> >> #include <xen/pfn.h> >> +#include <xen/sections.h> >> >> #include <asm/early_printk.h> >> #include <asm/csr.h> >> diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h >> index 55456823c543..82a3ba38e3e7 100644 >> --- a/xen/include/xen/cache.h >> +++ b/xen/include/xen/cache.h >> @@ -15,7 +15,9 @@ >> #define __cacheline_aligned >> __attribute__((__aligned__(SMP_CACHE_BYTES))) >> #endif >> >> +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || >> defined(CONFIG_PPC64) >> /* TODO: Phase out the use of this via cache.h */ >> #define __ro_after_init __section(".data.ro_after_init") >> +#endif > Why "defined(CONFIG_RISCV_64)" is missed? The TODO is being addressed by this patch for RISC-V. See how a subsequent patch also drops CONFIG_PPC64. Jan ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition 2024-06-24 8:04 ` Jan Beulich @ 2024-06-24 12:51 ` Oleksii 0 siblings, 0 replies; 13+ messages in thread From: Oleksii @ 2024-06-24 12:51 UTC (permalink / raw) To: Jan Beulich Cc: Shawn Anastasio, George Dunlap, Stefano Stabellini, Julien Grall, Andrew Cooper, Xen-devel On Mon, 2024-06-24 at 10:04 +0200, Jan Beulich wrote: > On 24.06.2024 10:02, Oleksii wrote: > > On Fri, 2024-06-21 at 21:19 +0100, Andrew Cooper wrote: > > > Hide the legacy __ro_after_init definition in xen/cache.h for > > > RISC-V, > > > to avoid > > > its use creeping in. Only mm.c needs adjusting as a consequence > > > > > > No functional change. > > > > > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> > > > --- > > > CC: Shawn Anastasio <sanastasio@raptorengineering.com> > > > CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> > > > CC: George Dunlap <George.Dunlap@citrix.com> > > > CC: Jan Beulich <JBeulich@suse.com> > > > CC: Stefano Stabellini <sstabellini@kernel.org> > > > CC: Julien Grall <julien@xen.org> > > > > > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342686294 > > > --- > > > xen/arch/riscv/mm.c | 2 +- > > > xen/include/xen/cache.h | 2 ++ > > > 2 files changed, 3 insertions(+), 1 deletion(-) > > > > > > diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c > > > index 053f043a3d2a..3ebaf6da01cc 100644 > > > --- a/xen/arch/riscv/mm.c > > > +++ b/xen/arch/riscv/mm.c > > > @@ -1,11 +1,11 @@ > > > /* SPDX-License-Identifier: GPL-2.0-only */ > > > > > > -#include <xen/cache.h> > > > #include <xen/compiler.h> > > > #include <xen/init.h> > > > #include <xen/kernel.h> > > > #include <xen/macros.h> > > > #include <xen/pfn.h> > > > +#include <xen/sections.h> > > > > > > #include <asm/early_printk.h> > > > #include <asm/csr.h> > > > diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h > > > index 55456823c543..82a3ba38e3e7 100644 > > > --- a/xen/include/xen/cache.h > > > +++ b/xen/include/xen/cache.h > > > @@ -15,7 +15,9 @@ > > > #define __cacheline_aligned > > > __attribute__((__aligned__(SMP_CACHE_BYTES))) > > > #endif > > > > > > +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || > > > defined(CONFIG_PPC64) > > > /* TODO: Phase out the use of this via cache.h */ > > > #define __ro_after_init __section(".data.ro_after_init") > > > +#endif > > Why "defined(CONFIG_RISCV_64)" is missed? > > The TODO is being addressed by this patch for RISC-V. See how a > subsequent > patch also drops CONFIG_PPC64. Thanks for the explanation. Now it makes sense to me. ~ Oleksii ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition 2024-06-21 20:19 ` [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition Andrew Cooper 2024-06-24 8:02 ` Oleksii @ 2024-06-24 12:50 ` Oleksii 1 sibling, 0 replies; 13+ messages in thread From: Oleksii @ 2024-06-24 12:50 UTC (permalink / raw) To: Andrew Cooper, Xen-devel Cc: Shawn Anastasio, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall On Fri, 2024-06-21 at 21:19 +0100, Andrew Cooper wrote: > Hide the legacy __ro_after_init definition in xen/cache.h for RISC-V, > to avoid > its use creeping in. Only mm.c needs adjusting as a consequence > > No functional change. > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> ~ Oleksii > --- > CC: Shawn Anastasio <sanastasio@raptorengineering.com> > CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> > CC: George Dunlap <George.Dunlap@citrix.com> > CC: Jan Beulich <JBeulich@suse.com> > CC: Stefano Stabellini <sstabellini@kernel.org> > CC: Julien Grall <julien@xen.org> > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342686294 > --- > xen/arch/riscv/mm.c | 2 +- > xen/include/xen/cache.h | 2 ++ > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c > index 053f043a3d2a..3ebaf6da01cc 100644 > --- a/xen/arch/riscv/mm.c > +++ b/xen/arch/riscv/mm.c > @@ -1,11 +1,11 @@ > /* SPDX-License-Identifier: GPL-2.0-only */ > > -#include <xen/cache.h> > #include <xen/compiler.h> > #include <xen/init.h> > #include <xen/kernel.h> > #include <xen/macros.h> > #include <xen/pfn.h> > +#include <xen/sections.h> > > #include <asm/early_printk.h> > #include <asm/csr.h> > diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h > index 55456823c543..82a3ba38e3e7 100644 > --- a/xen/include/xen/cache.h > +++ b/xen/include/xen/cache.h > @@ -15,7 +15,9 @@ > #define __cacheline_aligned > __attribute__((__aligned__(SMP_CACHE_BYTES))) > #endif > > +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || > defined(CONFIG_PPC64) > /* TODO: Phase out the use of this via cache.h */ > #define __ro_after_init __section(".data.ro_after_init") > +#endif > > #endif /* __LINUX_CACHE_H */ ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig 2024-06-21 20:19 [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Andrew Cooper 2024-06-21 20:19 ` [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition Andrew Cooper @ 2024-06-21 20:19 ` Andrew Cooper 2024-09-05 21:54 ` [ping] " Andrew Cooper 2024-06-21 20:19 ` [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions Andrew Cooper 2024-06-24 7:58 ` [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Oleksii 3 siblings, 1 reply; 13+ messages in thread From: Andrew Cooper @ 2024-06-21 20:19 UTC (permalink / raw) To: Xen-devel Cc: Andrew Cooper, Shawn Anastasio, Oleksii Kurochko, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall All of CONFIG_SCHED_*, and CONFIG_HYPFS build fine. Add a stub for share_xen_page_with_guest(), which is all that is necessary to make CONFIG_TRACEBUFFER build. No functional change. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Shawn Anastasio <sanastasio@raptorengineering.com> CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> CC: George Dunlap <George.Dunlap@citrix.com> CC: Jan Beulich <JBeulich@suse.com> CC: Stefano Stabellini <sstabellini@kernel.org> CC: Julien Grall <julien@xen.org> https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342672505 This is in aid of getting wider compiler coverage with the subseqeuent patch --- xen/arch/ppc/configs/ppc64_defconfig | 6 ------ xen/arch/ppc/stubs.c | 6 ++++++ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/xen/arch/ppc/configs/ppc64_defconfig b/xen/arch/ppc/configs/ppc64_defconfig index 48a053237afd..4924d881a27c 100644 --- a/xen/arch/ppc/configs/ppc64_defconfig +++ b/xen/arch/ppc/configs/ppc64_defconfig @@ -1,9 +1,3 @@ -# 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 diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c index 923f0e7b2095..a10691165b1b 100644 --- a/xen/arch/ppc/stubs.c +++ b/xen/arch/ppc/stubs.c @@ -333,3 +333,9 @@ void udelay(unsigned long usecs) { BUG_ON("unimplemented"); } + +void share_xen_page_with_guest(struct page_info *page, struct domain *d, + enum XENSHARE_flags flags) +{ + BUG_ON("unimplemented"); +} -- 2.39.2 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [ping] Re: [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig 2024-06-21 20:19 ` [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig Andrew Cooper @ 2024-09-05 21:54 ` Andrew Cooper 2024-09-06 6:01 ` Jan Beulich 0 siblings, 1 reply; 13+ messages in thread From: Andrew Cooper @ 2024-09-05 21:54 UTC (permalink / raw) To: Xen-devel Cc: Shawn Anastasio, Oleksii Kurochko, Jan Beulich, Stefano Stabellini, Julien Grall On 21/06/2024 9:19 pm, Andrew Cooper wrote: > All of CONFIG_SCHED_*, and CONFIG_HYPFS build fine. > > Add a stub for share_xen_page_with_guest(), which is all that is necessary to > make CONFIG_TRACEBUFFER build. > > No functional change. > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> > --- > CC: Shawn Anastasio <sanastasio@raptorengineering.com> > CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> > CC: George Dunlap <George.Dunlap@citrix.com> > CC: Jan Beulich <JBeulich@suse.com> > CC: Stefano Stabellini <sstabellini@kernel.org> > CC: Julien Grall <julien@xen.org> > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342672505 > > This is in aid of getting wider compiler coverage with the subseqeuent patch > --- > xen/arch/ppc/configs/ppc64_defconfig | 6 ------ > xen/arch/ppc/stubs.c | 6 ++++++ > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/xen/arch/ppc/configs/ppc64_defconfig b/xen/arch/ppc/configs/ppc64_defconfig > index 48a053237afd..4924d881a27c 100644 > --- a/xen/arch/ppc/configs/ppc64_defconfig > +++ b/xen/arch/ppc/configs/ppc64_defconfig > @@ -1,9 +1,3 @@ > -# 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 > diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c > index 923f0e7b2095..a10691165b1b 100644 > --- a/xen/arch/ppc/stubs.c > +++ b/xen/arch/ppc/stubs.c > @@ -333,3 +333,9 @@ void udelay(unsigned long usecs) > { > BUG_ON("unimplemented"); > } > + > +void share_xen_page_with_guest(struct page_info *page, struct domain *d, > + enum XENSHARE_flags flags) > +{ > + BUG_ON("unimplemented"); > +} ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ping] Re: [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig 2024-09-05 21:54 ` [ping] " Andrew Cooper @ 2024-09-06 6:01 ` Jan Beulich 0 siblings, 0 replies; 13+ messages in thread From: Jan Beulich @ 2024-09-06 6:01 UTC (permalink / raw) To: Andrew Cooper Cc: Shawn Anastasio, Oleksii Kurochko, Stefano Stabellini, Julien Grall, Xen-devel On 05.09.2024 23:54, Andrew Cooper wrote: > On 21/06/2024 9:19 pm, Andrew Cooper wrote: >> All of CONFIG_SCHED_*, and CONFIG_HYPFS build fine. >> >> Add a stub for share_xen_page_with_guest(), which is all that is necessary to >> make CONFIG_TRACEBUFFER build. >> >> No functional change. >> >> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Jan Beulich <jbeulich@suse.com> ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions 2024-06-21 20:19 [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Andrew Cooper 2024-06-21 20:19 ` [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition Andrew Cooper 2024-06-21 20:19 ` [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig Andrew Cooper @ 2024-06-21 20:19 ` Andrew Cooper 2024-06-24 8:01 ` Jan Beulich 2024-06-24 8:04 ` Oleksii 2024-06-24 7:58 ` [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Oleksii 3 siblings, 2 replies; 13+ messages in thread From: Andrew Cooper @ 2024-06-21 20:19 UTC (permalink / raw) To: Xen-devel Cc: Andrew Cooper, Shawn Anastasio, Oleksii Kurochko, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall RISC-V wants to introduce a full build of Xen without using the legacy definitions. PPC64 has the most minimal full build of Xen right now, so make it compile without the legacy definitions. Mostly this is just including xen/sections.h in a variety of common files. In a couple of cases, we can drop an inclusion of {xen,asm}/cache.h, but almost all files get the definitions transitively. No functional change. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Shawn Anastasio <sanastasio@raptorengineering.com> CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> CC: George Dunlap <George.Dunlap@citrix.com> CC: Jan Beulich <JBeulich@suse.com> CC: Stefano Stabellini <sstabellini@kernel.org> CC: Julien Grall <julien@xen.org> https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342714126 --- xen/arch/ppc/include/asm/cache.h | 3 --- xen/arch/ppc/mm-radix.c | 1 + xen/arch/ppc/stubs.c | 1 + xen/common/argo.c | 1 + xen/common/cpu.c | 1 + xen/common/debugtrace.c | 1 + xen/common/domain.c | 1 + xen/common/event_channel.c | 2 ++ xen/common/keyhandler.c | 1 + xen/common/memory.c | 1 + xen/common/page_alloc.c | 1 + xen/common/pdx.c | 1 + xen/common/radix-tree.c | 1 + xen/common/random.c | 2 +- xen/common/rcupdate.c | 1 + xen/common/sched/core.c | 1 + xen/common/sched/cpupool.c | 1 + xen/common/sched/credit.c | 1 + xen/common/sched/credit2.c | 1 + xen/common/shutdown.c | 1 + xen/common/spinlock.c | 1 + xen/common/timer.c | 1 + xen/common/version.c | 3 +-- xen/common/virtual_region.c | 1 + xen/common/vmap.c | 2 +- xen/drivers/char/console.c | 1 + xen/drivers/char/ns16550.c | 1 + xen/drivers/char/serial.c | 2 +- xen/include/xen/cache.h | 2 +- xen/include/xen/hypfs.h | 1 + 30 files changed, 30 insertions(+), 9 deletions(-) diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/cache.h index 13c0bf3242c8..8a0a6b7b1756 100644 --- a/xen/arch/ppc/include/asm/cache.h +++ b/xen/arch/ppc/include/asm/cache.h @@ -3,7 +3,4 @@ #ifndef _ASM_PPC_CACHE_H #define _ASM_PPC_CACHE_H -/* TODO: Phase out the use of this via cache.h */ -#define __read_mostly __section(".data.read_mostly") - #endif /* _ASM_PPC_CACHE_H */ diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c index ab5a10695c5f..0a47959e64f2 100644 --- a/xen/arch/ppc/mm-radix.c +++ b/xen/arch/ppc/mm-radix.c @@ -2,6 +2,7 @@ #include <xen/init.h> #include <xen/kernel.h> #include <xen/mm.h> +#include <xen/sections.h> #include <xen/types.h> #include <xen/lib.h> diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c index a10691165b1b..0e7a26dadbc1 100644 --- a/xen/arch/ppc/stubs.c +++ b/xen/arch/ppc/stubs.c @@ -3,6 +3,7 @@ #include <xen/domain.h> #include <xen/irq.h> #include <xen/nodemask.h> +#include <xen/sections.h> #include <xen/time.h> #include <public/domctl.h> #include <public/vm_event.h> diff --git a/xen/common/argo.c b/xen/common/argo.c index 901f41eb2dbe..df19006744a3 100644 --- a/xen/common/argo.c +++ b/xen/common/argo.c @@ -25,6 +25,7 @@ #include <xen/nospec.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/time.h> #include <xsm/xsm.h> diff --git a/xen/common/cpu.c b/xen/common/cpu.c index 6e35b114c080..f09af0444b6a 100644 --- a/xen/common/cpu.c +++ b/xen/common/cpu.c @@ -3,6 +3,7 @@ #include <xen/event.h> #include <xen/init.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/stop_machine.h> #include <xen/rcupdate.h> diff --git a/xen/common/debugtrace.c b/xen/common/debugtrace.c index a272e5e43761..ca883ad9198d 100644 --- a/xen/common/debugtrace.c +++ b/xen/common/debugtrace.c @@ -13,6 +13,7 @@ #include <xen/mm.h> #include <xen/param.h> #include <xen/percpu.h> +#include <xen/sections.h> #include <xen/serial.h> #include <xen/smp.h> #include <xen/spinlock.h> diff --git a/xen/common/domain.c b/xen/common/domain.c index 67cadb7c3f4f..3db0e0b793f9 100644 --- a/xen/common/domain.c +++ b/xen/common/domain.c @@ -11,6 +11,7 @@ #include <xen/err.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/domain.h> #include <xen/mm.h> #include <xen/event.h> diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c index a67feff98976..822b2c982489 100644 --- a/xen/common/event_channel.c +++ b/xen/common/event_channel.c @@ -26,6 +26,8 @@ #include <xen/guest_access.h> #include <xen/hypercall.h> #include <xen/keyhandler.h> +#include <xen/sections.h> + #include <asm/current.h> #include <public/xen.h> diff --git a/xen/common/keyhandler.c b/xen/common/keyhandler.c index 127ca506965c..674e7be39e9d 100644 --- a/xen/common/keyhandler.c +++ b/xen/common/keyhandler.c @@ -6,6 +6,7 @@ #include <xen/delay.h> #include <xen/keyhandler.h> #include <xen/param.h> +#include <xen/sections.h> #include <xen/shutdown.h> #include <xen/event.h> #include <xen/console.h> diff --git a/xen/common/memory.c b/xen/common/memory.c index de2cc7ad92a5..a6f2f6d1b348 100644 --- a/xen/common/memory.c +++ b/xen/common/memory.c @@ -23,6 +23,7 @@ #include <xen/param.h> #include <xen/perfc.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/trace.h> #include <xen/types.h> #include <asm/current.h> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c index 054b7edb3989..33c8c917d984 100644 --- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -134,6 +134,7 @@ #include <xen/pfn.h> #include <xen/types.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/softirq.h> #include <xen/spinlock.h> diff --git a/xen/common/pdx.c b/xen/common/pdx.c index d3d63b075032..b8384e6189df 100644 --- a/xen/common/pdx.c +++ b/xen/common/pdx.c @@ -19,6 +19,7 @@ #include <xen/mm.h> #include <xen/bitops.h> #include <xen/nospec.h> +#include <xen/sections.h> /** * Maximum (non-inclusive) usable pdx. Must be diff --git a/xen/common/radix-tree.c b/xen/common/radix-tree.c index adc3034222dc..fb283a9d52fc 100644 --- a/xen/common/radix-tree.c +++ b/xen/common/radix-tree.c @@ -21,6 +21,7 @@ #include <xen/init.h> #include <xen/radix-tree.h> #include <xen/errno.h> +#include <xen/sections.h> struct radix_tree_path { struct radix_tree_node *node; diff --git a/xen/common/random.c b/xen/common/random.c index a29f2fcb991a..35a9f387fd5c 100644 --- a/xen/common/random.c +++ b/xen/common/random.c @@ -1,6 +1,6 @@ -#include <xen/cache.h> #include <xen/init.h> #include <xen/percpu.h> +#include <xen/sections.h> #include <xen/random.h> #include <xen/time.h> #include <asm/random.h> diff --git a/xen/common/rcupdate.c b/xen/common/rcupdate.c index 212a99acd8c8..fd5d3d7484a5 100644 --- a/xen/common/rcupdate.c +++ b/xen/common/rcupdate.c @@ -35,6 +35,7 @@ #include <xen/kernel.h> #include <xen/init.h> #include <xen/param.h> +#include <xen/sections.h> #include <xen/spinlock.h> #include <xen/smp.h> #include <xen/rcupdate.h> diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c index d84b65f197b3..1a3ff5ae4dec 100644 --- a/xen/common/sched/core.c +++ b/xen/common/sched/core.c @@ -18,6 +18,7 @@ #include <xen/lib.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/domain.h> #include <xen/delay.h> #include <xen/event.h> diff --git a/xen/common/sched/cpupool.c b/xen/common/sched/cpupool.c index ad8f60846273..57dfee26f21f 100644 --- a/xen/common/sched/cpupool.c +++ b/xen/common/sched/cpupool.c @@ -22,6 +22,7 @@ #include <xen/param.h> #include <xen/percpu.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/warning.h> #include "private.h" diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c index 020f44595ed0..a6bb321e7da1 100644 --- a/xen/common/sched/credit.c +++ b/xen/common/sched/credit.c @@ -12,6 +12,7 @@ #include <xen/lib.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/domain.h> #include <xen/delay.h> #include <xen/event.h> diff --git a/xen/common/sched/credit2.c b/xen/common/sched/credit2.c index 685929c2902b..a7da60f40376 100644 --- a/xen/common/sched/credit2.c +++ b/xen/common/sched/credit2.c @@ -14,6 +14,7 @@ #include <xen/lib.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/domain.h> #include <xen/delay.h> #include <xen/event.h> diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c index 5f8141edc6b2..f413f331af17 100644 --- a/xen/common/shutdown.c +++ b/xen/common/shutdown.c @@ -2,6 +2,7 @@ #include <xen/lib.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/domain.h> #include <xen/delay.h> #include <xen/watchdog.h> diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c index 28c6e9d3ac60..0b877384451d 100644 --- a/xen/common/spinlock.c +++ b/xen/common/spinlock.c @@ -5,6 +5,7 @@ #include <xen/param.h> #include <xen/smp.h> #include <xen/time.h> +#include <xen/sections.h> #include <xen/spinlock.h> #include <xen/guest_access.h> #include <xen/preempt.h> diff --git a/xen/common/timer.c b/xen/common/timer.c index a21798b76f38..da0d069cc674 100644 --- a/xen/common/timer.c +++ b/xen/common/timer.c @@ -11,6 +11,7 @@ #include <xen/sched.h> #include <xen/lib.h> #include <xen/param.h> +#include <xen/sections.h> #include <xen/smp.h> #include <xen/perfc.h> #include <xen/time.h> diff --git a/xen/common/version.c b/xen/common/version.c index 80869430fc7c..b7d7d515a3dc 100644 --- a/xen/common/version.c +++ b/xen/common/version.c @@ -3,14 +3,13 @@ #include <xen/init.h> #include <xen/errno.h> #include <xen/lib.h> +#include <xen/sections.h> #include <xen/string.h> #include <xen/types.h> #include <xen/efi.h> #include <xen/elf.h> #include <xen/version.h> -#include <asm/cache.h> - const char *xen_compile_date(void) { return XEN_COMPILE_DATE; diff --git a/xen/common/virtual_region.c b/xen/common/virtual_region.c index 52405d84b25c..1dc2e9f592ed 100644 --- a/xen/common/virtual_region.c +++ b/xen/common/virtual_region.c @@ -6,6 +6,7 @@ #include <xen/kernel.h> #include <xen/mm.h> #include <xen/rcupdate.h> +#include <xen/sections.h> #include <xen/spinlock.h> #include <xen/virtual_region.h> diff --git a/xen/common/vmap.c b/xen/common/vmap.c index 966a7e763f0f..b3b4ddf65311 100644 --- a/xen/common/vmap.c +++ b/xen/common/vmap.c @@ -1,6 +1,6 @@ #ifdef VMAP_VIRT_START #include <xen/bitmap.h> -#include <xen/cache.h> +#include <xen/sections.h> #include <xen/init.h> #include <xen/mm.h> #include <xen/pfn.h> diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index 3a3a97bcbe3a..7da8c5296f3b 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -32,6 +32,7 @@ #include <xen/warning.h> #include <xen/pv_console.h> #include <asm/setup.h> +#include <xen/sections.h> #ifdef CONFIG_X86 #include <xen/consoled.h> diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c index 8f76bbe676bc..eaeb0e09d01e 100644 --- a/xen/drivers/char/ns16550.c +++ b/xen/drivers/char/ns16550.c @@ -22,6 +22,7 @@ #include <xen/irq.h> #include <xen/param.h> #include <xen/sched.h> +#include <xen/sections.h> #include <xen/timer.h> #include <xen/serial.h> #include <xen/iocap.h> diff --git a/xen/drivers/char/serial.c b/xen/drivers/char/serial.c index f28d8557c0a5..591a00900869 100644 --- a/xen/drivers/char/serial.c +++ b/xen/drivers/char/serial.c @@ -10,8 +10,8 @@ #include <xen/init.h> #include <xen/mm.h> #include <xen/param.h> +#include <xen/sections.h> #include <xen/serial.h> -#include <xen/cache.h> #include <asm/processor.h> diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h index 82a3ba38e3e7..a19942fd63ef 100644 --- a/xen/include/xen/cache.h +++ b/xen/include/xen/cache.h @@ -15,7 +15,7 @@ #define __cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES))) #endif -#if defined(CONFIG_ARM) || defined(CONFIG_X86) || defined(CONFIG_PPC64) +#if defined(CONFIG_ARM) || defined(CONFIG_X86) /* TODO: Phase out the use of this via cache.h */ #define __ro_after_init __section(".data.ro_after_init") #endif diff --git a/xen/include/xen/hypfs.h b/xen/include/xen/hypfs.h index 1b65a9188c6c..d8fcac23b46b 100644 --- a/xen/include/xen/hypfs.h +++ b/xen/include/xen/hypfs.h @@ -4,6 +4,7 @@ #ifdef CONFIG_HYPFS #include <xen/lib.h> #include <xen/list.h> +#include <xen/sections.h> #include <xen/string.h> #include <public/hypfs.h> -- 2.39.2 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions 2024-06-21 20:19 ` [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions Andrew Cooper @ 2024-06-24 8:01 ` Jan Beulich 2024-06-24 8:04 ` Oleksii 1 sibling, 0 replies; 13+ messages in thread From: Jan Beulich @ 2024-06-24 8:01 UTC (permalink / raw) To: Andrew Cooper Cc: Shawn Anastasio, Oleksii Kurochko, George Dunlap, Stefano Stabellini, Julien Grall, Xen-devel On 21.06.2024 22:19, Andrew Cooper wrote: > RISC-V wants to introduce a full build of Xen without using the legacy > definitions. PPC64 has the most minimal full build of Xen right now, so make > it compile without the legacy definitions. > > Mostly this is just including xen/sections.h in a variety of common files. In > a couple of cases, we can drop an inclusion of {xen,asm}/cache.h, but almost > all files get the definitions transitively. > > No functional change. > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Jan Beulich <jbeulich@suse.com> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions 2024-06-21 20:19 ` [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions Andrew Cooper 2024-06-24 8:01 ` Jan Beulich @ 2024-06-24 8:04 ` Oleksii 1 sibling, 0 replies; 13+ messages in thread From: Oleksii @ 2024-06-24 8:04 UTC (permalink / raw) To: Andrew Cooper, Xen-devel Cc: Shawn Anastasio, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall On Fri, 2024-06-21 at 21:19 +0100, Andrew Cooper wrote: > RISC-V wants to introduce a full build of Xen without using the > legacy > definitions. PPC64 has the most minimal full build of Xen right now, > so make > it compile without the legacy definitions. > > Mostly this is just including xen/sections.h in a variety of common > files. In > a couple of cases, we can drop an inclusion of {xen,asm}/cache.h, but > almost > all files get the definitions transitively. > > No functional change. > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> ~ Oleskii > --- > CC: Shawn Anastasio <sanastasio@raptorengineering.com> > CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> > CC: George Dunlap <George.Dunlap@citrix.com> > CC: Jan Beulich <JBeulich@suse.com> > CC: Stefano Stabellini <sstabellini@kernel.org> > CC: Julien Grall <julien@xen.org> > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/1342714126 > --- > xen/arch/ppc/include/asm/cache.h | 3 --- > xen/arch/ppc/mm-radix.c | 1 + > xen/arch/ppc/stubs.c | 1 + > xen/common/argo.c | 1 + > xen/common/cpu.c | 1 + > xen/common/debugtrace.c | 1 + > xen/common/domain.c | 1 + > xen/common/event_channel.c | 2 ++ > xen/common/keyhandler.c | 1 + > xen/common/memory.c | 1 + > xen/common/page_alloc.c | 1 + > xen/common/pdx.c | 1 + > xen/common/radix-tree.c | 1 + > xen/common/random.c | 2 +- > xen/common/rcupdate.c | 1 + > xen/common/sched/core.c | 1 + > xen/common/sched/cpupool.c | 1 + > xen/common/sched/credit.c | 1 + > xen/common/sched/credit2.c | 1 + > xen/common/shutdown.c | 1 + > xen/common/spinlock.c | 1 + > xen/common/timer.c | 1 + > xen/common/version.c | 3 +-- > xen/common/virtual_region.c | 1 + > xen/common/vmap.c | 2 +- > xen/drivers/char/console.c | 1 + > xen/drivers/char/ns16550.c | 1 + > xen/drivers/char/serial.c | 2 +- > xen/include/xen/cache.h | 2 +- > xen/include/xen/hypfs.h | 1 + > 30 files changed, 30 insertions(+), 9 deletions(-) > > diff --git a/xen/arch/ppc/include/asm/cache.h > b/xen/arch/ppc/include/asm/cache.h > index 13c0bf3242c8..8a0a6b7b1756 100644 > --- a/xen/arch/ppc/include/asm/cache.h > +++ b/xen/arch/ppc/include/asm/cache.h > @@ -3,7 +3,4 @@ > #ifndef _ASM_PPC_CACHE_H > #define _ASM_PPC_CACHE_H > > -/* TODO: Phase out the use of this via cache.h */ > -#define __read_mostly __section(".data.read_mostly") > - > #endif /* _ASM_PPC_CACHE_H */ > diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c > index ab5a10695c5f..0a47959e64f2 100644 > --- a/xen/arch/ppc/mm-radix.c > +++ b/xen/arch/ppc/mm-radix.c > @@ -2,6 +2,7 @@ > #include <xen/init.h> > #include <xen/kernel.h> > #include <xen/mm.h> > +#include <xen/sections.h> > #include <xen/types.h> > #include <xen/lib.h> > > diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c > index a10691165b1b..0e7a26dadbc1 100644 > --- a/xen/arch/ppc/stubs.c > +++ b/xen/arch/ppc/stubs.c > @@ -3,6 +3,7 @@ > #include <xen/domain.h> > #include <xen/irq.h> > #include <xen/nodemask.h> > +#include <xen/sections.h> > #include <xen/time.h> > #include <public/domctl.h> > #include <public/vm_event.h> > diff --git a/xen/common/argo.c b/xen/common/argo.c > index 901f41eb2dbe..df19006744a3 100644 > --- a/xen/common/argo.c > +++ b/xen/common/argo.c > @@ -25,6 +25,7 @@ > #include <xen/nospec.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/time.h> > > #include <xsm/xsm.h> > diff --git a/xen/common/cpu.c b/xen/common/cpu.c > index 6e35b114c080..f09af0444b6a 100644 > --- a/xen/common/cpu.c > +++ b/xen/common/cpu.c > @@ -3,6 +3,7 @@ > #include <xen/event.h> > #include <xen/init.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/stop_machine.h> > #include <xen/rcupdate.h> > > diff --git a/xen/common/debugtrace.c b/xen/common/debugtrace.c > index a272e5e43761..ca883ad9198d 100644 > --- a/xen/common/debugtrace.c > +++ b/xen/common/debugtrace.c > @@ -13,6 +13,7 @@ > #include <xen/mm.h> > #include <xen/param.h> > #include <xen/percpu.h> > +#include <xen/sections.h> > #include <xen/serial.h> > #include <xen/smp.h> > #include <xen/spinlock.h> > diff --git a/xen/common/domain.c b/xen/common/domain.c > index 67cadb7c3f4f..3db0e0b793f9 100644 > --- a/xen/common/domain.c > +++ b/xen/common/domain.c > @@ -11,6 +11,7 @@ > #include <xen/err.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/domain.h> > #include <xen/mm.h> > #include <xen/event.h> > diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c > index a67feff98976..822b2c982489 100644 > --- a/xen/common/event_channel.c > +++ b/xen/common/event_channel.c > @@ -26,6 +26,8 @@ > #include <xen/guest_access.h> > #include <xen/hypercall.h> > #include <xen/keyhandler.h> > +#include <xen/sections.h> > + > #include <asm/current.h> > > #include <public/xen.h> > diff --git a/xen/common/keyhandler.c b/xen/common/keyhandler.c > index 127ca506965c..674e7be39e9d 100644 > --- a/xen/common/keyhandler.c > +++ b/xen/common/keyhandler.c > @@ -6,6 +6,7 @@ > #include <xen/delay.h> > #include <xen/keyhandler.h> > #include <xen/param.h> > +#include <xen/sections.h> > #include <xen/shutdown.h> > #include <xen/event.h> > #include <xen/console.h> > diff --git a/xen/common/memory.c b/xen/common/memory.c > index de2cc7ad92a5..a6f2f6d1b348 100644 > --- a/xen/common/memory.c > +++ b/xen/common/memory.c > @@ -23,6 +23,7 @@ > #include <xen/param.h> > #include <xen/perfc.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/trace.h> > #include <xen/types.h> > #include <asm/current.h> > diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c > index 054b7edb3989..33c8c917d984 100644 > --- a/xen/common/page_alloc.c > +++ b/xen/common/page_alloc.c > @@ -134,6 +134,7 @@ > #include <xen/pfn.h> > #include <xen/types.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/softirq.h> > #include <xen/spinlock.h> > > diff --git a/xen/common/pdx.c b/xen/common/pdx.c > index d3d63b075032..b8384e6189df 100644 > --- a/xen/common/pdx.c > +++ b/xen/common/pdx.c > @@ -19,6 +19,7 @@ > #include <xen/mm.h> > #include <xen/bitops.h> > #include <xen/nospec.h> > +#include <xen/sections.h> > > /** > * Maximum (non-inclusive) usable pdx. Must be > diff --git a/xen/common/radix-tree.c b/xen/common/radix-tree.c > index adc3034222dc..fb283a9d52fc 100644 > --- a/xen/common/radix-tree.c > +++ b/xen/common/radix-tree.c > @@ -21,6 +21,7 @@ > #include <xen/init.h> > #include <xen/radix-tree.h> > #include <xen/errno.h> > +#include <xen/sections.h> > > struct radix_tree_path { > struct radix_tree_node *node; > diff --git a/xen/common/random.c b/xen/common/random.c > index a29f2fcb991a..35a9f387fd5c 100644 > --- a/xen/common/random.c > +++ b/xen/common/random.c > @@ -1,6 +1,6 @@ > -#include <xen/cache.h> > #include <xen/init.h> > #include <xen/percpu.h> > +#include <xen/sections.h> > #include <xen/random.h> > #include <xen/time.h> > #include <asm/random.h> > diff --git a/xen/common/rcupdate.c b/xen/common/rcupdate.c > index 212a99acd8c8..fd5d3d7484a5 100644 > --- a/xen/common/rcupdate.c > +++ b/xen/common/rcupdate.c > @@ -35,6 +35,7 @@ > #include <xen/kernel.h> > #include <xen/init.h> > #include <xen/param.h> > +#include <xen/sections.h> > #include <xen/spinlock.h> > #include <xen/smp.h> > #include <xen/rcupdate.h> > diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c > index d84b65f197b3..1a3ff5ae4dec 100644 > --- a/xen/common/sched/core.c > +++ b/xen/common/sched/core.c > @@ -18,6 +18,7 @@ > #include <xen/lib.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/domain.h> > #include <xen/delay.h> > #include <xen/event.h> > diff --git a/xen/common/sched/cpupool.c b/xen/common/sched/cpupool.c > index ad8f60846273..57dfee26f21f 100644 > --- a/xen/common/sched/cpupool.c > +++ b/xen/common/sched/cpupool.c > @@ -22,6 +22,7 @@ > #include <xen/param.h> > #include <xen/percpu.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/warning.h> > > #include "private.h" > diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c > index 020f44595ed0..a6bb321e7da1 100644 > --- a/xen/common/sched/credit.c > +++ b/xen/common/sched/credit.c > @@ -12,6 +12,7 @@ > #include <xen/lib.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/domain.h> > #include <xen/delay.h> > #include <xen/event.h> > diff --git a/xen/common/sched/credit2.c b/xen/common/sched/credit2.c > index 685929c2902b..a7da60f40376 100644 > --- a/xen/common/sched/credit2.c > +++ b/xen/common/sched/credit2.c > @@ -14,6 +14,7 @@ > #include <xen/lib.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/domain.h> > #include <xen/delay.h> > #include <xen/event.h> > diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c > index 5f8141edc6b2..f413f331af17 100644 > --- a/xen/common/shutdown.c > +++ b/xen/common/shutdown.c > @@ -2,6 +2,7 @@ > #include <xen/lib.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/domain.h> > #include <xen/delay.h> > #include <xen/watchdog.h> > diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c > index 28c6e9d3ac60..0b877384451d 100644 > --- a/xen/common/spinlock.c > +++ b/xen/common/spinlock.c > @@ -5,6 +5,7 @@ > #include <xen/param.h> > #include <xen/smp.h> > #include <xen/time.h> > +#include <xen/sections.h> > #include <xen/spinlock.h> > #include <xen/guest_access.h> > #include <xen/preempt.h> > diff --git a/xen/common/timer.c b/xen/common/timer.c > index a21798b76f38..da0d069cc674 100644 > --- a/xen/common/timer.c > +++ b/xen/common/timer.c > @@ -11,6 +11,7 @@ > #include <xen/sched.h> > #include <xen/lib.h> > #include <xen/param.h> > +#include <xen/sections.h> > #include <xen/smp.h> > #include <xen/perfc.h> > #include <xen/time.h> > diff --git a/xen/common/version.c b/xen/common/version.c > index 80869430fc7c..b7d7d515a3dc 100644 > --- a/xen/common/version.c > +++ b/xen/common/version.c > @@ -3,14 +3,13 @@ > #include <xen/init.h> > #include <xen/errno.h> > #include <xen/lib.h> > +#include <xen/sections.h> > #include <xen/string.h> > #include <xen/types.h> > #include <xen/efi.h> > #include <xen/elf.h> > #include <xen/version.h> > > -#include <asm/cache.h> > - > const char *xen_compile_date(void) > { > return XEN_COMPILE_DATE; > diff --git a/xen/common/virtual_region.c > b/xen/common/virtual_region.c > index 52405d84b25c..1dc2e9f592ed 100644 > --- a/xen/common/virtual_region.c > +++ b/xen/common/virtual_region.c > @@ -6,6 +6,7 @@ > #include <xen/kernel.h> > #include <xen/mm.h> > #include <xen/rcupdate.h> > +#include <xen/sections.h> > #include <xen/spinlock.h> > #include <xen/virtual_region.h> > > diff --git a/xen/common/vmap.c b/xen/common/vmap.c > index 966a7e763f0f..b3b4ddf65311 100644 > --- a/xen/common/vmap.c > +++ b/xen/common/vmap.c > @@ -1,6 +1,6 @@ > #ifdef VMAP_VIRT_START > #include <xen/bitmap.h> > -#include <xen/cache.h> > +#include <xen/sections.h> > #include <xen/init.h> > #include <xen/mm.h> > #include <xen/pfn.h> > diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c > index 3a3a97bcbe3a..7da8c5296f3b 100644 > --- a/xen/drivers/char/console.c > +++ b/xen/drivers/char/console.c > @@ -32,6 +32,7 @@ > #include <xen/warning.h> > #include <xen/pv_console.h> > #include <asm/setup.h> > +#include <xen/sections.h> > > #ifdef CONFIG_X86 > #include <xen/consoled.h> > diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c > index 8f76bbe676bc..eaeb0e09d01e 100644 > --- a/xen/drivers/char/ns16550.c > +++ b/xen/drivers/char/ns16550.c > @@ -22,6 +22,7 @@ > #include <xen/irq.h> > #include <xen/param.h> > #include <xen/sched.h> > +#include <xen/sections.h> > #include <xen/timer.h> > #include <xen/serial.h> > #include <xen/iocap.h> > diff --git a/xen/drivers/char/serial.c b/xen/drivers/char/serial.c > index f28d8557c0a5..591a00900869 100644 > --- a/xen/drivers/char/serial.c > +++ b/xen/drivers/char/serial.c > @@ -10,8 +10,8 @@ > #include <xen/init.h> > #include <xen/mm.h> > #include <xen/param.h> > +#include <xen/sections.h> > #include <xen/serial.h> > -#include <xen/cache.h> > > #include <asm/processor.h> > > diff --git a/xen/include/xen/cache.h b/xen/include/xen/cache.h > index 82a3ba38e3e7..a19942fd63ef 100644 > --- a/xen/include/xen/cache.h > +++ b/xen/include/xen/cache.h > @@ -15,7 +15,7 @@ > #define __cacheline_aligned > __attribute__((__aligned__(SMP_CACHE_BYTES))) > #endif > > -#if defined(CONFIG_ARM) || defined(CONFIG_X86) || > defined(CONFIG_PPC64) > +#if defined(CONFIG_ARM) || defined(CONFIG_X86) > /* TODO: Phase out the use of this via cache.h */ > #define __ro_after_init __section(".data.ro_after_init") > #endif > diff --git a/xen/include/xen/hypfs.h b/xen/include/xen/hypfs.h > index 1b65a9188c6c..d8fcac23b46b 100644 > --- a/xen/include/xen/hypfs.h > +++ b/xen/include/xen/hypfs.h > @@ -4,6 +4,7 @@ > #ifdef CONFIG_HYPFS > #include <xen/lib.h> > #include <xen/list.h> > +#include <xen/sections.h> > #include <xen/string.h> > #include <public/hypfs.h> > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init 2024-06-21 20:19 [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Andrew Cooper ` (2 preceding siblings ...) 2024-06-21 20:19 ` [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions Andrew Cooper @ 2024-06-24 7:58 ` Oleksii 3 siblings, 0 replies; 13+ messages in thread From: Oleksii @ 2024-06-24 7:58 UTC (permalink / raw) To: Andrew Cooper, Xen-devel Cc: Shawn Anastasio, George Dunlap, Jan Beulich, Stefano Stabellini, Julien Grall On Fri, 2024-06-21 at 21:19 +0100, Andrew Cooper wrote: > In aid of getting the RISC-V build working without introducing more > technical > debt. It's done by making PPC shed it's copy of said technical debt. > > Build tested quite thoroughly, including in Gitlab. Release-Acked-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> ~ Oleksii > > Andrew Cooper (3): > xen/riscv: Drop legacy __ro_after_init definition > xen/ppc: Adjust ppc64_defconfig > xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init > definitions > > xen/arch/ppc/configs/ppc64_defconfig | 6 ------ > xen/arch/ppc/include/asm/cache.h | 3 --- > xen/arch/ppc/mm-radix.c | 1 + > xen/arch/ppc/stubs.c | 7 +++++++ > xen/arch/riscv/mm.c | 2 +- > xen/common/argo.c | 1 + > xen/common/cpu.c | 1 + > xen/common/debugtrace.c | 1 + > xen/common/domain.c | 1 + > xen/common/event_channel.c | 2 ++ > xen/common/keyhandler.c | 1 + > xen/common/memory.c | 1 + > xen/common/page_alloc.c | 1 + > xen/common/pdx.c | 1 + > xen/common/radix-tree.c | 1 + > xen/common/random.c | 2 +- > xen/common/rcupdate.c | 1 + > xen/common/sched/core.c | 1 + > xen/common/sched/cpupool.c | 1 + > xen/common/sched/credit.c | 1 + > xen/common/sched/credit2.c | 1 + > xen/common/shutdown.c | 1 + > xen/common/spinlock.c | 1 + > xen/common/timer.c | 1 + > xen/common/version.c | 3 +-- > xen/common/virtual_region.c | 1 + > xen/common/vmap.c | 2 +- > xen/drivers/char/console.c | 1 + > xen/drivers/char/ns16550.c | 1 + > xen/drivers/char/serial.c | 2 +- > xen/include/xen/cache.h | 2 ++ > xen/include/xen/hypfs.h | 1 + > 32 files changed, 38 insertions(+), 15 deletions(-) > ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2024-09-06 6:02 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-06-21 20:19 [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Andrew Cooper 2024-06-21 20:19 ` [PATCH 1/3] xen/riscv: Drop legacy __ro_after_init definition Andrew Cooper 2024-06-24 8:02 ` Oleksii 2024-06-24 8:04 ` Jan Beulich 2024-06-24 12:51 ` Oleksii 2024-06-24 12:50 ` Oleksii 2024-06-21 20:19 ` [PATCH 2/3] xen/ppc: Adjust ppc64_defconfig Andrew Cooper 2024-09-05 21:54 ` [ping] " Andrew Cooper 2024-09-06 6:01 ` Jan Beulich 2024-06-21 20:19 ` [PATCH 3/3] xen/ppc: Avoid using the legacy __read_mostly/__ro_after_init definitions Andrew Cooper 2024-06-24 8:01 ` Jan Beulich 2024-06-24 8:04 ` Oleksii 2024-06-24 7:58 ` [PATCH for-4.19? 0/3] xen: build adjustments for __read_mostly/__ro_after_init Oleksii
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.