summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_pager.h
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2003-10-24 06:43:04 +0000
committeralc <alc@FreeBSD.org>2003-10-24 06:43:04 +0000
commita71ff79234d3c3aeed5f10bdf3963df1d991ea85 (patch)
treea860aff4c48180e54e6344d0e0e4cac285c3da83 /sys/vm/vm_pager.h
parent2a08abfe7db45ead4bfe82cafb8f28cda34152ba (diff)
downloadFreeBSD-src-a71ff79234d3c3aeed5f10bdf3963df1d991ea85.zip
FreeBSD-src-a71ff79234d3c3aeed5f10bdf3963df1d991ea85.tar.gz
- Push down Giant from vm_pageout() to vm_pageout_scan(), freeing
vm_pageout_page_stats() from Giant. - Modify vm_pager_put_pages() and vm_pager_page_unswapped() to expect the vm object to be locked on entry. (All of the pager routines now expect this.)
Diffstat (limited to 'sys/vm/vm_pager.h')
-rw-r--r--sys/vm/vm_pager.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/vm/vm_pager.h b/sys/vm/vm_pager.h
index 390a769..d4f43e3 100644
--- a/sys/vm/vm_pager.h
+++ b/sys/vm/vm_pager.h
@@ -141,7 +141,8 @@ vm_pager_put_pages(
int flags,
int *rtvals
) {
- GIANT_REQUIRED;
+
+ VM_OBJECT_LOCK_ASSERT(object, MA_OWNED);
(*pagertab[object->type]->pgo_putpages)
(object, m, count, flags, rtvals);
}
@@ -186,7 +187,8 @@ vm_pager_has_page(
static __inline void
vm_pager_page_unswapped(vm_page_t m)
{
- GIANT_REQUIRED;
+
+ VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED);
if (pagertab[m->object->type]->pgo_pageunswapped)
(*pagertab[m->object->type]->pgo_pageunswapped)(m);
}
OpenPOWER on IntegriCloud