The NetBSD Project

CVS log for src/sys/uvm/uvm_object.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / uvm

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.40: download - view: text, markup, annotated - select for diffs
Mon Feb 5 21:46:07 2024 UTC (11 months, 2 weeks ago) by andvar
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, HEAD
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +2 -2 lines
fix various typos in comments.

Revision 1.39: download - view: text, markup, annotated - select for diffs
Fri Aug 14 09:06:15 2020 UTC (4 years, 5 months ago) by chs
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-1-RELEASE, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +3 -3 lines
centralize calls from UVM to radixtree into a few functions.
in those functions, assert that the object lock is held in
the correct mode.

Revision 1.33.38.1: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:09:04 2020 UTC (4 years, 9 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +14 -9 lines
Merge changes from current as of 20200406

Revision 1.38: download - view: text, markup, annotated - select for diffs
Sat Mar 14 20:45:23 2020 UTC (4 years, 10 months ago) by ad
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +2 -2 lines
Make uvm_pagemarkdirty() responsible for putting vnodes onto the syncer
work list.  Proposed on tech-kern@.

Revision 1.35.2.2: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:21:11 2020 UTC (4 years, 10 months ago) by ad
Branches: ad-namecache
Diff to: previous 1.35.2.1: preferred, colored; branchpoint 1.35: preferred, colored; next MAIN 1.36: preferred, colored
Changes since revision 1.35.2.1: +3 -2 lines
Sync with head.

Revision 1.37: download - view: text, markup, annotated - select for diffs
Sun Feb 23 15:46:43 2020 UTC (4 years, 11 months ago) by ad
Branches: MAIN
CVS tags: is-mlppp-base, is-mlppp, ad-namecache-base3
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +3 -2 lines
UVM locking changes, proposed on tech-kern:

- Change the lock on uvm_object, vm_amap and vm_anon to be a RW lock.
- Break v_interlock and vmobjlock apart.  v_interlock remains a mutex.
- Do partial PV list locking in the x86 pmap.  Others to follow later.

Revision 1.35.2.1: download - view: text, markup, annotated - select for diffs
Fri Jan 17 21:47:38 2020 UTC (5 years ago) by ad
Branches: ad-namecache
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +8 -1 lines
Sync with head.

Revision 1.36: download - view: text, markup, annotated - select for diffs
Wed Jan 15 17:55:45 2020 UTC (5 years ago) by ad
Branches: MAIN
CVS tags: ad-namecache-base2, ad-namecache-base1
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +8 -1 lines
Merge from yamt-pagecache (after much testing):

- Reduce unnecessary page scan in putpages esp. when an object has a ton of
  pages cached but only a few of them are dirty.

- Reduce the number of pmap operations by tracking page dirtiness more
  precisely in uvm layer.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Sun Dec 15 21:11:35 2019 UTC (5 years, 1 month ago) by ad
Branches: MAIN
CVS tags: ad-namecache-base
Branch point for: ad-namecache
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +1 -2 lines
Merge from yamt-pagecache:

- do gang lookup of pages using radixtree.
- remove now unused uvm_object::uo_memq and vm_page::listq.queue.

Revision 1.34: download - view: text, markup, annotated - select for diffs
Sat Dec 14 17:28:58 2019 UTC (5 years, 1 month ago) by ad
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +5 -7 lines
Merge from yamt-pagecache: use radixtree for page lookup.

rbtree page lookup was introduced during the NetBSD 5.0 development cycle to
bypass lock contention problems with the (then) global page hash, and was a
temporary solution to allow us to make progress.  radixtree is the intended
replacement.

Ok yamt@.

Revision 1.32.2.1: download - view: text, markup, annotated - select for diffs
Thu Nov 22 20:25:21 2012 UTC (12 years, 2 months ago) by riz
Branches: netbsd-6
CVS tags: netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +4 -1 lines
Pull up following revision(s) (requested by rmind in ticket #694):
	sys/uvm/uvm_aobj.h: revision 1.22
	sys/uvm/uvm_aobj.c: revision 1.117
	sys/uvm/uvm_aobj.c: revision 1.118
	sys/uvm/uvm_aobj.c: revision 1.119
	sys/uvm/uvm_object.h: revision 1.33
- Describe uvm_aobj and the lock order.
- Remove unnecessary uao_dropswap_range1() wrapper.
- KNF.  Sprinkle some __cacheline_aligned.
- Manage anonymous UVM object reference count with atomic ops.
- Fix an old bug of possible lock against oneself (uao_detach_locked() is
  called from uao_swap_off() with uao_list_lock acquired).  Also removes
  the try-lock dance in uao_swap_off(), since the lock order changes.

Revision 1.32.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 20 03:02:54 2012 UTC (12 years, 2 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +4 -1 lines
Resync to 2012-11-19 00:00:00 UTC

Revision 1.31.2.5: download - view: text, markup, annotated - select for diffs
Tue Oct 30 17:23:03 2012 UTC (12 years, 2 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.31.2.4: preferred, colored; branchpoint 1.31: preferred, colored; next MAIN 1.32: preferred, colored
Changes since revision 1.31.2.4: +4 -1 lines
sync with head

Revision 1.33: download - view: text, markup, annotated - select for diffs
Fri Sep 14 22:20:50 2012 UTC (12 years, 4 months ago) by rmind
Branches: MAIN
CVS tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, tls-maxphys-base-20171202, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, phil-wifi-20191119, phil-wifi-20190609, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-9-base, netbsd-9-4-RELEASE, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, netbsd-8-base, netbsd-8-3-RELEASE, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, khorben-n900, jdolecek-ncq-base, jdolecek-ncq, isaki-audio2-base, isaki-audio2, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, agc-symver-base, agc-symver
Branch point for: phil-wifi
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +4 -1 lines
- Manage anonymous UVM object reference count with atomic ops.
- Fix an old bug of possible lock against oneself (uao_detach_locked() is
  called from uao_swap_off() with uao_list_lock acquired).  Also removes
  the try-lock dance in uao_swap_off(), since the lock order changes.

Revision 1.31.2.4: download - view: text, markup, annotated - select for diffs
Wed Aug 1 22:34:14 2012 UTC (12 years, 5 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.31.2.3: preferred, colored; branchpoint 1.31: preferred, colored
Changes since revision 1.31.2.3: +3 -2 lines
- fix integrity sync.
  putpages for integrity sync (fsync, msync with MS_SYNC, etc) should not
  skip pages being written back by other threads.

- adapt to radix tree tag api changes.

Revision 1.31.2.3: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:09:00 2012 UTC (12 years, 9 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.31.2.2: preferred, colored; branchpoint 1.31: preferred, colored
Changes since revision 1.31.2.2: +13 -5 lines
sync with head

Revision 1.31.6.1: download - view: text, markup, annotated - select for diffs
Sat Feb 18 07:36:01 2012 UTC (12 years, 11 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.31: preferred, colored; next MAIN 1.32: preferred, colored
Changes since revision 1.31: +14 -6 lines
merge to -current.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Sat Jan 28 14:37:35 2012 UTC (13 years ago) by rmind
Branches: MAIN
CVS tags: yamt-pagecache-base5, yamt-pagecache-base4, netbsd-6-base, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10
Branch point for: tls-maxphys, netbsd-6
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +14 -6 lines
Describe UVM object and explain lock sharing a little.

Revision 1.31.2.2: download - view: text, markup, annotated - select for diffs
Sun Nov 6 22:05:00 2011 UTC (13 years, 2 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.31.2.1: preferred, colored; branchpoint 1.31: preferred, colored
Changes since revision 1.31.2.1: +2 -3 lines
remove pg->listq and uobj->memq

Revision 1.31.2.1: download - view: text, markup, annotated - select for diffs
Wed Nov 2 21:54:01 2011 UTC (13 years, 2 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +8 -4 lines
page cache related changes

- maintain object pages in radix tree rather than rb tree.
- reduce unnecessary page scan in putpages.  esp. when an object has a ton of
  pages cached but only a few of them are dirty.
- reduce the number of pmap operations by tracking page dirtiness more
  precisely in uvm layer.
- fix nfs commit range tracking.
- fix nfs write clustering.  XXX hack

Revision 1.30.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 23 14:20:36 2011 UTC (13 years, 7 months ago) by cherry
Branches: cherry-xenmp
Diff to: previous 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30: +4 -28 lines
Catchup with rmind-uvmplock merge.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Sun Jun 12 03:36:03 2011 UTC (13 years, 7 months ago) by rmind
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +4 -28 lines
Welcome to 5.99.53!  Merge rmind-uvmplock branch:

- Reorganize locking in UVM and provide extra serialisation for pmap(9).
  New lock order: [vmpage-owner-lock] -> pmap-lock.

- Simplify locking in some pmap(9) modules by removing P->V locking.

- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share
  the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).

- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner.
  Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.

- Unify /dev/mem et al in MI code and provide required locking (removes
  kernel-lock on some ports).  Also, avoid cache-aliasing issues.

Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches
formed the core changes of this branch.

Revision 1.29.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:10:23 2011 UTC (13 years, 7 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29: +1 -8 lines
Sync with HEAD.

Revision 1.26.20.3: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:56:37 2011 UTC (13 years, 10 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.26.20.2: preferred, colored; branchpoint 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26.20.2: +4 -10 lines
sync with head

Revision 1.29.4.1: download - view: text, markup, annotated - select for diffs
Tue Feb 8 16:20:07 2011 UTC (13 years, 11 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29: +1 -8 lines
Sync with HEAD

Revision 1.30: download - view: text, markup, annotated - select for diffs
Wed Feb 2 15:13:34 2011 UTC (13 years, 11 months ago) by chuck
Branches: MAIN
CVS tags: uebayasi-xip-base7, rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base, bouyer-quota2-nbase, bouyer-quota2-base
Branch point for: cherry-xenmp
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +1 -8 lines
udpate license clauses on my code to match the new-style BSD licenses.
based on diff that rmind@ sent me.

no functional change with this commit.

Revision 1.29: download - view: text, markup, annotated - select for diffs
Sat Nov 6 12:19:14 2010 UTC (14 years, 2 months ago) by uebayasi
Branches: MAIN
CVS tags: uebayasi-xip-base6, uebayasi-xip-base5, matt-mips64-premerge-20101231, jruoho-x86intr-base
Branch point for: jruoho-x86intr, bouyer-quota2
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +2 -1 lines
Include uvm/uvm_pglist.h for struct pglist.

Revision 1.26.18.2: download - view: text, markup, annotated - select for diffs
Fri Oct 22 07:22:57 2010 UTC (14 years, 3 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.26.18.1: preferred, colored; branchpoint 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26.18.1: +2 -2 lines
Sync with HEAD (-D20101022).

Revision 1.24.10.2: download - view: text, markup, annotated - select for diffs
Sat Oct 9 03:32:47 2010 UTC (14 years, 3 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.24.10.1: preferred, colored; branchpoint 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24.10.1: +3 -3 lines
sync with head

Revision 1.28: download - view: text, markup, annotated - select for diffs
Sat Sep 25 01:42:40 2010 UTC (14 years, 4 months ago) by matt
Branches: MAIN
CVS tags: yamt-nfs-mp-base11, uebayasi-xip-base4, uebayasi-xip-base3
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +2 -2 lines
Rename rb.h to rbtree.h, as it is more appropriate (c.f. ptree.h).  Also
helps find code that hasn't been updated to use the new rbtree API.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Fri Sep 24 22:51:51 2010 UTC (14 years, 4 months ago) by rmind
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +2 -2 lines
Fixes/improvements to RB-tree implementation:
1. Fix inverted node order, so that negative value from comparison operator
   would represent lower (left) node, and positive - higher (right) node.
2. Add an argument (i.e. "context"), passed to comparison operators.
3. Change rb_tree_insert_node() to return a node - either inserted one or
   already existing one.
4. Amend the interface to manipulate the actual object, instead of the
   rb_node (in a similar way as Patricia-tree interface does).
5. Update all RB-tree users accordingly.

XXX: Perhaps rename rb.h to rbtree.h, since cleaning-up..

1-3 address the PR/43488 by Jeremy Huddleston.

Passes RB-tree regression tests.
Reviewed by: matt@, christos@

Revision 1.26.18.1: download - view: text, markup, annotated - select for diffs
Wed Apr 28 08:22:05 2010 UTC (14 years, 9 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +2 -1 lines
Don't expose uvm_page.h internal for usual uvm(9) users.

Revision 1.26.20.2: download - view: text, markup, annotated - select for diffs
Mon Apr 26 02:20:59 2010 UTC (14 years, 9 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.26.20.1: preferred, colored; branchpoint 1.26: preferred, colored
Changes since revision 1.26.20.1: +3 -1 lines
Add ubc_purge() and purge/deassociate any related UBC entries during
object (usually, vnode) destruction.  Since locking (and thus object)
is required to enter/remove mappings - object is not allowed anymore
to disappear with any UBC entries left.

From original patch by ad@ with some modifications.

Revision 1.26.20.1: download - view: text, markup, annotated - select for diffs
Tue Mar 16 15:38:18 2010 UTC (14 years, 10 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +2 -28 lines
Change struct uvm_object::vmobjlock to be dynamically allocated with
mutex_obj_alloc().  It allows us to share the locks among UVM objects.

Revision 1.24.10.1: download - view: text, markup, annotated - select for diffs
Mon May 4 08:14:39 2009 UTC (15 years, 8 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +19 -2 lines
sync with head.

Revision 1.24.12.1: download - view: text, markup, annotated - select for diffs
Mon Jun 23 04:32:06 2008 UTC (16 years, 7 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +19 -2 lines
Sync w/ -current. 34 merge conflicts to follow.

Revision 1.24.8.2: download - view: text, markup, annotated - select for diffs
Tue Jun 17 09:15:17 2008 UTC (16 years, 7 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.24.8.1: preferred, colored; branchpoint 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24.8.1: +18 -1 lines
sync with head.

Revision 1.24.6.1: download - view: text, markup, annotated - select for diffs
Thu Jun 5 19:14:38 2008 UTC (16 years, 7 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +19 -2 lines
Sync with HEAD.

Also fix build.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Wed Jun 4 15:06:04 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-base4, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base10, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: uebayasi-xip, rmind-uvmplock
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +18 -1 lines
Replace the global vm_page hash with a per vm_object rbtree.
Proposed on tech-kern@.

Revision 1.24.8.1: download - view: text, markup, annotated - select for diffs
Wed Jun 4 02:05:54 2008 UTC (16 years, 7 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +2 -2 lines
sync with head

Revision 1.25: download - view: text, markup, annotated - select for diffs
Mon Jun 2 16:25:34 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-base3
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +2 -2 lines
Use atomics to maintain v_usecount.

Revision 1.22.30.2: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:07:33 2008 UTC (16 years, 11 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.22.30.1: preferred, colored; branchpoint 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22.30.1: +8 -3 lines
Sync with HEAD.

Revision 1.18.2.4: download - view: text, markup, annotated - select for diffs
Mon Jan 21 09:48:23 2008 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.18.2.3: preferred, colored; next MAIN 1.19: preferred, colored
Changes since revision 1.18.2.3: +8 -3 lines
sync with head

Revision 1.22.24.1: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:58:42 2008 UTC (17 years ago) by matt
Branches: matt-armv6
Diff to: previous 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22: +13 -8 lines
sync with HEAD

Revision 1.23.6.1: download - view: text, markup, annotated - select for diffs
Wed Jan 2 21:58:41 2008 UTC (17 years ago) by bouyer
Branches: bouyer-xeni386
CVS tags: bouyer-xeni386-merge1
Diff to: previous 1.23: preferred, colored; next MAIN 1.24: preferred, colored
Changes since revision 1.23: +7 -2 lines
Sync with HEAD

Revision 1.24: download - view: text, markup, annotated - select for diffs
Wed Jan 2 11:49:18 2008 UTC (17 years ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base2, yamt-pf42-base, yamt-nfs-mp-base2, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-nbase, hpcarm-cleanup-base, bouyer-xeni386-nbase, bouyer-xeni386-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, wrstuden-revivesa, mjf-devfs2
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +8 -3 lines
Merge vmlocking2 to head.

Revision 1.22.30.1: download - view: text, markup, annotated - select for diffs
Sat Dec 8 18:21:46 2007 UTC (17 years, 1 month ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +6 -6 lines
Sync with HEAD.

Revision 1.18.2.3: download - view: text, markup, annotated - select for diffs
Fri Dec 7 17:35:28 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.18.2.2: preferred, colored
Changes since revision 1.18.2.2: +6 -6 lines
sync with head

Revision 1.23.2.1: download - view: text, markup, annotated - select for diffs
Tue Dec 4 13:04:02 2007 UTC (17 years, 1 month ago) by ad
Branches: vmlocking2
Diff to: previous 1.23: preferred, colored; next MAIN 1.24: preferred, colored
Changes since revision 1.23: +8 -3 lines
Pull the vmlocking changes into a new branch.

Revision 1.22.22.1: download - view: text, markup, annotated - select for diffs
Mon Dec 3 16:15:25 2007 UTC (17 years, 1 month ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22: +6 -6 lines
Sync with HEAD.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Sat Dec 1 10:40:28 2007 UTC (17 years, 2 months ago) by yamt
Branches: MAIN
CVS tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: vmlocking2, bouyer-xeni386
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +5 -5 lines
constify pagerops.

Revision 1.22.8.2: download - view: text, markup, annotated - select for diffs
Tue Aug 21 11:24:38 2007 UTC (17 years, 5 months ago) by yamt
Branches: vmlocking
Diff to: previous 1.22.8.1: preferred, colored; branchpoint 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22.8.1: +6 -1 lines
destroy vmobjlock.

Revision 1.22.8.1: download - view: text, markup, annotated - select for diffs
Tue Mar 13 17:51:57 2007 UTC (17 years, 10 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +3 -3 lines
Pull in the initial set of changes for the vmlocking branch.

Revision 1.18.2.2: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:51:05 2006 UTC (18 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.18.2.1: preferred, colored
Changes since revision 1.18.2.1: +4 -9 lines
sync with head.

Revision 1.21.20.1: download - view: text, markup, annotated - select for diffs
Sat Nov 18 21:39:50 2006 UTC (18 years, 2 months ago) by ad
Branches: newlock2
Diff to: previous 1.21: preferred, colored; next MAIN 1.22: preferred, colored
Changes since revision 1.21: +4 -9 lines
Sync with head.

Revision 1.21.22.1: download - view: text, markup, annotated - select for diffs
Sun Oct 22 06:07:53 2006 UTC (18 years, 3 months ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.21: preferred, colored; next MAIN 1.22: preferred, colored
Changes since revision 1.21: +4 -9 lines
sync with head

Revision 1.22: download - view: text, markup, annotated - select for diffs
Thu Oct 12 10:14:20 2006 UTC (18 years, 3 months ago) by yamt
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, yamt-idlelwp-base8, yamt-idlelwp, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, vmlocking-base, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, post-newlock2-merge, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, newlock2-nbase, newlock2-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, mjf-ufs-trans-base, mjf-ufs-trans, matt-nb4-arm-base, matt-nb4-arm, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, jmcneill-base, hpcarm-cleanup, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64, ad-audiomp-base, ad-audiomp
Branch point for: vmlocking, mjf-devfs, matt-armv6, jmcneill-pm
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +4 -9 lines
move some knowledge about vnode into uvm_vnode.c.

Revision 1.18.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 21 15:12:40 2006 UTC (18 years, 7 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +18 -1 lines
sync with head.

Revision 1.21: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:25:29 2005 UTC (19 years, 1 month ago) by christos
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, yamt-pdpolicy, simonb-timecounters-base, simonb-timecounters, simonb-timcounters-final, rpaulo-netinet-merge-pcb-base, rpaulo-netinet-merge-pcb, peter-altq-base, peter-altq, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, elad-kernelauth, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +1 -1 lines
merge ktrace-lwp.

Revision 1.16.6.4: download - view: text, markup, annotated - select for diffs
Thu Nov 10 14:12:40 2005 UTC (19 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.16.6.3: preferred, colored; branchpoint 1.16: preferred, colored; next MAIN 1.17: preferred, colored
Changes since revision 1.16.6.3: +27 -1 lines
Sync with HEAD. Here we go again...

Revision 1.17.14.1: download - view: text, markup, annotated - select for diffs
Wed Aug 24 18:43:38 2005 UTC (19 years, 5 months ago) by riz
Branches: netbsd-3
CVS tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Diff to: previous 1.17: preferred, colored; next MAIN 1.18: preferred, colored
Changes since revision 1.17: +18 -1 lines
Pull up following revision(s) (requested by yamt in ticket #688):
	sys/miscfs/genfs/genfs_vnops.c: revision 1.98 via patch
	sys/ufs/ffs/ffs_vfsops.c: revision 1.165
	sys/ufs/lfs/lfs_extern.h: revision 1.69
	sys/fs/filecorefs/filecore_vfsops.c: revision 1.20
	sys/nfs/nfs_node.c: revision 1.80
	sys/fs/smbfs/smbfs_node.c: revision 1.24
	sys/fs/cd9660/cd9660_vfsops.c: revision 1.24
	sys/fs/msdosfs/msdosfs_denode.c: revision 1.8
	sys/miscfs/genfs/genfs_node.h: revision 1.6
	sys/ufs/lfs/lfs_vfsops.c: revision 1.183
	sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.86
	sys/fs/adosfs/advfsops.c: revision 1.23
	sys/fs/ntfs/ntfs_vfsops.c: revision 1.31
- constify genfs_ops.
- use member designators.

        sys/miscfs/genfs/genfs_vnops.c: revision 1.99 via patch
genfs_getpages: don't forget to put the vnode onto the syncer's work que
ue
even in the case of PGO_LOCKED.

        sys/uvm/uvm_bio.c: revision 1.40
        sys/uvm/uvm_pager.h: revision 1.29
        sys/miscfs/genfs/genfs_vnops.c: revision 1.100 via patch
        sys/ufs/ufs/ufs_inode.c: revision 1.50
- introduce PGO_NOBLOCKALLOC and use it for ubc mapping
  to prevent unnecessary block allocations in the case that
  page size > block size.
- ufs_balloc_range: use VM_PROT_WRITE+PGO_NOBLOCKALLOC rather than
  VM_PROT_READ.

        sys/uvm/uvm_fault.c: revision 1.96
        sys/miscfs/genfs/genfs_vnops.c: revision 1.101 via patch
        sys/uvm/uvm_object.h: revision 1.19
        sys/miscfs/genfs/genfs_node.h: revision 1.7
ensure that vnodes with dirty pages are always on syncer's queue.
- genfs_putpages: wait for i/o completion of PG_RELEASED/PG_PAGEOUT pages by
  setting "wasclean" false when encountering them.
  suggested by Stephan Uphoff in PR/24596 (1).
- genfs_putpages: write protect pages when cleaning out, if
  we're going to take the vnode off the syncer's queue.
  uvm_fault: don't write-map pages unless its vnode is already on
  the syncer's queue.
  fix PR/24596 (3) but in the different way from the suggested fix.
  (to keep our current behaviour, ie. not to require explicit msync.
  discussed on tech-kern@.)
- genfs_putpages: don't mistakenly take a vnode off the queue
  by introducing a generation number in genfs_node.
  genfs_getpages: increment the generation number.
  suggested by Stephan Uphoff in PR/24596 (2).
- add some assertions.

        sys/miscfs/genfs/genfs_vnops.c: revision 1.102 via patch
genfs_putpages: don't bother to clean the vnode unless VONWORKLST.

        sys/ufs/ffs/ffs_vnops.c: revision 1.71
ffs_full_fsync: because VBLK/VCHR can be mmap'ed,
do VOP_PUTPAGES for them as well.

        sys/uvm/uvm_fault.c: revision 1.97
uvm_fault: check a correct object in the case of layered filesystems.
fix PR/30811 from Jukka Salmi.

        sys/uvm/uvm_object.h: revision 1.20
        sys/ufs/ffs/ffs_vfsops.c: revision 1.167
        sys/uvm/uvm_bio.c: revision 1.41
        sys/ufs/ufs/ufs_vnops.c: revision 1.129
        sys/uvm/uvm_mmap.c: revision 1.92
        sys/uvm/uvm_fault.c: revision 1.98
        sys/kern/vfs_subr.c: revision 1.252
        sys/fs/msdosfs/denode.h: revision 1.5
        sys/miscfs/genfs/genfs_vnops.c: revision 1.103 via patch
        sys/fs/msdosfs/msdosfs_denode.c: revision 1.9
        sys/sys/vnode.h: revision 1.141
        sys/ufs/ufs/ufs_inode.c: revision 1.51
        sys/ufs/ufs/ufs_extern.h: revision 1.45 via patch
        sys/miscfs/genfs/genfs_node.h: revision 1.8
        sys/ufs/lfs/lfs_vfsops.c: revision 1.184
        sys/uvm/uvm_pager.h: revision 1.30
        sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.87
update file timestamps for nfsd loaned-read and mmap.
PR/25279.  discussed on tech-kern@.

        sys/miscfs/genfs/genfs_vnops.c: revision 1.104 via patch
don't write-protect wired pages.  pointed by Chuck Silvers.
for now, leave a vnode on the syncer's queue, as suggested by him.

        sys/ufs/ffs/ffs_vnops.c: revision 1.72
revert VCHR part of ffs_vnops.c 1.71.
as VCHR uses the device pager, no point to call VOP_PUTPAGES here.
pointed by Chuck Silvers.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Sat Jul 23 12:18:41 2005 UTC (19 years, 6 months ago) by yamt
Branches: MAIN
CVS tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +14 -1 lines
update file timestamps for nfsd loaned-read and mmap.
PR/25279.  discussed on tech-kern@.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Sun Jul 17 12:27:47 2005 UTC (19 years, 6 months ago) by yamt
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +5 -1 lines
ensure that vnodes with dirty pages are always on syncer's queue.

- genfs_putpages: wait for i/o completion of PG_RELEASED/PG_PAGEOUT pages by
  setting "wasclean" false when encountering them.
  suggested by Stephan Uphoff in PR/24596 (1).

- genfs_putpages: write protect pages when cleaning out, if
  we're going to take the vnode off the syncer's queue.
  uvm_fault: don't write-map pages unless its vnode is already on
  the syncer's queue.

  fix PR/24596 (3) but in the different way from the suggested fix.
  (to keep our current behaviour, ie. not to require explicit msync.
  discussed on tech-kern@.)

- genfs_putpages: don't mistakenly take a vnode off the queue
  by introducing a generation number in genfs_node.
  genfs_getpages: increment the generation number.
  suggested by Stephan Uphoff in PR/24596 (2).

- add some assertions.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Mon Jun 6 12:09:19 2005 UTC (19 years, 7 months ago) by yamt
Branches: MAIN
Branch point for: yamt-lazymbuf
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +10 -1 lines
introduce a macro to initialize uvm_object and use it.

Revision 1.16.6.3: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:39:29 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.16.6.2: preferred, colored; branchpoint 1.16: preferred, colored
Changes since revision 1.16.6.2: +1 -1 lines
Fix the sync with head I botched.

Revision 1.16.6.2: download - view: text, markup, annotated - select for diffs
Sat Sep 18 14:57:12 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.16.6.1: preferred, colored; branchpoint 1.16: preferred, colored
Changes since revision 1.16.6.1: +0 -0 lines
Sync with HEAD.

Revision 1.16.6.1: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:57:07 2004 UTC (20 years, 5 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +4 -1 lines
Sync with HEAD

Revision 1.17: download - view: text, markup, annotated - select for diffs
Sat Nov 29 19:06:48 2003 UTC (21 years, 2 months ago) by yamt
Branches: MAIN
CVS tags: yamt-km-base4, yamt-km-base3, yamt-km-base2, yamt-km-base, yamt-km, netbsd-3-base, netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, kent-audio2-base, kent-audio2, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: netbsd-3
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +4 -1 lines
mincore: don't treat an aobj as a device mapping.

Revision 1.12.2.3: download - view: text, markup, annotated - select for diffs
Fri Sep 6 08:50:25 2002 UTC (22 years, 4 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.12.2.2: preferred, colored; branchpoint 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12.2.2: +3 -1 lines
sync kqueue branch with HEAD

Revision 1.10.2.6: download - view: text, markup, annotated - select for diffs
Thu Aug 1 02:47:08 2002 UTC (22 years, 6 months ago) by nathanw
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.10.2.5: preferred, colored; next MAIN 1.11: preferred, colored
Changes since revision 1.10.2.5: +3 -1 lines
Catch up to -current.

Revision 1.15.2.1: download - view: text, markup, annotated - select for diffs
Mon Jul 15 10:37:34 2002 UTC (22 years, 6 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.15: preferred, colored; next MAIN 1.16: preferred, colored
Changes since revision 1.15: +3 -1 lines
catch up with -current.

Revision 1.12.2.2: download - view: text, markup, annotated - select for diffs
Sun Jun 23 17:52:18 2002 UTC (22 years, 7 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.12.2.1: preferred, colored; branchpoint 1.12: preferred, colored
Changes since revision 1.12.2.1: +4 -1 lines
catch up with -current on kqueue branch

Revision 1.15.4.1: download - view: text, markup, annotated - select for diffs
Fri Jun 21 00:55:31 2002 UTC (22 years, 7 months ago) by lukem
Branches: netbsd-1-6
CVS tags: netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Diff to: previous 1.15: preferred, colored; next MAIN 1.16: preferred, colored
Changes since revision 1.15: +3 -1 lines
Pull up revision 1.16 (requested by chs in ticket #329):
count aobj pages (most notably kernel stack pages) as anon pages
for memory usage-balancing purposes.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Thu Jun 20 15:05:29 2002 UTC (22 years, 7 months ago) by chs
Branches: MAIN
CVS tags: nathanw_sa_before_merge, nathanw_sa_base, kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, gehenna-devsw-base, fvdl_fs64_base
Branch point for: ktrace-lwp
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +3 -1 lines
count aobj pages (most notably kernel stack pages) as anon pages
for memory usage-balancing purposes.

Revision 1.10.2.5: download - view: text, markup, annotated - select for diffs
Thu Jun 20 03:50:42 2002 UTC (22 years, 7 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.10.2.4: preferred, colored
Changes since revision 1.10.2.4: +4 -1 lines
Catch up to -current.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Wed May 15 06:57:50 2002 UTC (22 years, 8 months ago) by matt
Branches: MAIN
CVS tags: netbsd-1-6-base
Branch point for: netbsd-1-6, gehenna-devsw
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +4 -1 lines
When core dumping a process, don't dump maps backed up by the device pager.
(move the pagerops externs to uvm_object.h and out the C files).

Revision 1.12.2.1: download - view: text, markup, annotated - select for diffs
Thu Jan 10 20:05:42 2002 UTC (23 years ago) by thorpej
Branches: kqueue
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +3 -15 lines
Sync kqueue branch with -current.

Revision 1.10.2.4: download - view: text, markup, annotated - select for diffs
Wed Nov 14 19:19:07 2001 UTC (23 years, 2 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.10.2.3: preferred, colored
Changes since revision 1.10.2.3: +2 -2 lines
Catch up to -current.

Revision 1.13.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 12 21:19:55 2001 UTC (23 years, 2 months ago) by thorpej
Branches: thorpej-mips-cache
Diff to: previous 1.13: preferred, colored; next MAIN 1.14: preferred, colored
Changes since revision 1.13: +2 -2 lines
Sync the thorpej-mips-cache branch with -current.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Tue Oct 30 15:32:05 2001 UTC (23 years, 3 months ago) by thorpej
Branches: MAIN
CVS tags: thorpej-mips-cache-base, newlock-base, newlock, ifpoll-base, eeh-devprop-base, eeh-devprop
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +2 -2 lines
- Add a new vnode flag VEXECMAP, which indicates that a vnode has
  executable mappings.  Stop overloading VTEXT for this purpose (VTEXT
  also has another meaning).
- Rename vn_marktext() to vn_markexec(), and use it when executable
  mappings of a vnode are established.
- In places where we want to set VTEXT, set it in v_flag directly, rather
  than making a function call to do this (it no longer makes sense to
  use a function call, since we no longer overload VTEXT with VEXECMAP's
  meaning).

VEXECMAP suggested by Chuq Silvers.

Revision 1.12.4.1: download - view: text, markup, annotated - select for diffs
Mon Oct 1 12:48:44 2001 UTC (23 years, 4 months ago) by fvdl
Branches: thorpej-devvp
Diff to: previous 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12: +2 -14 lines
Catch up with -current.

Revision 1.10.2.3: download - view: text, markup, annotated - select for diffs
Fri Sep 21 22:37:16 2001 UTC (23 years, 4 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.10.2.2: preferred, colored
Changes since revision 1.10.2.2: +2 -14 lines
Catch up to -current.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Sat Sep 15 20:36:46 2001 UTC (23 years, 4 months ago) by chs
Branches: MAIN
CVS tags: thorpej-devvp-base3, thorpej-devvp-base2, post-chs-ubcperf
Branch point for: thorpej-mips-cache
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +2 -14 lines
a whole bunch of changes to improve performance and robustness under load:

 - remove special treatment of pager_map mappings in pmaps.  this is
   required now, since I've removed the globals that expose the address range.
   pager_map now uses pmap_kenter_pa() instead of pmap_enter(), so there's
   no longer any need to special-case it.
 - eliminate struct uvm_vnode by moving its fields into struct vnode.
 - rewrite the pageout path.  the pager is now responsible for handling the
   high-level requests instead of only getting control after a bunch of work
   has already been done on its behalf.  this will allow us to UBCify LFS,
   which needs tighter control over its pages than other filesystems do.
   writing a page to disk no longer requires making it read-only, which
   allows us to write wired pages without causing all kinds of havoc.
 - use a new PG_PAGEOUT flag to indicate that a page should be freed
   on behalf of the pagedaemon when it's unlocked.  this flag is very similar
   to PG_RELEASED, but unlike PG_RELEASED, PG_PAGEOUT can be cleared if the
   pageout fails due to eg. an indirect-block buffer being locked.
   this allows us to remove the "version" field from struct vm_page,
   and together with shrinking "loan_count" from 32 bits to 16,
   struct vm_page is now 4 bytes smaller.
 - no longer use PG_RELEASED for swap-backed pages.  if the page is busy
   because it's being paged out, we can't release the swap slot to be
   reallocated until that write is complete, but unlike with vnodes we
   don't keep a count of in-progress writes so there's no good way to
   know when the write is done.  instead, when we need to free a busy
   swap-backed page, just sleep until we can get it busy ourselves.
 - implement a fast-path for extending writes which allows us to avoid
   zeroing new pages.  this substantially reduces cpu usage.
 - encapsulate the data used by the genfs code in a struct genfs_node,
   which must be the first element of the filesystem-specific vnode data
   for filesystems which use genfs_{get,put}pages().
 - eliminate many of the UVM pagerops, since they aren't needed anymore
   now that the pager "put" operation is a higher-level operation.
 - enhance the genfs code to allow NFS to use the genfs_{get,put}pages
   instead of a modified copy.
 - clean up struct vnode by removing all the fields that used to be used by
   the vfs_cluster.c code (which we don't use anymore with UBC).
 - remove kmem_object and mb_object since they were useless.
   instead of allocating pages to these objects, we now just allocate
   pages with no object.  such pages are mapped in the kernel until they
   are freed, so we can use the mapping to find the page to free it.
   this allows us to remove splvm() protection in several places.

The sum of all these changes improves write throughput on my
decstation 5000/200 to within 1% of the rate of NetBSD 1.5
and reduces the elapsed time for "make release" of a NetBSD 1.5
source tree on my 128MB pc to 10% less than a 1.5 kernel took.

Revision 1.10.2.2: download - view: text, markup, annotated - select for diffs
Thu Jun 21 20:10:38 2001 UTC (23 years, 7 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.10.2.1: preferred, colored
Changes since revision 1.10.2.1: +2 -2 lines
Catch up to -current.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Sat May 26 16:32:47 2001 UTC (23 years, 8 months ago) by chs
Branches: MAIN
CVS tags: thorpej-devvp-base, pre-chs-ubcperf
Branch point for: thorpej-devvp, kqueue
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +2 -2 lines
replace {simple_,}lock{_data,}_t with struct {simple,}lock {,*}.

Revision 1.10.2.1: download - view: text, markup, annotated - select for diffs
Mon Apr 9 01:59:19 2001 UTC (23 years, 9 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +6 -1 lines
Catch up with -current.

Revision 1.8.2.2: download - view: text, markup, annotated - select for diffs
Mon Mar 12 13:32:12 2001 UTC (23 years, 10 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.8.2.1: preferred, colored; branchpoint 1.8: preferred, colored; next MAIN 1.9: preferred, colored
Changes since revision 1.8.2.1: +6 -1 lines
Sync with HEAD.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Fri Mar 9 01:02:12 2001 UTC (23 years, 10 months ago) by chs
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +6 -1 lines
add UBC memory-usage balancing.  we track the number of pages in use for
each of the basic types (anonymous data, executable image, cached files)
and prevent the pagedaemon from reusing a given page if that would reduce
the count of that type of page below a sysctl-setable minimum threshold.
the thresholds are controlled via three new sysctl tunables:
vm.anonmin, vm.vnodemin, and vm.vtextmin.  these tunables are the
percentages of pageable memory reserved for each usage, and we do not allow
the sum of the minimums to be more than 95% so that there's always some
memory that can be reused.

Revision 1.8.2.1: download - view: text, markup, annotated - select for diffs
Sun Feb 11 19:17:50 2001 UTC (23 years, 11 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +10 -1 lines
Sync with HEAD.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Sun Jan 28 22:23:06 2001 UTC (24 years ago) by thorpej
Branches: MAIN
Branch point for: nathanw_sa
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +7 -1 lines
Put the extern decl of uvm_vnodeops in uvm_object.h

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sun Jan 28 22:14:28 2001 UTC (24 years ago) by thorpej
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +4 -1 lines
Define a UVM_OBJ_IS_VNODE() macro to test if an object is a vnode.

Revision 1.6.4.1: download - view: text, markup, annotated - select for diffs
Mon Jun 21 01:47:21 1999 UTC (25 years, 7 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.6: preferred, colored; next MAIN 1.7: preferred, colored
Changes since revision 1.6: +17 -2 lines
Sync w/ -current.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue May 25 20:30:09 1999 UTC (25 years, 8 months ago) by thorpej
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, wrstuden-devbsize, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5, minoura-xpg4dl-base, minoura-xpg4dl, fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-newbase, chs-ubc2-base
Branch point for: thorpej_scsipi
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +16 -3 lines
Define a new kernel object type, "intrsafe", which are used for objects
which can be used in an interrupt context.  Use pmap_kenter*() and
pmap_kremove() only for mappings owned by these objects.

Fixes some locking protocol issues related to MP support, and eliminates
all of the pmap_enter vs. pmap_kremove inconsistencies.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Tue May 25 00:09:01 1999 UTC (25 years, 8 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +3 -1 lines
Macro'ize the test for "object is a kernel object".

Revision 1.6: download - view: text, markup, annotated - select for diffs
Thu Mar 25 18:48:53 1999 UTC (25 years, 10 months ago) by mrg
Branches: MAIN
CVS tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +1 -5 lines
remove now >1 year old pre-release message.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Mon Mar 9 00:58:58 1998 UTC (26 years, 10 months ago) by mrg
Branches: MAIN
CVS tags: kenh-if-detach-base, kenh-if-detach, eeh-paddr_t-base, eeh-paddr_t, chs-ubc-base, chs-ubc
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +6 -6 lines
KNF.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue Feb 10 02:34:50 1998 UTC (26 years, 11 months ago) by perry
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +5 -5 lines
add/cleanup multiple inclusion protection.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sat Feb 7 11:09:17 1998 UTC (26 years, 11 months ago) by mrg
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +2 -0 lines
restore rcsids

Revision 1.2: download - view: text, markup, annotated - select for diffs
Fri Feb 6 22:32:11 1998 UTC (26 years, 11 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +1 -1 lines
RCS ID police.

Revision 1.1.1.1 (vendor branch): download - view: text, markup, annotated - select for diffs
Thu Feb 5 06:25:09 1998 UTC (26 years, 11 months ago) by mrg
Branches: CDC
CVS tags: uvm980205
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +0 -0 lines
initial import of the new virtual memory system, UVM, into -current.

UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the UVM kernel code portion.


this will be KNF'd shortly.  :-)

Revision 1.1: download - view: text, markup, annotated - select for diffs
Thu Feb 5 06:25:09 1998 UTC (26 years, 11 months ago) by mrg
Branches: MAIN
Initial revision

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>