1/* 2 * Copyright (c) 1994,1997 John S. Dyson 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice immediately at the beginning of the file, without modification, 10 * this list of conditions, and the following disclaimer. 11 * 2. Absolutely no warranty of function or purpose is made by the author 12 * John S. Dyson. 13 * |
14 * $FreeBSD: head/sys/kern/vfs_bio.c 103314 2002-09-14 09:02:28Z njl $ |
15 */ 16 17/* 18 * this file contains a new buffer I/O scheme implementing a coherent 19 * VM object and buffer cache scheme. Pains have been taken to make 20 * sure that the performance degradation associated with schemes such 21 * as this is not realized. 22 * --- 1183 unchanged lines hidden (view full) --- 1206 * Normally we can do this whether a buffer is B_DELWRI or not. If 1207 * the buffer is an NFS buffer, it is tracking piecemeal writes or 1208 * the commit state and we cannot afford to lose the buffer. If the 1209 * buffer has a background write in progress, we need to keep it 1210 * around to prevent it from being reconstituted and starting a second 1211 * background write. 1212 */ 1213 if ((bp->b_flags & B_VMIO) |
1214 && !(bp->b_vp->v_mount != NULL && 1215 (bp->b_vp->v_mount->mnt_vfc->vfc_flags & VFCF_NETWORK) != 0 && |
1216 !vn_isdisk(bp->b_vp, NULL) && 1217 (bp->b_flags & B_DELWRI)) 1218 ) { 1219 1220 int i, j, resid; 1221 vm_page_t m; 1222 off_t foff; 1223 vm_pindex_t poff; --- 2250 unchanged lines hidden --- |