svn commit: r213897 - head/sys/amd64/amd64

2010-10-15 Thread Alan Cox
Author: alc Date: Fri Oct 15 15:23:34 2010 New Revision: 213897 URL: http://svn.freebsd.org/changeset/base/213897 Log: Update pmap_extract() to handle 1GB page mappings. Some device drivers use pmap_extract() rather than pmap_kextract() on direct map addresses. Thus, pmap_extract() needs

svn commit: r214563 - head/sys/amd64/amd64

2010-10-30 Thread Alan Cox
Author: alc Date: Sat Oct 30 17:21:32 2010 New Revision: 214563 URL: http://svn.freebsd.org/changeset/base/214563 Log: Don't demote in pmap_demote_DMAP() if the specified length is zero. Modified: head/sys/amd64/amd64/pmap.c Modified: head/sys/amd64/amd64/pmap.c

svn commit: r214564 - head/sys/vm

2010-10-30 Thread Alan Cox
Author: alc Date: Sat Oct 30 18:00:53 2010 New Revision: 214564 URL: http://svn.freebsd.org/changeset/base/214564 Log: Correct some format strings used by sysctls. MFC after:1 week Modified: head/sys/vm/vm_phys.c head/sys/vm/vm_reserv.c Modified: head/sys/vm/vm_phys.c

svn commit: r214576 - head/sys/amd64/amd64

2010-10-30 Thread Alan Cox
Author: alc Date: Sat Oct 30 23:49:37 2010 New Revision: 214576 URL: http://svn.freebsd.org/changeset/base/214576 Log: Add another safety belt to pmap_demote_DMAP(). Modified: head/sys/amd64/amd64/pmap.c Modified: head/sys/amd64/amd64/pmap.c

svn commit: r214617 - head/sys/powerpc/aim

2010-10-31 Thread Alan Cox
Author: alc Date: Mon Nov 1 02:22:48 2010 New Revision: 214617 URL: http://svn.freebsd.org/changeset/base/214617 Log: Implement pmap_is_prefaultable(). Reviewed by: nwhitehorn Modified: head/sys/powerpc/aim/mmu_oea.c head/sys/powerpc/aim/mmu_oea64.c Modified:

svn commit: r214938 - head/sys/i386/i386

2010-11-07 Thread Alan Cox
Author: alc Date: Sun Nov 7 18:42:37 2010 New Revision: 214938 URL: http://svn.freebsd.org/changeset/base/214938 Log: Eliminate a possible race between pmap_pinit() and pmap_kenter_pde() on superpage promotion or demotion. Micro-optimize pmap_kenter_pde(). Reviewed by: kib, jhb

svn commit: r214953 - head/sys/vm

2010-11-07 Thread Alan Cox
Author: alc Date: Sun Nov 7 21:40:34 2010 New Revision: 214953 URL: http://svn.freebsd.org/changeset/base/214953 Log: In case the stack size reaches its limit and its growth must be restricted, ensure that grow_amount is a multiple of the page size. Otherwise, the kernel may crash in

svn commit: r214954 - head/sys/amd64/amd64

2010-11-07 Thread Alan Cox
Author: alc Date: Sun Nov 7 21:48:49 2010 New Revision: 214954 URL: http://svn.freebsd.org/changeset/base/214954 Log: Don't call pmap_demote_DMAP() on MTRR entries from the BIOS that are marked as bogus. Reported by: Jia-Shiun Li Modified: head/sys/amd64/amd64/amd64_mem.c Modified:

svn commit: r215093 - in head/sys: sparc64/include vm

2010-11-10 Thread Alan Cox
Author: alc Date: Wed Nov 10 17:57:34 2010 New Revision: 215093 URL: http://svn.freebsd.org/changeset/base/215093 Log: Enable reservation-based physical memory allocation. Even without the creation of large page mappings in the pmap, it can provide modest performance benefits. In

Re: svn commit: r215135 - head/sys/compat/ndis

2010-11-11 Thread Alan Cox
Bernhard Schmidt wrote: Author: bschmidt Date: Thu Nov 11 18:43:31 2010 New Revision: 215135 URL: http://svn.freebsd.org/changeset/base/215135 Log: According to specs for MmAllocateContiguousMemorySpecifyCache() physically contiguous memory with requested restrictions must be allocated.

svn commit: r215538 - head/sys/vm

2010-11-19 Thread Alan Cox
Author: alc Date: Fri Nov 19 17:49:08 2010 New Revision: 215538 URL: http://svn.freebsd.org/changeset/base/215538 Log: Reduce the amount of detail printed by vm_page_free_toq() when it panics. Reviewed by: kib Modified: head/sys/vm/vm_page.c Modified: head/sys/vm/vm_page.c

Re: svn commit: r216016 - head/sys/sparc64/include

2010-12-01 Thread Alan Cox
Marius Strobl wrote: On Mon, Nov 29, 2010 at 08:23:08PM +0100, Marius Strobl wrote: On Tue, Nov 30, 2010 at 12:31:31AM +0600, Max Khon wrote: Marius, On Mon, Nov 29, 2010 at 1:45 AM, Marius Strobl mar...@alchemy.franken.dewrote: On Sun, Nov 28, 2010 at 07:26:20PM +, Max Khon

Re: svn commit: r216016 - head/sys/sparc64/include

2010-12-02 Thread Alan Cox
Marius Strobl wrote: On Wed, Dec 01, 2010 at 12:19:17PM -0600, Alan Cox wrote: Marius Strobl wrote: On Mon, Nov 29, 2010 at 08:23:08PM +0100, Marius Strobl wrote: On Tue, Nov 30, 2010 at 12:31:31AM +0600, Max Khon wrote: Marius, On Mon, Nov 29, 2010 at 1:45 AM

svn commit: r216333 - head/sys/i386/i386

2010-12-09 Thread Alan Cox
Author: alc Date: Thu Dec 9 20:16:00 2010 New Revision: 216333 URL: http://svn.freebsd.org/changeset/base/216333 Log: When r207410 eliminated the acquisition and release of the page queues lock from pmap_extract_and_hold(), it didn't take into account that pmap_pte_quick() sometimes

svn commit: r216425 - head/sys/vm

2010-12-13 Thread Alan Cox
Author: alc Date: Tue Dec 14 05:47:35 2010 New Revision: 216425 URL: http://svn.freebsd.org/changeset/base/216425 Log: Change memguard_fudge() so that it can handle km_max being zero. Not every platform defines VM_KMEM_SIZE_MAX, and on those platforms km_max will be zero. Reviewed by:

Re: svn commit: r216016 - head/sys/sparc64/include

2010-12-13 Thread Alan Cox
m...@freebsd.org wrote: On Tue, Dec 7, 2010 at 5:41 AM, Marius Strobl mar...@alchemy.franken.de wrote: On Mon, Dec 06, 2010 at 02:30:01PM -0800, m...@freebsd.org wrote: On Mon, Dec 6, 2010 at 2:07 PM, Marius Strobl mar...@alchemy.franken.de wrote: [lots of snip] With that one

svn commit: r216511 - in head/sys: dev/cxgb/ulp/tom kern vm

2010-12-17 Thread Alan Cox
Author: alc Date: Fri Dec 17 22:41:22 2010 New Revision: 216511 URL: http://svn.freebsd.org/changeset/base/216511 Log: Implement and use a single optimized function for unholding a set of pages. Reviewed by: kib@ Modified: head/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c

svn commit: r216555 - head/sys/i386/i386

2010-12-18 Thread Alan Cox
Author: alc Date: Sun Dec 19 07:31:56 2010 New Revision: 216555 URL: http://svn.freebsd.org/changeset/base/216555 Log: Redo some parts of r216333, specifically, the locking changes to pmap_extract_and_hold(), and undo the rest. In particular, I forgot that PG_PS and PG_PTE_PAT are the same

svn commit: r216604 - in head/sys: dev/cxgb/ulp/tom kern vm

2010-12-20 Thread Alan Cox
Author: alc Date: Mon Dec 20 22:49:31 2010 New Revision: 216604 URL: http://svn.freebsd.org/changeset/base/216604 Log: Introduce vm_fault_hold() and use it to (1) eliminate a long-standing race condition in proc_rwmem() and to (2) simplify the implementation of the cxgb driver's

svn commit: r216607 - head/sys/dev/cxgb/ulp/tom

2010-12-20 Thread Alan Cox
Author: alc Date: Mon Dec 20 23:41:31 2010 New Revision: 216607 URL: http://svn.freebsd.org/changeset/base/216607 Log: The local variable rv is still required by vm_fault_hold_user_pages(). Modified: head/sys/dev/cxgb/ulp/tom/cxgb_vm.c Modified: head/sys/dev/cxgb/ulp/tom/cxgb_vm.c

Re: svn commit: r216625 - head/sys/sparc64/include

2010-12-21 Thread Alan Cox
Marius Strobl wrote: Author: marius Date: Tue Dec 21 21:32:17 2010 New Revision: 216625 URL: http://svn.freebsd.org/changeset/base/216625 Log: Revert r216080 so kmem_map is capped at 3/5 of the currently rather modest kernel address space in order to leave space for the buffer cache, pipes,

svn commit: r216699 - in head/sys: dev/cxgb/ulp/tom dev/drm kern net vm

2010-12-25 Thread Alan Cox
Author: alc Date: Sat Dec 25 21:26:56 2010 New Revision: 216699 URL: http://svn.freebsd.org/changeset/base/216699 Log: Introduce and use a new VM interface for temporarily pinning pages. This new interface replaces the combined use of vm_fault_quick() and pmap_extract_and_hold() throughout

svn commit: r216701 - head/sys/vm

2010-12-25 Thread Alan Cox
Author: alc Date: Sat Dec 25 23:54:50 2010 New Revision: 216701 URL: http://svn.freebsd.org/changeset/base/216701 Log: Retire vm_fault_quick(). It's no longer used. Reviewed by: kib@ Modified: head/sys/vm/vm_extern.h head/sys/vm/vm_fault.c Modified: head/sys/vm/vm_extern.h

svn commit: r216702 - head/sys/kern

2010-12-25 Thread Alan Cox
Author: alc Date: Sun Dec 26 01:42:52 2010 New Revision: 216702 URL: http://svn.freebsd.org/changeset/base/216702 Log: Correct the order of the arguments to vm_fault_quick_hold_pages(). Modified: head/sys/kern/uipc_cow.c Modified: head/sys/kern/uipc_cow.c

svn commit: r216731 - head/sys/vm

2010-12-26 Thread Alan Cox
Author: alc Date: Mon Dec 27 07:12:22 2010 New Revision: 216731 URL: http://svn.freebsd.org/changeset/base/216731 Log: Move vm_object_print()'s prototype to the expected place. Modified: head/sys/vm/vm_extern.h head/sys/vm/vm_object.h Modified: head/sys/vm/vm_extern.h

svn commit: r216772 - head/sys/vm

2010-12-28 Thread Alan Cox
Author: alc Date: Tue Dec 28 20:02:30 2010 New Revision: 216772 URL: http://svn.freebsd.org/changeset/base/216772 Log: Correct a typo in vm_fault_quick_hold_pages(). Reported by: Bartosz Stec Modified: head/sys/vm/vm_fault.c Modified: head/sys/vm/vm_fault.c

svn commit: r216807 - head/sys/vm

2010-12-29 Thread Alan Cox
Author: alc Date: Wed Dec 29 20:35:36 2010 New Revision: 216807 URL: http://svn.freebsd.org/changeset/base/216807 Log: There is no point in vm_contig_launder{,_page}() flushing held pages, instead skip over them. As long as a page is held, it can't be reclaimed by contigmalloc(M_WAITOK).

svn commit: r216874 - head/sys/vm

2011-01-01 Thread Alan Cox
Author: alc Date: Sat Jan 1 17:39:38 2011 New Revision: 216874 URL: http://svn.freebsd.org/changeset/base/216874 Log: Make a couple refinements to r216799 and r216810. In particular, revise a comment and move it to its proper place. Reviewed by: kib Modified:

svn commit: r217171 - head/sys/vm

2011-01-08 Thread Alan Cox
Author: alc Date: Sat Jan 8 22:45:22 2011 New Revision: 217171 URL: http://svn.freebsd.org/changeset/base/217171 Log: Eliminate the counting of vm_page_pa_tryrelock calls. We really don't need it anymore. Moreover, its implementation had a type mismatch, a long is not necessarily an

svn commit: r217177 - head/sys/vm

2011-01-08 Thread Alan Cox
Author: alc Date: Sun Jan 9 04:34:02 2011 New Revision: 217177 URL: http://svn.freebsd.org/changeset/base/217177 Log: Eliminate a redundant alignment directive on the page locks array. Modified: head/sys/vm/vm_page.c Modified: head/sys/vm/vm_page.c

svn commit: r239681 - in head/sys/mips: include mips

2012-08-25 Thread Alan Cox
Author: alc Date: Sat Aug 25 16:55:38 2012 New Revision: 239681 URL: http://svn.freebsd.org/changeset/base/239681 Log: Retire PV_TABLE_MOD. When we destroy or write protect a dirty mapping, we call vm_page_dirty(). Maintaining the PV_TABLE_MOD flag, in addition, serves no useful purpose.

svn commit: r239934 - head/sys/arm/arm

2012-08-30 Thread Alan Cox
Author: alc Date: Fri Aug 31 02:59:44 2012 New Revision: 239934 URL: http://svn.freebsd.org/changeset/base/239934 Log: Replace all uses of the vm page queues lock by a r/w lock that is private to this pmap. Tested by:Ian Lepore Modified: head/sys/arm/arm/pmap.c Modified:

svn commit: r239964 - in head/sys/mips: include mips

2012-08-31 Thread Alan Cox
Author: alc Date: Sat Sep 1 03:46:28 2012 New Revision: 239964 URL: http://svn.freebsd.org/changeset/base/239964 Log: Introduce a new software PTE flag that indicates whether the mapping is for a managed page. Tested by:jchandra Modified: head/sys/mips/include/pmap.h

svn commit: r240000 - head/sys/mips/mips

2012-09-01 Thread Alan Cox
Author: alc Date: Sun Sep 2 04:39:07 2012 New Revision: 24 URL: http://svn.freebsd.org/changeset/base/24 Log: Calculate the new PTE value in pmap_enter() before acquiring any locks. Move an assertion to the beginning of pmap_enter(). Modified: head/sys/mips/mips/pmap.c

svn commit: r240065 - head/sys/dev/gxemul/disk

2012-09-02 Thread Alan Cox
Author: alc Date: Mon Sep 3 02:32:00 2012 New Revision: 240065 URL: http://svn.freebsd.org/changeset/base/240065 Log: Correct an error in gxemul_disk_write(). It was issuing the command to read from rather than write to the emulated disk. Reviewed by: jmallett Modified:

svn commit: r240126 - in head/sys: amd64/amd64 i386/i386 i386/xen mips/mips

2012-09-05 Thread Alan Cox
Author: alc Date: Wed Sep 5 06:02:54 2012 New Revision: 240126 URL: http://svn.freebsd.org/changeset/base/240126 Log: Rename {_,}pmap_unwire_pte_hold() to {_,}pmap_unwire_ptp() and update the comment describing them. Both the function names and the comment had grown stale. Quite some

svn commit: r240166 - head/sys/arm/arm

2012-09-06 Thread Alan Cox
Author: alc Date: Thu Sep 6 16:26:04 2012 New Revision: 240166 URL: http://svn.freebsd.org/changeset/base/240166 Log: There is no need to release the pvh global lock around calls to pmap_get_pv_entry(). In fact, some callers already held it around calls. (In earlier versions, the same

svn commit: r240181 - head/sys/arm/include

2012-09-06 Thread Alan Cox
Author: alc Date: Fri Sep 7 01:33:25 2012 New Revision: 240181 URL: http://svn.freebsd.org/changeset/base/240181 Log: Eliminate an unused macro. Modified: head/sys/arm/include/pmap.h Modified: head/sys/arm/include/pmap.h

svn commit: r240185 - head/sys/mips/mips

2012-09-07 Thread Alan Cox
Author: alc Date: Fri Sep 7 06:12:28 2012 New Revision: 240185 URL: http://svn.freebsd.org/changeset/base/240185 Log: Eliminate unnecessary NULL checks. Modified: head/sys/mips/mips/pmap.c Modified: head/sys/mips/mips/pmap.c

svn commit: r240241 - head/sys/mips/mips

2012-09-08 Thread Alan Cox
Author: alc Date: Sat Sep 8 17:43:20 2012 New Revision: 240241 URL: http://svn.freebsd.org/changeset/base/240241 Log: pmap_remove: Avoid re-walking the page table from the root for every PTE examined. Tidy up some of pmap_remove()'s helper functions. pmap_enter: Set

svn commit: r240317 - in head/sys: amd64/amd64 i386/i386 i386/xen mips/mips

2012-09-10 Thread Alan Cox
Author: alc Date: Mon Sep 10 16:11:29 2012 New Revision: 240317 URL: http://svn.freebsd.org/changeset/base/240317 Log: Simplify pmap_unmapdev(). Since kmem_free() eventually calls pmap_remove(), pmap_unmapdev()'s own direct efforts to destroy the page table entries are redundant, so

svn commit: r240321 - head/sys/arm/arm

2012-09-10 Thread Alan Cox
Author: alc Date: Mon Sep 10 16:27:19 2012 New Revision: 240321 URL: http://svn.freebsd.org/changeset/base/240321 Log: Replace all uses of the vm page queues lock by a r/w lock that is private to this pmap. Revise some comments. The file vm/vm_param.h includes the file

svn commit: r240442 - head/sys/arm/arm

2012-09-13 Thread Alan Cox
Author: alc Date: Thu Sep 13 06:16:49 2012 New Revision: 240442 URL: http://svn.freebsd.org/changeset/base/240442 Log: Simplify the kernel pmap locking in pmap_enter_pv(). While I'm here, tidy up the comments and whitespace. Tested by:cognet Modified: head/sys/arm/arm/pmap.c

svn commit: r240532 - head/sys/arm/arm

2012-09-15 Thread Alan Cox
Author: alc Date: Sat Sep 15 17:32:19 2012 New Revision: 240532 URL: http://svn.freebsd.org/changeset/base/240532 Log: Eliminate an unused malloc type. Modified: head/sys/arm/arm/vm_machdep.c Modified: head/sys/arm/arm/vm_machdep.c

svn commit: r240803 - head/sys/arm/arm

2012-09-22 Thread Alan Cox
Author: alc Date: Sat Sep 22 06:54:03 2012 New Revision: 240803 URL: http://svn.freebsd.org/changeset/base/240803 Log: Since UMA_ZONE_NOFREE is specified when l2zone and l2table_zone are created, there is no need to release and reacquire the pmap and pvh global locks around calls to

svn commit: r240862 - head/sys/vm

2012-09-23 Thread Alan Cox
Author: alc Date: Sun Sep 23 17:42:39 2012 New Revision: 240862 URL: http://svn.freebsd.org/changeset/base/240862 Log: Address a race condition that was introduced in r238212. Unless the page queues lock is acquired before the page lock is released, there is no guarantee that the page will

svn commit: r240913 - head/sys/arm/arm

2012-09-24 Thread Alan Cox
Author: alc Date: Tue Sep 25 03:59:10 2012 New Revision: 240913 URL: http://svn.freebsd.org/changeset/base/240913 Log: Eliminate an unused declaration. Modified: head/sys/arm/arm/pmap-v6.c head/sys/arm/arm/pmap.c Modified: head/sys/arm/arm/pmap-v6.c

svn commit: r240983 - in head/sys/arm: arm include

2012-09-26 Thread Alan Cox
Author: alc Date: Thu Sep 27 05:39:42 2012 New Revision: 240983 URL: http://svn.freebsd.org/changeset/base/240983 Log: Implementing pmap_kextract(va) as pmap_extract(kernel_pmap, va) is problematic because some callers to pmap_kextract() expect its implementation to be lock-less. In

svn commit: r241020 - in head/sys: amd64/amd64 i386/i386 i386/xen ia64/ia64 mips/mips powerpc/aim sparc64/sparc64

2012-09-27 Thread Alan Cox
Author: alc Date: Fri Sep 28 05:30:59 2012 New Revision: 241020 URL: http://svn.freebsd.org/changeset/base/241020 Log: Eliminate a stale comment. It describes another use case for the pmap in Mach that doesn't exist in FreeBSD. Modified: head/sys/amd64/amd64/pmap.c

svn commit: r241044 - head/sys/arm/arm

2012-09-29 Thread Alan Cox
Author: alc Date: Sat Sep 29 08:11:12 2012 New Revision: 241044 URL: http://svn.freebsd.org/changeset/base/241044 Log: Update a comment to reflect recent locking changes. Modified: head/sys/arm/arm/pmap.c Modified: head/sys/arm/arm/pmap.c

svn commit: r241054 - head/sys/arm/arm

2012-09-29 Thread Alan Cox
Author: alc Date: Sat Sep 29 17:20:16 2012 New Revision: 241054 URL: http://svn.freebsd.org/changeset/base/241054 Log: Add support for mincore(). Specifically, this is an adaptation of the pmap_mincore() implementation that was added to the original arm pmap in r235717. Modified:

svn commit: r241055 - head/sys/arm/arm

2012-09-29 Thread Alan Cox
Author: alc Date: Sat Sep 29 19:09:11 2012 New Revision: 241055 URL: http://svn.freebsd.org/changeset/base/241055 Log: Eliminate unused variables. Modified: head/sys/arm/arm/pmap-v6.c head/sys/arm/arm/pmap.c Modified: head/sys/arm/arm/pmap-v6.c

svn commit: r241058 - head/sys/arm/include

2012-09-29 Thread Alan Cox
Author: alc Date: Sat Sep 29 22:28:00 2012 New Revision: 241058 URL: http://svn.freebsd.org/changeset/base/241058 Log: Eliminate an unused declaration. Modified: head/sys/arm/include/pmap.h Modified: head/sys/arm/include/pmap.h

svn commit: r241063 - head/sys/arm/arm

2012-09-29 Thread Alan Cox
Author: alc Date: Sun Sep 30 03:54:57 2012 New Revision: 241063 URL: http://svn.freebsd.org/changeset/base/241063 Log: Stop calling pmap_remove_write() from pmap_remove_all(). Doing so is not only inefficient but also leads to recursive lock acquisition. Tested by:ray Modified:

svn commit: r241123 - in head/sys/mips: include mips

2012-10-02 Thread Alan Cox
Author: alc Date: Tue Oct 2 07:14:22 2012 New Revision: 241123 URL: http://svn.freebsd.org/changeset/base/241123 Log: Introduce a new TLB invalidation function for efficiently invalidating address ranges, and use this function in pmap_remove(). Tested by:jchandra Modified:

svn commit: r241155 - head/sys/vm

2012-10-02 Thread Alan Cox
Author: alc Date: Wed Oct 3 05:06:45 2012 New Revision: 241155 URL: http://svn.freebsd.org/changeset/base/241155 Log: Tidy up a bit: Update some of the comments. In particular, use sleep in preference to block where appropriate. Eliminate some unnecessary casts. Make a few

svn commit: r241156 - head/sys/mips/mips

2012-10-02 Thread Alan Cox
Author: alc Date: Wed Oct 3 05:42:15 2012 New Revision: 241156 URL: http://svn.freebsd.org/changeset/base/241156 Log: Reimplement pmap_qremove() using the new TLB invalidation function for efficiently invalidating address ranges. Modified: head/sys/mips/mips/pmap.c Modified:

svn commit: r241217 - head/sys/mips/mips

2012-10-04 Thread Alan Cox
Author: alc Date: Fri Oct 5 04:35:20 2012 New Revision: 241217 URL: http://svn.freebsd.org/changeset/base/241217 Log: Eliminate a stale and a duplicated comment. Modified: head/sys/mips/mips/pmap.c Modified: head/sys/mips/mips/pmap.c

svn commit: r241276 - head/sys/mips/mips

2012-10-06 Thread Alan Cox
Author: alc Date: Sat Oct 6 19:05:50 2012 New Revision: 241276 URL: http://svn.freebsd.org/changeset/base/241276 Log: Correct two pessimizations in pmap_extract_and_hold(). Test the PTE for having PTE_RO set instead of PTE_D. This avoids some unnecessary failures by

svn commit: r241287 - head/sys/mips/mips

2012-10-06 Thread Alan Cox
Author: alc Date: Sat Oct 6 19:33:52 2012 New Revision: 241287 URL: http://svn.freebsd.org/changeset/base/241287 Log: In general pmap implementations do not set the wired attribute on the temporary mappings that are used to implement operations like pmap_zero_page(). There is no reason

svn commit: r241313 - head/sys/mips/mips

2012-10-07 Thread Alan Cox
Author: alc Date: Sun Oct 7 18:07:45 2012 New Revision: 241313 URL: http://svn.freebsd.org/changeset/base/241313 Log: Optimize the TLB invalidations performed by pmap_protect(). Use the new range-based invalidation function instead of performing per-page invalidations. Don't bother

svn commit: r241353 - in head/sys/i386: i386 xen

2012-10-08 Thread Alan Cox
Author: alc Date: Mon Oct 8 16:57:05 2012 New Revision: 241353 URL: http://svn.freebsd.org/changeset/base/241353 Log: In a few places, like the implementation of ptrace(), a thread may call upon pmap_enter() to create a mapping within a different address space, i.e., not the thread's own

svn commit: r241498 - head/sys/i386/xen

2012-10-12 Thread Alan Cox
Author: alc Date: Fri Oct 12 23:26:00 2012 New Revision: 241498 URL: http://svn.freebsd.org/changeset/base/241498 Log: Replace all uses of the vm page queues lock by a new R/W lock. Unfortunately, this lock cannot be defined as static under Xen because it is (ab)used to serialize queued

Re: svn commit: r241498 - head/sys/i386/xen

2012-10-13 Thread Alan Cox
On 10/13/2012 08:55, Pawel Jakub Dawidek wrote: On Fri, Oct 12, 2012 at 11:26:00PM +, Alan Cox wrote: Author: alc Date: Fri Oct 12 23:26:00 2012 New Revision: 241498 URL: http://svn.freebsd.org/changeset/base/241498 Log: Replace all uses of the vm page queues lock by a new R/W lock

svn commit: r241512 - head/sys/vm

2012-10-13 Thread Alan Cox
Author: alc Date: Sat Oct 13 18:46:46 2012 New Revision: 241512 URL: http://svn.freebsd.org/changeset/base/241512 Log: Eliminate the conditional for releasing the page queues lock in vm_page_sleep(). vm_page_sleep() is no longer called with this lock held. Eliminate assertions that

svn commit: r241517 - head/sys/vm

2012-10-13 Thread Alan Cox
Author: alc Date: Sat Oct 13 20:19:43 2012 New Revision: 241517 URL: http://svn.freebsd.org/changeset/base/241517 Log: Move vm_page_requeue() to the only file that uses it. MFC after:3 weeks Modified: head/sys/vm/vm_page.c head/sys/vm/vm_page.h head/sys/vm/vm_pageout.c

svn commit: r241520 - head/sys/mips/mips

2012-10-13 Thread Alan Cox
Author: alc Date: Sun Oct 14 03:40:08 2012 New Revision: 241520 URL: http://svn.freebsd.org/changeset/base/241520 Log: Correct an error in pmap_pv_reclaim(). It can legitimately encounter wired mappings. If it does, it should just skip them. Modified: head/sys/mips/mips/pmap.c Modified:

Re: svn commit: r241781 - in head: lib/libc/sys sys/kern

2012-10-20 Thread Alan Cox
There are couple minor grammar issues in the text. See below. Alan On 10/20/2012 07:53, Andre Oppermann wrote: Author: andre Date: Sat Oct 20 12:53:14 2012 New Revision: 241781 URL: http://svn.freebsd.org/changeset/base/241781 Log: Hide the unfortunate named sysctl kern.ipc.somaxconn from

Re: svn commit: r241931 - in head/sys: conf kern

2012-10-23 Thread Alan Cox
On 10/23/2012 11:05, Gleb Smirnoff wrote: On Tue, Oct 23, 2012 at 05:05:48PM +0200, Andre Oppermann wrote: A There shouldn't be any users. Zero copy send is broken and A responsible for random kernel crashes. Zero copy receive isn't A supported by any modern driver. Both are useless to

Re: svn commit: r242014 - head/sys/kern

2012-10-25 Thread Alan Cox
On 10/25/2012 11:23, Andre Oppermann wrote: On 25.10.2012 05:49, Bruce Evans wrote: On Wed, 24 Oct 2012, Attilio Rao wrote: On Wed, Oct 24, 2012 at 8:16 PM, Andre Oppermann an...@freebsd.org wrote: ... Let's go back and see how we can do this the sanest way. These are the options I see at

svn commit: r242121 - in head/sys: conf ia64/ia64 ia64/include

2012-10-25 Thread Alan Cox
Author: alc Date: Fri Oct 26 03:02:39 2012 New Revision: 242121 URL: http://svn.freebsd.org/changeset/base/242121 Log: Port the new PV entry allocator from amd64/i386. This allocator has two advantages. First, PV entries are roughly half the size. Second, this allocator doesn't access

svn commit: r242193 - head/sys/mips/mips

2012-10-27 Thread Alan Cox
Author: alc Date: Sat Oct 27 22:43:30 2012 New Revision: 242193 URL: http://svn.freebsd.org/changeset/base/242193 Log: Eliminate a redundant TLB invalidation from pmap_pv_reclaim(). Modified: head/sys/mips/mips/pmap.c Modified: head/sys/mips/mips/pmap.c

svn commit: r242300 - head/sys/vm

2012-10-29 Thread Alan Cox
Author: alc Date: Mon Oct 29 06:15:04 2012 New Revision: 242300 URL: http://svn.freebsd.org/changeset/base/242300 Log: Replace the page hold queue, PQ_HOLD, by a new page flag, PG_UNHOLDFREE, because the queue itself serves no purpose. When a held page is freed, inserting the page into the

svn commit: r242434 - head/sys/vm

2012-11-01 Thread Alan Cox
Author: alc Date: Thu Nov 1 16:20:02 2012 New Revision: 242434 URL: http://svn.freebsd.org/changeset/base/242434 Log: In general, we call pmap_remove_all() before calling vm_page_cache(). So, the call to pmap_remove_all() within vm_page_cache() is usually redundant. This change eliminates

Re: svn commit: r207450 - head/sys/vm

2010-05-01 Thread Alan Cox
Kip Macy wrote: Author: kmacy Date: Fri Apr 30 21:20:14 2010 New Revision: 207450 URL: http://svn.freebsd.org/changeset/base/207450 Log: - acquire the page lock in vm_contig_launder_page before checking page fields - release page queue lock before calling vm_pageout_flush This change

svn commit: r207487 - head/sys/vm

2010-05-01 Thread Alan Cox
Author: alc Date: Sun May 2 01:25:03 2010 New Revision: 207487 URL: http://svn.freebsd.org/changeset/base/207487 Log: Correct an error of omission in r206819. If VMFS_TLB_ALIGNED_SPACE is specified to vm_map_find(), then retry the vm_map_findspace() if vm_map_insert() fails because the

svn commit: r207519 - head/sys/vm

2010-05-02 Thread Alan Cox
Author: alc Date: Sun May 2 16:44:06 2010 New Revision: 207519 URL: http://svn.freebsd.org/changeset/base/207519 Log: This change addresses the race condition that was introduced by the previous revision, r207450, to this file. Specifically, between dropping the page queues lock in

svn commit: r207530 - in head/sys: fs/tmpfs kern vm

2010-05-02 Thread Alan Cox
Author: alc Date: Sun May 2 17:33:46 2010 New Revision: 207530 URL: http://svn.freebsd.org/changeset/base/207530 Log: It makes no sense for vm_page_sleep_if_busy()'s helper, vm_page_sleep(), to unconditionally set PG_REFERENCED on a page before sleeping. In many cases, it's perfectly ok

svn commit: r207531 - head/sys/vm

2010-05-02 Thread Alan Cox
Author: alc Date: Sun May 2 18:09:33 2010 New Revision: 207531 URL: http://svn.freebsd.org/changeset/base/207531 Log: Correct an error in r207410: Remove an unlock of a lock that is no longer held. Modified: head/sys/vm/vm_object.c Modified: head/sys/vm/vm_object.c

svn commit: r207540 - head/sys/vm

2010-05-02 Thread Alan Cox
Author: alc Date: Sun May 2 20:46:17 2010 New Revision: 207540 URL: http://svn.freebsd.org/changeset/base/207540 Log: Defer the acquisition of the page and page queues locks in vm_pageout_object_deactivate_pages(). Modified: head/sys/vm/vm_pageout.c Modified: head/sys/vm/vm_pageout.c

svn commit: r207541 - head/sys/vm

2010-05-02 Thread Alan Cox
Author: alc Date: Sun May 2 21:04:59 2010 New Revision: 207541 URL: http://svn.freebsd.org/changeset/base/207541 Log: Eliminate an assignment that was made redundant by r207410. Modified: head/sys/vm/vm_pageout.c Modified: head/sys/vm/vm_pageout.c

svn commit: r207544 - head/sys/vm

2010-05-02 Thread Alan Cox
Author: alc Date: Sun May 2 23:33:10 2010 New Revision: 207544 URL: http://svn.freebsd.org/changeset/base/207544 Log: Add page lock assertions where we access the page's hold_count. Modified: head/sys/vm/vm_page.c Modified: head/sys/vm/vm_page.c

svn commit: r207548 - in head/sys: kern net

2010-05-02 Thread Alan Cox
Author: alc Date: Mon May 3 05:41:50 2010 New Revision: 207548 URL: http://svn.freebsd.org/changeset/base/207548 Log: This is the first step in transitioning responsibility for synchronizing access to the page's wire_count from the page queues lock to the page lock. Submitted by: kmacy

svn commit: r207552 - head/sys/vm

2010-05-03 Thread Alan Cox
Author: alc Date: Mon May 3 07:08:16 2010 New Revision: 207552 URL: http://svn.freebsd.org/changeset/base/207552 Log: The pages allocated by kmem_alloc_attr() and kmem_malloc() are unmanaged. Consequently, neither the page lock nor the page queues lock is needed to unwire and free them.

svn commit: r207574 - in head/sys/dev: agp drm

2010-05-03 Thread Alan Cox
Author: alc Date: Mon May 3 16:55:50 2010 New Revision: 207574 URL: http://svn.freebsd.org/changeset/base/207574 Log: Acquire the page lock around vm_page_unwire(). For consistency, extend the scope of the object lock in agp_i810.c. (In this specific case, the scope of the object lock

svn commit: r207577 - head/sys/vm

2010-05-03 Thread Alan Cox
Author: alc Date: Mon May 3 17:55:32 2010 New Revision: 207577 URL: http://svn.freebsd.org/changeset/base/207577 Log: Acquire the page lock around vm_page_wire() in vm_page_grab(). Assert that the page lock is held in vm_page_wire(). Modified: head/sys/vm/vm_page.c Modified:

svn commit: r207601 - head/sys/vm

2010-05-03 Thread Alan Cox
Author: alc Date: Tue May 4 05:55:19 2010 New Revision: 207601 URL: http://svn.freebsd.org/changeset/base/207601 Log: Add lock assertions. Modified: head/sys/vm/vm_page.c Modified: head/sys/vm/vm_page.c == ---

svn commit: r207617 - in head/sys: dev/drm kern net vm

2010-05-04 Thread Alan Cox
Author: alc Date: Tue May 4 15:55:41 2010 New Revision: 207617 URL: http://svn.freebsd.org/changeset/base/207617 Log: Add page locking to the vm_page_cow* functions. Push down the acquisition and release of the page queues lock into vm_page_wire(). Reviewed by: kib Modified:

svn commit: r207644 - in head/sys: dev/agp fs/tmpfs kern vm

2010-05-04 Thread Alan Cox
Author: alc Date: Wed May 5 03:45:46 2010 New Revision: 207644 URL: http://svn.freebsd.org/changeset/base/207644 Log: Push down the acquisition of the page queues lock into vm_page_unwire(). Update the comment describing which lock should be held on entry to vm_page_wire().

svn commit: r207648 - head/sys/dev/drm

2010-05-05 Thread Alan Cox
Author: alc Date: Wed May 5 07:40:54 2010 New Revision: 207648 URL: http://svn.freebsd.org/changeset/base/207648 Log: Push down the acquisition of the page queues lock into vm_page_unwire(). Modified: head/sys/dev/drm/via_dmablit.c Modified: head/sys/dev/drm/via_dmablit.c

svn commit: r207649 - head/sys/sparc64/sparc64

2010-05-05 Thread Alan Cox
Author: alc Date: Wed May 5 07:47:40 2010 New Revision: 207649 URL: http://svn.freebsd.org/changeset/base/207649 Log: Use an OBJT_PHYS object and thus PG_UNMANAGED pages to implement the TSB. The TSB is not a pageable structure, so there is no point in using managed pages. Reviewed

svn commit: r207669 - in head/sys: fs/nfsclient fs/nwfs fs/smbfs kern nfsclient ufs/ffs vm

2010-05-05 Thread Alan Cox
Author: alc Date: Wed May 5 18:16:06 2010 New Revision: 207669 URL: http://svn.freebsd.org/changeset/base/207669 Log: Acquire the page lock around all remaining calls to vm_page_free() on managed pages that didn't already have that lock held. (Freeing an unmanaged page, such as the

svn commit: r207692 - in head/sys/mips: include mips

2010-05-05 Thread Alan Cox
Author: alc Date: Thu May 6 04:23:52 2010 New Revision: 207692 URL: http://svn.freebsd.org/changeset/base/207692 Log: Eliminate dead code. Modified: head/sys/mips/include/pmap.h head/sys/mips/mips/pmap.c Modified: head/sys/mips/include/pmap.h

svn commit: r207700 - head/sys/kern

2010-05-06 Thread Alan Cox
Author: alc Date: Thu May 6 15:52:08 2010 New Revision: 207700 URL: http://svn.freebsd.org/changeset/base/207700 Log: Eliminate a small bit of unneeded code from kern_sendfile(): While kern_sendfile() is running, the file's vm object can't be destroyed because kern_sendfile() increments

svn commit: r207702 - in head/sys: amd64/amd64 i386/i386 sparc64/sparc64 vm

2010-05-06 Thread Alan Cox
Author: alc Date: Thu May 6 16:39:43 2010 New Revision: 207702 URL: http://svn.freebsd.org/changeset/base/207702 Log: Push down the page queues lock inside of vm_page_free_toq() and pmap_page_is_mapped() in preparation for removing page queues locking around calls to vm_page_free().

svn commit: r207706 - head/sys/vm

2010-05-06 Thread Alan Cox
Author: alc Date: Thu May 6 17:28:59 2010 New Revision: 207706 URL: http://svn.freebsd.org/changeset/base/207706 Log: Update a comment to say that access to a page's wire count is now synchronized by the page lock. Modified: head/sys/vm/vm_page.h Modified: head/sys/vm/vm_page.h

svn commit: r207708 - in head/sys: kern net

2010-05-06 Thread Alan Cox
Author: alc Date: Thu May 6 17:43:41 2010 New Revision: 207708 URL: http://svn.freebsd.org/changeset/base/207708 Log: Remove page queues locking from all sf_buf_mext()-like functions. The page lock now suffices. Fix a couple nearby style violations. Modified:

svn commit: r207728 - in head/sys: fs/nfsclient fs/nwfs fs/smbfs kern nfsclient ufs/ffs vm

2010-05-06 Thread Alan Cox
Author: alc Date: Thu May 6 18:58:32 2010 New Revision: 207728 URL: http://svn.freebsd.org/changeset/base/207728 Log: Eliminate page queues locking around most calls to vm_page_free(). Modified: head/sys/fs/nfsclient/nfs_clbio.c head/sys/fs/nwfs/nwfs_io.c head/sys/fs/smbfs/smbfs_io.c

svn commit: r207739 - in head/sys: sys vm

2010-05-06 Thread Alan Cox
Author: alc Date: Fri May 7 05:23:15 2010 New Revision: 207739 URL: http://svn.freebsd.org/changeset/base/207739 Log: Eliminate acquisitions of the page queues lock that are no longer needed. Switch to a per-processor counter for the number of pages freed during process termination.

svn commit: r207740 - head/sys/vm

2010-05-07 Thread Alan Cox
Author: alc Date: Fri May 7 06:58:53 2010 New Revision: 207740 URL: http://svn.freebsd.org/changeset/base/207740 Log: Update the synchronization requirements for the page usage count. Modified: head/sys/vm/vm_page.h Modified: head/sys/vm/vm_page.h

  1   2   3   4   5   6   7   8   9   >