Bug 224671 - x86_64 - Fix FS/GS registers for VT execution
x86_64 - Fix FS/GS registers for VT execution
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel (Show other bugs)
x86_64 Linux
medium Severity high
: ---
: ---
Assigned To: Red Hat Kernel Manager
Martin Jenner
Depends On:
Blocks: 227613
  Show dependency treegraph
Reported: 2007-01-26 17:35 EST by Zachary Amsden
Modified: 2007-11-30 17:07 EST (History)
7 users (show)

See Also:
Fixed In Version: RHBA-2007-0959
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-11-07 14:22:41 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Patch to fix the slow boot (1.62 KB, patch)
2007-01-26 17:37 EST, Zachary Amsden
no flags Details | Diff

  None (edit)
Description Zachary Amsden 2007-01-26 17:35:45 EST
Description of problem:  64-bit kernels boot extremely slowly on Intel VT hardware.

Version-Release number of selected component (if applicable):

How reproducible:  100%

Steps to Reproduce:
1.  Boot using hardware virtualization (Xen / VMware)
2.  Go get coffee.
3.  Kernel booting is extremely slow
Actual results:

Kernel booting is extremely slow.

Expected results:

Kernel booting is extremely fast.

Additional info:

This upstream patch fixes the problem.

Comment 1 Zachary Amsden 2007-01-26 17:37:59 EST
Created attachment 146725 [details]
Patch to fix the slow boot
Comment 3 Zachary Amsden 2007-02-23 16:40:13 EST
Patch has been committed upstream - can it be backported to RHEL5?

commit ffb6017563aa15f9a8cff9a30b861d42c2695894
Author: Zachary Amsden <zach@vmware.com>
Date:   Tue Feb 13 13:26:24 2007 +0100

    [PATCH] x86-64: x86_64 - Fix FS/GS registers for VT execution
    Initialize FS and GS to __KERNEL_DS as well.  The actual value of them is not
    important, but it is important to reload them in protected mode.  At this time,
    they still retain the real mode values from initial boot.  VT disallows
    execution of code under such conditions, which means hardware virtualization
    can not be used to boot the kernel on Intel platforms, making the boot time
    painfully slow.
    This requires moving the GS load before the load of GS_BASE, so just move
    all the segments loads there to keep them together in the code.
    Signed-off-by: Zachary Amsden <zach@vmware.com>
    Signed-off-by: Andi Kleen <ak@suse.de>
Comment 4 Andrius Benokraitis 2007-02-23 16:42:52 EST
Zach, I have added this to the RHEL 5.1 list for prioritization with our Xen team.
Comment 5 RHEL Product and Program Management 2007-06-14 14:26:11 EDT
This request was evaluated by Red Hat Kernel Team for inclusion in a Red
Hat Enterprise Linux maintenance release, and has moved to bugzilla 
status POST.
Comment 6 Don Zickus 2007-06-27 12:00:05 EDT
in 2.6.18-32.el5
You can download this test kernel from http://people.redhat.com/dzickus/el5
Comment 8 Mike Gahagan 2007-09-12 14:59:07 EDT
confirmed the fix is in the -45 kernel.
Comment 10 errata-xmlrpc 2007-11-07 14:22:41 EST
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.


Note You need to log in before you can comment on or make changes to this bug.