summaryrefslogtreecommitdiff
path: root/libhurd-mm/anonymous.c
diff options
context:
space:
mode:
authorneal <neal>2008-06-17 16:40:19 +0000
committerneal <neal>2008-06-17 16:40:19 +0000
commit04928cc547ed2c4aa4199bc5627212a028ab6420 (patch)
treee086665df6d9ab6769902592197a1c497ac37490 /libhurd-mm/anonymous.c
parentfb0f8e2e8bad0355d15e5c90d9bdc08d340d8b22 (diff)
2008-06-17 Neal H. Walfield <neal@gnu.org>
* anonymous.c (fault): Assert that calling rm_object_discarded_clear does not fail.
Diffstat (limited to 'libhurd-mm/anonymous.c')
-rw-r--r--libhurd-mm/anonymous.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/libhurd-mm/anonymous.c b/libhurd-mm/anonymous.c
index 73f53a3..d7cdc47 100644
--- a/libhurd-mm/anonymous.c
+++ b/libhurd-mm/anonymous.c
@@ -194,7 +194,12 @@ fault (struct pager *pager, uintptr_t offset, int count, bool read_only,
assert (anon->policy.discardable);
assert (anon->fill);
- rm_object_discarded_clear (ADDR_VOID, storage_desc->storage);
+ error_t err;
+ err = rm_object_discarded_clear (ADDR_VOID, storage_desc->storage);
+ assertx (err == 0, "%d", err);
+
+ debug (5, "Clearing discarded bit for %p / " ADDR_FMT,
+ fault_addr, ADDR_PRINTF (storage_desc->storage));
}
else
{
@@ -218,7 +223,13 @@ fault (struct pager *pager, uintptr_t offset, int count, bool read_only,
assertx (! conflict,
"Fault address: %x, offset: %x",
fault_addr, offset);
+
+ debug (5, "Allocating storage for %p at " ADDR_FMT,
+ fault_addr, ADDR_PRINTF (storage_desc->storage));
}
+ else
+ debug (5, "Copying storage " ADDR_FMT " to %p",
+ ADDR_PRINTF (storage_desc->storage), fault_addr);
/* We generate a fake shadow cap for the storage as we know
its contents (It is a page that is in a folio with the