All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion.
  2007-08-20 20:32 [PATCH 0/2] qla3xxx: receive path bugfixes Ron Mercer
@ 2007-08-21 13:48 ` Ron Mercer
  0 siblings, 0 replies; 5+ messages in thread
From: Ron Mercer @ 2007-08-21 13:48 UTC (permalink / raw)
  To: netdev; +Cc: Ron Mercer


Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
---
 drivers/net/qla3xxx.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c
index 69da95b..c3fe1c7 100755
--- a/drivers/net/qla3xxx.c
+++ b/drivers/net/qla3xxx.c
@@ -2248,6 +2248,7 @@ static int ql_tx_rx_clean(struct ql3_adapter *qdev,
 		qdev->rsp_consumer_index) && (work_done < work_to_do)) {
 
 		net_rsp = qdev->rsp_current;
+		rmb();
 		switch (net_rsp->opcode) {
 
 		case OPCODE_OB_MAC_IOCB_FN0:
-- 
1.5.0.rc4.16.g9e258


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

* [PATCH 0/2] qla3xxx: receive path bugfixes.
@ 2007-10-01 18:41 Ron Mercer
  2007-10-01 18:43 ` [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion Ron Mercer
  2007-10-01 18:43 ` [PATCH 2/2] qla3xxx: bugfix: Fix VLAN rx completion handling Ron Mercer
  0 siblings, 2 replies; 5+ messages in thread
From: Ron Mercer @ 2007-10-01 18:41 UTC (permalink / raw)
  To: jeff; +Cc: netdev

Jeff,
This is the second submission... First was in August. Thanks, Ron

The following two patches fix:

An undocumented "feature" where the 4032 chip sets bit-7
of the opcode for an inbound completion if it's for a VLAN.

The access of stale data on a completion entry.

These patches were built and tested on 2.6.23-rc1.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>


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

* [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion.
  2007-10-01 18:41 [PATCH 0/2] qla3xxx: receive path bugfixes Ron Mercer
@ 2007-10-01 18:43 ` Ron Mercer
  2007-10-02 16:55   ` Jeff Garzik
  2007-10-01 18:43 ` [PATCH 2/2] qla3xxx: bugfix: Fix VLAN rx completion handling Ron Mercer
  1 sibling, 1 reply; 5+ messages in thread
From: Ron Mercer @ 2007-10-01 18:43 UTC (permalink / raw)
  To: jeff; +Cc: netdev, Ron Mercer


Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
---
 drivers/net/qla3xxx.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c
index 69da95b..c3fe1c7 100755
--- a/drivers/net/qla3xxx.c
+++ b/drivers/net/qla3xxx.c
@@ -2248,6 +2248,7 @@ static int ql_tx_rx_clean(struct ql3_adapter *qdev,
 		qdev->rsp_consumer_index) && (work_done < work_to_do)) {
 
 		net_rsp = qdev->rsp_current;
+		rmb();
 		switch (net_rsp->opcode) {
 
 		case OPCODE_OB_MAC_IOCB_FN0:
-- 
1.5.0.rc4.16.g9e258


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

* [PATCH 2/2] qla3xxx: bugfix:  Fix VLAN rx completion handling.
  2007-10-01 18:41 [PATCH 0/2] qla3xxx: receive path bugfixes Ron Mercer
  2007-10-01 18:43 ` [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion Ron Mercer
@ 2007-10-01 18:43 ` Ron Mercer
  1 sibling, 0 replies; 5+ messages in thread
From: Ron Mercer @ 2007-10-01 18:43 UTC (permalink / raw)
  To: jeff; +Cc: netdev, Ron Mercer

Fix 4032 chip undocumented "feature" where bit-8 is set
if the inbound completion is for a VLAN.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
---
 drivers/net/qla3xxx.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c
index c3fe1c7..ea15131 100755
--- a/drivers/net/qla3xxx.c
+++ b/drivers/net/qla3xxx.c
@@ -2249,6 +2249,12 @@ static int ql_tx_rx_clean(struct ql3_adapter *qdev,
 
 		net_rsp = qdev->rsp_current;
 		rmb();
+		/*
+		 * Fix 4032 chipe undocumented "feature" where bit-8 is set if the
+		 * inbound completion is for a VLAN.
+		 */
+		if (qdev->device_id == QL3032_DEVICE_ID)
+			net_rsp->opcode &= 0x7f;
 		switch (net_rsp->opcode) {
 
 		case OPCODE_OB_MAC_IOCB_FN0:
-- 
1.5.0.rc4.16.g9e258


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

* Re: [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion.
  2007-10-01 18:43 ` [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion Ron Mercer
@ 2007-10-02 16:55   ` Jeff Garzik
  0 siblings, 0 replies; 5+ messages in thread
From: Jeff Garzik @ 2007-10-02 16:55 UTC (permalink / raw)
  To: Ron Mercer; +Cc: netdev

Ron Mercer wrote:
> Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
> ---
>  drivers/net/qla3xxx.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c
> index 69da95b..c3fe1c7 100755
> --- a/drivers/net/qla3xxx.c
> +++ b/drivers/net/qla3xxx.c
> @@ -2248,6 +2248,7 @@ static int ql_tx_rx_clean(struct ql3_adapter *qdev,
>  		qdev->rsp_consumer_index) && (work_done < work_to_do)) {
>  
>  		net_rsp = qdev->rsp_current;
> +		rmb();
>  		switch (net_rsp->opcode) {

applied 1-2



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

end of thread, other threads:[~2007-10-02 16:55 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-01 18:41 [PATCH 0/2] qla3xxx: receive path bugfixes Ron Mercer
2007-10-01 18:43 ` [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion Ron Mercer
2007-10-02 16:55   ` Jeff Garzik
2007-10-01 18:43 ` [PATCH 2/2] qla3xxx: bugfix: Fix VLAN rx completion handling Ron Mercer
  -- strict thread matches above, loose matches on Subject: below --
2007-08-20 20:32 [PATCH 0/2] qla3xxx: receive path bugfixes Ron Mercer
2007-08-21 13:48 ` [PATCH 1/2] qla3xxx: bugfix: Add memory barrier before accessing rx completion Ron Mercer

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.