diff options
author | Xavier Simonart <xavier.simonart@intel.com> | 2018-02-27 23:44:51 +0100 |
---|---|---|
committer | Xavier Simonart <xavier.simonart@intel.com> | 2018-02-27 23:44:51 +0100 |
commit | 26f14f6f6f11892fbed6d6e199c5d73f3d1ce70a (patch) | |
tree | 374a9ce69d691d71bfcac8c0c0d8409ec7dea872 | |
parent | 167e6d113d61a4a75812d0df71843b0ab8b88784 (diff) |
Fix potential crash if link speed is null
Link_speed could be null when prox started with the ports down.
This was potentially causing a crash.
Another task will need to update link speed when the port come
up. Failing to do this results in less accurate latencies
(no extrapolation)
Change-Id: I597b68e30117e6edb9ccb4732c2acedd5eb8ac80
Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
-rw-r--r-- | VNFs/DPPD-PROX/handle_gen.c | 2 | ||||
-rw-r--r-- | VNFs/DPPD-PROX/handle_lat.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/VNFs/DPPD-PROX/handle_gen.c b/VNFs/DPPD-PROX/handle_gen.c index 515c1dac..9bb34fc7 100644 --- a/VNFs/DPPD-PROX/handle_gen.c +++ b/VNFs/DPPD-PROX/handle_gen.c @@ -1145,7 +1145,7 @@ static void start(struct task_base *tbase) if (tbase->l3.tmaster) { register_all_ip_to_ctrl_plane(task); } - if (task->port) { + if (task->port && task->port->link_speed) { // task->port->link->speed reports the link speed in Mbps e.g. 40k for a 40 Gbps NIC // task->link_speed reported link speed in Bytes per sec. task->link_speed = task->port->link_speed * 125000L; diff --git a/VNFs/DPPD-PROX/handle_lat.c b/VNFs/DPPD-PROX/handle_lat.c index 3962b21d..7901173d 100644 --- a/VNFs/DPPD-PROX/handle_lat.c +++ b/VNFs/DPPD-PROX/handle_lat.c @@ -682,7 +682,7 @@ static void lat_start(struct task_base *tbase) { struct task_lat *task = (struct task_lat *)tbase; - if (task->port) { + if (task->port && task->port->link_speed) { // task->port->link->speed reports the link speed in Mbps e.g. 40k for a 40 Gbps NIC // task->link_speed reported link speed in Bytes per sec. task->link_speed = task->port->link_speed * 125000L; |