DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom
@ 2017-01-24 20:48 Emmanuel Roullit
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage Emmanuel Roullit
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Emmanuel Roullit @ 2017-01-24 20:48 UTC (permalink / raw)
  To: rahul.lakkireddy; +Cc: dev

data value could have been garbage if VPD access timed out for VPD read
request could not been issued.

Found with clang static analysis:
drivers/net/cxgbe/base/t4_hw.c:1577:22:
warning: The left operand of '&' is a garbage value
        } while ((stats_reg & 0x1) && --max_poll);
                  ~~~~~~~~~ ^

Fixes: 17ba077c5c54 ("net/cxgbe: support register dump")

Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
---
 drivers/net/cxgbe/base/t4_hw.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/cxgbe/base/t4_hw.c b/drivers/net/cxgbe/base/t4_hw.c
index 7e79adf6d..c089b068d 100644
--- a/drivers/net/cxgbe/base/t4_hw.c
+++ b/drivers/net/cxgbe/base/t4_hw.c
@@ -1532,7 +1532,7 @@ int t4_seeprom_write(struct adapter *adapter, u32 addr, u32 data)
 {
 	unsigned int base = adapter->params.pci.vpd_cap_addr;
 	int ret;
-	u32 stats_reg;
+	u32 stats_reg = 0;
 	int max_poll;
 
 	/* VPD Accesses must alway be 4-byte aligned!
-- 
2.11.0

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

* [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage
  2017-01-24 20:48 [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Emmanuel Roullit
@ 2017-01-24 20:48 ` Emmanuel Roullit
  2017-01-25 12:13   ` Ferruh Yigit
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 3/3] net/cxgbe: remove unused variable Emmanuel Roullit
  2017-01-25 12:12 ` [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Ferruh Yigit
  2 siblings, 1 reply; 10+ messages in thread
From: Emmanuel Roullit @ 2017-01-24 20:48 UTC (permalink / raw)
  To: rahul.lakkireddy; +Cc: dev

Found with clang static analysis:
drivers/net/cxgbe/sge.c:900:3: warning:
Value stored to 'in_use' is never read
        in_use += q->size;
        ^         ~~~~~~~

Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")

Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
---
 drivers/net/cxgbe/sge.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
index fc03a0c26..42051ca01 100644
--- a/drivers/net/cxgbe/sge.c
+++ b/drivers/net/cxgbe/sge.c
@@ -891,14 +891,10 @@ static inline int should_tx_packet_coalesce(struct sge_eth_txq *txq,
 	unsigned int flits, ndesc;
 	unsigned char type = 0;
 	int credits, hw_cidx = ntohs(q->stat->cidx);
-	int in_use = q->pidx - hw_cidx + flits_to_desc(q->coalesce.flits);
 
 	/* use coal WR type 1 when no frags are present */
 	type = (mbuf->nb_segs == 1) ? 1 : 0;
 
-	if (in_use < 0)
-		in_use += q->size;
-
 	if (unlikely(type != q->coalesce.type && q->coalesce.idx))
 		ship_tx_pkt_coalesce_wr(adap, txq);
 
-- 
2.11.0

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

* [dpdk-dev] [PATCH 3/3] net/cxgbe: remove unused variable
  2017-01-24 20:48 [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Emmanuel Roullit
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage Emmanuel Roullit
@ 2017-01-24 20:48 ` Emmanuel Roullit
  2017-01-25 12:15   ` Ferruh Yigit
  2017-01-25 12:12 ` [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Ferruh Yigit
  2 siblings, 1 reply; 10+ messages in thread
From: Emmanuel Roullit @ 2017-01-24 20:48 UTC (permalink / raw)
  To: rahul.lakkireddy; +Cc: dev

Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")

Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
---
 drivers/net/cxgbe/sge.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
index 42051ca01..37b609040 100644
--- a/drivers/net/cxgbe/sge.c
+++ b/drivers/net/cxgbe/sge.c
@@ -890,7 +890,7 @@ static inline int should_tx_packet_coalesce(struct sge_eth_txq *txq,
 	struct sge_txq *q = &txq->q;
 	unsigned int flits, ndesc;
 	unsigned char type = 0;
-	int credits, hw_cidx = ntohs(q->stat->cidx);
+	int credits;
 
 	/* use coal WR type 1 when no frags are present */
 	type = (mbuf->nb_segs == 1) ? 1 : 0;
-- 
2.11.0

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

* Re: [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom
  2017-01-24 20:48 [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Emmanuel Roullit
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage Emmanuel Roullit
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 3/3] net/cxgbe: remove unused variable Emmanuel Roullit
@ 2017-01-25 12:12 ` Ferruh Yigit
  2017-01-26 11:06   ` Ferruh Yigit
  2 siblings, 1 reply; 10+ messages in thread
From: Ferruh Yigit @ 2017-01-25 12:12 UTC (permalink / raw)
  To: Emmanuel Roullit, rahul.lakkireddy; +Cc: dev

On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
> data value could have been garbage if VPD access timed out for VPD read
> request could not been issued.
> 
> Found with clang static analysis:
> drivers/net/cxgbe/base/t4_hw.c:1577:22:
> warning: The left operand of '&' is a garbage value
>         } while ((stats_reg & 0x1) && --max_poll);
>                   ~~~~~~~~~ ^
> 
> Fixes: 17ba077c5c54 ("net/cxgbe: support register dump")
> 
> Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>

Applied to dpdk-next-net/master, thanks.

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

* Re: [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage Emmanuel Roullit
@ 2017-01-25 12:13   ` Ferruh Yigit
  2017-01-26  4:41     ` Rahul Lakkireddy
  0 siblings, 1 reply; 10+ messages in thread
From: Ferruh Yigit @ 2017-01-25 12:13 UTC (permalink / raw)
  To: Emmanuel Roullit, rahul.lakkireddy; +Cc: dev

On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
> Found with clang static analysis:
> drivers/net/cxgbe/sge.c:900:3: warning:
> Value stored to 'in_use' is never read
>         in_use += q->size;
>         ^         ~~~~~~~
> 
> Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")
> 
> Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
> ---
>  drivers/net/cxgbe/sge.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
> index fc03a0c26..42051ca01 100644
> --- a/drivers/net/cxgbe/sge.c
> +++ b/drivers/net/cxgbe/sge.c
> @@ -891,14 +891,10 @@ static inline int should_tx_packet_coalesce(struct sge_eth_txq *txq,
>  	unsigned int flits, ndesc;
>  	unsigned char type = 0;
>  	int credits, hw_cidx = ntohs(q->stat->cidx);
> -	int in_use = q->pidx - hw_cidx + flits_to_desc(q->coalesce.flits);
>  
>  	/* use coal WR type 1 when no frags are present */
>  	type = (mbuf->nb_segs == 1) ? 1 : 0;
>  
> -	if (in_use < 0)
> -		in_use += q->size;

Intention can be "q->in_use" here. That change can be proper fix instead
of removing.

I will wait for maintainers comment to get the patch.

> -
>  	if (unlikely(type != q->coalesce.type && q->coalesce.idx))
>  		ship_tx_pkt_coalesce_wr(adap, txq);
>  
> 

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

* Re: [dpdk-dev] [PATCH 3/3] net/cxgbe: remove unused variable
  2017-01-24 20:48 ` [dpdk-dev] [PATCH 3/3] net/cxgbe: remove unused variable Emmanuel Roullit
@ 2017-01-25 12:15   ` Ferruh Yigit
  0 siblings, 0 replies; 10+ messages in thread
From: Ferruh Yigit @ 2017-01-25 12:15 UTC (permalink / raw)
  To: Emmanuel Roullit, rahul.lakkireddy; +Cc: dev

On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
> Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")
> 
> Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
> ---
>  drivers/net/cxgbe/sge.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
> index 42051ca01..37b609040 100644
> --- a/drivers/net/cxgbe/sge.c
> +++ b/drivers/net/cxgbe/sge.c
> @@ -890,7 +890,7 @@ static inline int should_tx_packet_coalesce(struct sge_eth_txq *txq,
>  	struct sge_txq *q = &txq->q;
>  	unsigned int flits, ndesc;
>  	unsigned char type = 0;
> -	int credits, hw_cidx = ntohs(q->stat->cidx);
> +	int credits;

This depends on patch 2/3, so this patch will wait it to be clarified.

>  
>  	/* use coal WR type 1 when no frags are present */
>  	type = (mbuf->nb_segs == 1) ? 1 : 0;
> 

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

* Re: [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage
  2017-01-25 12:13   ` Ferruh Yigit
@ 2017-01-26  4:41     ` Rahul Lakkireddy
  2017-01-26 11:05       ` Ferruh Yigit
  0 siblings, 1 reply; 10+ messages in thread
From: Rahul Lakkireddy @ 2017-01-26  4:41 UTC (permalink / raw)
  To: Ferruh Yigit, Emmanuel Roullit; +Cc: dev, Kumar Sanghvi, Nirranjan Kirubaharan

On Wednesday, January 01/25/17, 2017 at 17:43:57 +0530, Ferruh Yigit wrote:
> On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
> > Found with clang static analysis:
> > drivers/net/cxgbe/sge.c:900:3: warning:
> > Value stored to 'in_use' is never read
> >         in_use += q->size;
> >         ^         ~~~~~~~
> > 
> > Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")

This fixes line seems to be wrong.  Should be:

Fixes: 4a01078b4fd1 ("cxgbe: add Tx support")

> > 
> > Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
> > ---
> >  drivers/net/cxgbe/sge.c | 4 ----
> >  1 file changed, 4 deletions(-)
> > 
> > diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
> > index fc03a0c26..42051ca01 100644
> > --- a/drivers/net/cxgbe/sge.c
> > +++ b/drivers/net/cxgbe/sge.c
> > @@ -891,14 +891,10 @@ static inline int should_tx_packet_coalesce(struct sge_eth_txq *txq,
> >  	unsigned int flits, ndesc;
> >  	unsigned char type = 0;
> >  	int credits, hw_cidx = ntohs(q->stat->cidx);
> > -	int in_use = q->pidx - hw_cidx + flits_to_desc(q->coalesce.flits);
> >  
> >  	/* use coal WR type 1 when no frags are present */
> >  	type = (mbuf->nb_segs == 1) ? 1 : 0;
> >  
> > -	if (in_use < 0)
> > -		in_use += q->size;
> 
> Intention can be "q->in_use" here. That change can be proper fix instead
> of removing.
> 
> I will wait for maintainers comment to get the patch.
> 

in_use can be removed.  Also, Patch 2 and 3 can be merged.

> > -
> >  	if (unlikely(type != q->coalesce.type && q->coalesce.idx))
> >  		ship_tx_pkt_coalesce_wr(adap, txq);
> >  
> > 
> 

Thanks,
Rahul

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

* Re: [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage
  2017-01-26  4:41     ` Rahul Lakkireddy
@ 2017-01-26 11:05       ` Ferruh Yigit
  2017-02-14  6:10         ` Yuanhan Liu
  0 siblings, 1 reply; 10+ messages in thread
From: Ferruh Yigit @ 2017-01-26 11:05 UTC (permalink / raw)
  To: Rahul Lakkireddy, Emmanuel Roullit
  Cc: dev, Kumar Sanghvi, Nirranjan Kirubaharan

On 1/26/2017 4:41 AM, Rahul Lakkireddy wrote:
> On Wednesday, January 01/25/17, 2017 at 17:43:57 +0530, Ferruh Yigit wrote:
>> On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
>>> Found with clang static analysis:
>>> drivers/net/cxgbe/sge.c:900:3: warning:
>>> Value stored to 'in_use' is never read
>>>         in_use += q->size;
>>>         ^         ~~~~~~~
>>>
>>> Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")
> 
> This fixes line seems to be wrong.  Should be:
> 

> 
>>>
>>> Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>

> Fixes: 4a01078b4fd1 ("cxgbe: add Tx support")
Cc: stable@dpdk.org

Acked-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>


Applied to dpdk-next-net/master, thanks.

(patch 2/3 and 3/3 merged)

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

* Re: [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom
  2017-01-25 12:12 ` [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Ferruh Yigit
@ 2017-01-26 11:06   ` Ferruh Yigit
  0 siblings, 0 replies; 10+ messages in thread
From: Ferruh Yigit @ 2017-01-26 11:06 UTC (permalink / raw)
  To: Emmanuel Roullit, rahul.lakkireddy; +Cc: dev, dpdk stable

On 1/25/2017 12:12 PM, Ferruh Yigit wrote:
> On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
>> data value could have been garbage if VPD access timed out for VPD read
>> request could not been issued.
>>
>> Found with clang static analysis:
>> drivers/net/cxgbe/base/t4_hw.c:1577:22:
>> warning: The left operand of '&' is a garbage value
>>         } while ((stats_reg & 0x1) && --max_poll);
>>                   ~~~~~~~~~ ^
>>
>> Fixes: 17ba077c5c54 ("net/cxgbe: support register dump")
>>
>> Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
> 
> Applied to dpdk-next-net/master, thanks.
> 

Fixes: fe0bd9ee5da3 ("net/cxgbe: support EEPROM access")
Cc: stable@dpdk.org

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

* Re: [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage
  2017-01-26 11:05       ` Ferruh Yigit
@ 2017-02-14  6:10         ` Yuanhan Liu
  0 siblings, 0 replies; 10+ messages in thread
From: Yuanhan Liu @ 2017-02-14  6:10 UTC (permalink / raw)
  To: Ferruh Yigit
  Cc: Rahul Lakkireddy, Emmanuel Roullit, dev, Kumar Sanghvi,
	Nirranjan Kirubaharan, stable

On Thu, Jan 26, 2017 at 11:05:22AM +0000, Ferruh Yigit wrote:
> On 1/26/2017 4:41 AM, Rahul Lakkireddy wrote:
> > On Wednesday, January 01/25/17, 2017 at 17:43:57 +0530, Ferruh Yigit wrote:
> >> On 1/24/2017 8:48 PM, Emmanuel Roullit wrote:
> >>> Found with clang static analysis:
> >>> drivers/net/cxgbe/sge.c:900:3: warning:
> >>> Value stored to 'in_use' is never read
> >>>         in_use += q->size;
> >>>         ^         ~~~~~~~
> >>>
> >>> Fixes: c167acb61278 ("net/cxgbe: use I/O device memory read/write API")
> > 
> > This fixes line seems to be wrong.  Should be:
> > 
> 
> > 
> >>>
> >>> Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
> 
> > Fixes: 4a01078b4fd1 ("cxgbe: add Tx support")
> Cc: stable@dpdk.org

I doubt the necessary of picking it to a stable release: it doesn't fix
a real bug after all. Therefore, I will drop it for v16.11.1.

	--yliu 
> 
> Acked-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
> 
> 
> Applied to dpdk-next-net/master, thanks.
> 
> (patch 2/3 and 3/3 merged)

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

end of thread, other threads:[~2017-02-14  6:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-24 20:48 [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Emmanuel Roullit
2017-01-24 20:48 ` [dpdk-dev] [PATCH 2/3] net/cxgbe: remove unused variable usage Emmanuel Roullit
2017-01-25 12:13   ` Ferruh Yigit
2017-01-26  4:41     ` Rahul Lakkireddy
2017-01-26 11:05       ` Ferruh Yigit
2017-02-14  6:10         ` Yuanhan Liu
2017-01-24 20:48 ` [dpdk-dev] [PATCH 3/3] net/cxgbe: remove unused variable Emmanuel Roullit
2017-01-25 12:15   ` Ferruh Yigit
2017-01-25 12:12 ` [dpdk-dev] [PATCH 1/3] net/cxgbe: init data value before reading seeprom Ferruh Yigit
2017-01-26 11:06   ` Ferruh Yigit

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).