Deleted Added
full compact
bios.c (103870) bios.c (109623)
1/*-
2 * Copyright (c) 1997 Michael Smith
3 * Copyright (c) 1998 Jonathan Lemon
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 10 unchanged lines hidden (view full) ---

19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 * SUCH DAMAGE.
26 *
1/*-
2 * Copyright (c) 1997 Michael Smith
3 * Copyright (c) 1998 Jonathan Lemon
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 10 unchanged lines hidden (view full) ---

19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 * SUCH DAMAGE.
26 *
27 * $FreeBSD: head/sys/i386/i386/bios.c 103870 2002-09-23 18:54:32Z alfred $
27 * $FreeBSD: head/sys/i386/i386/bios.c 109623 2003-01-21 08:56:16Z alfred $
28 */
29
30/*
31 * Code for dealing with the BIOS in x86 PC systems.
32 */
33
34#include "opt_isa.h"
35

--- 347 unchanged lines hidden (view full) ---

383 args->seg.code32.base = (u_int)&bios16_jmp & PG_FRAME;
384 args->seg.code32.limit = 0xffff;
385
386 ptd = (pd_entry_t *)rcr3();
387 if (ptd == (u_int *)IdlePTD) {
388 /*
389 * no page table, so create one and install it.
390 */
28 */
29
30/*
31 * Code for dealing with the BIOS in x86 PC systems.
32 */
33
34#include "opt_isa.h"
35

--- 347 unchanged lines hidden (view full) ---

383 args->seg.code32.base = (u_int)&bios16_jmp & PG_FRAME;
384 args->seg.code32.limit = 0xffff;
385
386 ptd = (pd_entry_t *)rcr3();
387 if (ptd == (u_int *)IdlePTD) {
388 /*
389 * no page table, so create one and install it.
390 */
391 pte = (pt_entry_t *)malloc(PAGE_SIZE, M_TEMP, M_WAITOK);
391 pte = (pt_entry_t *)malloc(PAGE_SIZE, M_TEMP, 0);
392 ptd = (pd_entry_t *)((u_int)ptd + KERNBASE);
393 *ptd = vtophys(pte) | PG_RW | PG_V;
394 } else {
395 /*
396 * this is a user-level page table
397 */
398 pte = PTmap;
399 }

--- 277 unchanged lines hidden ---
392 ptd = (pd_entry_t *)((u_int)ptd + KERNBASE);
393 *ptd = vtophys(pte) | PG_RW | PG_V;
394 } else {
395 /*
396 * this is a user-level page table
397 */
398 pte = PTmap;
399 }

--- 277 unchanged lines hidden ---