History log of /netbsd-src/sys/uvm/uvm_object.h (Results 1 – 25 of 40)
Revision Date Author Comments
# 82bba4e9 05-Feb-2024 andvar <andvar@NetBSD.org>

fix various typos in comments.


# 19303cec 14-Aug-2020 chs <chs@NetBSD.org>

centralize calls from UVM to radixtree into a few functions.
in those functions, assert that the object lock is held in
the correct mode.


# da3ef92b 14-Mar-2020 ad <ad@NetBSD.org>

Make uvm_pagemarkdirty() responsible for putting vnodes onto the syncer
work list. Proposed on tech-kern@.


# d2a0ebb6 23-Feb-2020 ad <ad@NetBSD.org>

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

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.

show more ...


# 05a3457e 15-Jan-2020 ad <ad@NetBSD.org>

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 p

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.

show more ...


# 881d12e6 15-Dec-2019 ad <ad@NetBSD.org>

Merge from yamt-pagecache:

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


# 68575131 14-Dec-2019 ad <ad@NetBSD.org>

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 has

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@.

show more ...


# 1e840676 14-Sep-2012 rmind <rmind@NetBSD.org>

- 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). Al

- 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.

show more ...


# 247885b6 28-Jan-2012 rmind <rmind@NetBSD.org>

Describe UVM object and explain lock sharing a little.


# e225b7bd 12-Jun-2011 rmind <rmind@NetBSD.org>

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

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.

show more ...


# 3ba477b1 02-Feb-2011 chuck <chuck@NetBSD.org>

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.


# b73ba829 06-Nov-2010 uebayasi <uebayasi@NetBSD.org>

Include uvm/uvm_pglist.h for struct pglist.


# 19e6c76b 25-Sep-2010 matt <matt@NetBSD.org>

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.


# 879d5dfb 24-Sep-2010 rmind <rmind@NetBSD.org>

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.

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@

show more ...


# 7a34cb95 04-Jun-2008 ad <ad@NetBSD.org>

Replace the global vm_page hash with a per vm_object rbtree.
Proposed on tech-kern@.


# 3a8db315 02-Jun-2008 ad <ad@NetBSD.org>

Use atomics to maintain v_usecount.


# 4a780c9a 02-Jan-2008 ad <ad@NetBSD.org>

Merge vmlocking2 to head.


# e8abff70 01-Dec-2007 yamt <yamt@NetBSD.org>

constify pagerops.


# 9de1cdc8 12-Oct-2006 yamt <yamt@NetBSD.org>

move some knowledge about vnode into uvm_vnode.c.


# 95e1ffb1 11-Dec-2005 christos <christos@NetBSD.org>

merge ktrace-lwp.


# b7bfe828 23-Jul-2005 yamt <yamt@NetBSD.org>

update file timestamps for nfsd loaned-read and mmap.
PR/25279. discussed on tech-kern@.


# 8af42d8d 17-Jul-2005 yamt <yamt@NetBSD.org>

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.
su

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.

show more ...


# 11bfc2d8 06-Jun-2005 yamt <yamt@NetBSD.org>

introduce a macro to initialize uvm_object and use it.


# f7d48e35 29-Nov-2003 yamt <yamt@NetBSD.org>

mincore: don't treat an aobj as a device mapping.


# faab7dbb 20-Jun-2002 chs <chs@NetBSD.org>

count aobj pages (most notably kernel stack pages) as anon pages
for memory usage-balancing purposes.


12