All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: x86_64 : kernel initial decompression hangs on vmware
@ 2007-10-10  7:37 ` Fengguang Wu
  2007-10-10 13:18   ` Andi Kleen
  0 siblings, 1 reply; 5+ messages in thread
From: Fengguang Wu @ 2007-10-10  7:37 UTC (permalink / raw)
  To: Zachary Amsden; +Cc: Avi Kivity, lkml, Andi Kleen, david-g

Hi Zachary,

One of my friends' vmware "hangs" on booting Linux 2.6.23, and then get
it to work by applying your patch at http://lkml.org/lkml/2007/8/4/72.

It would be nice to see your fix going into mainline :-)

Thank you,
Fengguang
---
PS. the original patch:

VT is very picky about when it can enter execution.
Get all segments setup and get LDT and TR into valid state to allow
VT execution under VMware and KVM (untested).

This makes the boot decompression run under VT, which makes it several
orders of magnitude faster on 64-bit Intel hardware.

Before, I was seeing times up to a minute or more to decompress a 1.3MB kernel
on a very fast box.

Signed-off-by: Zachary Amsden <zach@vmware.com>
===================================================================
--- a/arch/x86_64/boot/compressed/head.S
+++ a/arch/x86_64/boot/compressed/head.S
@@ -195,6 +195,11 @@
 	movl	%eax, %ds
 	movl	%eax, %es
 	movl	%eax, %ss
+	movl	%eax, %fs
+	movl	%eax, %gs
+	lldt	%ax
+	movl    $0x20, %eax
+	ltr	%ax
 
 	/* Compute the decompressed kernel start address.  It is where
 	 * we were loaded at aligned to a 2M boundary. %rbp contains the
@@ -295,6 +300,8 @@
 	.quad	0x0000000000000000	/* NULL descriptor */
 	.quad	0x00af9a000000ffff	/* __KERNEL_CS */
 	.quad	0x00cf92000000ffff	/* __KERNEL_DS */
+	.quad	0x0080890000000000	/* TS descriptor */
+	.quad   0x0000000000000000	/* TS continued */
 gdt_end:
 	.bss
 /* Stack for uncompression */


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2007-10-10 21:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-10  7:37 x86_64 : kernel initial decompression hangs on vmware Fengguang Wu
2007-10-10  7:37 ` Fengguang Wu
2007-10-10 13:18   ` Andi Kleen
2007-10-10 20:32     ` Fengguang Wu
2007-10-10 20:32       ` Fengguang Wu
2007-10-10 19:16 ` Zachary Amsden
2007-10-10 21:15   ` Fengguang Wu
2007-10-10 21:15     ` Fengguang Wu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.