Deleted Added
full compact
vm_fault.c (242941) vm_fault.c (244043)
1/*-
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
4 * Copyright (c) 1994 John S. Dyson
5 * All rights reserved.
6 * Copyright (c) 1994 David Greenman
7 * All rights reserved.
8 *

--- 58 unchanged lines hidden (view full) ---

67 * rights to redistribute these changes.
68 */
69
70/*
71 * Page fault handling module.
72 */
73
74#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
4 * Copyright (c) 1994 John S. Dyson
5 * All rights reserved.
6 * Copyright (c) 1994 David Greenman
7 * All rights reserved.
8 *

--- 58 unchanged lines hidden (view full) ---

67 * rights to redistribute these changes.
68 */
69
70/*
71 * Page fault handling module.
72 */
73
74#include <sys/cdefs.h>
75__FBSDID("$FreeBSD: head/sys/vm/vm_fault.c 242941 2012-11-13 02:50:39Z alc $");
75__FBSDID("$FreeBSD: head/sys/vm/vm_fault.c 244043 2012-12-09 00:32:38Z alc $");
76
77#include "opt_ktrace.h"
78#include "opt_vm.h"
79
80#include <sys/param.h>
81#include <sys/systm.h>
82#include <sys/kernel.h>
83#include <sys/lock.h>

--- 879 unchanged lines hidden (view full) ---

963 first_object = fs->first_object;
964 if (first_object != object) {
965 if (!VM_OBJECT_TRYLOCK(first_object)) {
966 VM_OBJECT_UNLOCK(object);
967 VM_OBJECT_LOCK(first_object);
968 VM_OBJECT_LOCK(object);
969 }
970 }
76
77#include "opt_ktrace.h"
78#include "opt_vm.h"
79
80#include <sys/param.h>
81#include <sys/systm.h>
82#include <sys/kernel.h>
83#include <sys/lock.h>

--- 879 unchanged lines hidden (view full) ---

963 first_object = fs->first_object;
964 if (first_object != object) {
965 if (!VM_OBJECT_TRYLOCK(first_object)) {
966 VM_OBJECT_UNLOCK(object);
967 VM_OBJECT_LOCK(first_object);
968 VM_OBJECT_LOCK(object);
969 }
970 }
971 if (first_object->type != OBJT_DEVICE &&
972 first_object->type != OBJT_PHYS && first_object->type != OBJT_SG) {
971 /* Neither fictitious nor unmanaged pages can be cached. */
972 if ((first_object->flags & (OBJ_FICTITIOUS | OBJ_UNMANAGED)) == 0) {
973 if (fs->first_pindex < distance)
974 pindex = 0;
975 else
976 pindex = fs->first_pindex - distance;
977 if (pindex < OFF_TO_IDX(fs->entry->offset))
978 pindex = OFF_TO_IDX(fs->entry->offset);
979 m = first_object != object ? fs->first_m : fs->m;
980 KASSERT((m->oflags & VPO_BUSY) != 0,

--- 541 unchanged lines hidden ---
973 if (fs->first_pindex < distance)
974 pindex = 0;
975 else
976 pindex = fs->first_pindex - distance;
977 if (pindex < OFF_TO_IDX(fs->entry->offset))
978 pindex = OFF_TO_IDX(fs->entry->offset);
979 m = first_object != object ? fs->first_m : fs->m;
980 KASSERT((m->oflags & VPO_BUSY) != 0,

--- 541 unchanged lines hidden ---