wok-6.x diff syslinux/stuff/iso2exe/bootlinux.c @ rev 15980
syslinux/iso2exe: skip 15M-16M frequent hole
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Mar 01 10:30:44 2014 +0000 (2014-03-01) |
parents | 19258b949c1b |
children | 3f0b08dbc9d3 |
line diff
1.1 --- a/syslinux/stuff/iso2exe/bootlinux.c Thu Apr 04 11:19:19 2013 +0200 1.2 +++ b/syslinux/stuff/iso2exe/bootlinux.c Sat Mar 01 10:30:44 2014 +0000 1.3 @@ -83,7 +83,7 @@ 1.4 mov ax, #0x8793 1.5 mov [si+0x15], al 1.6 xchg [si+0x1D], al 1.7 - mov [si+0x1F], al // bits 24..31, doesn't work for me :( 1.8 + mov [si+0x1F], al // bits 24..31 1.9 int 0x15 1.10 add sp, #0x30 1.11 popa 1.12 @@ -117,8 +117,9 @@ 1.13 } 1.14 p->align = PAGE_SIZE; 1.15 break; 1.16 - case 4096: // first initrd 1.17 - initrd_addr = p->base; 1.18 + case 4096: // first initrd : skip 0xF00000 .. 0x1000000 mapping hole 1.19 + initrd_addr = (p->base + size > 0xF00000 && 1.20 + p->base < 0x1000000) ? 0x1000000 : p->base; 1.21 p->align = 4; 1.22 } 1.23 while (size) {