Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup:
[x86 setup] EDD: Fix the computation of the MBR sector buffer
[x86 setup] Newline after setup signature failure message
x86 boot code comments typos

+8 -7
+1 -1
arch/i386/boot/code16gcc.h
··· 2 2 * code16gcc.h 3 3 * 4 4 * This file is -include'd when compiling 16-bit C code. 5 - * Note: this asm() needs to be emitted before gcc omits any code. 5 + * Note: this asm() needs to be emitted before gcc emits any code. 6 6 * Depending on gcc version, this requires -fno-unit-at-a-time or 7 7 * -fno-toplevel-reorder. 8 8 *
+3 -2
arch/i386/boot/edd.c
··· 72 72 u32 mbrsig; 73 73 u32 buf_base, mbr_base; 74 74 extern char _end[]; 75 - static char mbr_buf[1024]; 76 75 77 76 sector_size = ei->params.bytes_per_sector; 78 77 if (!sector_size) 79 78 sector_size = 512; /* Best available guess */ 80 79 80 + /* Produce a naturally aligned buffer on the heap */ 81 81 buf_base = (ds() << 4) + (u32)&_end; 82 82 mbr_base = (buf_base+sector_size-1) & ~(sector_size-1); 83 - mbrbuf_ptr = mbr_buf + (mbr_base-buf_base); 83 + mbrbuf_ptr = _end + (mbr_base-buf_base); 84 84 mbrbuf_end = mbrbuf_ptr + sector_size; 85 85 86 + /* Make sure we actually have space on the heap... */ 86 87 if (!(boot_params.hdr.loadflags & CAN_USE_HEAP)) 87 88 return 0; 88 89 if (mbrbuf_end > (char *)(size_t)boot_params.hdr.heap_end_ptr)
+2 -2
arch/i386/boot/header.S
··· 225 225 int $0x13 226 226 #endif 227 227 228 - # We will have entired with %cs = %ds+0x20, normalize %cs so 228 + # We will have entered with %cs = %ds+0x20, normalize %cs so 229 229 # it is on par with the other segments. 230 230 pushw %ds 231 231 pushw $setup2 ··· 280 280 .section ".initdata", "a" 281 281 setup_corrupt: 282 282 .byte 7 283 - .string "No setup signature found..." 283 + .string "No setup signature found...\n"
+1 -1
arch/i386/boot/pm.c
··· 80 80 */ 81 81 static void mask_all_interrupts(void) 82 82 { 83 - outb(0xff, 0xa1); /* Mask all interrupts on the seconday PIC */ 83 + outb(0xff, 0xa1); /* Mask all interrupts on the secondary PIC */ 84 84 io_delay(); 85 85 outb(0xfb, 0x21); /* Mask all but cascade on the primary PIC */ 86 86 io_delay();
+1 -1
arch/i386/boot/video-bios.c
··· 44 44 : "+a" (ax) 45 45 : : "ebx", "ecx", "edx", "esi", "edi"); 46 46 47 - do_restore = 1; /* Assume video contents was lost */ 47 + do_restore = 1; /* Assume video contents were lost */ 48 48 new_mode = ax & 0x7f; /* Not all BIOSes are clean with the top bit */ 49 49 50 50 if (new_mode == mode)