[dpdk-dev] [PATCH] fix for 2 consecutive rte_eth_dev_start() can cause a SIGSEGV

2014-05-28 Thread Ananyev, Konstantin
Hi Thomas, >> 1)If igb_alloc_rx_queue_mbufs() would fail to allocate an mbuf for RX queue, >> it calls igb_rx_queue_release(rxq). >> That causes rxq to be silently freed, without updating >> dev->data->rx_queues[]. So any firther reference to it will trigger the >> SIGSEGV. >> Same thing in em PM

[dpdk-dev] [PATCH] fix for 2 consecutive rte_eth_dev_start() can cause a SIGSEGV

2014-05-26 Thread Thomas Monjalon
2014-05-23 12:08, Konstantin Ananyev: > 1)If igb_alloc_rx_queue_mbufs() would fail to allocate an mbuf for RX queue, > it calls igb_rx_queue_release(rxq). > That causes rxq to be silently freed, without updating > dev->data->rx_queues[]. So any firther reference to it will trigger the > SIGSEGV. >

[dpdk-dev] [PATCH] fix for 2 consecutive rte_eth_dev_start() can cause a SIGSEGV

2014-05-23 Thread Konstantin Ananyev
1)If igb_alloc_rx_queue_mbufs() would fail to allocate an mbuf for RX queue, it calls igb_rx_queue_release(rxq). That causes rxq to be silently freed, without updating dev->data->rx_queues[]. So any firther reference to it will trigger the SIGSEGV. Same thing in em PMD too. To fix: igb_alloc_rx_qu