wok diff syslinux/stuff/extra/fixes-4.07.u @ rev 25057

linux-libre: fix linux-libre-3.18.129-gnu-slitaz.config
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon Jun 06 11:05:30 2022 +0000 (2022-06-06)
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/syslinux/stuff/extra/fixes-4.07.u	Mon Jun 06 11:05:30 2022 +0000
     1.3 @@ -0,0 +1,63 @@
     1.4 +--- mbr/isohdpfx.S
     1.5 ++++ mbr/isohdpfx.S
     1.6 +@@ -167,20 +167,22 @@
     1.7 + 	   read_sector_cbios: movb $0x42, %ah ;  jmp read_common */
     1.8 + 	movl	$0xeb42b4+((read_common-read_sector_cbios-4) << 24), \
     1.9 + 		(read_sector_cbios)
    1.10 +-	jmp	1f
    1.11 ++	jmp	2f
    1.12 + 1:
    1.13 ++	xor	%cx, %cx	/* Clear EBIOS flag. */
    1.14 ++2:
    1.15 + 	popw	%dx
    1.16 + 	pushw	%cx		/* EBIOS flag */
    1.17 + 
    1.18 + 	/* Get (C)HS geometry */
    1.19 + 	movb	$0x08, %ah
    1.20 + 	int	$0x13
    1.21 +-	andw	$0x3f, %cx	/* Sector count */
    1.22 + 	popw	%bx		/* EBIOS flag */
    1.23 +-	pushw	%cx		/* -16: Save sectors on the stack */
    1.24 + 	movzbw	%dh, %ax	/* dh = max head */
    1.25 + 	incw	%ax		/* From 0-based max to count */
    1.26 +-	pushw	%ax		/* -18: Save heads on the stack */
    1.27 ++	pushw	%ax		/* -16: Save heads on the stack */
    1.28 ++	andw	$0x3f, %cx	/* Sector count */
    1.29 ++	pushw	%cx		/* -18: Save sectors on the stack */
    1.30 + 	mulw	%cx		/* Heads*sectors -> sectors per cylinder */
    1.31 + 
    1.32 + 	pushw	%bx		/* -20: EBIOS flag */
    1.33 +--- extlinux/main.c
    1.34 ++++ extlinux/main.c
    1.35 +@@ -1236,9 +1236,7 @@
    1.36 +     if (devfd < 0)
    1.37 + 	return 1;
    1.38 + 
    1.39 +-    if (opt.reset_adv)
    1.40 +-	syslinux_reset_adv(syslinux_adv);
    1.41 +-    else if (ext_read_adv(path, devfd, &filename) < 0) {
    1.42 ++    if (ext_read_adv(path, devfd, &filename) < 0) {
    1.43 + 	close(devfd);
    1.44 + 	return 1;
    1.45 +     }
    1.46 +--- core/isolinux.asm
    1.47 ++++ core/isolinux.asm
    1.48 +@@ -426,14 +426,17 @@
    1.49 + .ok:
    1.50 + 		xor bx,bx
    1.51 + 		push bp
    1.52 ++		push eax
    1.53 + 		call getlinsec
    1.54 ++		pop eax
    1.55 + 		pop cx
    1.56 +-		mov dx,cx
    1.57 ++		movzx edx,cx
    1.58 + 		pop bp
    1.59 + 		pop bx
    1.60 + 
    1.61 + 		shl cx,SECTOR_SHIFT - 4
    1.62 + 		add bx,cx
    1.63 ++		add eax,edx
    1.64 + 		sub bp,dx
    1.65 + 		jnz .more
    1.66 +