Subject: port-i386/3942: apm's bioscall() can hang a system
To: None <gnats-bugs@gnats.netbsd.org>
From: Martin Husemann <martin@rumolt.teuto.de>
List: netbsd-bugs
Date: 08/05/1997 07:06:39
>Number:         3942
>Category:       port-i386
>Synopsis:       when booted from DOS with XMS active, bioscall() hangs
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    gnats-admin (GNATS administrator)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Aug  4 22:35:04 1997
>Last-Modified:
>Originator:     Martin Husemann
>Organization:
UP-Vision Computergraphik GmbH
>Release:        -current as of July 3
>Environment:
An i386 booting to DOS, then using dosboot.com to load NetBSD.

>Description:

When booting DOS with XMS support (himem.sys active) and using dosboot
to load a NetBSD/i386 kernel with APM support, it will hang during apm's
probe routine in a call to "bioscall()". The system reaches the trampoline
code from sys/arch/i386/apm_init, but doesen't return from it.

When booting DOS without XMS and then using dosboot, all runs fine.
(Actually, I have a standard Windows 95 setup and use the F8 boot menu
to boot via step-by-step confirmation, negating all: works, or by using
"command prompt only" - doesn't work)

A -current kernel from June 15 works fine in the same situation.

>How-To-Repeat:

See above.

>Fix:

Don't know. I suppose something in the CPU setup code dosen't initialize
the VM as completely as it did back in June.

There have been numerous changes in that area (including getting rid of
the swap config), I haven't been able to spot the culprit.

>Audit-Trail:
>Unformatted: