Ferruh Yigit wrote:

> According my understanding,

> Only *one* DPDK application (primary or secondary) should control a device.
> There is no restriction in DPDK for it, this responsibility is pushed to
> application, application should manage it.
...
> Device initialization (probe()) done only by primary application.

I'm jumping in the thread because this is not clear actually. As a somehow 
long-standing DPDK multiprocess user, I think it would be good to take the 
occasion to make clarifications (in the docs and not only on the mailing list) 
about what can be done between processes.

Eg following your thought, a master/slave approach is not allowed by DPDK.

Example : currently changing the RETA table with mlx5 will crash all slaves 
currently reading packets from the target device. So much for dynamically 
scaling.

Can we let calling all this set of (undocumented) functions that should not be 
called between processes be "the fault of the user" if it crashes?

Tom

Reply via email to