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-changelog

[Xen-changelog] [xen-unstable] x86, microcode: Free microcode_info struc

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86, microcode: Free microcode_info struct at end of hypercall.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 17 Sep 2008 09:50:13 -0700
Delivery-date: Wed, 17 Sep 2008 09:51:24 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1221569356 -3600
# Node ID f163138e33402ca565d9886df8ecb21e98f77be6
# Parent  879330497672d96ee966c9774d21c437895f6839
x86, microcode: Free microcode_info struct at end of hypercall.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/x86/microcode.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff -r 879330497672 -r f163138e3340 xen/arch/x86/microcode.c
--- a/xen/arch/x86/microcode.c  Tue Sep 16 13:40:59 2008 +0100
+++ b/xen/arch/x86/microcode.c  Tue Sep 16 13:49:16 2008 +0100
@@ -147,10 +147,13 @@ static long do_microcode_update(void *_i
         info->error = error;
 
     info->cpu = next_cpu(info->cpu, cpu_online_map);
-    if ( info->cpu >= NR_CPUS )
-        return info->error;
+    if ( info->cpu < NR_CPUS )
+        return continue_hypercall_on_cpu(info->cpu, do_microcode_update, info);
 
-    return continue_hypercall_on_cpu(info->cpu, do_microcode_update, info);
+    error = info->error;
+    xfree(info);
+    return error;
+
 }
 
 int microcode_update(XEN_GUEST_HANDLE(const_void) buf, unsigned long len)

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] x86, microcode: Free microcode_info struct at end of hypercall., Xen patchbot-unstable <=