ia64/xen-unstable

view xen/include/asm-powerpc/types.h @ 17571:b6aa55ca599e

shadow: track video RAM dirty bits

This adds a new HVM op that enables tracking dirty bits of a range of
video RAM. The idea is to optimize just for the most common case
(only one guest mapping, with sometimes some temporary other
mappings), which permits to keep the overhead on shadow as low as
possible.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Fri May 02 15:08:27 2008 +0100 (2008-05-02)
parents 5a7eebbae5dc
children
line source
1 /* from xen/include/asm-x86/types.h */
3 #ifndef _PPC_TYPES_H
4 #define _PPC_TYPES_H
6 #include <xen/config.h>
8 #if defined(__ppc__)
9 #define BYTES_PER_LONG 4
10 #define BITS_PER_LONG 32
11 #elif defined(__PPC64__)
12 #define BYTES_PER_LONG 8
13 #define BITS_PER_LONG 64
14 #endif
16 #ifndef __ASSEMBLY__
17 typedef unsigned short umode_t;
19 /*
20 * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
21 * header files exported to user space
22 */
24 typedef __signed__ char __s8;
25 typedef unsigned char __u8;
27 typedef __signed__ short __s16;
28 typedef unsigned short __u16;
30 typedef __signed__ int __s32;
31 typedef unsigned int __u32;
33 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
34 #if defined(__ppc__)
35 typedef __signed__ long long __s64;
36 typedef unsigned long long __u64;
38 #elif defined(__PPC64__)
39 typedef __signed__ long __s64;
40 typedef unsigned long __u64;
41 #endif
42 #endif
44 typedef signed char s8;
45 typedef unsigned char u8;
47 typedef signed short s16;
48 typedef unsigned short u16;
50 typedef signed int s32;
51 typedef unsigned int u32;
53 #if defined(__ppc__)
54 typedef signed long long s64;
55 typedef unsigned long long u64;
56 typedef unsigned int size_t;
57 #elif defined(__PPC64__)
58 typedef signed long s64;
59 typedef unsigned long u64;
60 typedef unsigned long size_t;
61 #endif
63 typedef unsigned long paddr_t;
64 #define INVALID_PADDR (~0UL)
65 #define PRIpaddr "08lx"
67 /* DMA addresses come in generic and 64-bit flavours. */
69 typedef unsigned long dma_addr_t;
70 typedef u64 dma64_addr_t;
72 typedef unsigned short xmem_bufctl_t;
74 typedef int bool_t;
75 #define test_and_set_bool(b) xchg(&(b), 1)
76 #define test_and_clear_bool(b) xchg(&(b), 0)
78 #endif /* __ASSEMBLY__ */
79 #endif