Hi Keith,

Yes I ran this program as root 

However I ran it with DPDK 18.11 release.

I will try 19.05 later.

Besides, my cpu is E5-2650 v4.
NICs are Intel x520 DA2 and Mellanox connectx-3

thank you for reply

Best Regards,




> Wiles, Keith <[email protected]> 於 2019年4月22日 下午9:09 寫道:
> 
> 
> 
>> On Apr 22, 2019, at 1:43 AM, 曾懷恩 <[email protected]> wrote:
>> 
>> Hi Wiles,
>> 
>> here is my sample code with just doing rte_eal_init() and rte_malloc() .
>> 
>> 
>> 
> 
> I tried the attached code and it works on my machine with something close to 
> DPDK 19.05 release.
> 
> I only use 2 Meg pages, but I assumed it would not make any difference.
> 
> Did you run this example as root?
>> 
>> And my start eal cmdline option is ./build/test -l 0-1 -n 4
>> 
>> Thank you very much for your reply
>>> Wiles, Keith <[email protected]> 於 2019年4月21日 上午4:29 寫道:
>>> 
>>> 
>>> 
>>> Sent from my iPhone
>>> 
>>>> On Apr 18, 2019, at 11:31 PM, 曾懷恩 <[email protected]> wrote:
>>>> 
>>>> HI, Stephen,
>>>> 
>>>> Yes, I set huge page in  default_hugepagesz=1G hugepagesz=1G hugepages=4
>>>> 
>>>> and also did rte_eal_init at the beginning of my program.
>>>> 
>>>> thanks for reply.
>>> 
>>> Is the core doing the rte_malloc one of the cores listed in the core list 
>>> on the command line.  In other words the pthread doing the allocation 
>>> should be the master lcore or one of the slave lcores.
>>> 
>>> Also I seems like a very simple test case, can you do the rte_eal_init() 
>>> and then do the allocation as your sample code looks and then exit? Does 
>>> this cause a segfault?
>>>> 
>>>> 
>>>>> Stephen Hemminger <[email protected]> 於 2019年4月19日 上午10:59 寫道:
>>>>> 
>>>>> On Fri, 19 Apr 2019 09:11:05 +0800
>>>>> 曾懷恩 <[email protected]> wrote:
>>>>> 
>>>>>>  Hi all, 
>>>>>> 
>>>>>>  i have 1 problem while using rte_malloc
>>>>>> 
>>>>>>  Every time I use this function and use the memory it returns, it shows 
>>>>>> segmentation fault(core dump)
>>>>>> 
>>>>>>  Is something wrong?
>>>>>> 
>>>>>>  thanks.
>>>>>> 
>>>>>> 
>>>>>>  rte init …
>>>>>>  ………...
>>>>>>  unsigned char *str1;
>>>>>>  printf("str1 addr = %x\n", str1);
>>>>>>  str1 = rte_malloc(NULL,2,RTE_CACHE_LINE_SIZE);
>>>>>>  printf("str1 addr = %x\n", str1);
>>>>>>  str1[0] = 'a’; //segmentation fault here
>>>>>>  str1[1] = '\0';
>>>>> Do you have huge pages?
>>>>> Did you do eal_init?
>>>> 
>> 
>> <test.c><Makefile>
> 
> Regards,
> Keith
> 

Reply via email to