lkml.org 
[lkml]   [2010]   [Oct]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2.6.35-rc6] net-next: Add multiqueue support to vmxnet3 driver
    On Wed, 13 Oct 2010 14:47:05 -0700 (PDT)
    Shreyas Bhatewara <sbhatewara@vmware.com> wrote:

    > #ifdef VMXNET3_RSS
    > +static unsigned int num_rss_entries;
    > +#define VMXNET3_MAX_DEVICES 10
    > +
    > +static int rss_ind_table[VMXNET3_MAX_DEVICES *
    > + VMXNET3_RSS_IND_TABLE_SIZE + 1] = {
    > + [0 ... VMXNET3_MAX_DEVICES * VMXNET3_RSS_IND_TABLE_SIZE] = -1 };
    > +#endif
    > +static int num_tqs[VMXNET3_MAX_DEVICES + 1] = {
    > + [0 ... VMXNET3_MAX_DEVICES] = 1 };
    > +static int num_rqs[VMXNET3_MAX_DEVICES + 1] = {
    > + [0 ... VMXNET3_MAX_DEVICES] = 1 };
    > +static int share_tx_intr[VMXNET3_MAX_DEVICES + 1] = {
    > + [0 ... VMXNET3_MAX_DEVICES] = 0 };
    > +static int buddy_intr[VMXNET3_MAX_DEVICES + 1] = {
    > + [0 ... VMXNET3_MAX_DEVICES] = 1 };
    > +
    > +static unsigned int num_adapters;
    > +module_param_array(share_tx_intr, int, &num_adapters, 0400);
    > +MODULE_PARM_DESC(share_tx_intr, "Share one IRQ among all tx queue completions. "
    > + "Comma separated list of 1s and 0s - one for each NIC. "
    > + "1 to share, 0 to not, default is 0");
    > +module_param_array(buddy_intr, int, &num_adapters, 0400);
    > +MODULE_PARM_DESC(buddy_intr, "Share one IRQ among corresponding tx and rx "
    > + "queues. Comma separated list of 1s and 0s - one for each "
    > + "NIC. 1 to share, 0 to not, default is 1");
    > +module_param_array(num_tqs, int, &num_adapters, 0400);
    > +MODULE_PARM_DESC(num_tqs, "Number of transmit queues in each adapter. Comma "
    > + "separated list of integers. Setting this to 0 makes number"
    > + " of queues same as number of CPUs. Default is 1.");
    > +
    > +#ifdef VMXNET3_RSS
    > +module_param_array(rss_ind_table, int, &num_rss_entries, 0400);
    > +MODULE_PARM_DESC(rss_ind_table, "RSS Indirection table. Number of entries "
    > + "per NIC should be 32. Each integer in a comma separated list"
    > + " is an rx queue number starting with 0. Repeat the same for"
    > + " all NICs.");
    > +module_param_array(num_rqs, int, &num_adapters, 0400);
    > +MODULE_PARM_DESC(num_rqs, "Number of receive queues in each adapter. Comma "
    > + " separated list of integers. Setting this to 0 makes number"
    > + " of queues same as number of CPUs. Default is 1.");

    Module parameters are not right for this. They lead to different API
    for interacting with each driver vendor. Is there a another better API?
    Does it have to be this tweakable in a production environment.

    --


    \
     
     \ /
      Last update: 2010-10-14 00:01    [W:3.220 / U:1.544 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site