diff options
author | neal <neal> | 2008-05-28 14:15:02 +0000 |
---|---|---|
committer | neal <neal> | 2008-05-28 14:15:02 +0000 |
commit | e327ce1313429adbb017c2d79ee619c5035a146c (patch) | |
tree | 637998486b661b63b900b920faa043e04d60480a /viengoos/object.c | |
parent | 8cb9c4b17b5b4069157547bd80a98882aa1f4a7d (diff) |
2008-05-28 Neal H. Walfield <neal@gnu.org>
* object.c (folio_object_alloc): Set CAP's policy to POLICY.
Diffstat (limited to 'viengoos/object.c')
-rw-r--r-- | viengoos/object.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/viengoos/object.c b/viengoos/object.c index 6b8ecfa..52d5775 100644 --- a/viengoos/object.c +++ b/viengoos/object.c @@ -507,8 +507,6 @@ folio_object_alloc (struct activity *activity, struct object_policy policy, uintptr_t return_code) { - debug (4, "allocating %s at %d", cap_type_string (type), idx); - assert (0 <= idx && idx < FOLIO_OBJECTS); type = cap_type_strengthen (type); @@ -517,6 +515,10 @@ folio_object_alloc (struct activity *activity, assert (fdesc->type == cap_folio); assert (fdesc->oid % (1 + FOLIO_OBJECTS) == 0); + debug (5, OID_FMT ":%d -> %s (%s/%d)", + OID_PRINTF (fdesc->oid), idx, cap_type_string (type), + policy.discardable ? "discardable" : "precious", policy.priority); + oid_t oid = fdesc->oid + 1 + idx; struct object *object = NULL; @@ -649,6 +651,7 @@ folio_object_alloc (struct activity *activity, cap.type = type; cap.oid = oid; cap.version = folio_object_version (folio, idx); + CAP_POLICY_SET (&cap, policy); return cap; } @@ -705,7 +708,8 @@ object_desc_claim (struct activity *activity, struct object_desc *desc, if (desc->activity) { debug (5, OID_FMT " claims from " OID_FMT, - OID_PRINTF (object_to_object_desc ((struct object *) desc->activity)->oid), + OID_PRINTF (object_to_object_desc ((struct object *) desc + ->activity)->oid), OID_PRINTF (activity ? object_to_object_desc ((struct object *) activity)->oid @@ -777,6 +781,12 @@ object_desc_claim (struct activity *activity, struct object_desc *desc, desc->eviction_candidate = false; desc->activity = activity; desc->policy.discardable = policy.discardable; + + debug (5, OID_FMT " claimed " OID_FMT " (%s): %s", + OID_PRINTF (object_to_object_desc ((struct object *) activity)->oid), + OID_PRINTF (desc->oid), + cap_type_string (desc->type), + desc->policy.discardable ? "discardable" : "precious"); } /* Return the first waiter queued on object OBJECT. */ |