Index: sys/dev/xen/console/xen_console.c =================================================================== --- sys/dev/xen/console/xen_console.c +++ sys/dev/xen/console/xen_console.c @@ -273,7 +273,7 @@ xencons_early_init_ring(struct xencons_priv *cons) { cons->intf = pmap_mapdev_attr(ptoa(xen_get_console_mfn()), PAGE_SIZE, - VM_MEMATTR_WRITE_BACK); + VM_MEMATTR_XEN_SHARED); cons->evtchn = xen_get_console_evtchn(); } Index: sys/dev/xen/xenstore/xenstore.c =================================================================== --- sys/dev/xen/xenstore/xenstore.c +++ sys/dev/xen/xenstore/xenstore.c @@ -1130,7 +1130,7 @@ } else { xs.gpfn = xen_get_xenstore_mfn(); xen_store = pmap_mapdev_attr(ptoa(xs.gpfn), PAGE_SIZE, - PAT_WRITE_BACK); + VM_MEMATTR_XEN_SHARED); xs.initialized = true; } Index: sys/x86/include/xen/xen-os.h =================================================================== --- sys/x86/include/xen/xen-os.h +++ sys/x86/include/xen/xen-os.h @@ -30,6 +30,9 @@ #ifndef _MACHINE_X86_XEN_XEN_OS_H_ #define _MACHINE_X86_XEN_XEN_OS_H_ +/* x86 is lucky and can simply use the default */ +#define VM_MEMATTR_XEN_SHARED VM_MEMATTR_DEFAULT + /* Everything below this point is not included by assembler (.S) files. */ #ifndef __ASSEMBLY__