Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e85f20518bb928667508c22090c85d458e25a4f7
Commit:     e85f20518bb928667508c22090c85d458e25a4f7
Parent:     5d3c8b21e22712137db6bbd246d1bdcbe0a09914
Author:     Thomas Gleixner <[EMAIL PROTECTED]>
AuthorDate: Tue Feb 12 19:46:48 2008 +0100
Committer:  Ingo Molnar <[EMAIL PROTECTED]>
CommitDate: Wed Feb 13 16:20:35 2008 +0100

    x86: EFI: fix use of unitialized variable and the cache logic
    
    Andi Kleen pointed out that the cache attribute logic is reverse in
    efi_enter_virtual_mode(). This problem alone is harmless as we do not
    (yet) do cache attribute conflict resolution. (This bug was not present
    in the original EFI submission - I introduced it while fixing up rejects.)
    
    While reviewing this code I noticed a second, worse problem: the use of
    uninitialized md->virt_addr.
    
    Fix both problems.
    
    Signed-off-by: Thomas Gleixner <[EMAIL PROTECTED]>
    Signed-off-by: Ingo Molnar <[EMAIL PROTECTED]>
---
 arch/x86/kernel/efi.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/efi.c b/arch/x86/kernel/efi.c
index 32dd62b..b4d5232 100644
--- a/arch/x86/kernel/efi.c
+++ b/arch/x86/kernel/efi.c
@@ -428,9 +428,6 @@ void __init efi_enter_virtual_mode(void)
                else
                        va = efi_ioremap(md->phys_addr, size);
 
-               if (md->attribute & EFI_MEMORY_WB)
-                       set_memory_uc(md->virt_addr, size);
-
                md->virt_addr = (u64) (unsigned long) va;
 
                if (!va) {
@@ -439,6 +436,9 @@ void __init efi_enter_virtual_mode(void)
                        continue;
                }
 
+               if (!(md->attribute & EFI_MEMORY_WB))
+                       set_memory_uc(md->virt_addr, size);
+
                systab = (u64) (unsigned long) efi_phys.systab;
                if (md->phys_addr <= systab && systab < end) {
                        systab += md->virt_addr - md->phys_addr;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to