From: Patrick McHardy <kaber@trash.net>
To: Changli Gao <xiaosuo@gmail.com>
Cc: Eric Dumazet <eric.dumazet@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
netdev@vger.kernel.org, Tom Herbert <therbert@google.com>
Subject: Re: [PATCH] ifb: add multi-queue support
Date: Tue, 10 Nov 2009 13:19:09 +0100 [thread overview]
Message-ID: <4AF95A3D.5060602@trash.net> (raw)
In-Reply-To: <412e6f7f0911100414w7b6f45aap39f6568b7af2c1a7@mail.gmail.com>
Changli Gao wrote:
> On Tue, Nov 10, 2009 at 7:41 PM, Patrick McHardy <kaber@trash.net> wrote:
>> Changli Gao wrote:
>>> 2009/11/10 Eric Dumazet <eric.dumazet@gmail.com>:
>>>
>>> The whole ifb.c file is attached, please review and test it. Thanks!
>>> /* Number of TX queues per ifb */
>>> static int numtxqs = 1;
>>> module_param(numtxqs, int, 0444);
>>> MODULE_PARM_DESC(numtxqs, "Number of TX queues per ifb");
>> Module parameters suck as a configuration API. The existing numifbs
>> option exists purely for compatibility reasons, I'd prefer if you'd
>> this to the netlink interface.
>
> How to do that? I haven't found any examples. Is there a interface to
> config the number of the TX queues of a NIC.
You have to add a get_tx_queues() callback to the rtnl_link_ops.
Additionally you need a new attribute (IFLA_NTXQ or something like
that) that contains the number of queues. The callback has to parse
the attribute and set the number of queues accordingly.
>>> static int __init ifb_init_one(int index)
>>> {
>>> struct net_device *dev_ifb;
>>> int err;
>>>
>>> dev_ifb = alloc_netdev_mq(sizeof(struct ifb_private) * numtxqs, "ifb%d",
>>> ifb_setup, numtxqs);
>>>
>> This won't work for the rtnl_link setup since the size must
>> be constant.
>>
>
> Does this work?
>
> ifb_link_ops.priv_size = sizeof(struct ifb_private) * numtxqs;
> rtnl_lock();
> err = __rtnl_link_register(&ifb_link_ops);
Only for the module parameter. For rtnl_link you need to either
allocate the private space seperately or turn priv_size into
a callback that returns the required space based on the number
of queues.
next prev parent reply other threads:[~2009-11-10 12:19 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-10 8:30 [PATCH] ifb: add multi-queue support Changli Gao
2009-11-10 9:07 ` Eric Dumazet
2009-11-10 9:43 ` Changli Gao
2009-11-10 10:57 ` Eric Dumazet
2009-11-10 11:14 ` Changli Gao
2009-11-10 11:41 ` Patrick McHardy
2009-11-10 12:14 ` Changli Gao
2009-11-10 12:19 ` Patrick McHardy [this message]
2009-11-10 12:37 ` Changli Gao
2009-11-10 12:45 ` Patrick McHardy
2009-11-10 13:06 ` Changli Gao
2009-11-10 13:34 ` Eric Dumazet
2009-11-10 13:49 ` Changli Gao
2009-11-10 16:45 ` Stephen Hemminger
2009-11-11 6:30 ` Changli Gao
2009-11-10 10:29 ` Patrick McHardy
2009-11-10 10:48 ` Changli Gao
2009-11-10 10:55 ` Eric Dumazet
-- strict thread matches above, loose matches on Subject: below --
2009-11-11 9:51 Changli Gao
2009-11-11 9:56 ` Changli Gao
2009-11-11 10:30 ` Eric Dumazet
2009-11-11 10:57 ` Changli Gao
2009-11-11 15:59 ` Patrick McHardy
2009-11-12 3:12 ` Changli Gao
2009-11-12 8:52 ` Jarek Poplawski
2009-11-12 9:32 ` Changli Gao
2009-11-12 15:10 ` Patrick McHardy
2009-11-13 1:28 ` Changli Gao
2009-11-12 9:44 ` Changli Gao
2009-11-12 9:48 ` Changli Gao
2009-11-12 15:11 ` Patrick McHardy
2009-11-13 1:32 ` Changli Gao
2009-11-13 7:18 ` Patrick McHardy
2009-11-12 12:48 ` Eric Dumazet
2009-11-13 1:26 ` Changli Gao
2009-11-13 5:56 ` Eric Dumazet
2009-11-13 6:16 ` Changli Gao
2009-11-13 7:45 ` Jarek Poplawski
2009-11-13 8:54 ` Changli Gao
2009-11-13 9:18 ` Jarek Poplawski
2009-11-13 9:38 ` Changli Gao
2009-11-13 9:57 ` Jarek Poplawski
2009-11-13 11:25 ` Changli Gao
2009-11-13 12:32 ` Jarek Poplawski
2009-11-13 13:10 ` Eric Dumazet
2009-11-13 16:15 ` Stephen Hemminger
2009-11-13 23:28 ` Changli Gao
2009-11-13 23:32 ` Stephen Hemminger
2009-11-13 23:42 ` Changli Gao
2009-11-14 12:53 ` Eric Dumazet
2009-11-14 13:30 ` Changli Gao
2009-11-13 13:55 ` Eric Dumazet
2009-11-13 4:37 ` Changli Gao
2009-11-16 16:39 ` Stephen Hemminger
2009-11-17 3:10 ` David Miller
2009-11-17 5:38 ` Changli Gao
2009-11-17 6:02 ` Stephen Hemminger
2009-11-13 4:42 Changli Gao
2009-11-13 4:46 ` Changli Gao
2009-11-16 7:31 Changli Gao
2009-11-16 8:19 ` Eric Dumazet
2009-11-16 8:43 ` Changli Gao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AF95A3D.5060602@trash.net \
--to=kaber@trash.net \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=therbert@google.com \
--cc=xiaosuo@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.