[dpdk-dev] [PATCH 1/2] bond: avoid allocating mempool on socket LCORE_ID_ANY

Jan Blunck jblunck at infradead.org
Wed Jun 28 14:00:14 CEST 2017


On Wed, Jun 28, 2017 at 11:47 AM, Declan Doherty
<declan.doherty at intel.com> wrote:
> On 26/04/17 22:30, Jan Blunck wrote:
>>
>> If the numa node is unknown, use the value from rte_socket_id() to avoid
>> an allocation failure.
>>
>> Signed-off-by: Eric Kinzie <ekinzie at brocade.com>
>> CC: Eric Kinzie <ehkinzie at gmail.com>
>> ---
>>   drivers/net/bonding/rte_eth_bond_8023ad.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/net/bonding/rte_eth_bond_8023ad.c
>> b/drivers/net/bonding/rte_eth_bond_8023ad.c
>> index 7b863d6..b8df536 100644
>> --- a/drivers/net/bonding/rte_eth_bond_8023ad.c
>> +++ b/drivers/net/bonding/rte_eth_bond_8023ad.c
>> @@ -887,6 +887,8 @@ bond_mode_8023ad_activate_slave(struct rte_eth_dev
>> *bond_dev, uint8_t slave_id)
>>         RTE_ASSERT(port->rx_ring == NULL);
>>         RTE_ASSERT(port->tx_ring == NULL);
>>         socket_id = rte_eth_devices[slave_id].data->numa_node;
>> +       if (socket_id == (uint8_t)LCORE_ID_ANY)
>
>
> socket_id is an integer so we shouldn't be casting LCORE_ID_ANY to an
> uint8_t as this condition would never match as LCORE_ID_ANY wouldn't be
> UINT32_MAX after casting
>

Ouch ... let me fix this.

>> +               socket_id = 0;
>
>
> Should this not be socket_id = rte_socket_id(); as we don't know we are
> running on
>
>
>>         element_size = sizeof(struct slow_protocol_frame) +
>>                                 RTE_PKTMBUF_HEADROOM;
>>
>


More information about the dev mailing list