From: Thomas Monjalon <thomas.monjalon@6wind.com>
To: Shreyansh Jain <shreyansh.jain@nxp.com>
Cc: Jianbo Liu <jianbo.liu@linaro.org>,
dev@dpdk.org, David Marchand <david.marchand@6wind.com>
Subject: Re: Clarification for eth_driver changes
Date: Thu, 10 Nov 2016 00:58:01 -0800 (PST) [thread overview]
Message-ID: <1707413.bZtX9g6zPm@xps13> (raw)
In-Reply-To: <bfaf4db5-3b1c-2e2b-5395-c2219a9fb772@nxp.com>
2016-11-10 14:12, Shreyansh Jain:
> On Thursday 10 November 2016 01:33 PM, Thomas Monjalon wrote:
> > 2016-11-10 15:51, Jianbo Liu:
> >> On 10 November 2016 at 15:26, Shreyansh Jain <shreyansh.jain@nxp.com> wrote:
> >>> This is what the current outline of eth_driver is:
> >>>
> >>> +------------------------+
> >>> | eth_driver |
> >>> | +---------------------+|
> >>> | | rte_pci_driver ||
> >>> | | +------------------+||
> >>> | | | rte_driver |||
> >>> | | | name[] |||
> >>> | | | ... |||
> >>> | | +------------------+||
> >>> | | .probe ||
> >>> | | .remove ||
> >>> | | ... ||
> >>> | +---------------------+|
> >>> | .eth_dev_init |
> >>> | .eth_dev_uninit |
> >>> +------------------------+
> >>>
> >>> This is what I was thinking:
> >>>
> >>> +---------------------+ +----------------------+
> >>> | rte_pci_driver | |eth_driver |
> >>> | +------------------+| _|_struct rte_driver *p |
> >>> | | rte_driver <-------/ | .eth_dev_init |
> >>> | | ... || | .eth_dev_uninit |
> >>> | | name || +----------------------+
> >>> | | <more> ||
> >>> | +------------------+|
> >>> | <PCI specific info>|
> >>> +---------------------+
> >>>
> >>> ::Impact::
> >>> Various drivers use the rte_pci_driver embedded in the eth_driver object for
> >>> device initialization.
> >>> == They assume that rte_pci_driver is directly embedded and hence simply
> >>> dereference.
> >>> == e.g. eth_igb_dev_init() in drivers/net/e1000/igb_ethdev.c file
> >>>
> >>> With the above change, such drivers would have to access rte_driver and then
> >>> perform container_of to obtain their respective rte_xxx_driver.
> >>> == this would be useful in case there is a non-PCI driver
> >>>
> >>> ::Problem::
> >>> I am not sure of reason as to why eth_driver embedded rte_pci_driver in
> >>> first place - other than a convenient way to define it before PCI driver
> >>> registration.
> >>>
> >>> As all the existing PMDs are impacted - am I missing something here in
> >>> making the above change?
> >>>
> >>
> >> How do you know eth_driver->p is pointing to a rte_pci_driver or rte_soc_driver?
> >> Maybe you need to add a type/flag in rte_driver.
> >
> > Why do you need any bus information at ethdev level?
>
> AFAIK, we don't need it. Above text is not stating anything on that
> grounds either, I think. Isn't it?
No, I was replying to Jianbo.
Anyway, David made a more interesting comment.
next prev parent reply other threads:[~2016-11-10 8:58 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-10 7:26 Clarification for eth_driver changes Shreyansh Jain
2016-11-10 7:51 ` Jianbo Liu
2016-11-10 8:03 ` Thomas Monjalon
2016-11-10 8:42 ` Shreyansh Jain
2016-11-10 8:58 ` Thomas Monjalon [this message]
2016-11-10 9:20 ` Jianbo Liu
2016-11-10 10:51 ` Stephen Hemminger
2016-11-10 11:07 ` Thomas Monjalon
2016-11-10 11:09 ` Shreyansh Jain
2016-11-10 8:38 ` Shreyansh Jain
2016-11-10 8:16 ` David Marchand
2016-11-10 11:05 ` Shreyansh Jain
2016-11-11 19:16 ` Ferruh Yigit
2016-11-12 17:44 ` Shreyansh Jain
2016-11-14 17:38 ` Ferruh Yigit
2016-11-16 5:09 ` Shreyansh Jain
2016-11-14 9:07 ` David Marchand
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=1707413.bZtX9g6zPm@xps13 \
--to=thomas.monjalon@6wind.com \
--cc=david.marchand@6wind.com \
--cc=dev@dpdk.org \
--cc=jianbo.liu@linaro.org \
--cc=shreyansh.jain@nxp.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.