# HG changeset patch # User Keir Fraser # Date 1277738876 -3600 # Node ID 7e46fdbe8a1187cee2ab609256300d7967f37f06 # Parent bf64e1081333696c68c9430cbc32c8bd6ee18796 xentrace: restrict trace buffer MFNs Since they're being passed to Dom0 using an array of uint32_t, they must be representable as 32-bit quantities, and hence the buffer allocation must specify an upper address boundary. Signed-off-by: Jan Beulich Acked-by: George Dunlap --- a/xen/common/trace.c +++ b/xen/common/trace.c @@ -152,7 +152,8 @@ static int alloc_trace_bufs(void) char *rawbuf; struct t_buf *buf; - if ( (rawbuf = alloc_xenheap_pages(order, 0)) == NULL ) + if ( (rawbuf = alloc_xenheap_pages( + order, MEMF_bits(32 + PAGE_SHIFT))) == NULL ) { printk("Xen trace buffers: memory allocation failed\n"); opt_tbuf_size = 0;