summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_fault.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2009-07-24 13:50:29 +0000
committerjhb <jhb@FreeBSD.org>2009-07-24 13:50:29 +0000
commit44220d7e1e07bbf1c88215543c5877abcdb88d29 (patch)
tree9a9fb32ead80921ec7937e7a600e46e446366436 /sys/vm/vm_fault.c
parent4064b20ecefb589d0b9290e558c0abfc5229c120 (diff)
downloadFreeBSD-src-44220d7e1e07bbf1c88215543c5877abcdb88d29.zip
FreeBSD-src-44220d7e1e07bbf1c88215543c5877abcdb88d29.tar.gz
Add a new type of VM object: OBJT_SG. An OBJT_SG object is very similar to
a device pager (OBJT_DEVICE) object in that it uses fictitious pages to provide aliases to other memory addresses. The primary difference is that it uses an sglist(9) to determine the physical addresses for a given offset into the object instead of invoking the d_mmap() method in a device driver. Reviewed by: alc Approved by: re (kensmith) MFC after: 2 weeks
Diffstat (limited to 'sys/vm/vm_fault.c')
-rw-r--r--sys/vm/vm_fault.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index ff8852b..98b6b09 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -472,7 +472,8 @@ readrest:
(fs.first_object == fs.object ||
(is_first_object_locked = VM_OBJECT_TRYLOCK(fs.first_object))) &&
fs.first_object->type != OBJT_DEVICE &&
- fs.first_object->type != OBJT_PHYS) {
+ fs.first_object->type != OBJT_PHYS &&
+ fs.first_object->type != OBJT_SG) {
vm_pindex_t firstpindex, tmppindex;
if (fs.first_pindex < 2 * VM_FAULT_READ)
OpenPOWER on IntegriCloud