plain text document attachment (xx-paravirt-bios.patch) Add an interface for paravirt ops and e820. Signed-off-by: Steven Rostedt srostedt@xxxxxxxxxx Signed-off-by: Glauber de Oliveira Costa <gcosta@xxxxxxxxxx> Index: clean-start/arch/x86_64/kernel/e820.c =================================================================== --- clean-start.orig/arch/x86_64/kernel/e820.c +++ clean-start/arch/x86_64/kernel/e820.c @@ -567,7 +567,7 @@ void __init setup_memory_region(void) if (copy_e820_map(E820_MAP, E820_MAP_NR) < 0) early_panic("Cannot find a valid memory map"); printk(KERN_INFO "BIOS-provided physical RAM map:\n"); - e820_print_map("BIOS-e820"); + e820_print_map(MAP_TYPE_STR); } static int __init parse_memopt(char *p) Index: clean-start/include/asm-x86_64/e820.h =================================================================== --- clean-start.orig/include/asm-x86_64/e820.h +++ clean-start/include/asm-x86_64/e820.h @@ -55,7 +55,22 @@ extern void finish_e820_parsing(void); extern struct e820map e820; +#define EBDA_ADDR_POINTER 0x40E +static inline void native_ebda_info(unsigned *addr,unsigned *size) +{ + *addr = *(unsigned short *)EBDA_ADDR_POINTER; + *addr <<= 4; + *size = *(unsigned short *)(unsigned long)*addr; +} + extern unsigned ebda_addr, ebda_size; +#ifdef CONFIG_PARAVIRT +#include <asm/paravirt.h> +#else +#define ebda_info native_ebda_info +#define MAP_TYPE_STR "BIOS-e820" +#endif + #endif/*!__ASSEMBLY__*/ #endif/*__E820_HEADER*/ -- _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxx https://lists.osdl.org/mailman/listinfo/virtualization