Add a FIRST1G page freelist to x86, for old graphics devices.

This commit is contained in:
riastradh 2014-07-24 13:42:28 +00:00
parent 4a7a38f5f8
commit c5f3dfcf35
3 changed files with 13 additions and 9 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: vmparam.h,v 1.35 2014/06/12 19:02:35 riastradh Exp $ */
/* $NetBSD: vmparam.h,v 1.36 2014/07/24 13:42:28 riastradh Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
@ -157,12 +157,13 @@
#define VM_PHYSSEG_MAX 32 /* 1 "hole" + 31 free lists */
#define VM_PHYSSEG_STRAT VM_PSTRAT_BIGFIRST
#define VM_NFREELIST 5
#define VM_NFREELIST 6
#define VM_FREELIST_DEFAULT 0
#define VM_FREELIST_FIRST1T 1
#define VM_FREELIST_FIRST64G 2
#define VM_FREELIST_FIRST4G 3
#define VM_FREELIST_FIRST16 4
#define VM_FREELIST_FIRST1G 4
#define VM_FREELIST_FIRST16 5
#else /* !__x86_64__ */

View File

@ -1,4 +1,4 @@
/* $NetBSD: vmparam.h,v 1.80 2014/06/12 19:02:35 riastradh Exp $ */
/* $NetBSD: vmparam.h,v 1.81 2014/07/24 13:42:28 riastradh Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
@ -135,8 +135,9 @@
#define VM_NFREELIST 1
#else
#define VM_PHYSSEG_MAX 32 /* 1 "hole" + 31 free lists */
#define VM_NFREELIST 3
#define VM_FREELIST_FIRST16 2
#define VM_NFREELIST 4
#define VM_FREELIST_FIRST16 3
#define VM_FREELIST_FIRST1G 2
#define VM_FREELIST_FIRST4G 1
#endif /* XEN */
#define VM_FREELIST_DEFAULT 0

View File

@ -1,4 +1,4 @@
/* $NetBSD: x86_machdep.c,v 1.65 2014/06/12 19:02:35 riastradh Exp $ */
/* $NetBSD: x86_machdep.c,v 1.66 2014/07/24 13:42:28 riastradh Exp $ */
/*-
* Copyright (c) 2002, 2006, 2007 YAMAMOTO Takashi,
@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: x86_machdep.c,v 1.65 2014/06/12 19:02:35 riastradh Exp $");
__KERNEL_RCSID(0, "$NetBSD: x86_machdep.c,v 1.66 2014/07/24 13:42:28 riastradh Exp $");
#include "opt_modular.h"
#include "opt_physmem.h"
@ -703,7 +703,9 @@ static struct {
/* 32-bit addresses needed for PCI 32-bit DMA and old graphics. */
{ VM_FREELIST_FIRST4G, 4ULL * 1024 * 1024 * 1024 },
#endif
/* 24-bit addresses needed for ISA DMA and ancient graphics. */
/* 30-bit addresses needed for ancient graphics. */
{ VM_FREELIST_FIRST1G, 1ULL * 1024 * 1024 * 1024 },
/* 24-bit addresses needed for ISA DMA. */
{ VM_FREELIST_FIRST16, 16 * 1024 * 1024 },
};