$NetBSD: patch-ak,v 1.1 2004/05/08 18:24:00 cl Exp $ --- xc/lib/xc_private.c.orig 2004-04-18 04:29:09.000000000 +0200 +++ xc/lib/xc_private.c @@ -8,7 +8,7 @@ int init_pfn_mapper(void) { - return open("/dev/mem", O_RDWR); + return open("/kern/xen/machmem", O_RDWR); } int close_pfn_mapper(int pm_handle) @@ -25,6 +25,15 @@ void *map_pfn(int pm_handle, unsigned lo return vaddr; } +void *map_pfn_ro(int pm_handle, unsigned long pfn) +{ + void *vaddr = mmap(NULL, PAGE_SIZE, PROT_READ, + MAP_SHARED, pm_handle, pfn << PAGE_SHIFT); + if ( vaddr == MAP_FAILED ) + return NULL; + return vaddr; +} + void unmap_pfn(int pm_handle, void *vaddr) { (void)munmap(vaddr, PAGE_SIZE);