History log of /freebsd/sys/compat/x86bios/x86bios.c (Results 26 – 50 of 89)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# bc339276 25-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Check opcode for short jump as well. Some option ROMs do short jumps
(e.g., some NVIDIA video cards) and we were not able to do POST while
resuming because we only honored long jump.

MFC after: 3 d

Check opcode for short jump as well. Some option ROMs do short jumps
(e.g., some NVIDIA video cards) and we were not able to do POST while
resuming because we only honored long jump.

MFC after: 3 days

show more ...


# b17f9ad2 16-Aug-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Merge svn+ssh://svn.freebsd.org/base/head@211344


# 077c4b48 10-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Place spinlock_enter() and spinlock_exit() just around X86EMU calls.


# 449918b1 10-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Tidy up locking and memory allocation for the real mode emulator wrapper.
Now we use a regular mutex instead of a spin mutex. When we enter and exit
the emulator, spinlock_enter() and spinlock_exit(

Tidy up locking and memory allocation for the real mode emulator wrapper.
Now we use a regular mutex instead of a spin mutex. When we enter and exit
the emulator, spinlock_enter() and spinlock_exit() are additionally used.
Move some page table related stuff from x86bios_init() and x86bios_uninit()
to x86bios_map_mem() and x86bios_unmap_mem().

show more ...


# f2c73cef 10-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Tidy up printf() calls for debugging.


# b3165075 09-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Initialize a variable just before its use.


# b41f3f4c 09-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Reduce diffs between VM86 and X86EMU wrappers for x86bios_alloc() and
x86bios_free(). Add strict sanity checks for VM86 wrapper and add strict
page table locking for X86EMU wrapper.


# a6d613a5 07-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Do not block any I/O port on amd64.


# d7a5fb63 07-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Optimize interrupt vector lookup. There is no need to check the page table.


# fc82156f 06-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Consistently use architecture specific macros.


# f1077673 06-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Fix allocation of multiple pages, which forgot to increase page number.
Particularly, it caused "vm86_addpage: overlap" panics under VirtualBox.
Add a safety check before freeing memory while I am he

Fix allocation of multiple pages, which forgot to increase page number.
Particularly, it caused "vm86_addpage: overlap" panics under VirtualBox.
Add a safety check before freeing memory while I am here.

show more ...


# 0a3493e5 05-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Re-add flag register for output. Some BIOS calls actually use it to return
success/failure status. Oops.


# c5e960de 05-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Do not copy stack pointer and flags. These registers are unconditionally
destroyed from vm86_prepcall().


# 439f3d8b 05-Aug-2010 Jung-uk Kim <jkim@FreeBSD.org>

Implement a simple native VM86 backend for X86BIOS. Now i386 uses native
VM86 calls instead of the real mode emulator as a backend. VM86 has been
proven reliable for very long time and it is actual

Implement a simple native VM86 backend for X86BIOS. Now i386 uses native
VM86 calls instead of the real mode emulator as a backend. VM86 has been
proven reliable for very long time and it is actually few times faster than
emulation. Increase maximum number of page table entries per VM86 context
from 3 to 8 pages. It was (ridiculously) low and insufficient for new VM86
backend, which shares one context globally. Slighly rearrange and clean up
the emulator backend to accommodate new code. The only visible change here
is stack size, which is decreased from 64K to 4K bytes to sync. with VM86.
Actually, it seems there is no need for big stack in real mode.

MFC after: 1 month

show more ...


Revision tags: release/8.1.0_cvs, release/8.1.0
# d6c18050 07-Jul-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Merge svn+ssh://svn.freebsd.org/base/head@209749


# 362487c0 23-Jun-2010 Jung-uk Kim <jkim@FreeBSD.org>

Let x86bios_alloc() pass contigmalloc(9) flags. Use it to set M_WAITOK
from VESA BIOS initialization. All other malloc(9) uses in the function is
blocking any way.


# 9307d8bd 08-May-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Merge svn+ssh://svn.freebsd.org/base/head@207793


# 945f418a 06-May-2010 Kirk McKusick <mckusick@FreeBSD.org>

Final update to current version of head in preparation for reintegration.


# 48319187 01-May-2010 Jung-uk Kim <jkim@FreeBSD.org>

Reduce MD code further. At least, it compiles on ia64 now (but it is not
connected to build). The idea/code was shamelessly taken from r207329.


# 2083bca5 01-May-2010 Jung-uk Kim <jkim@FreeBSD.org>

Do not initialize mutex and return error if it cannot map memory.


# a4bf5fb9 28-Apr-2010 Kirk McKusick <mckusick@FreeBSD.org>

Update to current version of head.


# 824d100f 31-Mar-2010 Jung-uk Kim <jkim@FreeBSD.org>

MFC: r205297, r205347, r205452, r205455, r205649, r205650

Sync. x86bios with HEAD.

- Detect illegal access to unmapped memory within real mode emulator.
- Map EBDA if available and support memory w

MFC: r205297, r205347, r205452, r205455, r205649, r205650

Sync. x86bios with HEAD.

- Detect illegal access to unmapped memory within real mode emulator.
- Map EBDA if available and support memory wraparound above 1MB as VM86 does.
- Set initial %ds to 0x40 as X.org int10 handler does.
- Print the initial memory map when bootverbose is set.
- Optimize real mode page table lookup.
- Add strictly aligned memory access for distant future.
- Update copyright date.

show more ...


# ac39796e 29-Mar-2010 Jung-uk Kim <jkim@FreeBSD.org>

MFC: r205647

Fix stupid typos. Some VESA BIOSes directly call BIOS interrupt handlers
within the VBE interrupt handler. Unfortunately it was causing real mode
page faults because we were fetching

MFC: r205647

Fix stupid typos. Some VESA BIOSes directly call BIOS interrupt handlers
within the VBE interrupt handler. Unfortunately it was causing real mode
page faults because we were fetching instructions from bogus addresses.

PR: kern/144654

show more ...


# 8892b97b 29-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Merge svn+ssh://svn.freebsd.org/base/head@205807


# bfd02644 25-Mar-2010 Jung-uk Kim <jkim@FreeBSD.org>

Revert accidentally committed initial real mode %sp change of r205347.
Note I am keeping %ds change because X.org int10 handler does it and
it seems reasonable.


1234