failure RSRC_MEMBER_LIMIT "Reached member limit of resource domain",
failure RSRC_ILL_MANIFEST "Illegal manifest",
failure RSRC_NOT_FOUND "Resource domain not found on this core",
+
+ // Invocations
+ failure INVOKE_IRQ_ALLOCATE "Unable to allocate IRQ vector",
+ failure INVOKE_IRQ_SET "Unable to install IRQ vector",
};
// errors related to the routing library
errval_t err, err2;
err = invoke_irqtable_alloc_vector(cap_irq, &vec);
if (err_is_fail(err)) {
+ err = err_push(err, MON_ERR_INVOKE_IRQ_ALLOCATE);
err2 = b->tx_vtbl.irq_handle_response(b, NOP_CONT, err, 0);
}
// we got a vector
/* set it and reply */
err = invoke_irqtable_set(cap_irq, vec, ep);
+ if (err_is_fail(err)) {
+ err = err_push(err, MON_ERR_INVOKE_IRQ_SET);
+ }
err2 = b->tx_vtbl.irq_handle_response(b, NOP_CONT, err, vec);
assert(err_is_ok(err2));
}