Message ID | 39cc57e443d2df432f90361204c9edd802fcc320.1700761381.git.oleksii.kurochko@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Enable build of full Xen for RISC-V | expand |
On 24.11.2023 11:30, Oleksii Kurochko wrote: > --- /dev/null > +++ b/xen/arch/riscv/include/asm/smp.h > @@ -0,0 +1,23 @@ > +#ifndef __ASM_RISCV_SMP_H > +#define __ASM_RISCV_SMP_H > + > +#ifndef __ASSEMBLY__ > +#include <xen/cpumask.h> > +#include <xen/percpu.h> > +#endif If you want this to be possible to include from assembly files (I don't know why you would want that), ... > +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); > +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); ... these two would also need to live inside the #ifdef. Otherwise the #ifdef wants dropping. > +#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu)) Seeing this is now the 4th instance, I guess we want to move it to xen/smp.h. I'll try to remember making a patch. > +/* > + * Do we, for platform reasons, need to actually keep CPUs online when we > + * would otherwise prefer them to be off? > + */ > +#define park_offline_cpus false > + > +/* TODO: need to be implemeted */ > +#define smp_processor_id() (0) > + > +#endif > \ No newline at end of file You want to take care of this. Jan
On Thu, 2023-12-07 at 16:43 +0100, Jan Beulich wrote: > On 24.11.2023 11:30, Oleksii Kurochko wrote: > > --- /dev/null > > +++ b/xen/arch/riscv/include/asm/smp.h > > @@ -0,0 +1,23 @@ > > +#ifndef __ASM_RISCV_SMP_H > > +#define __ASM_RISCV_SMP_H > > + > > +#ifndef __ASSEMBLY__ > > +#include <xen/cpumask.h> > > +#include <xen/percpu.h> > > +#endif > > If you want this to be possible to include from assembly files (I > don't > know why you would want that), ... > > > +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); > > +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); > > ... these two would also need to live inside the #ifdef. Otherwise > the > #ifdef wants dropping. I think we can just drop $ifdef. I am not sure that this header will be used in assembly code. > > > +#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu)) > > Seeing this is now the 4th instance, I guess we want to move it to > xen/smp.h. I'll try to remember making a patch. It will be nice. Thanks. > > > +/* > > + * Do we, for platform reasons, need to actually keep CPUs online > > when we > > + * would otherwise prefer them to be off? > > + */ > > +#define park_offline_cpus false > > + > > +/* TODO: need to be implemeted */ > > +#define smp_processor_id() (0) > > + > > +#endif > > \ No newline at end of file > > You want to take care of this. Sure. I'll add a newline. Thanks for noticing that. > ~ Oleksii
diff --git a/xen/arch/riscv/include/asm/smp.h b/xen/arch/riscv/include/asm/smp.h new file mode 100644 index 0000000000..a7b4f94ce4 --- /dev/null +++ b/xen/arch/riscv/include/asm/smp.h @@ -0,0 +1,23 @@ +#ifndef __ASM_RISCV_SMP_H +#define __ASM_RISCV_SMP_H + +#ifndef __ASSEMBLY__ +#include <xen/cpumask.h> +#include <xen/percpu.h> +#endif + +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); + +#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu)) + +/* + * Do we, for platform reasons, need to actually keep CPUs online when we + * would otherwise prefer them to be off? + */ +#define park_offline_cpus false + +/* TODO: need to be implemeted */ +#define smp_processor_id() (0) + +#endif \ No newline at end of file
Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> --- Changes in V2: - Nothing changed. Only rebase. --- xen/arch/riscv/include/asm/smp.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 xen/arch/riscv/include/asm/smp.h