diff options
author | dimitri staessens <[email protected]> | 2016-09-02 13:48:36 +0200 |
---|---|---|
committer | dimitri staessens <[email protected]> | 2016-09-02 14:59:42 +0200 |
commit | 4f44c91c68a3706e04334066f28471d56cc71849 (patch) | |
tree | c31bfb75b7abfea47a1773fcbe2782d4832d5c49 /src/irmd | |
parent | 4493d36a4769c6625e3025a0c484bf0ec65708bd (diff) | |
download | ouroboros-4f44c91c68a3706e04334066f28471d56cc71849.tar.gz ouroboros-4f44c91c68a3706e04334066f28471d56cc71849.zip |
lib: Add northbound ringbuffers
Fast path is split in north and southbound paths.
Diffstat (limited to 'src/irmd')
-rw-r--r-- | src/irmd/main.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/irmd/main.c b/src/irmd/main.c index a69dd526..a4962c3b 100644 --- a/src/irmd/main.c +++ b/src/irmd/main.c @@ -1742,7 +1742,7 @@ void * irm_sanitize() if (kill(f->n_api, 0) < 0) { struct shm_ap_rbuff * n_rb = - shm_ap_rbuff_open(f->n_api); + shm_ap_rbuff_open_s(f->n_api); bmp_release(irmd->port_ids, f->port_id); list_del(&f->next); @@ -1755,13 +1755,17 @@ void * irm_sanitize() continue; } if (kill(f->n_1_api, 0) < 0) { - struct shm_ap_rbuff * n_1_rb = - shm_ap_rbuff_open(f->n_1_api); + struct shm_ap_rbuff * n_1_rb_s = + shm_ap_rbuff_open_s(f->n_1_api); + struct shm_ap_rbuff * n_1_rb_n = + shm_ap_rbuff_open_n(f->n_1_api); list_del(&f->next); LOG_ERR("IPCP %d gone, flow %d removed.", f->n_1_api, f->port_id); - if (n_1_rb != NULL) - shm_ap_rbuff_destroy(n_1_rb); + if (n_1_rb_n != NULL) + shm_ap_rbuff_destroy(n_1_rb_n); + if (n_1_rb_s != NULL) + shm_ap_rbuff_destroy(n_1_rb_s); irm_flow_destroy(f); } } |