swap_pager.c (b18bfc3da782094cb09a9d0e9d387614aefa423e) swap_pager.c (0a47b48b9f61ddbac24f3f22e1f266acdd493080)
1/*
2 * Copyright (c) 1994 John S. Dyson
3 * Copyright (c) 1990 University of Utah.
4 * Copyright (c) 1991, 1993
5 * The Regents of the University of California. All rights reserved.
6 *
7 * This code is derived from software contributed to Berkeley by
8 * the Systems Programming Group of the University of Utah Computer

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

34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 *
39 * from: Utah $Hdr: swap_pager.c 1.4 91/04/30$
40 *
41 * @(#)swap_pager.c 8.9 (Berkeley) 3/21/94
1/*
2 * Copyright (c) 1994 John S. Dyson
3 * Copyright (c) 1990 University of Utah.
4 * Copyright (c) 1991, 1993
5 * The Regents of the University of California. All rights reserved.
6 *
7 * This code is derived from software contributed to Berkeley by
8 * the Systems Programming Group of the University of Utah Computer

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

34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 *
39 * from: Utah $Hdr: swap_pager.c 1.4 91/04/30$
40 *
41 * @(#)swap_pager.c 8.9 (Berkeley) 3/21/94
42 * $Id: swap_pager.c,v 1.65 1996/05/03 21:01:47 phk Exp $
42 * $Id: swap_pager.c,v 1.66 1996/05/18 03:37:32 dyson Exp $
43 */
44
45/*
46 * Quick hack to page to dedicated partition(s).
47 * TODO:
48 * Add multiprocessor locks
49 * Deal with async writes in a better fashion
50 */

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

433 swap_pager_setvalid(object, i, 0);
434 }
435 *addr = SWB_EMPTY;
436 }
437 }
438 splx(s);
439}
440
43 */
44
45/*
46 * Quick hack to page to dedicated partition(s).
47 * TODO:
48 * Add multiprocessor locks
49 * Deal with async writes in a better fashion
50 */

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

433 swap_pager_setvalid(object, i, 0);
434 }
435 *addr = SWB_EMPTY;
436 }
437 }
438 splx(s);
439}
440
441/*
442 * same as freespace, but don't free, just force a DMZ next time
443 */
444void
445swap_pager_dmzspace(object, start, size)
446 vm_object_t object;
447 vm_pindex_t start;
448 vm_size_t size;
449{
450 vm_pindex_t i;
451 int s;
452
453 s = splbio();
454 for (i = start; i < start + size; i += 1) {
455 int valid;
456 daddr_t *addr = swap_pager_diskaddr(object, i, &valid);
457
458 if (addr && *addr != SWB_EMPTY) {
459 if (valid) {
460 swap_pager_setvalid(object, i, 0);
461 }
462 }
463 }
464 splx(s);
465}
466
441static void
442swap_pager_free_swap(object)
443 vm_object_t object;
444{
445 register int i, j;
446 register sw_blk_t swb;
447 int first_block=0, block_count=0;
448 int s;

--- 1184 unchanged lines hidden ---
467static void
468swap_pager_free_swap(object)
469 vm_object_t object;
470{
471 register int i, j;
472 register sw_blk_t swb;
473 int first_block=0, block_count=0;
474 int s;

--- 1184 unchanged lines hidden ---