From 2f7e8f040f18b7f9bce6879d4b077094aa7d01c0 Mon Sep 17 00:00:00 2001 From: Thomas Bushnell Date: Tue, 25 Jul 2000 19:40:27 +0000 Subject: 2000-07-25 Thomas Bushnell, BSG * priv.h (PM_WRITEWAIT): New pagemap bit. * data-return.c (_pager_do_write_request): Don't proceed with a pageout if one is already in progress. Once we finish, wake up any potential PM_WRITEWAIT waiters. * priv.h (PM_INIT): Provide value again. * data-return.c (_pager_do_write_request): Track PM_INIT again. * priv.h (struct pager): Make pagemap consist of 16-bit elements instead of only 8 bits. * data-request.c (_pager_seqnos_memory_object_data_request): Make PM_ENTRY a short pointer. * data-return.c (_pager_do_write_request): Make PM_ENTRIES a short pointer. * lock-object.c (_pager_lock_object): Make PM_ENTRIES a short pointer. * mark-error.c (_pager_mark_next_request_error): Make P a short pointer. (_pager_mark_object_error): Likewise. * offer-page.c (pager_offer_page): Make PM_ENTRY a short pointer. * object-terminate.c (_pager_free_structure): Interpret pagemapsize correctly. * pagemap.c (_pager_pagemap_resize): Likewise. --- libpager/lock-object.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libpager/lock-object.c') diff --git a/libpager/lock-object.c b/libpager/lock-object.c index 5182eff8..d108666e 100644 --- a/libpager/lock-object.c +++ b/libpager/lock-object.c @@ -1,5 +1,5 @@ /* Synchronous wrapper for memory_object_lock_request - Copyright (C) 1993, 1994, 1996, 1997 Free Software Foundation + Copyright (C) 1993, 1994, 1996, 1997, 2000 Free Software Foundation This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as @@ -89,7 +89,7 @@ _pager_lock_object (struct pager *p, _pager_pagemap_resize (p, offset + size); if (p->pagemapsize > pm_offs) { - char *pm_entries = &p->pagemap[pm_offs]; + short *pm_entries = &p->pagemap[pm_offs]; vm_offset_t bound = size / vm_page_size; if (bound > p->pagemapsize) -- cgit v1.2.3