From 0ba37a221d954cd36b3c1c5bd36db71804d4582c Mon Sep 17 00:00:00 2001 From: msmith Date: Tue, 16 Mar 1999 21:22:24 +0000 Subject: Don't call int15:820, it's not allowed to be called from vm86 mode. PR: i386/10485 Submitted by: takawata@shidahara1.planet.sci.kobe-u.ac.jp --- sys/i386/i386/vm86.c | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) diff --git a/sys/i386/i386/vm86.c b/sys/i386/i386/vm86.c index 6e5e97f..b56b70d 100644 --- a/sys/i386/i386/vm86.c +++ b/sys/i386/i386/vm86.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: vm86.c,v 1.19 1998/12/07 21:58:19 archie Exp $ + * $Id: vm86.c,v 1.20 1999/01/28 01:59:51 dillon Exp $ */ #include "opt_vm86.h" @@ -480,35 +480,6 @@ initial_bioscalls(u_int *basemem, u_int *extmem) } /* - * get memory map with INT 15:E820 - */ -#define SMAPSIZ sizeof(smap) -#define SMAP_SIG 0x534D4150 /* 'SMAP' */ - vmf.vmf_ebx = 0; - do { - vmf.vmf_eax = 0xE820; - vmf.vmf_edx = SMAP_SIG; - vmf.vmf_ecx = SMAPSIZ; - i = vm86_datacall(0x15, &vmf, - (char *)&smap, SMAPSIZ, &vmf.vmf_es, &vmf.vmf_di); - if (i || vmf.vmf_eax != SMAP_SIG) - break; - if (smap.type == 0x01 && smap.base >= highwat) { - *extmem += (smap.length / 1024); - highwat = smap.base + smap.length; - } - } while (vmf.vmf_ebx != 0); - - if (*extmem != 0) { - if (*extmem > *basemem) { - *extmem -= *basemem; - method = 0xE820; - goto done; - } - printf("E820: extmem (%d) < basemem (%d)\n", *extmem, *basemem); - } - - /* * try memory map with INT 15:E801 */ vmf.vmf_ax = 0xE801; -- cgit v1.1