From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH] small adjustment to asm constraints for c/s 19400 Date: Fri, 27 Mar 2009 16:35:50 +0000 Message-ID: <49CD0E76.76E4.0078.0@novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Return-path: Content-Disposition: inline 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 List-Id: xen-devel@lists.xenproject.org Properly indicate the variable that the asm writes to, and allow compiler more freedom in selecting a suitable input operand for the ltr instruction. Signed-off-by: Jan Beulich --- 2009-03-27.orig/xen/arch/x86/traps.c 2009-03-24 09:04:02.0000000= 00 +0100 +++ 2009-03-27/xen/arch/x86/traps.c 2009-03-27 10:10:57.000000000 = +0100 @@ -3048,8 +3048,8 @@ void load_TR(void) =20 /* Switch to non-compat GDT (which has B bit clear) to execute LTR. = */ asm volatile ( - "sgdt %1; lgdt %2; ltr %%ax; lgdt %1" - : : "a" (TSS_ENTRY << 3), "m" (old_gdt), "m" (tss_gdt) : "memory" = ); + "sgdt %0; lgdt %2; ltr %w1; lgdt %0" + : "=3Dm" (old_gdt) : "rm" (TSS_ENTRY << 3), "m" (tss_gdt) : = "memory" ); } =20 void __devinit percpu_traps_init(void)