#include <xen/errno.h>
#include <acpi/actables.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/device_tree.h>
#include <asm/acpi.h>
#include <xen/cpumask.h>
#include <xen/init.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/sizes.h>
#include <xen/smp.h>
#include <xen/spinlock.h>
#include <xen/compile.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/domain_page.h>
#include <xen/sched.h>
#include <xen/sizes.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/sizes.h>
#include <xen/warning.h>
#include <xen/init.h>
#include <xen/irq.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/softirq.h>
#include <xen/keyhandler.h>
#include <xen/cpu.h>
#include <xen/errno.h>
#include <xen/init.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/smp.h>
#include <xen/softirq.h>
#include <xen/livepatch.h>
#include <xen/mem_access.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/perfc.h>
#include <xen/smp.h>
#include <xen/softirq.h>
#include <xen/acpi.h>
#include <xen/irq.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/dmi.h>
#include <asm/fixmap.h>
#include <asm/page.h>
#include <xen/smp.h>
#include <xen/guest_access.h>
#include <xen/keyhandler.h>
+#include <xen/param.h>
#include <xen/trace.h>
#include <xen/irq.h>
#include <asm/cache.h>
#include <xen/errno.h>
#include <xen/delay.h>
#include <xen/cpumask.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/timer.h>
#include <xen/xmalloc.h>
#include <xen/acpi.h>
#include <xen/errno.h>
#include <xen/iocap.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <asm/acpi.h>
#include <asm/irq.h>
#include <xen/errno.h>
#include <xen/init.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/irq.h>
#include <xen/delay.h>
#include <xen/init.h>
#include <xen/bitops.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <xen/pci.h>
#include <asm/io.h>
#include <xen/init.h>
#include <xen/string.h>
#include <xen/delay.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <asm/current.h>
#include <asm/debugreg.h>
#include <xen/init.h>
#include <xen/types.h>
#include <xen/kernel.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <xen/errno.h>
#include <xen/console.h>
#include <xen/event.h>
#include <xen/kernel.h>
#include <xen/delay.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <xen/mm.h>
#include <xen/cpu.h>
#include <xen/lib.h>
#include <xen/init.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/stdbool.h>
#include <asm/flushtlb.h>
#include <asm/invpcid.h>
#include <xen/lib.h>
#include <xen/cpu.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <xen/softirq.h>
#include <xen/trace.h>
#include <asm/cpuidle.h>
#include <xen/event.h>
#include <xen/guest_access.h>
#include <xen/cpu.h>
+#include <xen/param.h>
#include <asm/regs.h>
#include <asm/types.h>
#include <asm/msr.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/nospec.h>
#include <asm/cpuid.h>
#include <xen/init.h>
#include <xen/iocap.h>
#include <xen/libelf.h>
+#include <xen/param.h>
#include <xen/pfn.h>
#include <xen/sched.h>
#include <xen/softirq.h>
#include <xen/init.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/compat.h>
#include <xen/dmi.h>
#include <xen/pfn.h>
#include <xen/kernel.h>
#include <xen/ctype.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <asm/cache.h>
#include <asm/fixmap.h>
#include <asm/mpspec.h>
#include <xen/init.h>
#include <xen/cpu.h>
#include <xen/cpumask.h>
+#include <xen/param.h>
#include <asm/apicdef.h>
#include <asm/genapic.h>
#include <asm/apic.h>
#include <xen/softirq.h>
#include <xen/irq.h>
#include <xen/numa.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <asm/fixmap.h>
#include <asm/div64.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/smp.h>
#include <xen/percpu.h>
#include <xen/mem_access.h>
#include <xen/rangeset.h>
#include <xen/monitor.h>
+#include <xen/param.h>
#include <xen/warning.h>
#include <xen/vpci.h>
#include <xen/nospec.h>
#include <xen/lib.h>
#include <xen/dmi.h>
#include <xen/bitmap.h>
+#include <xen/param.h>
#include <asm/hvm/support.h>
s8 __read_mostly hvm_port80_allowed = -1;
#include <xen/version.h>
#include <xen/hypercall.h>
#include <xen/domain_page.h>
+#include <xen/param.h>
#include <asm/guest_access.h>
#include <asm/guest/hyperv-tlfs.h>
#include <asm/paging.h>
#include <xen/init.h>
#include <xen/mm.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/errno.h>
#include <xen/domain_page.h>
#include <xen/event.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/trace.h>
#include <xen/sched.h>
#include <xen/irq.h>
#include <xen/init.h>
#include <xen/irq.h>
#include <xen/delay.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/acpi.h>
#include <xen/keyhandler.h>
#include <xen/errno.h>
#include <xen/event.h>
#include <xen/irq.h>
+#include <xen/param.h>
#include <xen/perfc.h>
#include <xen/sched.h>
#include <xen/keyhandler.h>
#include <xen/kernel.h>
#include <xen/init.h>
#include <xen/notifier.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/smp.h>
#include <xen/softirq.h>
#include <xen/kernel.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/domain.h>
#include <xen/sched.h>
#include <xen/err.h>
#include <xen/mem_access.h>
#include <xen/vm_event.h>
#include <xen/event.h>
+#include <xen/param.h>
#include <public/vm_event.h>
#include <asm/domain.h>
#include <asm/page.h>
#include <xen/acpi.h>
#include <xen/cpu.h>
#include <xen/errno.h>
+#include <xen/param.h>
#include <xen/pci.h>
#include <xen/pci_regs.h>
#include <xen/iocap.h>
#include <xen/init.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/irq.h>
#include <xen/delay.h>
#include <xen/time.h>
#include <xen/nodemask.h>
#include <xen/numa.h>
#include <xen/keyhandler.h>
+#include <xen/param.h>
#include <xen/time.h>
#include <xen/smp.h>
#include <xen/pfn.h>
#include <xen/types.h>
#include <xen/errno.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <xen/string.h>
#include <xen/delay.h>
#include <xen/xenoprof.h>
#include <xen/cpu.h>
#include <xen/err.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <asm/psr.h>
#include <xen/domain_page.h>
#include <xen/errno.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <asm/cpufeature.h>
#include <xen/hypercall.h>
#include <xen/init.h>
#include <xen/iocap.h>
+#include <xen/param.h>
#include <xen/shutdown.h>
#include <xen/types.h>
#include <xen/consoled.h>
#include <xen/lib.h>
#include <xen/err.h>
#include <xen/grant_table.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain.h>
#include <xen/serial.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/smp.h>
#include <xen/delay.h>
#include <xen/errno.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/warning.h>
#include <asm/microcode.h>
#include <xen/init.h>
#include <xen/types.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain_page.h>
#include <xen/iommu.h>
#include <xen/sched.h>
#include <xen/lib.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <xen/time.h>
#include <xen/timer.h>
#include <xen/smp.h>
#include <xen/err.h>
#include <xen/errno.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/console.h>
#include <xen/shutdown.h>
#include <xen/guest_access.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <asm/msr.h>
/*
#include <xen/init.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/acpi.h>
#include <xen/xmalloc.h>
#include <xen/pci.h>
*
*/
+#include <xen/param.h>
#include <xen/percpu.h>
#include <xen/sched.h>
#include <asm/current.h>
#include <xen/guest_access.h>
#include <xen/lib.h>
#include <xen/nospec.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/time.h>
#include <xsm/xsm.h>
#include <xen/cpu.h>
#include <xen/init.h>
#include <xen/cpumask.h>
+#include <xen/param.h>
#include <asm/smp.h>
#include <xen/keyhandler.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/percpu.h>
#include <xen/serial.h>
#include <xen/smp.h>
#include <xen/lib.h>
#include <xen/ctype.h>
#include <xen/err.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain.h>
#include <xen/mm.h>
#include <xen/lib.h>
#include <xen/mm.h>
#include <xen/multiboot.h>
+#include <xen/param.h>
#include <xen/pci_regs.h>
#include <xen/pfn.h>
#if EFI_PAGE_SIZE != PAGE_SIZE
#include <xen/watchdog.h>
#include <asm/debugger.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <xen/console.h>
#include <xen/errno.h>
#include <xen/lib.h>
#include <xen/sched.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/event.h>
#include <xen/trace.h>
#include <xen/grant_table.h>
#include <xen/init.h>
#include <xen/lib.h>
#include <xen/errno.h>
+#include <xen/param.h>
#include <xen/version.h>
#include <xen/sched.h>
#include <xen/paging.h>
#include <xen/ctype.h>
#include <xen/errno.h>
#include <xen/guest_access.h>
+#include <xen/param.h>
#include <xen/watchdog.h>
#include <xen/sched.h>
#include <xen/types.h>
#include <xen/types.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/perfc.h>
#include <xen/sched.h>
#include <xen/event.h>
#include <xen/sched.h>
#include <xen/spinlock.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/irq.h>
#include <xen/softirq.h>
#include <xen/domain_page.h>
#include <xen/types.h>
#include <xen/kernel.h>
#include <xen/init.h>
+#include <xen/param.h>
#include <xen/spinlock.h>
#include <xen/smp.h>
#include <xen/rcupdate.h>
#ifndef COMPAT
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain.h>
#include <xen/delay.h>
#include <xen/lib.h>
#include <xen/init.h>
#include <xen/cpumask.h>
+#include <xen/param.h>
#include <xen/percpu.h>
#include <xen/sched.h>
#include <xen/warning.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain.h>
#include <xen/delay.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain.h>
#include <xen/delay.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/domain.h>
#include <xen/delay.h>
#include <xen/errno.h>
#include <xen/sched.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <xen/perfc.h>
#include <xen/time.h>
#include <asm/types.h>
#include <asm/io.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/smp.h>
#include <xen/trace.h>
#include <xen/init.h>
#include <xen/kernel.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/pfn.h>
#include <acpi/acpi.h>
#include <acpi/apei.h>
#include <xen/init.h>
#include <xen/kernel.h>
+#include <xen/param.h>
#include <xen/smp.h>
#include <xen/string.h>
#include <xen/types.h>
#include <asm/types.h>
#include <xen/console.h>
#include <xen/device_tree.h>
+#include <xen/param.h>
#include <xen/serial.h>
#include <xen/errno.h>
#include <xen/acpi.h>
#include <xen/init.h>
#include <xen/event.h>
#include <xen/console.h>
+#include <xen/param.h>
#include <xen/serial.h>
#include <xen/softirq.h>
#include <xen/keyhandler.h>
#include <xen/console.h>
#include <xen/delay.h>
#include <xen/errno.h>
+#include <xen/param.h>
#include <xen/pci.h>
#include <xen/serial.h>
#include <asm/byteorder.h>
#include <xen/console.h>
#include <xen/init.h>
#include <xen/irq.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/timer.h>
#include <xen/serial.h>
#include <xen/delay.h>
#include <xen/init.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/serial.h>
#include <xen/cache.h>
#include <xen/delay.h>
#include <xen/cpumask.h>
#include <xen/list.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/string.h>
#include <xen/timer.h>
#include <xen/errno.h>
#include <xen/acpi.h>
+#include <xen/param.h>
#include <asm/apicdef.h>
#include <asm/io_apic.h>
#include <asm/amd-iommu.h>
#include <xen/paging.h>
#include <xen/guest_access.h>
#include <xen/event.h>
+#include <xen/param.h>
#include <xen/softirq.h>
#include <xen/keyhandler.h>
#include <xsm/xsm.h>
#include <xen/prefetch.h>
#include <xen/iommu.h>
#include <xen/irq.h>
+#include <xen/param.h>
#include <xen/vm_event.h>
#include <asm/hvm/irq.h>
#include <xen/delay.h>
#include <xen/kernel.h>
#include <xen/acpi.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/xmalloc.h>
#include <xen/pci.h>
#include <xen/pci_regs.h>
*/
#include <xen/irq.h>
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/xmalloc.h>
#include <xen/domain_page.h>
* Copyright (C) Weidong Han <weidong.han@intel.com>
*/
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/softirq.h>
#include <xen/domain_page.h>
* this program; If not, see <http://www.gnu.org/licenses/>.
*/
+#include <xen/param.h>
#include <xen/sched.h>
#include <xen/pci.h>
#include <xen/pci_regs.h>
#include <xen/init.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/xmalloc.h>
#include <xen/kernel.h>
#include <xen/vga.h>
#include <xen/init.h>
#include <xen/lib.h>
#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/vga.h>
#include <xen/pci.h>
#include <asm/io.h>
void do_presmp_initcalls(void);
void do_initcalls(void);
-/*
- * Used for kernel command line parameter setup
- */
-struct kernel_param {
- const char *name;
- enum {
- OPT_STR,
- OPT_UINT,
- OPT_BOOL,
- OPT_SIZE,
- OPT_CUSTOM,
- OPT_IGNORE,
- } type;
- unsigned int len;
- union {
- void *var;
- int (*func)(const char *);
- } par;
-};
-
-extern const struct kernel_param __setup_start[], __setup_end[];
-extern const struct kernel_param __param_start[], __param_end[];
-
-#define __dataparam __used_section(".data.param")
-
-#define __param(att) static const att \
- __attribute__((__aligned__(sizeof(void *)))) struct kernel_param
-
-#define __setup_str static const __initconst \
- __attribute__((__aligned__(1))) char
-#define __kparam __param(__initsetup)
-
-#define custom_param(_name, _var) \
- __setup_str __setup_str_##_var[] = _name; \
- __kparam __setup_##_var = \
- { .name = __setup_str_##_var, \
- .type = OPT_CUSTOM, \
- .par.func = _var }
-#define boolean_param(_name, _var) \
- __setup_str __setup_str_##_var[] = _name; \
- __kparam __setup_##_var = \
- { .name = __setup_str_##_var, \
- .type = OPT_BOOL, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define integer_param(_name, _var) \
- __setup_str __setup_str_##_var[] = _name; \
- __kparam __setup_##_var = \
- { .name = __setup_str_##_var, \
- .type = OPT_UINT, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define size_param(_name, _var) \
- __setup_str __setup_str_##_var[] = _name; \
- __kparam __setup_##_var = \
- { .name = __setup_str_##_var, \
- .type = OPT_SIZE, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define string_param(_name, _var) \
- __setup_str __setup_str_##_var[] = _name; \
- __kparam __setup_##_var = \
- { .name = __setup_str_##_var, \
- .type = OPT_STR, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define ignore_param(_name) \
- __setup_str setup_str_ign[] = _name; \
- __kparam setup_ign = \
- { .name = setup_str_ign, \
- .type = OPT_IGNORE }
-
-#define __rtparam __param(__dataparam)
-
-#define custom_runtime_only_param(_name, _var) \
- __rtparam __rtpar_##_var = \
- { .name = _name, \
- .type = OPT_CUSTOM, \
- .par.func = _var }
-#define boolean_runtime_only_param(_name, _var) \
- __rtparam __rtpar_##_var = \
- { .name = _name, \
- .type = OPT_BOOL, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define integer_runtime_only_param(_name, _var) \
- __rtparam __rtpar_##_var = \
- { .name = _name, \
- .type = OPT_UINT, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define size_runtime_only_param(_name, _var) \
- __rtparam __rtpar_##_var = \
- { .name = _name, \
- .type = OPT_SIZE, \
- .len = sizeof(_var), \
- .par.var = &_var }
-#define string_runtime_only_param(_name, _var) \
- __rtparam __rtpar_##_var = \
- { .name = _name, \
- .type = OPT_STR, \
- .len = sizeof(_var), \
- .par.var = &_var }
-
-#define custom_runtime_param(_name, _var) \
- custom_param(_name, _var); \
- custom_runtime_only_param(_name, _var)
-#define boolean_runtime_param(_name, _var) \
- boolean_param(_name, _var); \
- boolean_runtime_only_param(_name, _var)
-#define integer_runtime_param(_name, _var) \
- integer_param(_name, _var); \
- integer_runtime_only_param(_name, _var)
-#define size_runtime_param(_name, _var) \
- size_param(_name, _var); \
- size_runtime_only_param(_name, _var)
-#define string_runtime_param(_name, _var) \
- string_param(_name, _var); \
- string_runtime_only_param(_name, _var)
-
#endif /* __ASSEMBLY__ */
#ifdef CONFIG_LATE_HWDOM
--- /dev/null
+#ifndef _XEN_PARAM_H
+#define _XEN_PARAM_H
+
+#include <xen/init.h>
+
+/*
+ * Used for kernel command line parameter setup
+ */
+struct kernel_param {
+ const char *name;
+ enum {
+ OPT_STR,
+ OPT_UINT,
+ OPT_BOOL,
+ OPT_SIZE,
+ OPT_CUSTOM,
+ OPT_IGNORE,
+ } type;
+ unsigned int len;
+ union {
+ void *var;
+ int (*func)(const char *);
+ } par;
+};
+
+extern const struct kernel_param __setup_start[], __setup_end[];
+extern const struct kernel_param __param_start[], __param_end[];
+
+#define __dataparam __used_section(".data.param")
+
+#define __param(att) static const att \
+ __attribute__((__aligned__(sizeof(void *)))) struct kernel_param
+
+#define __setup_str static const __initconst \
+ __attribute__((__aligned__(1))) char
+#define __kparam __param(__initsetup)
+
+#define custom_param(_name, _var) \
+ __setup_str __setup_str_##_var[] = _name; \
+ __kparam __setup_##_var = \
+ { .name = __setup_str_##_var, \
+ .type = OPT_CUSTOM, \
+ .par.func = _var }
+#define boolean_param(_name, _var) \
+ __setup_str __setup_str_##_var[] = _name; \
+ __kparam __setup_##_var = \
+ { .name = __setup_str_##_var, \
+ .type = OPT_BOOL, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define integer_param(_name, _var) \
+ __setup_str __setup_str_##_var[] = _name; \
+ __kparam __setup_##_var = \
+ { .name = __setup_str_##_var, \
+ .type = OPT_UINT, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define size_param(_name, _var) \
+ __setup_str __setup_str_##_var[] = _name; \
+ __kparam __setup_##_var = \
+ { .name = __setup_str_##_var, \
+ .type = OPT_SIZE, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define string_param(_name, _var) \
+ __setup_str __setup_str_##_var[] = _name; \
+ __kparam __setup_##_var = \
+ { .name = __setup_str_##_var, \
+ .type = OPT_STR, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define ignore_param(_name) \
+ __setup_str setup_str_ign[] = _name; \
+ __kparam setup_ign = \
+ { .name = setup_str_ign, \
+ .type = OPT_IGNORE }
+
+#define __rtparam __param(__dataparam)
+
+#define custom_runtime_only_param(_name, _var) \
+ __rtparam __rtpar_##_var = \
+ { .name = _name, \
+ .type = OPT_CUSTOM, \
+ .par.func = _var }
+#define boolean_runtime_only_param(_name, _var) \
+ __rtparam __rtpar_##_var = \
+ { .name = _name, \
+ .type = OPT_BOOL, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define integer_runtime_only_param(_name, _var) \
+ __rtparam __rtpar_##_var = \
+ { .name = _name, \
+ .type = OPT_UINT, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define size_runtime_only_param(_name, _var) \
+ __rtparam __rtpar_##_var = \
+ { .name = _name, \
+ .type = OPT_SIZE, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+#define string_runtime_only_param(_name, _var) \
+ __rtparam __rtpar_##_var = \
+ { .name = _name, \
+ .type = OPT_STR, \
+ .len = sizeof(_var), \
+ .par.var = &_var }
+
+#define custom_runtime_param(_name, _var) \
+ custom_param(_name, _var); \
+ custom_runtime_only_param(_name, _var)
+#define boolean_runtime_param(_name, _var) \
+ boolean_param(_name, _var); \
+ boolean_runtime_only_param(_name, _var)
+#define integer_runtime_param(_name, _var) \
+ integer_param(_name, _var); \
+ integer_runtime_only_param(_name, _var)
+#define size_runtime_param(_name, _var) \
+ size_param(_name, _var); \
+ size_runtime_only_param(_name, _var)
+#define string_runtime_param(_name, _var) \
+ string_param(_name, _var); \
+ string_runtime_only_param(_name, _var)
+
+#endif /* _XEN_PARAM_H */
#include <xsm/xsm.h>
#include <xen/guest_access.h>
#include <xen/err.h>
+#include <xen/param.h>
#include <public/xsm/flask_op.h>
#include <xen/init.h>
#include <xen/errno.h>
#include <xen/lib.h>
+#include <xen/param.h>
#include <xen/hypercall.h>
#include <xsm/xsm.h>