On Mon, Sep 1, 2014 at 11:41 AM, Alex Wang <al...@nicira.com> wrote:
>
>
>
> On Sat, Aug 30, 2014 at 12:02 PM, Pravin Shelar <pshe...@nicira.com> wrote:
>>
>> On Mon, Aug 11, 2014 at 9:56 PM, Alex Wang <al...@nicira.com> wrote:
>> > Before this commit, ovs only creates one tx/rx queue for each
>> > dpdk interface and uses only one poll thread for handling the
>> > I/O of all dpdk interfaces.  As one step toward using multiple
>> > poll threads, this commit makes ovs, by default, create same
>> > number of rx queues as the number dpdk interfaces on the cpu
>> > socket.  Also each dpdk interface will have one tx queue for
>> > each cpu core, even though not all of those queues will be
>> > used.
>> >
>>
>> Generally we should describe subject in less than 70 characters.
>> Commit msg should explain why we are introducing this change. It is
>> not clear from the patch the relation between number of core on socket
>> and rx queues.
>>
>
>
> Thx, I'll use the 70 characters rule, thought it was 80,
>
> Also, I'll shed light on how upcoming patches relates to this patch.
>
>
>
>>
>>
>> > @@ -179,7 +180,9 @@ struct netdev_dpdk {
>> >      int port_id;
>> >      int max_packet_len;
>> >
>> > -    struct dpdk_tx_queue tx_q[NR_QUEUE];
>> > +    struct dpdk_tx_queue *tx_q;
>> > +    int n_tx_q;
>> > +    int n_rx_q;
>> >
>> There is already member in struct netdev called n_rxq to represent
>> number of rx_queues, we should use that directly.
>> tx_queues are not visible to dpif-netdev, but later patches will make
>> them visible, so we should add another member n_txq to struct netdev.
>> netdev-provide should be a passive layer, driven by dpif-netdev. Logic
>> of calculating number of queues should is in dpif-netdev, We can add
>> another API to open multi queue devices like dpdk.
>
>
>
> i'm good with adding n_txq to the 'struct netdev'.
>
> so i think what you suggest are the following:
> - add n_txq to 'struct netdev', and add new struct 'struct netdev_txq'
> - add functions netdev_set_multiq() in 'netdev-provider.h' for configuring
>   the n_txq, n_rxq
> - like rxq_recv() functions, the send() function will take in 'struct
> netdev_txq'
>   as argument
>

I agree with all except last one. I dont think there is any need for
struct netdev_txq. netdev-dpdk can select queue based on core-id for
now.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to