diff options
author | alc <alc@FreeBSD.org> | 2009-02-08 22:17:24 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2009-02-08 22:17:24 +0000 |
commit | 9513bac196b9078727e9e71fe300ad749da75966 (patch) | |
tree | cdafe0bf3992c8f14b181d48b7fd17fd8e0490fd /sys/vm | |
parent | c09da8d6d9b17bb375fdba22adcc311ce2c10e86 (diff) | |
download | FreeBSD-src-9513bac196b9078727e9e71fe300ad749da75966.zip FreeBSD-src-9513bac196b9078727e9e71fe300ad749da75966.tar.gz |
Eliminate OBJ_NEEDGIANT. After r188331, OBJ_NEEDGIANT's only use is by a
redundant assertion in vm_fault().
Reviewed by: kib
Diffstat (limited to 'sys/vm')
-rw-r--r-- | sys/vm/vm_fault.c | 3 | ||||
-rw-r--r-- | sys/vm/vm_object.c | 5 | ||||
-rw-r--r-- | sys/vm/vm_object.h | 1 | ||||
-rw-r--r-- | sys/vm/vnode_pager.c | 2 |
4 files changed, 1 insertions, 10 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 13dff3e..42245c8 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -567,9 +567,6 @@ vnode_lock: vnode_locked: KASSERT(fs.vp == NULL || !fs.map->system_map, ("vm_fault: vnode-backed object mapped by system map")); - KASSERT((fs.first_object->flags & OBJ_NEEDGIANT) == 0 || - !fs.map->system_map, - ("vm_fault: Object requiring giant mapped by system map")); /* * now we find out if any other pages should be paged diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index c7ca318..c74b760 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -1273,11 +1273,9 @@ vm_object_shadow( source->shadow_count++; source->generation++; #if VM_NRESERVLEVEL > 0 - result->flags |= source->flags & (OBJ_NEEDGIANT | OBJ_COLORED); + result->flags |= source->flags & OBJ_COLORED; result->pg_color = (source->pg_color + OFF_TO_IDX(*offset)) & ((1 << (VM_NFREEORDER - 1)) - 1); -#else - result->flags |= source->flags & OBJ_NEEDGIANT; #endif VM_OBJECT_UNLOCK(source); } @@ -1349,7 +1347,6 @@ vm_object_split(vm_map_entry_t entry) orig_object->backing_object_offset + entry->offset; new_object->backing_object = source; } - new_object->flags |= orig_object->flags & OBJ_NEEDGIANT; retry: if ((m = TAILQ_FIRST(&orig_object->memq)) != NULL) { if (m->pindex < offidxstart) { diff --git a/sys/vm/vm_object.h b/sys/vm/vm_object.h index e6f605a..250dad8 100644 --- a/sys/vm/vm_object.h +++ b/sys/vm/vm_object.h @@ -147,7 +147,6 @@ struct vm_object { #define OBJ_COLORED 0x1000 /* pg_color is defined */ #define OBJ_ONEMAPPING 0x2000 /* One USE (a single, non-forked) mapping flag */ #define OBJ_DISCONNECTWNT 0x4000 /* disconnect from vnode wanted */ -#define OBJ_NEEDGIANT 0x8000 /* object requires Giant */ #define IDX_TO_OFF(idx) (((vm_ooffset_t)(idx)) << PAGE_SHIFT) #define OFF_TO_IDX(off) ((vm_pindex_t)(((vm_ooffset_t)(off)) >> PAGE_SHIFT)) diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index a8aef29..49f36de 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c @@ -223,8 +223,6 @@ retry: object->un_pager.vnp.vnp_size = size; object->handle = handle; - if (VFS_NEEDSGIANT(vp->v_mount)) - vm_object_set_flag(object, OBJ_NEEDGIANT); VI_LOCK(vp); if (vp->v_object != NULL) { /* |