PERFORCE change 132873 for review
Rui Paulo
rpaulo at FreeBSD.org
Wed Jan 9 02:44:48 PST 2008
http://perforce.freebsd.org/chv.cgi?CH=132873
Change 132873 by rpaulo at rpaulo_alpha on 2008/01/09 10:44:22
IFC
Affected files ...
.. //depot/projects/tcpecn/amd64/amd64/pmap.c#4 integrate
.. //depot/projects/tcpecn/amd64/conf/GENERIC#4 integrate
.. //depot/projects/tcpecn/amd64/conf/NOTES#3 integrate
.. //depot/projects/tcpecn/amd64/include/pmap.h#2 integrate
.. //depot/projects/tcpecn/amd64/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/arm/arm/pmap.c#3 integrate
.. //depot/projects/tcpecn/arm/at91/if_ate.c#3 integrate
.. //depot/projects/tcpecn/arm/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/boot/powerpc/ofw/Makefile#2 integrate
.. //depot/projects/tcpecn/cam/cam_xpt.c#3 integrate
.. //depot/projects/tcpecn/compat/freebsd32/freebsd32_proto.h#3 integrate
.. //depot/projects/tcpecn/compat/freebsd32/freebsd32_syscall.h#3 integrate
.. //depot/projects/tcpecn/compat/freebsd32/freebsd32_syscalls.c#3 integrate
.. //depot/projects/tcpecn/compat/freebsd32/freebsd32_sysent.c#3 integrate
.. //depot/projects/tcpecn/compat/freebsd32/syscalls.master#3 integrate
.. //depot/projects/tcpecn/compat/linux/linux_file.c#2 integrate
.. //depot/projects/tcpecn/compat/linux/linux_stats.c#2 integrate
.. //depot/projects/tcpecn/compat/svr4/svr4_stream.c#2 integrate
.. //depot/projects/tcpecn/conf/NOTES#4 integrate
.. //depot/projects/tcpecn/conf/files#3 integrate
.. //depot/projects/tcpecn/conf/options#4 integrate
.. //depot/projects/tcpecn/dev/acpica/acpi_thermal.c#3 integrate
.. //depot/projects/tcpecn/dev/ata/ata-all.h#3 integrate
.. //depot/projects/tcpecn/dev/ata/ata-disk.c#2 integrate
.. //depot/projects/tcpecn/dev/atkbdc/atkbd.c#2 integrate
.. //depot/projects/tcpecn/dev/atkbdc/atkbd_atkbdc.c#2 integrate
.. //depot/projects/tcpecn/dev/cxgb/cxgb_l2t.c#3 integrate
.. //depot/projects/tcpecn/dev/cxgb/sys/mvec.h#3 integrate
.. //depot/projects/tcpecn/dev/cxgb/sys/uipc_mvec.c#3 integrate
.. //depot/projects/tcpecn/dev/ed/if_ed_pci.c#2 integrate
.. //depot/projects/tcpecn/dev/ed/if_ed_rtl80x9.c#2 integrate
.. //depot/projects/tcpecn/dev/fb/creator.c#2 integrate
.. //depot/projects/tcpecn/dev/fb/fb.c#2 integrate
.. //depot/projects/tcpecn/dev/fb/fbreg.h#2 integrate
.. //depot/projects/tcpecn/dev/fb/machfb.c#2 integrate
.. //depot/projects/tcpecn/dev/fb/splash_bmp.c#2 integrate
.. //depot/projects/tcpecn/dev/fb/splash_pcx.c#2 integrate
.. //depot/projects/tcpecn/dev/fb/vga.c#2 integrate
.. //depot/projects/tcpecn/dev/gem/if_gem.c#2 integrate
.. //depot/projects/tcpecn/dev/gem/if_gem_pci.c#2 integrate
.. //depot/projects/tcpecn/dev/gem/if_gemreg.h#2 integrate
.. //depot/projects/tcpecn/dev/gem/if_gemvar.h#2 integrate
.. //depot/projects/tcpecn/dev/ichwd/ichwd.c#2 integrate
.. //depot/projects/tcpecn/dev/ichwd/ichwd.h#2 integrate
.. //depot/projects/tcpecn/dev/kbd/kbd.c#2 integrate
.. //depot/projects/tcpecn/dev/kbd/kbdreg.h#2 integrate
.. //depot/projects/tcpecn/dev/kbdmux/kbdmux.c#2 integrate
.. //depot/projects/tcpecn/dev/le/am7990.c#2 integrate
.. //depot/projects/tcpecn/dev/le/am79900.c#2 integrate
.. //depot/projects/tcpecn/dev/pci/pci_user.c#2 integrate
.. //depot/projects/tcpecn/dev/streams/streams.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/blank/blank_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/daemon/daemon_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/dragon/dragon_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/fade/fade_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/fire/fire_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/green/green_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/logo/logo_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/rain/rain_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/scgfbrndr.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/scvgarndr.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/scvidctl.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/snake/snake_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/star/star_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/syscons/syscons.c#3 integrate
.. //depot/projects/tcpecn/dev/syscons/syscons.h#2 integrate
.. //depot/projects/tcpecn/dev/syscons/warp/warp_saver.c#2 integrate
.. //depot/projects/tcpecn/dev/usb/if_rum.c#2 integrate
.. //depot/projects/tcpecn/dev/usb/if_zyd.c#3 integrate
.. //depot/projects/tcpecn/dev/usb/ukbd.c#2 integrate
.. //depot/projects/tcpecn/dev/usb/usbdevs#4 integrate
.. //depot/projects/tcpecn/dev/vkbd/vkbd.c#2 integrate
.. //depot/projects/tcpecn/fs/devfs/devfs_vnops.c#2 integrate
.. //depot/projects/tcpecn/fs/fifofs/fifo_vnops.c#2 integrate
.. //depot/projects/tcpecn/fs/hpfs/hpfs_vfsops.c#2 integrate
.. //depot/projects/tcpecn/fs/unionfs/union_vnops.c#2 integrate
.. //depot/projects/tcpecn/i386/conf/GENERIC#4 integrate
.. //depot/projects/tcpecn/i386/conf/NOTES#3 integrate
.. //depot/projects/tcpecn/i386/i386/machdep.c#3 integrate
.. //depot/projects/tcpecn/i386/i386/pmap.c#4 integrate
.. //depot/projects/tcpecn/i386/include/pmap.h#2 integrate
.. //depot/projects/tcpecn/i386/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/i386/xbox/xboxfb.c#2 integrate
.. //depot/projects/tcpecn/ia64/conf/GENERIC#3 integrate
.. //depot/projects/tcpecn/ia64/ia64/pmap.c#2 integrate
.. //depot/projects/tcpecn/ia64/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/isa/vga_isa.c#2 integrate
.. //depot/projects/tcpecn/kern/imgact_elf.c#3 integrate
.. //depot/projects/tcpecn/kern/init_sysent.c#2 integrate
.. //depot/projects/tcpecn/kern/kern_descrip.c#3 integrate
.. //depot/projects/tcpecn/kern/kern_event.c#3 integrate
.. //depot/projects/tcpecn/kern/kern_exec.c#3 integrate
.. //depot/projects/tcpecn/kern/kern_lock.c#3 integrate
.. //depot/projects/tcpecn/kern/kern_mib.c#3 integrate
.. //depot/projects/tcpecn/kern/kern_proc.c#3 integrate
.. //depot/projects/tcpecn/kern/kern_tc.c#2 integrate
.. //depot/projects/tcpecn/kern/sched_ule.c#3 integrate
.. //depot/projects/tcpecn/kern/subr_lock.c#3 integrate
.. //depot/projects/tcpecn/kern/subr_smp.c#2 integrate
.. //depot/projects/tcpecn/kern/sys_generic.c#3 integrate
.. //depot/projects/tcpecn/kern/sys_pipe.c#3 integrate
.. //depot/projects/tcpecn/kern/sys_socket.c#2 integrate
.. //depot/projects/tcpecn/kern/syscalls.c#2 integrate
.. //depot/projects/tcpecn/kern/syscalls.master#2 integrate
.. //depot/projects/tcpecn/kern/systrace_args.c#2 integrate
.. //depot/projects/tcpecn/kern/tty.c#2 integrate
.. //depot/projects/tcpecn/kern/uipc_debug.c#2 integrate
.. //depot/projects/tcpecn/kern/uipc_mqueue.c#2 integrate
.. //depot/projects/tcpecn/kern/uipc_sem.c#2 integrate
.. //depot/projects/tcpecn/kern/uipc_shm.c#1 branch
.. //depot/projects/tcpecn/kern/uipc_syscalls.c#2 integrate
.. //depot/projects/tcpecn/kern/uipc_usrreq.c#2 integrate
.. //depot/projects/tcpecn/kern/vfs_bio.c#3 integrate
.. //depot/projects/tcpecn/kern/vfs_mount.c#3 integrate
.. //depot/projects/tcpecn/kern/vfs_subr.c#3 integrate
.. //depot/projects/tcpecn/kern/vfs_syscalls.c#2 integrate
.. //depot/projects/tcpecn/kern/vfs_vnops.c#2 integrate
.. //depot/projects/tcpecn/net/ieee8023ad_lacp.c#2 integrate
.. //depot/projects/tcpecn/net/ieee8023ad_lacp.h#2 integrate
.. //depot/projects/tcpecn/net/if_lagg.c#4 integrate
.. //depot/projects/tcpecn/net/netisr.h#2 integrate
.. //depot/projects/tcpecn/net/route.c#3 integrate
.. //depot/projects/tcpecn/net/route.h#3 integrate
.. //depot/projects/tcpecn/netgraph/ng_pppoe.c#2 integrate
.. //depot/projects/tcpecn/netgraph/ng_pppoe.h#2 integrate
.. //depot/projects/tcpecn/netgraph/ng_socket.c#2 integrate
.. //depot/projects/tcpecn/netinet/if_ether.c#3 integrate
.. //depot/projects/tcpecn/netinet/if_ether.h#3 integrate
.. //depot/projects/tcpecn/netinet6/frag6.c#3 integrate
.. //depot/projects/tcpecn/netinet6/icmp6.c#3 integrate
.. //depot/projects/tcpecn/netinet6/in6.c#3 integrate
.. //depot/projects/tcpecn/netinet6/in6_ifattach.c#3 integrate
.. //depot/projects/tcpecn/netinet6/in6_pcb.c#3 integrate
.. //depot/projects/tcpecn/netinet6/in6_proto.c#3 integrate
.. //depot/projects/tcpecn/netinet6/in6_rmx.c#3 integrate
.. //depot/projects/tcpecn/netinet6/in6_src.c#3 integrate
.. //depot/projects/tcpecn/netinet6/ip6_input.c#3 integrate
.. //depot/projects/tcpecn/netinet6/ip6_mroute.c#3 integrate
.. //depot/projects/tcpecn/netinet6/ip6_output.c#3 integrate
.. //depot/projects/tcpecn/netinet6/mld6.c#3 integrate
.. //depot/projects/tcpecn/netinet6/nd6.c#3 integrate
.. //depot/projects/tcpecn/netinet6/nd6_nbr.c#3 integrate
.. //depot/projects/tcpecn/netinet6/nd6_rtr.c#3 integrate
.. //depot/projects/tcpecn/netinet6/raw_ip6.c#3 integrate
.. //depot/projects/tcpecn/netinet6/udp6_usrreq.c#3 integrate
.. //depot/projects/tcpecn/opencrypto/cryptodev.c#2 integrate
.. //depot/projects/tcpecn/pc98/cbus/gdc.c#2 integrate
.. //depot/projects/tcpecn/pc98/cbus/pckbd.c#2 integrate
.. //depot/projects/tcpecn/pc98/cbus/scgdcrndr.c#2 integrate
.. //depot/projects/tcpecn/pc98/conf/GENERIC#3 integrate
.. //depot/projects/tcpecn/powerpc/conf/GENERIC#3 integrate
.. //depot/projects/tcpecn/powerpc/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/powerpc/powerpc/pmap_dispatch.c#2 integrate
.. //depot/projects/tcpecn/security/mac/mac_framework.h#2 integrate
.. //depot/projects/tcpecn/security/mac/mac_policy.h#2 integrate
.. //depot/projects/tcpecn/security/mac/mac_posix_shm.c#1 branch
.. //depot/projects/tcpecn/security/mac_stub/mac_stub.c#2 integrate
.. //depot/projects/tcpecn/security/mac_test/mac_test.c#3 integrate
.. //depot/projects/tcpecn/sparc64/conf/GENERIC#4 integrate
.. //depot/projects/tcpecn/sparc64/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/sparc64/sparc64/pmap.c#2 integrate
.. //depot/projects/tcpecn/sparc64/sparc64/tsb.c#2 integrate
.. //depot/projects/tcpecn/sun4v/include/vmparam.h#2 integrate
.. //depot/projects/tcpecn/sun4v/sun4v/pmap.c#2 integrate
.. //depot/projects/tcpecn/sys/copyright.h#2 integrate
.. //depot/projects/tcpecn/sys/fcntl.h#2 integrate
.. //depot/projects/tcpecn/sys/file.h#2 integrate
.. //depot/projects/tcpecn/sys/lockmgr.h#2 integrate
.. //depot/projects/tcpecn/sys/mman.h#2 integrate
.. //depot/projects/tcpecn/sys/param.h#4 integrate
.. //depot/projects/tcpecn/sys/syscall.h#2 integrate
.. //depot/projects/tcpecn/sys/syscall.mk#2 integrate
.. //depot/projects/tcpecn/sys/syscallsubr.h#2 integrate
.. //depot/projects/tcpecn/sys/sysctl.h#4 integrate
.. //depot/projects/tcpecn/sys/sysproto.h#2 integrate
.. //depot/projects/tcpecn/sys/tree.h#2 integrate
.. //depot/projects/tcpecn/sys/unpcb.h#2 integrate
.. //depot/projects/tcpecn/ufs/ffs/ffs_balloc.c#2 integrate
.. //depot/projects/tcpecn/ufs/ffs/ffs_vnops.c#2 integrate
.. //depot/projects/tcpecn/vm/pmap.h#2 integrate
.. //depot/projects/tcpecn/vm/swap_pager.c#2 integrate
.. //depot/projects/tcpecn/vm/vm.h#2 integrate
.. //depot/projects/tcpecn/vm/vm_fault.c#2 integrate
.. //depot/projects/tcpecn/vm/vm_kern.c#2 integrate
.. //depot/projects/tcpecn/vm/vm_map.c#2 integrate
.. //depot/projects/tcpecn/vm/vm_mmap.c#2 integrate
.. //depot/projects/tcpecn/vm/vm_object.c#2 integrate
.. //depot/projects/tcpecn/vm/vm_object.h#2 integrate
.. //depot/projects/tcpecn/vm/vm_page.c#3 integrate
.. //depot/projects/tcpecn/vm/vm_reserv.c#1 branch
.. //depot/projects/tcpecn/vm/vm_reserv.h#1 branch
Differences ...
==== //depot/projects/tcpecn/amd64/amd64/pmap.c#4 (text+ko) ====
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.599 2007/12/09 21:00:35 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.603 2008/01/08 08:30:30 alc Exp $");
/*
* Manages physical address maps.
@@ -614,7 +614,6 @@
{
TAILQ_INIT(&m->md.pv_list);
- m->md.pv_list_count = 0;
}
/*
@@ -1554,7 +1553,7 @@
/* We need a new PDP entry */
nkpg = vm_page_alloc(NULL, nkpt,
VM_ALLOC_NOOBJ | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED);
- if (!nkpg)
+ if (nkpg == NULL)
panic("pmap_growkernel: no memory to grow kernel");
pmap_zero_page(nkpg);
paddr = VM_PAGE_TO_PHYS(nkpg);
@@ -1572,12 +1571,9 @@
continue;
}
- /*
- * This index is bogus, but out of the way
- */
- nkpg = vm_page_alloc(NULL, nkpt,
+ nkpg = vm_page_alloc(NULL, pmap_pde_pindex(kernel_vm_end),
VM_ALLOC_NOOBJ | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED);
- if (!nkpg)
+ if (nkpg == NULL)
panic("pmap_growkernel: no memory to grow kernel");
nkpt++;
@@ -1702,7 +1698,6 @@
TAILQ_REMOVE(&m->md.pv_list, pv, pv_list);
if (TAILQ_EMPTY(&m->md.pv_list))
vm_page_flag_clear(m, PG_WRITEABLE);
- m->md.pv_list_count--;
free_pv_entry(pmap, pv);
if (pmap != locked_pmap)
PMAP_UNLOCK(pmap);
@@ -1850,7 +1845,6 @@
}
KASSERT(pv != NULL, ("pmap_remove_entry: pv not found"));
TAILQ_REMOVE(&m->md.pv_list, pv, pv_list);
- m->md.pv_list_count--;
if (TAILQ_EMPTY(&m->md.pv_list))
vm_page_flag_clear(m, PG_WRITEABLE);
free_pv_entry(pmap, pv);
@@ -1870,7 +1864,6 @@
pv = get_pv_entry(pmap, FALSE);
pv->pv_va = va;
TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list);
- m->md.pv_list_count++;
}
/*
@@ -1887,7 +1880,6 @@
(pv = get_pv_entry(pmap, TRUE)) != NULL) {
pv->pv_va = va;
TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list);
- m->md.pv_list_count++;
return (TRUE);
} else
return (FALSE);
@@ -2083,15 +2075,8 @@
pd_entry_t ptepde;
vm_page_t free;
-#if defined(PMAP_DIAGNOSTIC)
- /*
- * XXX This makes pmap_remove_all() illegal for non-managed pages!
- */
- if (m->flags & PG_FICTITIOUS) {
- panic("pmap_remove_all: illegal for unmanaged page, va: 0x%lx",
- VM_PAGE_TO_PHYS(m));
- }
-#endif
+ KASSERT((m->flags & PG_FICTITIOUS) == 0,
+ ("pmap_remove_all: page %p is fictitious", m));
mtx_assert(&vm_page_queue_mtx, MA_OWNED);
while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) {
pmap = PV_PMAP(pv);
@@ -2121,7 +2106,6 @@
pmap_invalidate_page(pmap, pv->pv_va);
pmap_free_zero_pages(free);
TAILQ_REMOVE(&m->md.pv_list, pv, pv_list);
- m->md.pv_list_count--;
free_pv_entry(pmap, pv);
PMAP_UNLOCK(pmap);
}
@@ -2253,8 +2237,8 @@
* insert this page into the given map NOW.
*/
void
-pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot,
- boolean_t wired)
+pmap_enter(pmap_t pmap, vm_offset_t va, vm_prot_t access, vm_page_t m,
+ vm_prot_t prot, boolean_t wired)
{
vm_paddr_t pa;
pd_entry_t *pde;
@@ -3048,7 +3032,6 @@
PV_STAT(pv_entry_spare++);
pv_entry_count--;
pc->pc_map[field] |= bitmask;
- m->md.pv_list_count--;
TAILQ_REMOVE(&m->md.pv_list, pv, pv_list);
if (TAILQ_EMPTY(&m->md.pv_list))
vm_page_flag_clear(m, PG_WRITEABLE);
==== //depot/projects/tcpecn/amd64/conf/GENERIC#4 (text+ko) ====
@@ -16,7 +16,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.490 2007/12/15 00:56:16 scottl Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.491 2008/01/07 21:40:09 jhb Exp $
cpu HAMMER
ident GENERIC
@@ -52,6 +52,7 @@
options COMPAT_FREEBSD4 # Compatible with FreeBSD4
options COMPAT_FREEBSD5 # Compatible with FreeBSD5
options COMPAT_FREEBSD6 # Compatible with FreeBSD6
+options COMPAT_FREEBSD7 # Compatible with FreeBSD7
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
options KTRACE # ktrace(1) support
options STACK # stack(9) support
==== //depot/projects/tcpecn/amd64/conf/NOTES#3 (text+ko) ====
@@ -4,7 +4,7 @@
# This file contains machine dependent kernel configuration notes. For
# machine independent notes, look in /sys/conf/NOTES.
#
-# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.73 2007/12/15 00:56:16 scottl Exp $
+# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.74 2007/12/28 22:50:04 rpaulo Exp $
#
#
@@ -411,6 +411,7 @@
# vpd: Vital Product Data kernel interface
# cy: Cyclades serial driver
# digi: Digiboard driver
+# asmc: Apple System Management Controller
# Notes on the Specialix SI/XIO driver:
# The host card is memory, not IO mapped.
@@ -436,7 +437,7 @@
hint.pbio.0.port="0x360"
device smbios
device vpd
-
+device asmc
#
# Laptop/Notebook options:
#
==== //depot/projects/tcpecn/amd64/include/pmap.h#2 (text+ko) ====
@@ -39,7 +39,7 @@
*
* from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90
* from: @(#)pmap.h 7.4 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.138 2006/12/05 11:31:33 ru Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.139 2008/01/06 18:51:04 alc Exp $
*/
#ifndef _MACHINE_PMAP_H_
@@ -231,7 +231,6 @@
struct pv_chunk;
struct md_page {
- int pv_list_count;
TAILQ_HEAD(,pv_entry) pv_list;
};
==== //depot/projects/tcpecn/amd64/include/vmparam.h#2 (text+ko) ====
@@ -38,7 +38,7 @@
* SUCH DAMAGE.
*
* from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/vmparam.h,v 1.49 2007/09/25 06:25:04 alc Exp $
+ * $FreeBSD: src/sys/amd64/include/vmparam.h,v 1.50 2007/12/27 16:45:38 alc Exp $
*/
@@ -132,6 +132,20 @@
#define VM_NFREEORDER 13
/*
+ * Enable superpage reservations: 1 level.
+ */
+#ifndef VM_NRESERVLEVEL
+#define VM_NRESERVLEVEL 1
+#endif
+
+/*
+ * Level 0 reservations consist of 512 pages.
+ */
+#ifndef VM_LEVEL_0_ORDER
+#define VM_LEVEL_0_ORDER 9
+#endif
+
+/*
* Virtual addresses of things. Derived from the page directory and
* page table indexes from pmap.h for precision.
* Because of the page that is both a PD and PT, it looks a little
==== //depot/projects/tcpecn/arm/arm/pmap.c#3 (text+ko) ====
@@ -147,7 +147,7 @@
#include "opt_vm.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.93 2007/12/11 20:35:44 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.96 2008/01/03 07:34:33 alc Exp $");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/kernel.h>
@@ -3170,11 +3170,10 @@
#if defined(PMAP_DEBUG)
/*
- * XXX this makes pmap_page_protect(NONE) illegal for non-managed
- * pages!
+ * XXX This makes pmap_remove_all() illegal for non-managed pages!
*/
if (m->flags & PG_FICTITIOUS) {
- panic("pmap_page_protect: illegal for unmanaged page, va: 0x%x", VM_PAGE_TO_PHYS(m));
+ panic("pmap_remove_all: illegal for unmanaged page, va: 0x%x", VM_PAGE_TO_PHYS(m));
}
#endif
@@ -3325,8 +3324,8 @@
*/
void
-pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot,
- boolean_t wired)
+pmap_enter(pmap_t pmap, vm_offset_t va, vm_prot_t access, vm_page_t m,
+ vm_prot_t prot, boolean_t wired)
{
vm_page_lock_queues();
==== //depot/projects/tcpecn/arm/at91/if_ate.c#3 (text) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.22 2007/12/16 12:57:12 stas Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.23 2008/01/07 00:36:09 cognet Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -191,7 +191,7 @@
callout_init_mtx(&sc->tick_ch, &sc->sc_mtx, 0);
if ((err = ate_get_mac(sc, eaddr)) != 0) {
- device_printf(dev, "No MAC address set");
+ device_printf(dev, "No MAC address set\n");
goto out;
}
ate_set_mac(sc, eaddr);
==== //depot/projects/tcpecn/arm/include/vmparam.h#2 (text+ko) ====
@@ -28,7 +28,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/arm/include/vmparam.h,v 1.11 2007/09/25 06:25:04 alc Exp $
+ * $FreeBSD: src/sys/arm/include/vmparam.h,v 1.12 2007/12/27 16:45:38 alc Exp $
*/
#ifndef _MACHINE_VMPARAM_H_
@@ -85,6 +85,13 @@
*/
#define VM_NFREEORDER 9
+/*
+ * Disable superpage reservations.
+ */
+#ifndef VM_NRESERVLEVEL
+#define VM_NRESERVLEVEL 0
+#endif
+
#define UPT_MAX_ADDRESS VADDR(UPTPTDI + 3, 0)
#define UPT_MIN_ADDRESS VADDR(UPTPTDI, 0)
==== //depot/projects/tcpecn/boot/powerpc/ofw/Makefile#2 (text+ko) ====
@@ -1,9 +1,9 @@
-# $FreeBSD: src/sys/boot/powerpc/ofw/Makefile,v 1.20 2007/12/17 22:18:07 marcel Exp $
+# $FreeBSD: src/sys/boot/powerpc/ofw/Makefile,v 1.21 2007/12/26 19:15:58 marcel Exp $
.include <bsd.own.mk>
PROG= loader
-NEWVERSWHAT= "bootstrap loader" "Open Firmware/PowerPC"
+NEWVERSWHAT= "Open Firmware loader" ${MACHINE_ARCH}
BINDIR?= /boot
INSTALLFLAGS= -b
==== //depot/projects/tcpecn/cam/cam_xpt.c#3 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.192 2007/12/16 07:49:44 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.193 2008/01/02 01:45:31 obrien Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -172,12 +172,12 @@
* identify, and removed when a device fails to respond after a number
* of retries, or a bus rescan finds the device missing.
*/
-struct cam_et {
+struct cam_et {
TAILQ_HEAD(, cam_ed) ed_entries;
TAILQ_ENTRY(cam_et) links;
- struct cam_eb *bus;
+ struct cam_eb *bus;
target_id_t target_id;
- u_int32_t refcount;
+ u_int32_t refcount;
u_int generation;
struct timeval last_reset;
};
@@ -187,7 +187,7 @@
* are created by calls to xpt_bus_register and deleted by calls to
* xpt_bus_deregister.
*/
-struct cam_eb {
+struct cam_eb {
TAILQ_HEAD(, cam_et) et_entries;
TAILQ_ENTRY(cam_eb) links;
path_id_t path_id;
@@ -275,7 +275,7 @@
static const char seagate[] = "SEAGATE";
static const char microp[] = "MICROP";
-static struct xpt_quirk_entry xpt_quirk_table[] =
+static struct xpt_quirk_entry xpt_quirk_table[] =
{
{
/* Reports QUEUE FULL for temporary resource shortages */
@@ -315,12 +315,12 @@
*
* For future reference, the drive with the problem was:
* QUANTUM QM39100TD-SW N1B0
- *
+ *
* It's possible that Quantum will fix the problem in later
* firmware revisions. If that happens, the quirk entry
* will need to be made specific to the firmware revisions
* with the problem.
- *
+ *
*/
/* Reports QUEUE FULL for temporary resource shortages */
{ T_DIRECT, SIP_MEDIA_FIXED, quantum, "QM39100*", "*" },
@@ -351,7 +351,7 @@
/*
* The Seagate Medalist Pro drives have very poor write
* performance with anything more than 2 tags.
- *
+ *
* Reported by: Paul van der Zwan <paulz at trantor.xs4all.nl>
* Drive: <SEAGATE ST36530N 1444>
*
@@ -406,7 +406,7 @@
/*quirks*/0, /*mintags*/0, /*maxtags*/0
},
{
- /* Broken tagged queuing drive */
+ /* Broken tagged queuing drive */
{ T_DIRECT, SIP_MEDIA_FIXED, "CONNER", "CFP2107*", "*" },
/*quirks*/0, /*mintags*/0, /*maxtags*/0
},
@@ -924,7 +924,7 @@
*/
retval = xpt_schedule_dev(&bus->sim->devq->alloc_queue,
&dev->alloc_ccb_entry.pinfo,
- CAMQ_GET_HEAD(&dev->drvq)->priority);
+ CAMQ_GET_HEAD(&dev->drvq)->priority);
} else {
retval = 0;
}
@@ -1025,7 +1025,7 @@
mtx_lock(&xsoftc.xpt_lock);
xsoftc.flags |= XPT_FLAG_OPEN;
mtx_unlock(&xsoftc.xpt_lock);
-
+
return(0);
}
@@ -1225,7 +1225,7 @@
* (or rather should be) impossible for the device peripheral driver
* list to change since we look at the whole thing in one pass, and
* we do it with lock protection.
- *
+ *
*/
case CAMGETPASSTHRU: {
union ccb *ccb;
@@ -1280,7 +1280,7 @@
ccb->cgdl.unit_number = 0;
error = ENOENT;
break;
- }
+ }
/*
* Run through every peripheral instance of this driver
@@ -1318,7 +1318,7 @@
periph = SLIST_NEXT(periph, periph_links), i++) {
/*
* Check to see whether we have a
- * passthrough device or not.
+ * passthrough device or not.
*/
if (strcmp(periph->periph_name, "pass") == 0) {
/*
@@ -1638,7 +1638,7 @@
struct periph_list *periph_head;
periph_head = &device->periphs;
-
+
/* Release the slot for this peripheral */
camq_resize(&device->drvq, device->drvq.array_size - 1);
@@ -1867,7 +1867,7 @@
continue;
/*
- * If we get to this point, the user definitely wants
+ * If we get to this point, the user definitely wants
* information on this bus. So tell the caller to copy the
* data out.
*/
@@ -1945,7 +1945,7 @@
/* set the copy flag */
retval |= DM_RET_COPY;
-
+
/*
* If we've already decided on an action, go ahead
* and return.
@@ -1980,7 +1980,7 @@
continue;
/*
- * If we get to this point, the user definitely wants
+ * If we get to this point, the user definitely wants
* information on this device. So tell the caller to copy
* the data out.
*/
@@ -2103,7 +2103,7 @@
continue;
/*
- * If we get to this point, the user definitely wants
+ * If we get to this point, the user definitely wants
* information on this peripheral. So tell the caller to
* copy the data out.
*/
@@ -2167,7 +2167,7 @@
*/
if (spaceleft < sizeof(struct dev_match_result)) {
bzero(&cdm->pos, sizeof(cdm->pos));
- cdm->pos.position_type =
+ cdm->pos.position_type =
CAM_DEV_POS_EDT | CAM_DEV_POS_BUS;
cdm->pos.cookie.bus = bus;
@@ -2298,7 +2298,7 @@
*/
if (spaceleft < sizeof(struct dev_match_result)) {
bzero(&cdm->pos, sizeof(cdm->pos));
- cdm->pos.position_type =
+ cdm->pos.position_type =
CAM_DEV_POS_EDT | CAM_DEV_POS_BUS |
CAM_DEV_POS_TARGET | CAM_DEV_POS_DEVICE;
@@ -2309,7 +2309,7 @@
cdm->pos.generations[CAM_TARGET_GENERATION] =
device->target->bus->generation;
cdm->pos.cookie.device = device;
- cdm->pos.generations[CAM_DEV_GENERATION] =
+ cdm->pos.generations[CAM_DEV_GENERATION] =
device->target->generation;
cdm->status = CAM_DEV_MATCH_MORE;
return(0);
@@ -2407,7 +2407,7 @@
*/
if (spaceleft < sizeof(struct dev_match_result)) {
bzero(&cdm->pos, sizeof(cdm->pos));
- cdm->pos.position_type =
+ cdm->pos.position_type =
CAM_DEV_POS_EDT | CAM_DEV_POS_BUS |
CAM_DEV_POS_TARGET | CAM_DEV_POS_DEVICE |
CAM_DEV_POS_PERIPH;
@@ -2419,7 +2419,7 @@
cdm->pos.generations[CAM_TARGET_GENERATION] =
periph->path->bus->generation;
cdm->pos.cookie.device = periph->path->device;
- cdm->pos.generations[CAM_DEV_GENERATION] =
+ cdm->pos.generations[CAM_DEV_GENERATION] =
periph->path->target->generation;
cdm->pos.cookie.periph = periph;
cdm->pos.generations[CAM_PERIPH_GENERATION] =
@@ -2545,7 +2545,7 @@
pdrv = NULL;
bzero(&cdm->pos, sizeof(cdm->pos));
- cdm->pos.position_type =
+ cdm->pos.position_type =
CAM_DEV_POS_PDRV | CAM_DEV_POS_PDPTR |
CAM_DEV_POS_PERIPH;
@@ -3139,7 +3139,7 @@
start_ccb->ccb_h.status = CAM_REQ_CMP;
break;
}
- }
+ }
if (XPT_FC_IS_QUEUED(abort_ccb)
&& (abort_ccb->ccb_h.pinfo.index == CAM_DONEQ_INDEX)) {
/*
@@ -3204,7 +3204,7 @@
bcopy(dev->serial_num, cgd->serial_num,
dev->serial_num_len);
}
- break;
+ break;
}
case XPT_GDEV_STATS:
{
@@ -3257,17 +3257,17 @@
/*
* Check and see if the list has changed since the user
* last requested a list member. If so, tell them that the
- * list has changed, and therefore they need to start over
+ * list has changed, and therefore they need to start over
* from the beginning.
*/
- if ((cgdl->index != 0) &&
+ if ((cgdl->index != 0) &&
(cgdl->generation != device->generation)) {
cgdl->status = CAM_GDEVLIST_LIST_CHANGED;
break;
}
/*
- * Traverse the list of peripherals and attempt to find
+ * Traverse the list of peripherals and attempt to find
* the requested peripheral.
*/
for (nperiph = SLIST_FIRST(periph_head), i = 0;
@@ -3496,7 +3496,7 @@
*/
start_ccb->ccb_h.flags &= ~CAM_DEV_QFREEZE;
} else {
-
+
dev->flags |= CAM_DEV_REL_ON_COMPLETE;
start_ccb->ccb_h.flags |= CAM_DEV_QFREEZE;
}
@@ -3509,7 +3509,7 @@
start_ccb->ccb_h.flags &= ~CAM_DEV_QFREEZE;
} else {
-
+
dev->flags |= CAM_DEV_REL_ON_QUEUE_EMPTY;
start_ccb->ccb_h.flags |= CAM_DEV_QFREEZE;
}
@@ -3584,7 +3584,7 @@
xpt_polled_action(union ccb *start_ccb)
{
u_int32_t timeout;
- struct cam_sim *sim;
+ struct cam_sim *sim;
struct cam_devq *devq;
struct cam_ed *dev;
@@ -3601,18 +3601,18 @@
* can get it before us while we simulate interrupts.
*/
dev->ccbq.devq_openings--;
- dev->ccbq.dev_openings--;
-
+ dev->ccbq.dev_openings--;
+
while(((devq != NULL && devq->send_openings <= 0) ||
dev->ccbq.dev_openings < 0) && (--timeout > 0)) {
DELAY(1000);
(*(sim->sim_poll))(sim);
camisr_runqueue(&sim->sim_doneq);
}
-
+
dev->ccbq.devq_openings++;
dev->ccbq.dev_openings++;
-
+
if (timeout != 0) {
xpt_action(start_ccb);
while(--timeout > 0) {
@@ -3636,7 +3636,7 @@
start_ccb->ccb_h.status = CAM_RESRC_UNAVAIL;
}
}
-
+
/*
* Schedule a peripheral driver to receive a ccb when it's
* target device has space for more transactions.
@@ -3759,7 +3759,7 @@
union ccb *work_ccb;
struct cam_periph *drv;
struct camq *drvq;
-
+
qinfo = (struct cam_ed_qinfo *)camq_remove(&devq->alloc_queue,
CAMQ_HEAD);
device = qinfo->device;
@@ -3796,7 +3796,7 @@
*/
break;
}
-
+
if (drvq->entries > 0) {
/* We have more work. Attempt to reschedule */
xpt_schedule_dev_allocq(bus, device);
@@ -3811,7 +3811,7 @@
struct cam_devq *devq;
CAM_DEBUG_PRINT(CAM_DEBUG_XPT, ("xpt_run_dev_sendq\n"));
-
+
devq = bus->sim->devq;
devq->send_queue.qfrozen_cnt++;
@@ -3858,8 +3858,8 @@
* available.
*/
device->qfrozen_cnt++;
- STAILQ_INSERT_TAIL(&xsoftc.highpowerq,
- &work_ccb->ccb_h,
+ STAILQ_INSERT_TAIL(&xsoftc.highpowerq,
+ &work_ccb->ccb_h,
xpt_links.stqe);
mtx_unlock(&xsoftc.xpt_lock);
@@ -3879,8 +3879,8 @@
cam_ccbq_send_ccb(&device->ccbq, work_ccb);
devq->send_openings--;
- devq->send_active++;
-
+ devq->send_active++;
+
if (device->ccbq.queue.entries > 0)
xpt_schedule_dev_sendq(bus, device);
@@ -4549,7 +4549,7 @@
bus = path->bus;
- if (async_code == AC_BUS_RESET) {
+ if (async_code == AC_BUS_RESET) {
/* Update our notion of when the last reset occurred */
microtime(&bus->last_reset);
}
@@ -4576,7 +4576,7 @@
next_device = TAILQ_NEXT(device, links);
- if (path->device != device
+ if (path->device != device
&& path->device->lun_id != CAM_LUN_WILDCARD
&& device->lun_id != CAM_LUN_WILDCARD)
continue;
@@ -4588,7 +4588,7 @@
path, async_arg);
}
}
-
+
/*
* If this wasn't a fully wildcarded async, tell all
* clients that want all async events.
@@ -4722,7 +4722,7 @@
sim->devq->send_queue.qfrozen_cnt += count;
if (sim->devq->active_dev != NULL) {
struct ccb_hdr *ccbh;
-
+
ccbh = TAILQ_LAST(&sim->devq->active_dev->ccbq.active_ccbs,
ccb_hdr_tailq);
if (ccbh && ccbh->status == CAM_REQ_INPROG)
@@ -5278,7 +5278,7 @@
scan_info->counter--;
}
}
-
+
for (i = 0; i <= max_target; i++) {
cam_status status;
if (i == initiator_id)
@@ -5367,7 +5367,7 @@
}
} else {
struct cam_ed *device;
-
+
device = request_ccb->ccb_h.path->device;
if ((device->quirk->quirks & CAM_QUIRK_NOLUNS) == 0) {
@@ -5394,7 +5394,7 @@
done = 0;
if (scan_info->cpi->hba_misc & PIM_SEQSCAN) {
scan_info->counter++;
- if (scan_info->counter ==
+ if (scan_info->counter ==
scan_info->cpi->initiator_id) {
scan_info->counter++;
}
@@ -5506,7 +5506,7 @@
CAM_DEBUG(request_ccb->ccb_h.path, CAM_DEBUG_TRACE,
("xpt_scan_lun\n"));
-
+
xpt_setup_ccb(&cpi.ccb_h, path, /*priority*/1);
cpi.ccb_h.func_code = XPT_PATH_INQ;
xpt_action((union ccb *)&cpi);
@@ -5616,7 +5616,7 @@
if (softc == NULL) {
printf("proberegister: Unable to probe new device. "
- "Unable to allocate softc\n");
+ "Unable to allocate softc\n");
return(CAM_REQ_CMP_ERR);
}
TAILQ_INIT(&softc->request_ccbs);
@@ -5661,7 +5661,7 @@
* condition pending. It will not report the unit attention in
* response to an inquiry, which may leave invalid transfer
* negotiations in effect. The TUR will reveal the unit attention
- * condition. Only send the TUR for lun 0, since some devices
+ * condition. Only send the TUR for lun 0, since some devices
* will get confused by commands other than inquiry to non-existent
* luns. If you think a device has gone away start your scan from
* lun 0. This will insure that any bogus transfer settings are
@@ -5736,7 +5736,7 @@
* whether we still have the same device.
*/
if ((periph->path->device->flags & CAM_DEV_UNCONFIGURED) == 0) {
-
+
MD5Init(&softc->context);
MD5Update(&softc->context, (unsigned char *)inq_buf,
sizeof(struct scsi_inquiry_data));
@@ -5748,7 +5748,7 @@
softc->flags |= PROBE_SERIAL_CKSUM;
}
MD5Final(softc->digest, &softc->context);
- }
+ }
if (softc->action == PROBE_INQUIRY)
inquiry_len = SHORT_INQUIRY_LENGTH;
@@ -5762,7 +5762,7 @@
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list