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/
Home Products Support Community News


[Xen-devel] [PATCH 1 of 5] xentrace: fix t_info_pages calculation for th

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH 1 of 5] xentrace: fix t_info_pages calculation for the default case
From: Olaf Hering <olaf@xxxxxxxxx>
Date: Tue, 22 Mar 2011 20:21:29 +0100
Cc: George Dunlap <george.dunlap@xxxxxxxxxx>
Delivery-date: Tue, 22 Mar 2011 12:24:21 -0700
Dkim-signature: v=1; a=rsa-sha1; c=relaxed/relaxed; t=1300821692; l=959; s=domk; d=aepfle.de; h=Cc:To:From:Date:References:In-Reply-To:Subject: Content-Transfer-Encoding:MIME-Version:Content-Type:X-RZG-CLASS-ID: X-RZG-AUTH; bh=ZhuO1TysebxpNcjuymThjAoGzXs=; b=wYCBsRRPOVtOmW8c0oj7io9Al1PzSgLkCIYDIq0uziYhlAQMTFhJW6zIXWHugnJ2b46 Dnal/I1Lqr2VRZUNrsZJhXfdIjAz6qJ6pbGOAi+raJyvbcCxwJh6gO6hi7NrJYD1dAVPU 6WS7s3HOFeIyV+wPSSpfYglhgfhcm729fdQ=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <patchbomb.1300821688@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.1300821688@localhost>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mercurial-patchbomb/1.8
# HG changeset patch
# User Olaf Hering <olaf@xxxxxxxxx>
# Date 1300813685 -3600
# Node ID 08df96398bff82a8924a37eda6ddffd1ada3f407
# Parent  c81f0ef5a77d90fbf108d3efe489d08df45b63c2
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 c81f0ef5a77d -r 08df96398bff xen/common/trace.c
--- a/xen/common/trace.c        Mon Mar 21 14:52:27 2011 +0000
+++ b/xen/common/trace.c        Tue Mar 22 18:08:05 2011 +0100
@@ -125,7 +125,7 @@
     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 )
+    if ( t_info_pages % PAGE_SIZE || t_info_pages == 0 )
     return pages;

Xen-devel mailing list