diff options
author | dimitri staessens <dimitri.staessens@ugent.be> | 2017-05-02 10:04:10 +0000 |
---|---|---|
committer | Sander Vrijders <sander.vrijders@ugent.be> | 2017-05-02 10:04:10 +0000 |
commit | fb5fd3771629c9276450b5618e0875cb3aac98bb (patch) | |
tree | 7981d1887add4a291bafc321bd67a4daa4b0686b | |
parent | ed9e4a4fc1eaad3f5f08106e6048b92094a6a70b (diff) | |
parent | 9b8b1412c3c4a80df713abd02f172d87397adaf0 (diff) | |
download | ouroboros-fb5fd3771629c9276450b5618e0875cb3aac98bb.tar.gz ouroboros-fb5fd3771629c9276450b5618e0875cb3aac98bb.zip |
Merged in dstaesse/ouroboros/be-dealloc-del (pull request #502)
ipcpd: Don't send deallocation messages
-rw-r--r-- | src/ipcpd/normal/fa.c | 38 | ||||
-rw-r--r-- | src/ipcpd/normal/flow_alloc.proto | 1 |
2 files changed, 0 insertions, 39 deletions
diff --git a/src/ipcpd/normal/fa.c b/src/ipcpd/normal/fa.c index 6ea5b711..3aa2634a 100644 --- a/src/ipcpd/normal/fa.c +++ b/src/ipcpd/normal/fa.c @@ -293,35 +293,6 @@ int fa_alloc_resp(int fd, int fa_dealloc(int fd) { - flow_alloc_msg_t msg = FLOW_ALLOC_MSG__INIT; - struct shm_du_buff * sdb; - qoscube_t qc; - uint64_t addr; - - msg.code = FLOW_ALLOC_CODE__FLOW_DEALLOC; - msg.has_cep_id = true; - - pthread_rwlock_rdlock(&fa.flows_lock); - - msg.cep_id = frct_i_get_id(fa.fd_to_cep_id[fd]); - - addr = frct_i_get_addr(fa.fd_to_cep_id[fd]); - - pthread_rwlock_unlock(&fa.flows_lock); - - sdb = create_fa_sdb(&msg); - if (sdb == NULL) - return -1; - - ipcp_flow_get_qoscube(fd, &qc); - - assert(qc >= 0 && qc < QOS_CUBE_MAX); - - if (dt_write_sdu(addr, qc, PDU_TYPE_FA, sdb)) { - ipcp_sdb_release(sdb); - log_warn("Failed to send dealloc message."); - } - ipcp_flow_fini(fd); pthread_rwlock_wrlock(&fa.flows_lock); @@ -438,15 +409,6 @@ int fa_post_sdu(struct shm_du_buff * sdb) pthread_rwlock_unlock(&fa.flows_lock); break; - case FLOW_ALLOC_CODE__FLOW_DEALLOC: - /* FIXME: mark flow and wait for frct_i to time out */ - pthread_rwlock_rdlock(&fa.flows_lock); - fd = fa.cep_id_to_fd[msg->cep_id]; - pthread_rwlock_unlock(&fa.flows_lock); - ipcp_flow_fini(fd); - sdu_sched_del(fa.sdu_sched, fd); - flow_dealloc(fd); - break; default: log_err("Got an unknown flow allocation message."); flow_alloc_msg__free_unpacked(msg, NULL); diff --git a/src/ipcpd/normal/flow_alloc.proto b/src/ipcpd/normal/flow_alloc.proto index ee7f96e8..947ce86b 100644 --- a/src/ipcpd/normal/flow_alloc.proto +++ b/src/ipcpd/normal/flow_alloc.proto @@ -25,7 +25,6 @@ syntax = "proto2"; enum flow_alloc_code { FLOW_REQ = 1; FLOW_REPLY = 2; - FLOW_DEALLOC = 3; }; message flow_alloc_msg { |