diff options
author | Deepak S <deepak.s@linux.intel.com> | 2019-02-07 10:40:15 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2019-02-07 10:40:15 +0000 |
commit | 06d71cb8ceab4d531a29b09c589eeda7bd4e6311 (patch) | |
tree | 7c72bdb5dbc15f3245883cd748c5c56b12e23bb3 /VNFs/DPPD-PROX | |
parent | c410fc3bd16046ed9b22c228017b6dea9f7c3f33 (diff) | |
parent | ebca0aa88acb2e2612e282f83114756bb86d76da (diff) |
Merge "Fix memory leak in L3 submode"
Diffstat (limited to 'VNFs/DPPD-PROX')
-rw-r--r-- | VNFs/DPPD-PROX/handle_master.c | 2 | ||||
-rw-r--r-- | VNFs/DPPD-PROX/packet_utils.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/VNFs/DPPD-PROX/handle_master.c b/VNFs/DPPD-PROX/handle_master.c index 22527413..c6ae96b1 100644 --- a/VNFs/DPPD-PROX/handle_master.c +++ b/VNFs/DPPD-PROX/handle_master.c @@ -170,6 +170,8 @@ static inline void handle_arp_reply(struct task_base *tbase, struct rte_mbuf *mb tx_ring_ip(tbase, ring, UPDATE_FROM_CTRL, mbuf, key); } task->external_ip_table[ret].nb_requests = 0; + } else { + tx_drop(mbuf); } } } diff --git a/VNFs/DPPD-PROX/packet_utils.c b/VNFs/DPPD-PROX/packet_utils.c index 1b461c65..06a9ba64 100644 --- a/VNFs/DPPD-PROX/packet_utils.c +++ b/VNFs/DPPD-PROX/packet_utils.c @@ -247,7 +247,7 @@ void task_start_l3(struct task_base *tbase, struct task_args *targ) const int NB_CACHE_ARP_MBUF = 256; struct prox_port_cfg *port = find_reachable_port(targ); - if (port) { + if (port && (tbase->l3.arp_pool == NULL)) { static char name[] = "arp0_pool"; tbase->l3.reachable_port_id = port - prox_port_cfg; if (targ->local_ipv4) { |