[dpdk-dev,1/8] net/qede: fix to get vendor/device id info

Message ID 1480746909-25686-1-git-send-email-Rasesh.Mody@cavium.com (mailing list archive)
State Changes Requested, archived
Delegated to: Ferruh Yigit
Headers

Checks

Context Check Description
checkpatch/checkpatch success coding style OK

Commit Message

Mody, Rasesh Dec. 3, 2016, 6:35 a.m. UTC
  Fixes: ec94dbc5 ("qede: add base driver")

Signed-off-by: Rasesh Mody <Rasesh.Mody@cavium.com>
---
 drivers/net/qede/qede_ethdev.c | 4 ++++
 1 file changed, 4 insertions(+)
  

Comments

Ferruh Yigit Dec. 9, 2016, 1:35 p.m. UTC | #1
Hi Rasesh,

On 12/3/2016 6:35 AM, Rasesh Mody wrote:
> Fixes: ec94dbc5 ("qede: add base driver")
> 
> Signed-off-by: Rasesh Mody <Rasesh.Mody@cavium.com>

Related to the commit logs of this patchset. Many people, including me,
won't know technical details of your driver as you do.

From below patch, I also can see vendor_id and device_id get, which were
not there before. But I have no clue why? Or what happens when you don't
have them, or what works fine when you have them.
Overall a little context helps a lot to understand what is really fixed,
and what happens if not fixed.

For example in patch 8/8, it is a one line easy modification :), but
there is no way that I can understand what really it does, but commit
log comes to help there, and describes it really fixes VF over legacy
PF, by VF asking a FW overwrite instead of failing on PF reject msg. So
patch subject can be here: fix VF over legacy PF.

Please trying to provide more context on fixes.


Also you need to add CC:stable@dpdk.org to commit log, so that git
send-email ensures this fixes also sent to stable trees.


Thanks,

> ---
>  drivers/net/qede/qede_ethdev.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
> index 9c2a5eae..b9a325df 100644
> --- a/drivers/net/qede/qede_ethdev.c
> +++ b/drivers/net/qede/qede_ethdev.c
> @@ -2071,6 +2071,10 @@ static int qede_common_dev_init(struct rte_eth_dev *eth_dev, bool is_vf)
>  
>  	rte_eth_copy_pci_info(eth_dev, pci_dev);
>  
> +	/* @DPDK */
> +	edev->vendor_id = pci_dev->id.vendor_id;
> +	edev->device_id = pci_dev->id.device_id;
> +
>  	qed_ops = qed_get_eth_ops();
>  	if (!qed_ops) {
>  		DP_ERR(edev, "Failed to get qed_eth_ops_pass\n");
>
  
Mody, Rasesh Dec. 20, 2016, 11:25 p.m. UTC | #2
Hi Ferruh,

> From: Ferruh Yigit [mailto:ferruh.yigit@intel.com]
> Sent: Friday, December 09, 2016 5:36 AM
> 
> Hi Rasesh,
> 
> On 12/3/2016 6:35 AM, Rasesh Mody wrote:
> > Fixes: ec94dbc5 ("qede: add base driver")
> >
> > Signed-off-by: Rasesh Mody <Rasesh.Mody@cavium.com>
> 
> Related to the commit logs of this patchset. Many people, including me,
> won't know technical details of your driver as you do.
> 
> From below patch, I also can see vendor_id and device_id get, which were
> not there before. But I have no clue why? Or what happens when you don't
> have them, or what works fine when you have them.
> Overall a little context helps a lot to understand what is really fixed, and what
> happens if not fixed.

The vendor_id and device_id are used to determine device type. If you don't have them, then check for determining device type fails and is always set to default device type.

Hope this helps.

> For example in patch 8/8, it is a one line easy modification :), but there is no
> way that I can understand what really it does, but commit log comes to help
> there, and describes it really fixes VF over legacy PF, by VF asking a FW
> overwrite instead of failing on PF reject msg. So patch subject can be here:
> fix VF over legacy PF.

Sounds good, will reword the subject.

> Please trying to provide more context on fixes.
> 
> 
> Also you need to add CC:stable@dpdk.org to commit log, so that git send-
> email ensures this fixes also sent to stable trees.

Will take care of this in v2 submission.

Thanks!
Rasesh

> 
> 
> Thanks,
> 
> > ---
> >  drivers/net/qede/qede_ethdev.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/drivers/net/qede/qede_ethdev.c
> > b/drivers/net/qede/qede_ethdev.c index 9c2a5eae..b9a325df 100644
> > --- a/drivers/net/qede/qede_ethdev.c
> > +++ b/drivers/net/qede/qede_ethdev.c
> > @@ -2071,6 +2071,10 @@ static int qede_common_dev_init(struct
> > rte_eth_dev *eth_dev, bool is_vf)
> >
> >  	rte_eth_copy_pci_info(eth_dev, pci_dev);
> >
> > +	/* @DPDK */
> > +	edev->vendor_id = pci_dev->id.vendor_id;
> > +	edev->device_id = pci_dev->id.device_id;
> > +
> >  	qed_ops = qed_get_eth_ops();
> >  	if (!qed_ops) {
> >  		DP_ERR(edev, "Failed to get qed_eth_ops_pass\n");
> >
  

Patch

diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index 9c2a5eae..b9a325df 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -2071,6 +2071,10 @@  static int qede_common_dev_init(struct rte_eth_dev *eth_dev, bool is_vf)
 
 	rte_eth_copy_pci_info(eth_dev, pci_dev);
 
+	/* @DPDK */
+	edev->vendor_id = pci_dev->id.vendor_id;
+	edev->device_id = pci_dev->id.device_id;
+
 	qed_ops = qed_get_eth_ops();
 	if (!qed_ops) {
 		DP_ERR(edev, "Failed to get qed_eth_ops_pass\n");