Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ddf83fe authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* '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
parents 0d6caa17 ff659d13
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@
 * code16gcc.h
 *
 * This file is -include'd when compiling 16-bit C code.
 * Note: this asm() needs to be emitted before gcc omits any code.
 * Note: this asm() needs to be emitted before gcc emits any code.
 * Depending on gcc version, this requires -fno-unit-at-a-time or
 * -fno-toplevel-reorder.
 *
+3 −2
Original line number Diff line number Diff line
@@ -72,17 +72,18 @@ static u32 read_mbr_sig(u8 devno, struct edd_info *ei)
	u32 mbrsig;
	u32 buf_base, mbr_base;
	extern char _end[];
	static char mbr_buf[1024];

	sector_size = ei->params.bytes_per_sector;
	if (!sector_size)
		sector_size = 512; /* Best available guess */

	/* Produce a naturally aligned buffer on the heap */
	buf_base = (ds() << 4) + (u32)&_end;
	mbr_base = (buf_base+sector_size-1) & ~(sector_size-1);
	mbrbuf_ptr = mbr_buf + (mbr_base-buf_base);
	mbrbuf_ptr = _end + (mbr_base-buf_base);
	mbrbuf_end = mbrbuf_ptr + sector_size;

	/* Make sure we actually have space on the heap... */
	if (!(boot_params.hdr.loadflags & CAN_USE_HEAP))
		return 0;
	if (mbrbuf_end > (char *)(size_t)boot_params.hdr.heap_end_ptr)
+2 −2
Original line number Diff line number Diff line
@@ -225,7 +225,7 @@ start_of_setup:
	int	$0x13
#endif

# We will have entired with %cs = %ds+0x20, normalize %cs so
# We will have entered with %cs = %ds+0x20, normalize %cs so
# it is on par with the other segments.
	pushw	%ds
	pushw	$setup2
@@ -280,4 +280,4 @@ die:
	.section ".initdata", "a"
setup_corrupt:
	.byte	7
	.string	"No setup signature found..."
	.string	"No setup signature found...\n"
+1 −1
Original line number Diff line number Diff line
@@ -80,7 +80,7 @@ static void move_kernel_around(void)
 */
static void mask_all_interrupts(void)
{
	outb(0xff, 0xa1);	/* Mask all interrupts on the seconday PIC */
	outb(0xff, 0xa1);	/* Mask all interrupts on the secondary PIC */
	io_delay();
	outb(0xfb, 0x21);	/* Mask all but cascade on the primary PIC */
	io_delay();
+1 −1
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ static int set_bios_mode(u8 mode)
		     : "+a" (ax)
		     : : "ebx", "ecx", "edx", "esi", "edi");

	do_restore = 1;		/* Assume video contents was lost */
	do_restore = 1;		/* Assume video contents were lost */
	new_mode = ax & 0x7f;	/* Not all BIOSes are clean with the top bit */

	if (new_mode == mode)