[Snort-devel] [PATCH] DPDK DAQ Module

Maxim Uvarov maxim.uvarov at ...3502...
Thu Jun 16 14:41:36 EDT 2016


On 06/16/16 17:37, Tiwei Bie wrote:
> On Thu, Jun 16, 2016 at 08:42:33PM +0800, Tiwei Bie wrote:
>> On Thu, Jun 16, 2016 at 02:22:01PM +0300, Maxim Uvarov wrote:
>>> That is single thread dpdk-daq module, right?
>>>
>> The thread created by rte_eal_init() won't be used. All the daq
>> methods (e.g. dpdk_daq_acquire) will run on the snort's thread
>> context.
>>
> More details:
>
> The thread which calls rte_eal_init() will become DPDK's master
> thread. So, when you only specify one lcore with eal's -c option,
> such as: -c 40, no DPDK's slave threads will be created. And the
> affinity of the snort thread which becomes DPDK's master thread
> will be set to CPU6 (the 7th CPU).
>
> When you specify more than one lcores with eal's -c option, such
> as: -c ff, seven slave threads will be created by rte_eal_init().
> But they won't be used.
>
> And the daq methods (e.g. dpdk_daq_acquire) will be called in the
> snort thread context.
>
> Best regards,
> Tiwei Bie
>

I'm asked that question because I had in plan update daq module for 
OpenDataPlane:
https://github.com/Xiche/daq_odp

And for some previous version there were problems in scaling snort 
across number of cpus.
Which looks like solved in 3.X and will be never fixed in 2.9.x.

But now I think I can follow your patch to integrate ODP to mainline snort.

Best regards,
Maxim.








More information about the Snort-devel mailing list