WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH 1 of 5] xentrace: fix t_info_pages calculation fo

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH 1 of 5] xentrace: fix t_info_pages calculation for the default case
From: Christoph Egger <Christoph.Egger@xxxxxxx>
Date: Thu, 24 Mar 2011 13:09:34 +0100
Delivery-date: Thu, 24 Mar 2011 05:23:25 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <14ac28e4656d0c235c5e.1300902862@localhost>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <patchbomb.1300902861@localhost> <14ac28e4656d0c235c5e.1300902862@localhost>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; NetBSD amd64; en-US; rv:1.9.2.13) Gecko/20110202 Lightning/1.0b3pre Thunderbird/3.1.7

This patch does not compile for me. There's no <xen/pfn.h>.

Christoph


On 03/23/11 18:54, Olaf Hering wrote:
# HG changeset patch
# User Olaf Hering<olaf@xxxxxxxxx>
# Date 1300900084 -3600
# Node ID 14ac28e4656d0c235c5edf119426b1bcf3bf33d4
# Parent  8e1c737b2c44249dd1c0e4e1b8978d5d35020226
xentrace: fix t_info_pages calculation for the default case

The default tracebuffer size of 32 pages was not tested with the previous patch.
As a result, t_info_pages will become zero and alloc_xenheap_pages() fails.
Catch this case and allocate at least one page.

Signed-off-by: Olaf Hering<olaf@xxxxxxxxx>

diff -r 8e1c737b2c44 -r 14ac28e4656d xen/common/trace.c
--- a/xen/common/trace.c        Wed Mar 23 15:24:19 2011 +0000
+++ b/xen/common/trace.c        Wed Mar 23 18:08:04 2011 +0100
@@ -29,6 +29,7 @@
  #include<xen/init.h>
  #include<xen/mm.h>
  #include<xen/percpu.h>
+#include<xen/pfn.h>
  #include<xen/cpu.h>
  #include<asm/atomic.h>
  #include<public/sysctl.h>
@@ -109,6 +110,7 @@
  {
      struct t_buf dummy;
      typeof(dummy.prod) size;
+    unsigned int t_info_bytes;

      /* force maximum value for an unsigned type */
      size = -1;
@@ -122,11 +124,9 @@
          pages = size;
      }

-    t_info_pages = num_online_cpus() * pages + t_info_first_offset;
-    t_info_pages *= sizeof(uint32_t);
-    t_info_pages /= PAGE_SIZE;
-    if ( t_info_pages % PAGE_SIZE )
-        t_info_pages++;
+    t_info_bytes = num_online_cpus() * pages + t_info_first_offset;
+    t_info_bytes *= sizeof(uint32_t);
+    t_info_pages = PFN_UP(t_info_bytes);
      return pages;
  }

--
---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Einsteinring 24, 85689 Dornach b. Muenchen
Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>