DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/2] fix the wrong address of device data pointer
@ 2016-03-24  6:37 Wenzhuo Lu
  2016-03-24  6:37 ` [dpdk-dev] [PATCH 1/2] ixgbe: " Wenzhuo Lu
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Wenzhuo Lu @ 2016-03-24  6:37 UTC (permalink / raw)
  To: dev

In the function set_rx_mode, the pointer of device data points
to the wrong address.

Wenzhuo Lu (2):
  ixgbe: fix the wrong address of device data pointer
  igb: fix the wrong address of device data pointer

 drivers/net/e1000/igb_pf.c   | 2 +-
 drivers/net/ixgbe/ixgbe_pf.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

-- 
1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dpdk-dev] [PATCH 1/2] ixgbe: fix the wrong address of device data pointer
  2016-03-24  6:37 [dpdk-dev] [PATCH 0/2] fix the wrong address of device data pointer Wenzhuo Lu
@ 2016-03-24  6:37 ` Wenzhuo Lu
  2016-03-24  6:48   ` Wu, Jingjing
  2016-03-24  6:37 ` [dpdk-dev] [PATCH 2/2] igb: " Wenzhuo Lu
  2016-03-24  7:07 ` [dpdk-dev] [PATCH v2 0/2] " Wenzhuo Lu
  2 siblings, 1 reply; 11+ messages in thread
From: Wenzhuo Lu @ 2016-03-24  6:37 UTC (permalink / raw)
  To: dev; +Cc: Wenzhuo Lu

There's an issue reported. In the scenario DPDK PF + DPDK VF,
if the VF port is closed, PF port cannot receive packets.
I found at that time the promicuous mode is disabled on the PF
port. But it should be enabled.
When VF port is closed, it will send a message to its PF port to
reset it. During this, PF port will also reset its own
promicuous mode. Which promiscuous mode should be set depends on
the parameter stored in the device data. In the function
set_rx_mode, the pointer of device data points to the wrong
address. So, the promiscuous mode is wrong.

Fixes: 00e30184daa0("ixgbe: add PF support")
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Reported-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 drivers/net/ixgbe/ixgbe_pf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ixgbe/ixgbe_pf.c b/drivers/net/ixgbe/ixgbe_pf.c
index b854c72..0f8ad55 100644
--- a/drivers/net/ixgbe/ixgbe_pf.c
+++ b/drivers/net/ixgbe/ixgbe_pf.c
@@ -313,7 +313,7 @@ static void
 set_rx_mode(struct rte_eth_dev *dev)
 {
 	struct rte_eth_dev_data *dev_data =
-		(struct rte_eth_dev_data*)dev->data->dev_private;
+		(struct rte_eth_dev_data *)dev->data;
 	struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	u32 fctrl, vmolr = IXGBE_VMOLR_BAM | IXGBE_VMOLR_AUPE;
 	uint16_t vfn = dev_num_vf(dev);
-- 
1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dpdk-dev] [PATCH 2/2] igb: fix the wrong address of device data pointer
  2016-03-24  6:37 [dpdk-dev] [PATCH 0/2] fix the wrong address of device data pointer Wenzhuo Lu
  2016-03-24  6:37 ` [dpdk-dev] [PATCH 1/2] ixgbe: " Wenzhuo Lu
@ 2016-03-24  6:37 ` Wenzhuo Lu
  2016-03-24  7:07 ` [dpdk-dev] [PATCH v2 0/2] " Wenzhuo Lu
  2 siblings, 0 replies; 11+ messages in thread
From: Wenzhuo Lu @ 2016-03-24  6:37 UTC (permalink / raw)
  To: dev; +Cc: Wenzhuo Lu

In the function set_rx_mode, the pointer of device data points
to the wrong address as found in ixgbe code.

Fixes: be2d648a2dd3("igb: add PF support")
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
---
 drivers/net/e1000/igb_pf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/e1000/igb_pf.c b/drivers/net/e1000/igb_pf.c
index 95204e9..9dafbc4 100644
--- a/drivers/net/e1000/igb_pf.c
+++ b/drivers/net/e1000/igb_pf.c
@@ -219,7 +219,7 @@ static void
 set_rx_mode(struct rte_eth_dev *dev)
 {
 	struct rte_eth_dev_data *dev_data =
-		(struct rte_eth_dev_data*)dev->data->dev_private;
+		(struct rte_eth_dev_data *)dev->data;
 	struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	uint32_t fctrl, vmolr = E1000_VMOLR_BAM | E1000_VMOLR_AUPE;
 	uint16_t vfn = dev_num_vf(dev);
-- 
1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [dpdk-dev] [PATCH 1/2] ixgbe: fix the wrong address of device data pointer
  2016-03-24  6:37 ` [dpdk-dev] [PATCH 1/2] ixgbe: " Wenzhuo Lu
@ 2016-03-24  6:48   ` Wu, Jingjing
  2016-03-24  6:53     ` Lu, Wenzhuo
  0 siblings, 1 reply; 11+ messages in thread
From: Wu, Jingjing @ 2016-03-24  6:48 UTC (permalink / raw)
  To: Lu, Wenzhuo, dev; +Cc: Lu, Wenzhuo



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wenzhuo Lu
> Sent: Thursday, March 24, 2016 2:37 PM
> To: dev@dpdk.org
> Cc: Lu, Wenzhuo
> Subject: [dpdk-dev] [PATCH 1/2] ixgbe: fix the wrong address of device data
> pointer
> 
> There's an issue reported. In the scenario DPDK PF + DPDK VF, if the VF port
> is closed, PF port cannot receive packets.
> I found at that time the promicuous mode is disabled on the PF port. But it
> should be enabled.
> When VF port is closed, it will send a message to its PF port to reset it. During
> this, PF port will also reset its own promicuous mode. Which promiscuous
> mode should be set depends on the parameter stored in the device data. In
> the function set_rx_mode, the pointer of device data points to the wrong
> address. So, the promiscuous mode is wrong.
> 
> Fixes: 00e30184daa0("ixgbe: add PF support")
> Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
> Reported-by: Bernard Iremonger <bernard.iremonger@intel.com>
> ---
>  drivers/net/ixgbe/ixgbe_pf.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ixgbe/ixgbe_pf.c b/drivers/net/ixgbe/ixgbe_pf.c
> index b854c72..0f8ad55 100644
> --- a/drivers/net/ixgbe/ixgbe_pf.c
> +++ b/drivers/net/ixgbe/ixgbe_pf.c
> @@ -313,7 +313,7 @@ static void
>  set_rx_mode(struct rte_eth_dev *dev)
>  {
>  	struct rte_eth_dev_data *dev_data =
> -		(struct rte_eth_dev_data*)dev->data->dev_private;
> +		(struct rte_eth_dev_data *)dev->data;
Cast is unnecessary here.

/Jingjing
>  	struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data-
> >dev_private);
>  	u32 fctrl, vmolr = IXGBE_VMOLR_BAM | IXGBE_VMOLR_AUPE;
>  	uint16_t vfn = dev_num_vf(dev);
> --
> 1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [dpdk-dev] [PATCH 1/2] ixgbe: fix the wrong address of device data pointer
  2016-03-24  6:48   ` Wu, Jingjing
@ 2016-03-24  6:53     ` Lu, Wenzhuo
  0 siblings, 0 replies; 11+ messages in thread
From: Lu, Wenzhuo @ 2016-03-24  6:53 UTC (permalink / raw)
  To: Wu, Jingjing, dev

Hi Jingjing,

> >  set_rx_mode(struct rte_eth_dev *dev)
> >  {
> >  	struct rte_eth_dev_data *dev_data =
> > -		(struct rte_eth_dev_data*)dev->data->dev_private;
> > +		(struct rte_eth_dev_data *)dev->data;
> Cast is unnecessary here.
O, didn't notice that. Will send a V2. Thanks.

> 
> /Jingjing

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dpdk-dev] [PATCH v2 0/2] fix the wrong address of device data pointer
  2016-03-24  6:37 [dpdk-dev] [PATCH 0/2] fix the wrong address of device data pointer Wenzhuo Lu
  2016-03-24  6:37 ` [dpdk-dev] [PATCH 1/2] ixgbe: " Wenzhuo Lu
  2016-03-24  6:37 ` [dpdk-dev] [PATCH 2/2] igb: " Wenzhuo Lu
@ 2016-03-24  7:07 ` Wenzhuo Lu
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 1/2] ixgbe: " Wenzhuo Lu
                     ` (2 more replies)
  2 siblings, 3 replies; 11+ messages in thread
From: Wenzhuo Lu @ 2016-03-24  7:07 UTC (permalink / raw)
  To: dev

In the function set_rx_mode, the pointer of device data points
to the wrong address.

v2:
- Remove the unnecessary cast.

Wenzhuo Lu (2):
  ixgbe: fix the wrong address of device data pointer
  igb: fix the wrong address of device data pointer

 drivers/net/e1000/igb_pf.c   | 3 +--
 drivers/net/ixgbe/ixgbe_pf.c | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

-- 
1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dpdk-dev] [PATCH v2 1/2] ixgbe: fix the wrong address of device data pointer
  2016-03-24  7:07 ` [dpdk-dev] [PATCH v2 0/2] " Wenzhuo Lu
@ 2016-03-24  7:07   ` Wenzhuo Lu
  2016-03-24  7:14     ` Wu, Jingjing
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 2/2] igb: " Wenzhuo Lu
  2016-03-24 12:34   ` [dpdk-dev] [PATCH v2 0/2] " Bruce Richardson
  2 siblings, 1 reply; 11+ messages in thread
From: Wenzhuo Lu @ 2016-03-24  7:07 UTC (permalink / raw)
  To: dev; +Cc: Wenzhuo Lu

There's an issue reported. In the scenario DPDK PF + DPDK VF,
if the VF port is closed, PF port cannot receive packets.
I found at that time the promicuous mode is disabled on the PF
port. But it should be enabled.
When VF port is closed, it will send a message to its PF port to
reset it. During this, PF port will also reset its own
promicuous mode. Which promiscuous mode should be set depends on
the parameter stored in the device data. In the function
set_rx_mode, the pointer of device data points to the wrong
address. So, the promiscuous mode is wrong.

Fixes: 00e30184daa0("ixgbe: add PF support")
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Reported-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 drivers/net/ixgbe/ixgbe_pf.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ixgbe/ixgbe_pf.c b/drivers/net/ixgbe/ixgbe_pf.c
index b854c72..a540343 100644
--- a/drivers/net/ixgbe/ixgbe_pf.c
+++ b/drivers/net/ixgbe/ixgbe_pf.c
@@ -312,8 +312,7 @@ int ixgbe_pf_host_configure(struct rte_eth_dev *eth_dev)
 static void
 set_rx_mode(struct rte_eth_dev *dev)
 {
-	struct rte_eth_dev_data *dev_data =
-		(struct rte_eth_dev_data*)dev->data->dev_private;
+	struct rte_eth_dev_data *dev_data = dev->data;
 	struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	u32 fctrl, vmolr = IXGBE_VMOLR_BAM | IXGBE_VMOLR_AUPE;
 	uint16_t vfn = dev_num_vf(dev);
-- 
1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dpdk-dev] [PATCH v2 2/2] igb: fix the wrong address of device data pointer
  2016-03-24  7:07 ` [dpdk-dev] [PATCH v2 0/2] " Wenzhuo Lu
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 1/2] ixgbe: " Wenzhuo Lu
@ 2016-03-24  7:07   ` Wenzhuo Lu
  2016-03-24  7:14     ` Wu, Jingjing
  2016-03-24 12:34   ` [dpdk-dev] [PATCH v2 0/2] " Bruce Richardson
  2 siblings, 1 reply; 11+ messages in thread
From: Wenzhuo Lu @ 2016-03-24  7:07 UTC (permalink / raw)
  To: dev; +Cc: Wenzhuo Lu

In the function set_rx_mode, the pointer of device data points
to the wrong address as found in ixgbe code.

Fixes: be2d648a2dd3("igb: add PF support")
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
---
 drivers/net/e1000/igb_pf.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/e1000/igb_pf.c b/drivers/net/e1000/igb_pf.c
index 95204e9..7f45a44 100644
--- a/drivers/net/e1000/igb_pf.c
+++ b/drivers/net/e1000/igb_pf.c
@@ -218,8 +218,7 @@ int igb_pf_host_configure(struct rte_eth_dev *eth_dev)
 static void
 set_rx_mode(struct rte_eth_dev *dev)
 {
-	struct rte_eth_dev_data *dev_data =
-		(struct rte_eth_dev_data*)dev->data->dev_private;
+	struct rte_eth_dev_data *dev_data = dev->data;
 	struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	uint32_t fctrl, vmolr = E1000_VMOLR_BAM | E1000_VMOLR_AUPE;
 	uint16_t vfn = dev_num_vf(dev);
-- 
1.9.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/2] ixgbe: fix the wrong address of device data pointer
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 1/2] ixgbe: " Wenzhuo Lu
@ 2016-03-24  7:14     ` Wu, Jingjing
  0 siblings, 0 replies; 11+ messages in thread
From: Wu, Jingjing @ 2016-03-24  7:14 UTC (permalink / raw)
  To: Lu, Wenzhuo, dev; +Cc: Lu, Wenzhuo



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wenzhuo Lu
> Sent: Thursday, March 24, 2016 3:08 PM
> To: dev@dpdk.org
> Cc: Lu, Wenzhuo
> Subject: [dpdk-dev] [PATCH v2 1/2] ixgbe: fix the wrong address of device
> data pointer
> 
> There's an issue reported. In the scenario DPDK PF + DPDK VF, if the VF port
> is closed, PF port cannot receive packets.
> I found at that time the promicuous mode is disabled on the PF port. But it
> should be enabled.
> When VF port is closed, it will send a message to its PF port to reset it. During
> this, PF port will also reset its own promicuous mode. Which promiscuous
> mode should be set depends on the parameter stored in the device data. In
> the function set_rx_mode, the pointer of device data points to the wrong
> address. So, the promiscuous mode is wrong.
> 
> Fixes: 00e30184daa0("ixgbe: add PF support")
> Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
> Reported-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [dpdk-dev] [PATCH v2 2/2] igb: fix the wrong address of device data pointer
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 2/2] igb: " Wenzhuo Lu
@ 2016-03-24  7:14     ` Wu, Jingjing
  0 siblings, 0 replies; 11+ messages in thread
From: Wu, Jingjing @ 2016-03-24  7:14 UTC (permalink / raw)
  To: Lu, Wenzhuo, dev; +Cc: Lu, Wenzhuo



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wenzhuo Lu
> Sent: Thursday, March 24, 2016 3:08 PM
> To: dev@dpdk.org
> Cc: Lu, Wenzhuo
> Subject: [dpdk-dev] [PATCH v2 2/2] igb: fix the wrong address of device data
> pointer
> 
> In the function set_rx_mode, the pointer of device data points to the wrong
> address as found in ixgbe code.
> 
> Fixes: be2d648a2dd3("igb: add PF support")
> Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/2] fix the wrong address of device data pointer
  2016-03-24  7:07 ` [dpdk-dev] [PATCH v2 0/2] " Wenzhuo Lu
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 1/2] ixgbe: " Wenzhuo Lu
  2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 2/2] igb: " Wenzhuo Lu
@ 2016-03-24 12:34   ` Bruce Richardson
  2 siblings, 0 replies; 11+ messages in thread
From: Bruce Richardson @ 2016-03-24 12:34 UTC (permalink / raw)
  To: Wenzhuo Lu; +Cc: dev

On Thu, Mar 24, 2016 at 03:07:44PM +0800, Wenzhuo Lu wrote:
> In the function set_rx_mode, the pointer of device data points
> to the wrong address.
> 
> v2:
> - Remove the unnecessary cast.
> 
> Wenzhuo Lu (2):
>   ixgbe: fix the wrong address of device data pointer
>   igb: fix the wrong address of device data pointer
> 
Applied to dpdk-next-net/rel_16_04

/Bruce

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-03-24 12:34 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-24  6:37 [dpdk-dev] [PATCH 0/2] fix the wrong address of device data pointer Wenzhuo Lu
2016-03-24  6:37 ` [dpdk-dev] [PATCH 1/2] ixgbe: " Wenzhuo Lu
2016-03-24  6:48   ` Wu, Jingjing
2016-03-24  6:53     ` Lu, Wenzhuo
2016-03-24  6:37 ` [dpdk-dev] [PATCH 2/2] igb: " Wenzhuo Lu
2016-03-24  7:07 ` [dpdk-dev] [PATCH v2 0/2] " Wenzhuo Lu
2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 1/2] ixgbe: " Wenzhuo Lu
2016-03-24  7:14     ` Wu, Jingjing
2016-03-24  7:07   ` [dpdk-dev] [PATCH v2 2/2] igb: " Wenzhuo Lu
2016-03-24  7:14     ` Wu, Jingjing
2016-03-24 12:34   ` [dpdk-dev] [PATCH v2 0/2] " Bruce Richardson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).