[SeaBIOS] SeaBIOS error with Juniper FreeBSD kernel

Kevin O'Connor kevin at koconnor.net
Thu Aug 4 01:48:37 CEST 2011


On Wed, Aug 03, 2011 at 02:42:15PM +0200, Bjørn Mork wrote:
>But what if additional data is added to
> the table, making f-segment allocation fail?  Then you will end up with
> three different results depending on small changes instead of two:
> 
>  1) nCPU <= 16 and f-segment allocation OK: SMBIOS in f-segment
>  2) nCPU > 16: SMBIOS in high mem
>  3) nCPU <= 16 and f-segment allocation failed: no SMBIOS table

If a reasonable limit is placed on the size of the SMBIOS table then
in practice the allocation will always succeed.

All of the f-segment allocations with the exception of the mptable are
small.  The mptable allocation should probably have an upper bound
placed on it as well.  There's currently 2048 bytes reserved for
malloc_fseg (CONFIG_MAX_BIOSTABLE), and the current smbios uses 263
bytes with one cpu and 938 bytes with 16 cpus (memory size may also
change size slightly).

-Kevin



More information about the SeaBIOS mailing list