x86, boot: make kernel_alignment adjustable; new bzImage fields
[linux-2.6.git] / arch / x86 / boot / compressed / head_32.S
index 2b8e0df..75e4f00 100644 (file)
@@ -69,8 +69,11 @@ ENTRY(startup_32)
 
 #ifdef CONFIG_RELOCATABLE
        movl    %ebp, %ebx
-       addl    $(CONFIG_PHYSICAL_ALIGN - 1), %ebx
-       andl    $(~(CONFIG_PHYSICAL_ALIGN - 1)), %ebx
+       movl    BP_kernel_alignment(%esi), %eax
+       decl    %eax
+       addl    %eax, %ebx
+       notl    %eax
+       andl    %eax, %ebx
 #else
        movl    $LOAD_PHYSICAL_ADDR, %ebx
 #endif