+ struct resource *r;
+ if (rp->mpool)
+ {
+ r = mp_alloc_fast(rp->mpool, size);
+ r->flags = 0;
+ }
+ else
+ {
+ r = xmalloc(size);
+ r->flags = RES_FLAG_XFREE;
+ }
+ res_add(r);
+ return r;
+}
+
+void
+res_add(struct resource *r)
+{
+ struct respool *rp = rp_current();
+ ASSERT(rp);