Message ID | e803ff406f9f597bd42242010a219148d387bba6.1694702259.git.oleksii.kurochko@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Introduce stub headers necessary for full Xen build | expand |
On 14.09.2023 16:56, Oleksii Kurochko wrote: > The patch introduces header stub necessry for full Xen build. > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> Assuming you expect RISC-V to get away without its own smp.h, just one remark: > --- /dev/null > +++ b/xen/include/asm-generic/smp.h > @@ -0,0 +1,30 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +#ifndef __ASM_GENERIC_SMP_H > +#define __ASM_GENERIC_SMP_H > + > +#ifndef __ASSEMBLY__ > +#include <xen/cpumask.h> > +#include <xen/percpu.h> > +#endif This #endif need moving ... > +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); > +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); ... at least down here, if #includ-ing by assembly files is really necessary to permit. Preferably the #ifndef would be dropped, though. Jan
On Thu, 2023-10-19 at 12:58 +0200, Jan Beulich wrote: > On 14.09.2023 16:56, Oleksii Kurochko wrote: > > The patch introduces header stub necessry for full Xen build. > > > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> > > Assuming you expect RISC-V to get away without its own smp.h, just > one remark: Not really, I've introduced only things necessary for Xen's full build. It looks like we have a situation as with device.h header ( in this patch series) . Probably smp.h header should be only in an arch- specific folder. I'll apply to smp.h the same solution as for device.h when we get to the same page on it. Except what I introduced in this patch other functions and macros will be in smp.h. Such as: raw_smp_processor_id smp_processor_id extern void smp_clear_cpu_maps (void); extern void smp_init_cpus(void); extern unsigned int smp_get_max_cpus(void); void smp_setup_processor_id(unsigned long boot_cpu_id); /* * Mapping between linux logical cpu index and hartid. */ extern unsigned long __cpuid_to_hartid_map[NR_CPUS]; #define cpuid_to_hartid_map(cpu) __cpuid_to_hartid_map[cpu] #define cpu_physical_id(cpu) cpuid_to_hartid_map(cpu) Mostly all of the header can be generic but again all the mentioned above functions are used only for RISC-V and ARM. ( probably I missed something ). > > > --- /dev/null > > +++ b/xen/include/asm-generic/smp.h > > @@ -0,0 +1,30 @@ > > +/* SPDX-License-Identifier: GPL-2.0-only */ > > +#ifndef __ASM_GENERIC_SMP_H > > +#define __ASM_GENERIC_SMP_H > > + > > +#ifndef __ASSEMBLY__ > > +#include <xen/cpumask.h> > > +#include <xen/percpu.h> > > +#endif > > This #endif need moving ... > > > +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); > > +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); > > ... at least down here, if #includ-ing by assembly files is really > necessary to permit. Preferably the #ifndef would be dropped, though. > > Jan ~ Oleksii
diff --git a/xen/include/asm-generic/smp.h b/xen/include/asm-generic/smp.h new file mode 100644 index 0000000000..5d6b7185f1 --- /dev/null +++ b/xen/include/asm-generic/smp.h @@ -0,0 +1,30 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef __ASM_GENERIC_SMP_H +#define __ASM_GENERIC_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 + +#endif + +/* + * Local variables: + * mode: C + * c-file-style: BSD + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */
The patch introduces header stub necessry for full Xen build. Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> --- xen/include/asm-generic/smp.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 xen/include/asm-generic/smp.h