Deleted Added
full compact
vnode_pager.c (23502) vnode_pager.c (25930)
1/*
2 * Copyright (c) 1990 University of Utah.
3 * Copyright (c) 1991 The Regents of the University of California.
4 * All rights reserved.
5 * Copyright (c) 1993, 1994 John S. Dyson
6 * Copyright (c) 1995, David Greenman
7 *
8 * This code is derived from software contributed to Berkeley by

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

33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 * SUCH DAMAGE.
39 *
40 * from: @(#)vnode_pager.c 7.5 (Berkeley) 4/20/91
1/*
2 * Copyright (c) 1990 University of Utah.
3 * Copyright (c) 1991 The Regents of the University of California.
4 * All rights reserved.
5 * Copyright (c) 1993, 1994 John S. Dyson
6 * Copyright (c) 1995, David Greenman
7 *
8 * This code is derived from software contributed to Berkeley by

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

33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 * SUCH DAMAGE.
39 *
40 * from: @(#)vnode_pager.c 7.5 (Berkeley) 4/20/91
41 * $Id: vnode_pager.c,v 1.69 1997/02/22 09:48:42 peter Exp $
41 * $Id: vnode_pager.c,v 1.70 1997/03/08 04:33:47 dyson Exp $
42 */
43
44/*
45 * Page to/from files (vnodes).
46 */
47
48/*
49 * TODO:

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

687 }
688 cnt.v_vnodein++;
689 cnt.v_vnodepgsin++;
690 return vnode_pager_input_smlfs(object, m[reqpage]);
691 }
692 /*
693 * if ANY DEV_BSIZE blocks are valid on a large filesystem block
694 * then, the entire page is valid --
42 */
43
44/*
45 * Page to/from files (vnodes).
46 */
47
48/*
49 * TODO:

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

687 }
688 cnt.v_vnodein++;
689 cnt.v_vnodepgsin++;
690 return vnode_pager_input_smlfs(object, m[reqpage]);
691 }
692 /*
693 * if ANY DEV_BSIZE blocks are valid on a large filesystem block
694 * then, the entire page is valid --
695 * XXX no it isn't
695 */
696 */
697
698 if (m[reqpage]->valid != VM_PAGE_BITS_ALL)
699 m[reqpage]->valid = 0;
700
696 if (m[reqpage]->valid) {
697 m[reqpage]->valid = VM_PAGE_BITS_ALL;
698 for (i = 0; i < count; i++) {
699 if (i != reqpage)
700 vnode_pager_freepage(m[i]);
701 }
702 return VM_PAGER_OK;
703 }

--- 280 unchanged lines hidden ---
701 if (m[reqpage]->valid) {
702 m[reqpage]->valid = VM_PAGE_BITS_ALL;
703 for (i = 0; i < count; i++) {
704 if (i != reqpage)
705 vnode_pager_freepage(m[i]);
706 }
707 return VM_PAGER_OK;
708 }

--- 280 unchanged lines hidden ---