uvm_pglist.h defines 3 things. two of whch are unused (ok, used in if0ed
out code for page idle zeroing that needs completely rewriting because
the code doesn't work like that anymore). The third thing is the
defintion of struct pglist (a TAILQ_HEAD).

Move that definiton to uvm_page.h with the definition of struct vm_page
and nuke the otherwise tiny header.

Please note that the hppa pmap.h inclusion of this header doesn't seem
to be needed but I have no way to check other than manual inspection.
I'd like confirmation that it still builds (else it needs uvm_page.h
incuding). i386 I have checked and hppa64 needs the struct pglist
definition.

ok?

-0-


Index: arch/hppa/include/pmap.h
===================================================================
RCS file: /cvs/src/sys/arch/hppa/include/pmap.h,v
retrieving revision 1.41
diff -u -p -r1.41 pmap.h
--- arch/hppa/include/pmap.h    28 Apr 2011 20:42:28 -0000      1.41
+++ arch/hppa/include/pmap.h    4 May 2011 22:08:04 -0000
@@ -30,7 +30,6 @@
 #define _MACHINE_PMAP_H_
 
 #include <machine/pte.h>
-#include <uvm/uvm_pglist.h>
 #include <uvm/uvm_object.h>
 
 #ifdef _KERNEL
Index: arch/hppa64/include/pmap.h
===================================================================
RCS file: /cvs/src/sys/arch/hppa64/include/pmap.h,v
retrieving revision 1.5
diff -u -p -r1.5 pmap.h
--- arch/hppa64/include/pmap.h  28 Apr 2011 20:43:41 -0000      1.5
+++ arch/hppa64/include/pmap.h  4 May 2011 22:08:42 -0000
@@ -21,7 +21,7 @@
 #define _MACHINE_PMAP_H_
 
 #include <machine/pte.h>
-#include <uvm/uvm_pglist.h>
+#include <uvm/uvm_page.h>
 #include <uvm/uvm_object.h>
 
 struct pmap {
Index: arch/i386/include/pmap.h
===================================================================
RCS file: /cvs/src/sys/arch/i386/include/pmap.h,v
retrieving revision 1.57
diff -u -p -r1.57 pmap.h
--- arch/i386/include/pmap.h    23 Mar 2011 16:54:35 -0000      1.57
+++ arch/i386/include/pmap.h    4 May 2011 22:09:06 -0000
@@ -43,7 +43,6 @@
 #include <machine/cpufunc.h>
 #include <machine/pte.h>
 #include <machine/segments.h>
-#include <uvm/uvm_pglist.h>
 #include <uvm/uvm_object.h>
 
 /*
Index: uvm/uvm_page.h
===================================================================
RCS file: /cvs/src/sys/uvm/uvm_page.h,v
retrieving revision 1.45
diff -u -p -r1.45 uvm_page.h
--- uvm/uvm_page.h      2 Apr 2011 12:38:37 -0000       1.45
+++ uvm/uvm_page.h      4 May 2011 21:55:29 -0000
@@ -96,7 +96,8 @@
  */
 
 #include <uvm/uvm_extern.h>
-#include <uvm/uvm_pglist.h>
+
+TAILQ_HEAD(pglist, vm_page);
 
 struct vm_page {
        TAILQ_ENTRY(vm_page)    pageq;          /* queue info for FIFO
Index: uvm/uvm_pglist.h
===================================================================
RCS file: uvm/uvm_pglist.h
diff -N uvm/uvm_pglist.h
--- uvm/uvm_pglist.h    26 Jun 2008 05:42:20 -0000      1.6
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,54 +0,0 @@
-/*     $OpenBSD: uvm_pglist.h,v 1.6 2008/06/26 05:42:20 ray Exp $      */
-/*     $NetBSD: uvm_pglist.h,v 1.3 2001/05/02 01:22:20 thorpej Exp $   */
-
-/*-
- * Copyright (c) 2000, 2001 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _PGLIST_H_
-#define _PGLIST_H_
-
-/*
- * This defines the type of a page queue, e.g. active list, inactive
- * list, etc.
- */
-TAILQ_HEAD(pglist, vm_page);
-
-/*
- * A page free list consists of free pages of unknown contents and free
- * pages of all zeros.
- */
-#define        PGFL_UNKNOWN    0
-#define        PGFL_ZEROS      1
-#define        PGFL_NQUEUES    2
-
-struct pgfreelist {
-       struct pglist pgfl_queues[PGFL_NQUEUES];
-};
-
-#endif
-- 
Chef, n.:
        Any cook who swears in French.

Reply via email to