Statistics
| Branch: | Revision:

root / xen-mapcache.h @ a74cdab4

History | View | Annotate | Download (978 Bytes)

1
/*
2
 * Copyright (C) 2011       Citrix Ltd.
3
 *
4
 * This work is licensed under the terms of the GNU GPL, version 2.  See
5
 * the COPYING file in the top-level directory.
6
 *
7
 */
8

    
9
#ifndef XEN_MAPCACHE_H
10
#define XEN_MAPCACHE_H
11

    
12
#include <sys/mman.h>
13
#include "trace.h"
14

    
15
void     qemu_map_cache_init(void);
16
uint8_t  *qemu_map_cache(target_phys_addr_t phys_addr, target_phys_addr_t size, uint8_t lock);
17
void     qemu_map_cache_unlock(void *phys_addr);
18
ram_addr_t qemu_ram_addr_from_mapcache(void *ptr);
19
void     qemu_invalidate_entry(uint8_t *buffer);
20
void     qemu_invalidate_map_cache(void);
21

    
22
uint8_t *xen_map_block(target_phys_addr_t phys_addr, target_phys_addr_t size);
23

    
24
static inline void xen_unmap_block(void *addr, ram_addr_t size)
25
{
26
    trace_xen_unmap_block(addr, size);
27

    
28
    if (munmap(addr, size) != 0) {
29
        hw_error("xen_unmap_block: %s", strerror(errno));
30
    }
31
}
32

    
33

    
34
#define mapcache_lock()   ((void)0)
35
#define mapcache_unlock() ((void)0)
36

    
37
#endif /* !XEN_MAPCACHE_H */