All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Lu, Wenzhuo" <wenzhuo.lu@intel.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [PATCH v3] ethdev: fix DCB config issue on ixgbe
Date: Thu, 30 Jun 2016 08:47:28 +0000	[thread overview]
Message-ID: <6A0DE07E22DDAD4C9103DF62FEBC09090348C3AF@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: 1501713.7uhgKcRiBR@xps13

Hi Thomas,


> -----Original Message-----
> From: Lu, Wenzhuo
> Sent: Thursday, June 30, 2016 4:23 PM
> To: 'Thomas Monjalon'
> Cc: dev@dpdk.org
> Subject: RE: [dpdk-dev] [PATCH v3] ethdev: fix DCB config issue on ixgbe
> 
> Hi Thomas,
> 
> > -----Original Message-----
> > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com]
> > Sent: Thursday, June 30, 2016 3:42 PM
> > To: Lu, Wenzhuo
> > Cc: dev@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH v3] ethdev: fix DCB config issue on
> > ixgbe
> >
> > 2016-06-30 01:40, Lu, Wenzhuo:
> > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Lu, Wenzhuo
> > > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com]
> > > > > 2016-06-23 01:04, Lu, Wenzhuo:
> > > > > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com]
> > > > > > > 2016-05-06 05:33, Wenzhuo Lu:
> > > > > > > > +int
> > > > > > > > +rte_eth_dev_mq_mode_set(uint8_t port_id,
> > > > > > > > +			enum rte_eth_rx_mq_mode rx_mq_mode,
> > > > > > > > +			enum rte_eth_tx_mq_mode tx_mq_mode);
> > > > > > >
> > > > > > > I've really tried to think about it and I think it is more or less a hack.
> > > > > > > First, it is not explained in the doc when we should use
> > > > > > > rte_eth_dev_mq_mode_set() instead of a simple call to
> > > > > rte_eth_dev_configure().
> > > > > > > Second, I don't understand why having a function which
> > > > > > > configures the "multiqueue modes" without configuring
> > > > > > > properly
> > RSS/VMDq/DCB.
> > > > > > > Last, it is said that rte_eth_dev_configure() "must be
> > > > > > > invoked first before any other function in the Ethernet API".
> > > After checking the code, Honestly I'm confused. I don't find this description.
> >
> > It's in the description of rte_eth_dev_configure():
> > 	http://dpdk.org/browse/dpdk/tree/lib/librte_ether/rte_ethdev.h#n1904
> The bad news is this rule is not followed. I think the reason is something has to
> be done before configure.
> 
> >
> > > And on the contrary, I find rte_eth_dev_info_get is always called
> > > before rte_eth_dev_configure. I believe it's the problem.
> > > As rte_eth_dev_configure is not run, rte_eth_dev_info_get cannot get
> > > the
> > right info.
> > > That why I have to add a API to set the mq_mode before
> > rte_eth_dev_info_get.
> > > Does that mean all the related examples are wrong? Any opinion? Thanks.
> >
> > My opinion is that this area needs a good cleanup and easy API :)
> OK. My solution is
> 1, Remove the description " rte_eth_dev_configure() must be invoked first
> before any other function in the Ethernet API ". I think it's reasonable to execute
> the rte_eth_dev_info_get before rte_eth_dev_configure, because we need to
> get some NIC specific limitation to check if the configuration is right.
> 2, Add one more argument, " const struct rte_eth_conf *eth_conf ", for
> rte_eth_dev_info_get, like this, void rte_eth_dev_info_get(uint8_t port_id,
> struct rte_eth_dev_info *dev_info, const struct rte_eth_conf *eth_conf);
> because getting the right info depends on the configuration.
And I'm a little lost, my patch has nothing to do with rte_eth_dev_configure. I just try to fix the issue that rte_eth_dev_info_get has dependency with configuration. If the configure is not right, we cannot get the right info.

      parent reply	other threads:[~2016-06-30  8:47 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-11  8:24 [PATCH] lib: fix DCB config issue on ixgbe Wenzhuo Lu
2016-04-11  9:52 ` Thomas Monjalon
2016-04-12  0:39   ` Lu, Wenzhuo
2016-05-04 21:47 ` [PATCH v2] " Wenzhuo Lu
2016-05-05 21:33 ` [PATCH v3] ethdev: " Wenzhuo Lu
2016-06-17 11:21   ` De Lara Guarch, Pablo
2016-06-22 17:01   ` Thomas Monjalon
2016-06-23  1:04     ` Lu, Wenzhuo
2016-06-23 12:21       ` Thomas Monjalon
2016-06-24  0:45         ` Lu, Wenzhuo
2016-06-30  1:40           ` Lu, Wenzhuo
2016-06-30  7:41             ` Thomas Monjalon
2016-06-30  8:23               ` Lu, Wenzhuo
2016-06-30  8:47               ` Lu, Wenzhuo [this message]

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=6A0DE07E22DDAD4C9103DF62FEBC09090348C3AF@shsmsx102.ccr.corp.intel.com \
    --to=wenzhuo.lu@intel.com \
    --cc=dev@dpdk.org \
    --cc=thomas.monjalon@6wind.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.