diff --git a/arch/i386/boot/edd.c b/arch/i386/boot/edd.c index 25a2824..7e97d86 100644 --- a/arch/i386/boot/edd.c +++ b/arch/i386/boot/edd.c @@ -72,7 +72,6 @@ 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) @@ -80,7 +79,7 @@ static u32 read_mbr_sig(u8 devno, struct edd_info *ei) 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; if (!(boot_params.hdr.loadflags & CAN_USE_HEAP))