[dpdk-dev] [PATCH v2] rte_mempool_dump() crashes with NULL rte_mempool pointer.
Wiles, Roger Keith
keith.wiles at windriver.com
Wed Oct 1 17:57:31 CEST 2014
On Oct 1, 2014, at 10:43 AM, Bruce Richardson <bruce.richardson at intel.com> wrote:
> On Wed, Oct 01, 2014 at 11:02:27AM -0400, Neil Horman wrote:
>> On Wed, Oct 01, 2014 at 03:36:45PM +0200, Thomas Monjalon wrote:
>>> 2014-09-28 08:27, Neil Horman:
>>>> On Sun, Sep 28, 2014 at 05:28:44AM +0000, Wiles, Roger Keith wrote:
>>>>> Check the FILE *f and rte_mempool *mp pointers for NULL and
>>>>> return plus print out a message if RTE_LIBRTE_MEMPOOL_DEBUG is enabled.
>>>>>
>>>>> Signed-off-by: Keith Wiles <keith.wiles at windriver.com>
>>>>
>>>> I'm fine with this, as I think passing in a NULL mempool is clearly a bug here,
>>>> thats worth panicing over, though I wouldnt mind if we did a RTE_VERIFY_WARN
>>>> macro here instead using what I suggested in my other note
>>>
>>> Passing a NULL mempool to rte_mempool_dump() is a bug in the application.
>>> If you look elsewhere in the DPDK code, you'll see that it's not common to do
>>> such check on input parameters.
>>> A similar discussion already happened few months ago:
>>> http://dpdk.org/ml/archives/dev/2014-June/003900.html
>>>
>> Not sure what your point is here Thomas. I think we're all in agreement that
>> NULL is a bad value to pass in here. Are you asserting that we shouldn't bother
>> with a NULL check at all and just accept the crash as it is?
>>
>
> In the general case:
> * Code in the datapath should not have things like NULL checks
> * However, datapath code should generally have a debug option which turns
> these checks on to help debugging if needed.
> * Code not in the datapath probably should have these checks.
IMO the last point is the reason for the rte_mempool_dump() check. We could always add a new macro (if not already defined) that could be compiled out if not enabled as a debug. I would not want to put ‘ifdef’ around that code but include the ifdef in the macro/header file. Removing ifdefs from the code .c files should be the long term goal as a side note.
>
> My 2c here
>
> /Bruce
Keith Wiles, Principal Technologist with CTO office, Wind River mobile 972-213-5533
More information about the dev
mailing list