From mboxrd@z Thu Jan 1 00:00:00 1970 From: Olaf Hering Subject: [PATCH 1 of 5] Move the global variable t_info_first_offset into calculate_tbuf_size() Date: Fri, 06 May 2011 20:25:32 +0200 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: George Dunlap List-Id: xen-devel@lists.xenproject.org # HG changeset patch # User Olaf Hering # Date 1304697395 -7200 # Node ID a19b5f66ce46efd6f8f697583f9bdbc2b567fdbd # Parent 39f2942fe56bda90d3285b9f2d4e214f0712375f Move the global variable t_info_first_offset into calculate_tbuf_size() because it is only used there. Change the type from u32 to uint32_t to match type in other places. Signed-off-by: Olaf Hering diff -r 39f2942fe56b -r a19b5f66ce46 xen/common/trace.c --- a/xen/common/trace.c Wed May 04 14:46:32 2011 +0100 +++ b/xen/common/trace.c Fri May 06 17:56:35 2011 +0200 @@ -55,7 +55,6 @@ static DEFINE_PER_CPU_READ_MOSTLY(struct static DEFINE_PER_CPU_READ_MOSTLY(unsigned char *, t_data); static DEFINE_PER_CPU_READ_MOSTLY(spinlock_t, t_lock); static u32 data_size; -static u32 t_info_first_offset __read_mostly; /* High water mark for trace buffers; */ /* Send virtual interrupt when buffer level reaches this point */ @@ -94,10 +93,10 @@ static struct notifier_block cpu_nfb = { .notifier_call = cpu_callback }; -static void calc_tinfo_first_offset(void) +static uint32_t calc_tinfo_first_offset(void) { int offset_in_bytes = offsetof(struct t_info, mfn_offset[NR_CPUS]); - t_info_first_offset = fit_to_type(uint32_t, offset_in_bytes); + return fit_to_type(uint32_t, offset_in_bytes); } /** @@ -107,7 +106,7 @@ static void calc_tinfo_first_offset(void * The t_info layout is fixed and cant be changed without breaking xentrace. * Initialize t_info_pages based on number of trace pages. */ -static int calculate_tbuf_size(unsigned int pages) +static int calculate_tbuf_size(unsigned int pages, uint32_t t_info_first_offset) { struct t_buf dummy_size; typeof(dummy_size.prod) max_size; @@ -156,6 +155,7 @@ static int alloc_trace_bufs(unsigned int int i, cpu, order; /* Start after a fixed-size array of NR_CPUS */ uint32_t *t_info_mfn_list; + uint32_t t_info_first_offset; int offset; if ( t_info ) @@ -165,9 +165,9 @@ static int alloc_trace_bufs(unsigned int return -EINVAL; /* Calculate offset in u32 of first mfn */ - calc_tinfo_first_offset(); + t_info_first_offset = calc_tinfo_first_offset(); - pages = calculate_tbuf_size(pages); + pages = calculate_tbuf_size(pages, t_info_first_offset); order = get_order_from_pages(pages); t_info = alloc_xenheap_pages(get_order_from_pages(t_info_pages), 0);