Home | History | Annotate | Download | only in lib
History log of /src/sys/arch/i386/stand/lib/biosmemx.S
RevisionDateAuthorComments
 1.13  24-Aug-2024  riastradh i386/stand/lib: Nix trailing whitespace and tidy comments a bit.

No functional change intended.

PR port-amd64/49470: NetBSD 7 BETA reboots after bootloader (HP 2133)
 1.12  17-Aug-2024  andvar Allocate buf[6] instead of buf[5] to work around buggy firmware, which may
write mementry to 24 bytes instead 20 requested with ACPI 3.0 enabled,
causing corrupted stack and wrong marks[] values in common_load_kernel().
This in turn was leading to erroneous caluclations and memory addresses.
This eventually may result in null pointer dereference in the kernel and sudden
reboot for VIA based systems.

Commit should fix boot issues for VIA C7-M based HP 2133 Mini-Note,
mentioned in the original bug report. For AMD based HP Compaq 6005 Pro
discussed in a separate thread, the issue may be different.

Tested on my VIA C7-D based Biostar Viotech 3100+ motherboard.

needs-pullups to 9, 10.

PR install/49470
 1.11  02-Aug-2021  andvar branches: 1.11.8;
fix various typos in comments and log messages.
 1.10  04-Dec-2016  maxv branches: 1.10.20;
KNF and explain a few things
 1.9  14-Oct-2008  ad branches: 1.9.38; 1.9.58; 1.9.62;
PR kern/39726 Soekris 5501-60 boot/bootxx 120 second delay

Try enabling A20 using an extended BIOS call before playing around with
the keyboard controller or system config port.
 1.8  11-Dec-2005  christos branches: 1.8.74; 1.8.78; 1.8.84;
merge ktrace-lwp.
 1.7  24-Mar-2004  drochner remove license clauses 3 and 4 from my cpoyright notices
 1.6  07-Nov-2003  dsl Change getextmem2 to return 'configured' values from cx/dx if ax/bx zero,
make absolutely high the top 16bits of returned values are zero.
Ralf's list says that some BIOS need %eax = 0x0000e820 in getmementry.
Add a few comments.
Might fix problems with memory size detection on some systems.
 1.5  14-Feb-2003  dsl branches: 1.5.2;
Use correct segment register in getmementry
 1.4  05-Feb-2003  dsl A buffer slipped though the net... Ensure offset < 64k.
(approved by christos)
 1.3  01-Feb-2003  dsl Change all .S files to use .code16 and .code32
Support 32bit addresses >64k as valid on bios calls.
Move stack for dosboot and biosboot to >64 so stack doesn't hit data.
Use disk sector number passed by mbr code to select default partition
(the mbr code doesn't do this yet).
NB only biosboot and dosboot have been tested so far.
(changes approved by christos and fvdl)
 1.2  08-Mar-1999  drochner change the interface for getmementry() to hold the iterator in an
argument and to return success or error explicitely.
Now we can "error" and "end of list" cleanly; this should fix the
problem where the last list element was ignored.
 1.1  14-Aug-1997  drochner branches: 1.1.2;
New, optional, method to get size of extended memory.
It will be used for getextmem() if EXTENDED_MEMDETECT is defined.
Worked on all tested machines.
Thanks to all testers, especially Martin Husemann!
 1.1.2.2  23-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.1.2.1  14-Aug-1997  thorpej file biosmemx.S was added on branch marc-pcmcia on 1997-08-23 07:09:35 +0000
 1.5.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.5.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.5.2.1  03-Aug-2004  skrll Sync with HEAD
 1.8.84.1  19-Oct-2008  haad Sync with HEAD.
 1.8.78.1  04-May-2009  yamt sync with head.
 1.8.74.1  17-Jan-2009  mjf Sync with HEAD.
 1.9.62.1  07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.9.58.1  05-Dec-2016  skrll Sync with HEAD
 1.9.38.1  03-Dec-2017  jdolecek update from HEAD
 1.10.20.1  03-Sep-2024  martin Pull up following revision(s) (requested by andvar in ticket #1884):

sys/arch/i386/stand/lib/bootinfo_memmap.c: revision 1.7
sys/arch/i386/stand/lib/bootinfo_memmap.c: revision 1.8
sys/arch/i386/stand/lib/getextmemx.c: revision 1.11
sys/arch/i386/stand/lib/getextmemx.c: revision 1.12
sys/arch/i386/stand/lib/biosmemx.S: revision 1.12
sys/arch/i386/stand/lib/biosmemx.S: revision 1.13

Allocate buf[6] instead of buf[5] to work around buggy firmware, which may
write mementry to 24 bytes instead 20 requested with ACPI 3.0 enabled,
causing corrupted stack and wrong marks[] values in common_load_kernel().

This in turn was leading to erroneous caluclations and memory addresses.

This eventually may result in null pointer dereference in the kernel and sudden
reboot for VIA based systems.

Commit should fix boot issues for VIA C7-M based HP 2133 Mini-Note,
mentioned in the original bug report. For AMD based HP Compaq 6005 Pro
discussed in a separate thread, the issue may be different.

Tested on my VIA C7-D based Biostar Viotech 3100+ motherboard.
PR install/49470

i386/stand/lib: Nix trailing whitespace and tidy comments a bit.
No functional change intended.
PR port-amd64/49470: NetBSD 7 BETA reboots after bootloader (HP 2133)
 1.11.8.1  03-Sep-2024  martin Pull up following revision(s) (requested by andvar in ticket #815):

sys/arch/i386/stand/lib/bootinfo_memmap.c: revision 1.7
sys/arch/i386/stand/lib/bootinfo_memmap.c: revision 1.8
sys/arch/i386/stand/lib/getextmemx.c: revision 1.11
sys/arch/i386/stand/lib/getextmemx.c: revision 1.12
sys/arch/i386/stand/lib/biosmemx.S: revision 1.12
sys/arch/i386/stand/lib/biosmemx.S: revision 1.13

Allocate buf[6] instead of buf[5] to work around buggy firmware, which may
write mementry to 24 bytes instead 20 requested with ACPI 3.0 enabled,
causing corrupted stack and wrong marks[] values in common_load_kernel().

This in turn was leading to erroneous caluclations and memory addresses.

This eventually may result in null pointer dereference in the kernel and sudden
reboot for VIA based systems.

Commit should fix boot issues for VIA C7-M based HP 2133 Mini-Note,
mentioned in the original bug report. For AMD based HP Compaq 6005 Pro
discussed in a separate thread, the issue may be different.

Tested on my VIA C7-D based Biostar Viotech 3100+ motherboard.
PR install/49470

i386/stand/lib: Nix trailing whitespace and tidy comments a bit.
No functional change intended.
PR port-amd64/49470: NetBSD 7 BETA reboots after bootloader (HP 2133)

RSS XML Feed