Bug 455434 - x86: fix PAE pmd_bad bootup warning
x86: fix PAE pmd_bad bootup warning
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel (Show other bugs)
All Linux
low Severity low
: rc
: ---
Assigned To: Larry Woodman
Martin Jenner
Depends On:
Blocks: 455409
  Show dependency treegraph
Reported: 2008-07-15 10:18 EDT by Prarit Bhargava
Modified: 2009-01-20 15:24 EST (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-01-20 15:24:49 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Upstream fix for this issue (7.50 KB, patch)
2008-07-15 10:18 EDT, Prarit Bhargava
no flags Details | Diff
Patch that is needed for RHEL5-U3. (606 bytes, patch)
2008-07-22 10:28 EDT, Larry Woodman
no flags Details | Diff

  None (edit)
Description Prarit Bhargava 2008-07-15 10:18:08 EDT

Commit:     aeed5fce37196e09b4dac3a1c00d8b7122e040ce
Parent:     bb78be8397d3b0900af3d717672218ee3ea07985
Author:     Hugh Dickins <hugh@veritas.com>
AuthorDate: Tue May 6 20:49:23 2008 +0100
Committer:  Linus Torvalds <torvalds@linux-foundation.org>
CommitDate: Tue May 6 13:08:58 2008 -0700

    x86: fix PAE pmd_bad bootup warning
    Fix warning from pmd_bad() at bootup on a HIGHMEM64G HIGHPTE x86_32.
    That came from 9fc34113f6880b215cbea4e7017fc818700384c2 x86: debug pmd_bad();
    but we understand now that the typecasting was wrong for PAE in the previous
    version: pagetable pages above 4GB looked bad and stopped Arjan from booting.
    And revert that cded932b75ab0a5f9181ee3da34a0a488d1a14fd x86: fix pmd_bad
    and pud_bad to support huge pages.  It was the wrong way round: we shouldn't
    weaken every pmd_bad and pud_bad check to let huge pages slip through - in
    part they check that we _don't_ have a huge page where it's not expected.
    Put the x86 pmd_bad() and pud_bad() definitions back to what they have long
    been: they can be improved (x86_32 should use PTE_MASK, to stop PAE thinking
    junk in the upper word is good; and x86_64 should follow x86_32's stricter
    comparison, to stop thinking any subset of required bits is good); but that
    should be a later patch.
    Fix Hans' good observation that follow_page() will never find pmd_huge()
    because that would have already failed the pmd_bad test: test pmd_huge in
    between the pmd_none and pmd_bad tests.  Tighten x86's pmd_huge() check?
    No, once it's a hugepage entry, it can get quite far from a good pmd: for
    example, PROT_NONE leaves it with only ACCESSED of the KERN_PGTABLE bits.
    However... though follow_page() contains this and another test for huge
    pages, so it's nice to keep it working on them, where does it actually get
    called on a huge page?  get_user_pages() checks is_vm_hugetlb_page(vma) to
    to call alternative hugetlb processing, as does unmap_vmas() and others.
    Signed-off-by: Hugh Dickins <hugh@veritas.com>
    Earlier-version-tested-by: Ingo Molnar <mingo@elte.hu>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Jeff Chua <jeff.chua.linux@gmail.com>
    Cc: Hans Rosenfeld <hans.rosenfeld@amd.com>
    Cc: Arjan van de Ven <arjan@linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Comment 1 Prarit Bhargava 2008-07-15 10:18:08 EDT
Created attachment 311837 [details]
Upstream fix for this issue
Comment 3 Larry Woodman 2008-07-22 10:28:14 EDT
Created attachment 312348 [details]
Patch that is needed for RHEL5-U3.
Comment 4 Linda Wang 2008-07-31 14:37:07 EDT
Raise as an exception:

part of PAE support fix that went upstream in 2.6.25. 
Need to backport it into 5.3.
Comment 5 RHEL Product and Program Management 2008-07-31 14:43:55 EDT
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
Comment 6 Don Zickus 2008-08-06 13:57:09 EDT
in kernel-2.6.18-102.el5
You can download this test kernel from http://people.redhat.com/dzickus/el5
Comment 10 errata-xmlrpc 2009-01-20 15:24:49 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 therefore 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.