Hi Olivier,

A few notes on using pktmbuf here:
1. As the name implies, pktmbuf should be used for packets and ctrlmbuf should 
be used for control messages :). IMHO using pktmbuf to control messages is a 
confusing workaround.
2. Pktmbuf has a lot of overhead that is not needed in order to send short 
messages between cores. Pktmbuf has a lot of pointers and other fields that do 
not make sense for messages. I don't think we want people to say DPDK is 
difficult to use because e.g. sending 2 bytes from core A to core B requires 
initializing a bunch of pointers and other fields that do not make sense.
3. Once we start using pktmbuf to send messages, it is likely that other people 
will follow this example, and they might do it incorrectly. I don't think we 
want to see emails on this list from people asking e.g:
        i) Why does my app segfaults, when all I want to do is send 2 bytes 
from core A to core B?
        ii) Why does my app segfaults when core A writes a message to a NIC TX 
queue? :)

Using an app dependent structure requires duplicating the work to create/free 
the pool of such structures, and alloc/free mechanism. And then some people 
will ask why are we not using ctrlmbuf, as long as ctrlmbuf exists in DPDK.

I think that, as long as we have ctrlmbuf and pktmbuf in DPDK, we should follow 
the existing model. We should not look for workarounds that we know we plan to 
change anyway, we should look for the right solution. We both agree we need to 
refresh pktmbuf and ctrlmbuf, but my point is we should not do changes as long 
as we don't know what the agreed solution will look like?

Thanks,
Cristian


-----Original Message-----
From: Olivier MATZ [mailto:[email protected]] 
Sent: Monday, June 9, 2014 1:14 PM
To: Dumitrescu, Cristian
Cc: dev at dpdk.org
Subject: Re: [dpdk-dev] [v2 22/23] Packet Framework IPv4 pipeline sample app

Hi Christian,

> We need a message type defined for message passing between cores, and
> pktmbuf is definitely not the right approach.

Could you please explain why a pktmbuf is not the right approach?

As proposed in http://dpdk.org/ml/archives/dev/2014-May/002759.html
I think the control mbuf could be replaced by a packet mbuf or an
application private structure.


Regards,
Olivier

--------------------------------------------------------------
Intel Shannon Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263
Business address: Dromore House, East Park, Shannon, Co. Clare

This e-mail and any attachments may contain confidential material for the sole 
use of the intended recipient(s). Any review or distribution by others is 
strictly prohibited. If you are not the intended recipient, please contact the 
sender and delete all copies.


Reply via email to