* [PATCH] bond: static analysis issues fix
@ 2014-12-12 17:39 Declan Doherty
[not found] ` <1418405982-21407-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
0 siblings, 1 reply; 10+ messages in thread
From: Declan Doherty @ 2014-12-12 17:39 UTC (permalink / raw)
To: dev-VfR2kkLFssw
Fixes for link bonding library identified by static analysis tool
- Overflow check for active_slaves array in activate_slave function
- Allocation check of pci_id_table in rte_eth_bond_create
- Use of eth_dev pointer in mac_address_get/set before NULL check
Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
---
lib/librte_pmd_bond/rte_eth_bond_api.c | 12 ++++++++----
lib/librte_pmd_bond/rte_eth_bond_pmd.c | 8 ++++----
2 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/lib/librte_pmd_bond/rte_eth_bond_api.c b/lib/librte_pmd_bond/rte_eth_bond_api.c
index ef5ddf4..9cb1c1f 100644
--- a/lib/librte_pmd_bond/rte_eth_bond_api.c
+++ b/lib/librte_pmd_bond/rte_eth_bond_api.c
@@ -115,8 +115,11 @@ activate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id)
if (internals->mode == BONDING_MODE_8023AD)
bond_mode_8023ad_activate_slave(eth_dev, port_id);
- internals->active_slaves[internals->active_slave_count] = port_id;
- internals->active_slave_count++;
+ if (internals->active_slave_count <
+ RTE_DIM(internals->active_slaves) - 1) {
+ internals->active_slaves[internals->active_slave_count] = port_id;
+ internals->active_slave_count++;
+ }
}
void
@@ -144,7 +147,8 @@ deactivate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id)
sizeof(internals->active_slaves[0]));
}
- internals->active_slave_count = active_count;
+ internals->active_slave_count = active_count < RTE_MAX_ETHPORTS ?
+ active_count : RTE_MAX_ETHPORTS - 1;
if (eth_dev->data->dev_started && internals->mode == BONDING_MODE_8023AD)
bond_mode_8023ad_start(eth_dev);
@@ -210,7 +214,7 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id)
goto err;
}
pci_id_table = rte_zmalloc_socket(name, sizeof(*pci_id_table), 0, socket_id);
- if (pci_drv == NULL) {
+ if (pci_id_table == NULL) {
RTE_BOND_LOG(ERR, "Unable to malloc pci_id_table on socket");
goto err;
}
diff --git a/lib/librte_pmd_bond/rte_eth_bond_pmd.c b/lib/librte_pmd_bond/rte_eth_bond_pmd.c
index 3db473b..bb4a537 100644
--- a/lib/librte_pmd_bond/rte_eth_bond_pmd.c
+++ b/lib/librte_pmd_bond/rte_eth_bond_pmd.c
@@ -764,8 +764,6 @@ mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr)
{
struct ether_addr *mac_addr;
- mac_addr = eth_dev->data->mac_addrs;
-
if (eth_dev == NULL) {
RTE_LOG(ERR, PMD, "%s: NULL pointer eth_dev specified\n", __func__);
return -1;
@@ -776,6 +774,8 @@ mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr)
return -1;
}
+ mac_addr = eth_dev->data->mac_addrs;
+
ether_addr_copy(mac_addr, dst_mac_addr);
return 0;
}
@@ -785,8 +785,6 @@ mac_address_set(struct rte_eth_dev *eth_dev, struct ether_addr *new_mac_addr)
{
struct ether_addr *mac_addr;
- mac_addr = eth_dev->data->mac_addrs;
-
if (eth_dev == NULL) {
RTE_BOND_LOG(ERR, "NULL pointer eth_dev specified");
return -1;
@@ -797,6 +795,8 @@ mac_address_set(struct rte_eth_dev *eth_dev, struct ether_addr *new_mac_addr)
return -1;
}
+ mac_addr = eth_dev->data->mac_addrs;
+
/* If new MAC is different to current MAC then update */
if (memcmp(mac_addr, new_mac_addr, sizeof(*mac_addr)) != 0)
memcpy(mac_addr, new_mac_addr, sizeof(*mac_addr));
--
1.7.12.2
^ permalink raw reply related [flat|nested] 10+ messages in thread[parent not found: <1418405982-21407-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH] bond: static analysis issues fix [not found] ` <1418405982-21407-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> @ 2014-12-12 18:30 ` Wodkowski, PawelX 2014-12-15 17:13 ` [PATCH v2] " Declan Doherty 1 sibling, 0 replies; 10+ messages in thread From: Wodkowski, PawelX @ 2014-12-12 18:30 UTC (permalink / raw) To: Doherty, Declan, dev-VfR2kkLFssw@public.gmane.org > -----Original Message----- > From: dev [mailto:dev-bounces-VfR2kkLFssw@public.gmane.org] On Behalf Of Declan Doherty > Sent: Friday, December 12, 2014 6:40 PM > To: dev-VfR2kkLFssw@public.gmane.org > Subject: [dpdk-dev] [PATCH] bond: static analysis issues fix > > Fixes for link bonding library identified by static analysis tool > > - Overflow check for active_slaves array in activate_slave function > - Allocation check of pci_id_table in rte_eth_bond_create > - Use of eth_dev pointer in mac_address_get/set before NULL check > > Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> > --- > lib/librte_pmd_bond/rte_eth_bond_api.c | 12 ++++++++---- > lib/librte_pmd_bond/rte_eth_bond_pmd.c | 8 ++++---- > 2 files changed, 12 insertions(+), 8 deletions(-) > > diff --git a/lib/librte_pmd_bond/rte_eth_bond_api.c > b/lib/librte_pmd_bond/rte_eth_bond_api.c > index ef5ddf4..9cb1c1f 100644 > --- a/lib/librte_pmd_bond/rte_eth_bond_api.c > +++ b/lib/librte_pmd_bond/rte_eth_bond_api.c > @@ -115,8 +115,11 @@ activate_slave(struct rte_eth_dev *eth_dev, uint8_t > port_id) > if (internals->mode == BONDING_MODE_8023AD) > bond_mode_8023ad_activate_slave(eth_dev, port_id); > > - internals->active_slaves[internals->active_slave_count] = port_id; > - internals->active_slave_count++; > + if (internals->active_slave_count < > + RTE_DIM(internals->active_slaves) - 1) { > + internals->active_slaves[internals->active_slave_count] = > port_id; > + internals->active_slave_count++; > + } > } > > void > @@ -144,7 +147,8 @@ deactivate_slave(struct rte_eth_dev *eth_dev, uint8_t > port_id) > sizeof(internals->active_slaves[0])); > } > > - internals->active_slave_count = active_count; > + internals->active_slave_count = active_count < RTE_MAX_ETHPORTS ? > + active_count : RTE_MAX_ETHPORTS - 1; Since port might not be added twice and active_slaves array is (should be) proper size to contain every port you can add to bonding and in fact is one element bigger and active_slave_count should newer overflow, those changes might only mask real problems in user application and/or library itself. I think if you want to make this static analysis tool happy it should be changed to RTE_VERIFY(), assert(), rte_panic() or something like that to indicate undefined state. Pawel ^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2] bond: static analysis issues fix [not found] ` <1418405982-21407-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 2014-12-12 18:30 ` Wodkowski, PawelX @ 2014-12-15 17:13 ` Declan Doherty [not found] ` <1418663630-27409-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 1 sibling, 1 reply; 10+ messages in thread From: Declan Doherty @ 2014-12-15 17:13 UTC (permalink / raw) To: dev-VfR2kkLFssw -v2: Incorporates Pawel's comments regarding assertion's check on activate_slave array indexing Fixes for link bonding library identified by static analysis tool - Overflow assert for active_slaves array in activate_slave function - Allocation check of pci_id_table in rte_eth_bond_create - Use of eth_dev pointer in mac_address_get/set before NULL check Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> --- lib/librte_pmd_bond/rte_eth_bond_api.c | 7 ++++++- lib/librte_pmd_bond/rte_eth_bond_pmd.c | 8 ++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/librte_pmd_bond/rte_eth_bond_api.c b/lib/librte_pmd_bond/rte_eth_bond_api.c index ef5ddf4..87a6a23 100644 --- a/lib/librte_pmd_bond/rte_eth_bond_api.c +++ b/lib/librte_pmd_bond/rte_eth_bond_api.c @@ -115,8 +115,12 @@ activate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id) if (internals->mode == BONDING_MODE_8023AD) bond_mode_8023ad_activate_slave(eth_dev, port_id); + RTE_VERIFY(internals->active_slave_count < + (RTE_DIM(internals->active_slaves) - 1)); + internals->active_slaves[internals->active_slave_count] = port_id; internals->active_slave_count++; + } void @@ -144,6 +148,7 @@ deactivate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id) sizeof(internals->active_slaves[0])); } + RTE_VERIFY(active_count < RTE_DIM(internals->active_slaves)); internals->active_slave_count = active_count; if (eth_dev->data->dev_started && internals->mode == BONDING_MODE_8023AD) @@ -210,7 +215,7 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id) goto err; } pci_id_table = rte_zmalloc_socket(name, sizeof(*pci_id_table), 0, socket_id); - if (pci_drv == NULL) { + if (pci_id_table == NULL) { RTE_BOND_LOG(ERR, "Unable to malloc pci_id_table on socket"); goto err; } diff --git a/lib/librte_pmd_bond/rte_eth_bond_pmd.c b/lib/librte_pmd_bond/rte_eth_bond_pmd.c index 3db473b..bb4a537 100644 --- a/lib/librte_pmd_bond/rte_eth_bond_pmd.c +++ b/lib/librte_pmd_bond/rte_eth_bond_pmd.c @@ -764,8 +764,6 @@ mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr) { struct ether_addr *mac_addr; - mac_addr = eth_dev->data->mac_addrs; - if (eth_dev == NULL) { RTE_LOG(ERR, PMD, "%s: NULL pointer eth_dev specified\n", __func__); return -1; @@ -776,6 +774,8 @@ mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr) return -1; } + mac_addr = eth_dev->data->mac_addrs; + ether_addr_copy(mac_addr, dst_mac_addr); return 0; } @@ -785,8 +785,6 @@ mac_address_set(struct rte_eth_dev *eth_dev, struct ether_addr *new_mac_addr) { struct ether_addr *mac_addr; - mac_addr = eth_dev->data->mac_addrs; - if (eth_dev == NULL) { RTE_BOND_LOG(ERR, "NULL pointer eth_dev specified"); return -1; @@ -797,6 +795,8 @@ mac_address_set(struct rte_eth_dev *eth_dev, struct ether_addr *new_mac_addr) return -1; } + mac_addr = eth_dev->data->mac_addrs; + /* If new MAC is different to current MAC then update */ if (memcmp(mac_addr, new_mac_addr, sizeof(*mac_addr)) != 0) memcpy(mac_addr, new_mac_addr, sizeof(*mac_addr)); -- 1.7.12.2 ^ permalink raw reply related [flat|nested] 10+ messages in thread
[parent not found: <1418663630-27409-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH v2] bond: static analysis issues fix [not found] ` <1418663630-27409-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> @ 2014-12-16 8:50 ` Wodkowski, PawelX 2014-12-16 17:31 ` Thomas Monjalon 2014-12-17 11:46 ` [PATCH v3 0/3] " Declan Doherty 2 siblings, 0 replies; 10+ messages in thread From: Wodkowski, PawelX @ 2014-12-16 8:50 UTC (permalink / raw) To: Doherty, Declan, dev-VfR2kkLFssw@public.gmane.org > -----Original Message----- > From: Doherty, Declan > Sent: Monday, December 15, 2014 6:14 PM > To: dev-VfR2kkLFssw@public.gmane.org > Cc: Wodkowski, PawelX; Doherty, Declan > Subject: [PATCH v2] bond: static analysis issues fix > > -v2: > Incorporates Pawel's comments regarding assertion's check on activate_slave > array indexing > > Fixes for link bonding library identified by static analysis tool > > - Overflow assert for active_slaves array in activate_slave function > - Allocation check of pci_id_table in rte_eth_bond_create > - Use of eth_dev pointer in mac_address_get/set before NULL check > > Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> > --- > Acked-by: Wodkowski, Pawel <pawelx.wodkowski-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] bond: static analysis issues fix [not found] ` <1418663630-27409-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 2014-12-16 8:50 ` Wodkowski, PawelX @ 2014-12-16 17:31 ` Thomas Monjalon 2014-12-17 11:46 ` [PATCH v3 0/3] " Declan Doherty 2 siblings, 0 replies; 10+ messages in thread From: Thomas Monjalon @ 2014-12-16 17:31 UTC (permalink / raw) To: Declan Doherty; +Cc: dev-VfR2kkLFssw 2014-12-15 17:13, Declan Doherty: > -v2: > Incorporates Pawel's comments regarding assertion's check on activate_slave array indexing Changelog should be below three dashes to be excluded from git history. > Fixes for link bonding library identified by static analysis tool > > - Overflow assert for active_slaves array in activate_slave function > - Allocation check of pci_id_table in rte_eth_bond_create > - Use of eth_dev pointer in mac_address_get/set before NULL check Please send 3 patches. 1 bug = 1 fix with its explanation. The main advantage is to help referencing regressions. > Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> [...] > --- a/lib/librte_pmd_bond/rte_eth_bond_api.c > +++ b/lib/librte_pmd_bond/rte_eth_bond_api.c > @@ -115,8 +115,12 @@ activate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id) > if (internals->mode == BONDING_MODE_8023AD) > bond_mode_8023ad_activate_slave(eth_dev, port_id); > > + RTE_VERIFY(internals->active_slave_count < > + (RTE_DIM(internals->active_slaves) - 1)); > + > internals->active_slaves[internals->active_slave_count] = port_id; > internals->active_slave_count++; > + > } Why a blank line here? -- Thomas ^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3 0/3] bond: static analysis issues fix [not found] ` <1418663630-27409-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 2014-12-16 8:50 ` Wodkowski, PawelX 2014-12-16 17:31 ` Thomas Monjalon @ 2014-12-17 11:46 ` Declan Doherty [not found] ` <1418816819-13517-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 2 siblings, 1 reply; 10+ messages in thread From: Declan Doherty @ 2014-12-17 11:46 UTC (permalink / raw) To: dev-VfR2kkLFssw -v3: Split patches -v2: Incorporates Pawel's comments regarding assertion's check on activate_slave array indexing Fixes for link bonding library identified by static analysis tool - Overflow assert for active_slaves array in activate_slave function - Allocation check of pci_id_table in rte_eth_bond_create - Use of eth_dev pointer in mac_address_get/set before NULL check Declan Doherty (3): bond: add bounds check before assigning active slave count value bond: fix pci_id_table allocation check in rte_eth_bond_create bond: eth_dev parameter used before NULL check mac_address_get/set lib/librte_pmd_bond/rte_eth_bond_api.c | 6 +++++- lib/librte_pmd_bond/rte_eth_bond_pmd.c | 8 ++++---- 2 files changed, 9 insertions(+), 5 deletions(-) -- 1.7.12.2 ^ permalink raw reply [flat|nested] 10+ messages in thread
[parent not found: <1418816819-13517-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>]
* [PATCH v3 1/3] bond: add bounds check before assigning active slave count value [not found] ` <1418816819-13517-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> @ 2014-12-17 11:46 ` Declan Doherty [not found] ` <1418816819-13517-2-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 2014-12-17 23:43 ` [PATCH v3 0/3] bond: static analysis issues fix Thomas Monjalon 1 sibling, 1 reply; 10+ messages in thread From: Declan Doherty @ 2014-12-17 11:46 UTC (permalink / raw) To: dev-VfR2kkLFssw Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> --- lib/librte_pmd_bond/rte_eth_bond_api.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/librte_pmd_bond/rte_eth_bond_api.c b/lib/librte_pmd_bond/rte_eth_bond_api.c index ef5ddf4..b124784 100644 --- a/lib/librte_pmd_bond/rte_eth_bond_api.c +++ b/lib/librte_pmd_bond/rte_eth_bond_api.c @@ -115,6 +115,9 @@ activate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id) if (internals->mode == BONDING_MODE_8023AD) bond_mode_8023ad_activate_slave(eth_dev, port_id); + RTE_VERIFY(internals->active_slave_count < + (RTE_DIM(internals->active_slaves) - 1)); + internals->active_slaves[internals->active_slave_count] = port_id; internals->active_slave_count++; } @@ -144,6 +147,7 @@ deactivate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id) sizeof(internals->active_slaves[0])); } + RTE_VERIFY(active_count < RTE_DIM(internals->active_slaves)); internals->active_slave_count = active_count; if (eth_dev->data->dev_started && internals->mode == BONDING_MODE_8023AD) -- 1.7.12.2 ^ permalink raw reply related [flat|nested] 10+ messages in thread
[parent not found: <1418816819-13517-2-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>]
* [PATCH v3 2/3] bond: fix pci_id_table allocation check in rte_eth_bond_create [not found] ` <1418816819-13517-2-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> @ 2014-12-17 11:46 ` Declan Doherty [not found] ` <1418816819-13517-3-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 10+ messages in thread From: Declan Doherty @ 2014-12-17 11:46 UTC (permalink / raw) To: dev-VfR2kkLFssw Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> --- lib/librte_pmd_bond/rte_eth_bond_api.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_pmd_bond/rte_eth_bond_api.c b/lib/librte_pmd_bond/rte_eth_bond_api.c index b124784..c2a99a3 100644 --- a/lib/librte_pmd_bond/rte_eth_bond_api.c +++ b/lib/librte_pmd_bond/rte_eth_bond_api.c @@ -214,7 +214,7 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id) goto err; } pci_id_table = rte_zmalloc_socket(name, sizeof(*pci_id_table), 0, socket_id); - if (pci_drv == NULL) { + if (pci_id_table == NULL) { RTE_BOND_LOG(ERR, "Unable to malloc pci_id_table on socket"); goto err; } -- 1.7.12.2 ^ permalink raw reply related [flat|nested] 10+ messages in thread
[parent not found: <1418816819-13517-3-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>]
* [PATCH v3 3/3] bond: eth_dev parameter used before NULL check in mac_address_get/set [not found] ` <1418816819-13517-3-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> @ 2014-12-17 11:46 ` Declan Doherty 0 siblings, 0 replies; 10+ messages in thread From: Declan Doherty @ 2014-12-17 11:46 UTC (permalink / raw) To: dev-VfR2kkLFssw Signed-off-by: Declan Doherty <declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> --- lib/librte_pmd_bond/rte_eth_bond_pmd.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/librte_pmd_bond/rte_eth_bond_pmd.c b/lib/librte_pmd_bond/rte_eth_bond_pmd.c index 3db473b..bb4a537 100644 --- a/lib/librte_pmd_bond/rte_eth_bond_pmd.c +++ b/lib/librte_pmd_bond/rte_eth_bond_pmd.c @@ -764,8 +764,6 @@ mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr) { struct ether_addr *mac_addr; - mac_addr = eth_dev->data->mac_addrs; - if (eth_dev == NULL) { RTE_LOG(ERR, PMD, "%s: NULL pointer eth_dev specified\n", __func__); return -1; @@ -776,6 +774,8 @@ mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr) return -1; } + mac_addr = eth_dev->data->mac_addrs; + ether_addr_copy(mac_addr, dst_mac_addr); return 0; } @@ -785,8 +785,6 @@ mac_address_set(struct rte_eth_dev *eth_dev, struct ether_addr *new_mac_addr) { struct ether_addr *mac_addr; - mac_addr = eth_dev->data->mac_addrs; - if (eth_dev == NULL) { RTE_BOND_LOG(ERR, "NULL pointer eth_dev specified"); return -1; @@ -797,6 +795,8 @@ mac_address_set(struct rte_eth_dev *eth_dev, struct ether_addr *new_mac_addr) return -1; } + mac_addr = eth_dev->data->mac_addrs; + /* If new MAC is different to current MAC then update */ if (memcmp(mac_addr, new_mac_addr, sizeof(*mac_addr)) != 0) memcpy(mac_addr, new_mac_addr, sizeof(*mac_addr)); -- 1.7.12.2 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v3 0/3] bond: static analysis issues fix [not found] ` <1418816819-13517-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> 2014-12-17 11:46 ` [PATCH v3 1/3] bond: add bounds check before assigning active slave count value Declan Doherty @ 2014-12-17 23:43 ` Thomas Monjalon 1 sibling, 0 replies; 10+ messages in thread From: Thomas Monjalon @ 2014-12-17 23:43 UTC (permalink / raw) To: Declan Doherty; +Cc: dev-VfR2kkLFssw > -v3: > Split patches > > -v2: > Incorporates Pawel's comments regarding assertion's check on activate_slave array indexing > > Fixes for link bonding library identified by static analysis tool > > - Overflow assert for active_slaves array in activate_slave function > - Allocation check of pci_id_table in rte_eth_bond_create > - Use of eth_dev pointer in mac_address_get/set before NULL check > > > Declan Doherty (3): > bond: add bounds check before assigning active slave count value > bond: fix pci_id_table allocation check in rte_eth_bond_create > bond: eth_dev parameter used before NULL check mac_address_get/set Applied Thanks -- Thomas ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2014-12-17 23:43 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-12 17:39 [PATCH] bond: static analysis issues fix Declan Doherty
[not found] ` <1418405982-21407-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2014-12-12 18:30 ` Wodkowski, PawelX
2014-12-15 17:13 ` [PATCH v2] " Declan Doherty
[not found] ` <1418663630-27409-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2014-12-16 8:50 ` Wodkowski, PawelX
2014-12-16 17:31 ` Thomas Monjalon
2014-12-17 11:46 ` [PATCH v3 0/3] " Declan Doherty
[not found] ` <1418816819-13517-1-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2014-12-17 11:46 ` [PATCH v3 1/3] bond: add bounds check before assigning active slave count value Declan Doherty
[not found] ` <1418816819-13517-2-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2014-12-17 11:46 ` [PATCH v3 2/3] bond: fix pci_id_table allocation check in rte_eth_bond_create Declan Doherty
[not found] ` <1418816819-13517-3-git-send-email-declan.doherty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2014-12-17 11:46 ` [PATCH v3 3/3] bond: eth_dev parameter used before NULL check in mac_address_get/set Declan Doherty
2014-12-17 23:43 ` [PATCH v3 0/3] bond: static analysis issues fix Thomas Monjalon
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.