Date: Fri, 18 May 2001 18:28:11 -0700 (PDT) From: Alfred Perlstein <alfred@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/coda coda_namecache.c src/sys/compat/linprocfs linprocfs_misc.c src/sys/compat/pecoff imgact_pecoff.c src/sys/dev/md md.c src/sys/i386/i386 busdma_machdep.c machdep.c mem.c pmap.c trap.c vm_machdep.c src/sys/i386/linux linux_sysvec.c ... Message-ID: <200105190128.f4J1SB498147@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
alfred 2001/05/18 18:28:11 PDT Modified files: sys/coda coda_namecache.c sys/compat/linprocfs linprocfs_misc.c sys/compat/pecoff imgact_pecoff.c sys/dev/md md.c sys/i386/i386 busdma_machdep.c machdep.c mem.c pmap.c trap.c vm_machdep.c sys/i386/linux linux_sysvec.c sys/kern imgact_aout.c imgact_elf.c init_main.c kern_exec.c kern_exit.c kern_fork.c kern_resource.c kern_synch.c link_elf.c subr_blist.c sys_pipe.c syscalls.master sysv_shm.c vfs_bio.c vfs_cluster.c vfs_default.c vfs_subr.c vfs_syscalls.c sys/miscfs/procfs procfs_map.c procfs_mem.c sys/miscfs/specfs spec_vnops.c sys/miscfs/union union_subr.c sys/nfs nfs_bio.c nfs_subs.c sys/pci agp.c agp_ali.c agp_amd.c agp_i810.c agp_intel.c agp_sis.c agp_via.c sys/ufs/ufs ufs_readwrite.c sys/vm default_pager.c phys_pager.c swap_pager.c vm.h vm_fault.c vm_glue.c vm_init.c vm_kern.c vm_map.c vm_map.h vm_meter.c vm_mmap.c vm_object.c vm_object.h vm_page.c vm_page.h vm_pageout.c vm_pager.c vm_pager.h vm_unix.c vm_zone.c vnode_pager.c Log: Introduce a global lock for the vm subsystem (vm_mtx). vm_mtx does not recurse and is required for most low level vm operations. faults can not be taken without holding Giant. Memory subsystems can now call the base page allocators safely. Almost all atomic ops were removed as they are covered under the vm mutex. Alpha and ia64 now need to catch up to i386's trap handlers. FFS and NFS have been tested, other filesystems will need minor changes (grabbing the vm lock when twiddling page properties). Reviewed (partially) by: jake, jhb Revision Changes Path 1.13 +2 -1 src/sys/coda/coda_namecache.c 1.26 +2 -1 src/sys/compat/linprocfs/linprocfs_misc.c 1.6 +2 -1 src/sys/compat/pecoff/imgact_pecoff.c 1.32 +2 -1 src/sys/dev/md/md.c 1.22 +3 -1 src/sys/i386/i386/busdma_machdep.c 1.453 +5 -1 src/sys/i386/i386/machdep.c 1.89 +16 -4 src/sys/i386/i386/mem.c 1.280 +2 -1 src/sys/i386/i386/pmap.c 1.187 +8 -7 src/sys/i386/i386/trap.c 1.158 +17 -7 src/sys/i386/i386/vm_machdep.c 1.80 +2 -1 src/sys/i386/linux/linux_sysvec.c 1.68 +9 -1 src/sys/kern/imgact_aout.c 1.94 +19 -4 src/sys/kern/imgact_elf.c 1.170 +5 -1 src/sys/kern/init_main.c 1.127 +8 -1 src/sys/kern/kern_exec.c 1.127 +3 -1 src/sys/kern/kern_exit.c 1.112 +3 -1 src/sys/kern/kern_fork.c 1.83 +3 -1 src/sys/kern/kern_resource.c 1.136 +8 -1 src/sys/kern/kern_synch.c 1.36 +9 -1 src/sys/kern/link_elf.c 1.8 +2 -1 src/sys/kern/subr_blist.c 1.77 +11 -2 src/sys/kern/sys_pipe.c 1.90 +18 -18 src/sys/kern/syscalls.master 1.56 +7 -1 src/sys/kern/sysv_shm.c 1.280 +102 -5 src/sys/kern/vfs_bio.c 1.109 +11 -1 src/sys/kern/vfs_cluster.c 1.52 +16 -2 src/sys/kern/vfs_default.c 1.313 +15 -2 src/sys/kern/vfs_subr.c 1.190 +7 -2 src/sys/kern/vfs_syscalls.c 1.26 +2 -1 src/sys/miscfs/procfs/procfs_map.c 1.49 +12 -2 src/sys/miscfs/procfs/procfs_mem.c 1.158 +5 -1 src/sys/miscfs/specfs/spec_vnops.c 1.52 +2 -1 src/sys/miscfs/union/union_subr.c 1.94 +29 -4 src/sys/nfs/nfs_bio.c 1.101 +3 -1 src/sys/nfs/nfs_subs.c 1.12 +2 -1 src/sys/pci/agp.c 1.2 +2 -1 src/sys/pci/agp_ali.c 1.5 +2 -1 src/sys/pci/agp_amd.c 1.3 +2 -1 src/sys/pci/agp_i810.c 1.3 +2 -1 src/sys/pci/agp_intel.c 1.2 +2 -1 src/sys/pci/agp_sis.c 1.2 +2 -1 src/sys/pci/agp_via.c 1.78 +39 -10 src/sys/ufs/ufs/ufs_readwrite.c 1.27 +3 -1 src/sys/vm/default_pager.c 1.8 +11 -7 src/sys/vm/phys_pager.c 1.155 +67 -12 src/sys/vm/swap_pager.c 1.17 +5 -1 src/sys/vm/vm.h 1.119 +62 -5 src/sys/vm/vm_fault.c 1.113 +36 -4 src/sys/vm/vm_glue.c 1.26 +8 -2 src/sys/vm/vm_init.c 1.70 +69 -7 src/sys/vm/vm_kern.c 1.200 +34 -9 src/sys/vm/vm_map.c 1.63 +17 -7 src/sys/vm/vm_map.h 1.54 +7 -1 src/sys/vm/vm_meter.c 1.119 +50 -12 src/sys/vm/vm_mmap.c 1.191 +52 -8 src/sys/vm/vm_object.c 1.71 +29 -8 src/sys/vm/vm_object.h 1.162 +62 -63 src/sys/vm/vm_page.c 1.85 +26 -7 src/sys/vm/vm_page.h 1.175 +15 -6 src/sys/vm/vm_pageout.c 1.71 +24 -5 src/sys/vm/vm_pager.c 1.32 +16 -2 src/sys/vm/vm_pager.h 1.29 +8 -1 src/sys/vm/vm_unix.c 1.44 +25 -9 src/sys/vm/vm_zone.c 1.129 +39 -16 src/sys/vm/vnode_pager.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200105190128.f4J1SB498147>