From: Roni Häcki Date: Fri, 20 Jan 2017 13:43:05 +0000 (+0100) Subject: DeviceQueue: solarflare: alloc slot on cap receive X-Git-Tag: release2017-03-08~40^2~6 X-Git-Url: http://git.barrelfish.org/?p=barrelfish;a=commitdiff_plain;h=161a8757f402e4619c45db1ea6732a984fd71751 DeviceQueue: solarflare: alloc slot on cap receive Signed-off-by: Roni Häcki --- diff --git a/lib/devif/backends/net/solarflare/devif_backend_solarflare.c b/lib/devif/backends/net/solarflare/devif_backend_solarflare.c index 0c4947e..796b5a0 100644 --- a/lib/devif/backends/net/solarflare/devif_backend_solarflare.c +++ b/lib/devif/backends/net/solarflare/devif_backend_solarflare.c @@ -477,6 +477,10 @@ errval_t sfn5122f_queue_create(struct sfn5122f_queue** q, sfn5122f_event_cb_t cb struct capref regs; // Inform card driver about new queue and get the registers/queue id + err = slot_alloc(®s); + if (err_is_fail(err)) { + return err; + } if (!interrupts) { printf("Solarflare queue used in polling mode \n"); @@ -493,7 +497,8 @@ errval_t sfn5122f_queue_create(struct sfn5122f_queue** q, sfn5122f_event_cb_t cb queue->core = disp_get_core_id(); - err = queue->rpc->vtbl.create_queue(queue->rpc, frame, userlevel, interrupts, queue->core, + err = queue->rpc->vtbl.create_queue(queue->rpc, frame, userlevel, + interrupts, queue->core, queue->vector, &queue->id, ®s, &err2); if (err_is_fail(err) || err_is_fail(err2)) {