Change the minimum number of shuffle descriptors to 64.
authorH. Peter Anvin <hpa@zytor.com>
Wed, 13 Feb 2008 00:53:20 +0000 (16:53 -0800)
committerH. Peter Anvin <hpa@zytor.com>
Wed, 13 Feb 2008 00:53:20 +0000 (16:53 -0800)
Only use 64 as a static guarantee of the number of shuffle
descriptors; corresponding to 768 bytes of memory.

com32/lib/syslinux/shuffle.c
doc/comboot.doc

index bb020a1..708382c 100644 (file)
@@ -64,7 +64,7 @@ static void __constructor __syslinux_get_desc_block_size(void)
   reg.eax.w[0] = 0x0011;
   __intcall(0x22, &reg, &reg);
 
-  desc_block_size = (reg.eflags.l & EFLAGS_CF) ? 256 : reg.ecx.w[0];
+  desc_block_size = (reg.eflags.l & EFLAGS_CF) ? 64 : reg.ecx.w[0];
 }
 
 /* Allocate descriptor memory in these chunks */
index 9324e4e..46afc64 100644 (file)
@@ -561,9 +561,9 @@ AX=0011h [3.05] Maximum number of shuffle descriptors
        Output: CX      maximum number of descriptors
 
        This routine reports the maximum number of shuffle descriptors
-       permitted in a call to function 0012h.
+       permitted in a call to functions 0012h, 001Ah and 001Bh.
 
-       This is guaranteed to be at least 256.  For the current
+       This is guaranteed to be at least 64.  For the current
        version, this is 682 for all derivatives.