s2io: fix inconsistent hardware VLAN tagging during driver init
Subsystems (2)
PATCH 1/1 s2io: fix inconsistent hardware VLAN tagging during driver init
The s2io driver keeps a local variable around (vlan_strip_flag) to keep track of the current state of the hardware and whether or not it will strip VLAN tags on incoming packets. It seems as though the hardware default is to strip them, but that variable is not set correctly during initialization if the default setup is used. This check ensures vlan_strip_flag and the hardware setting are in sync.
These variables were introduced by this patch:
commit 926930b202d56c3dfb6aea0a0c6bfba2b87a8c03
Author: Sivakumar Subramani <[email protected]> Date: Sat Feb 24 01:59:39 2007 -0500
so this problem hasn't been around forever.
Recent patches from Ramkrishna Vepa <[email protected]> removed this variable and would have worked around the problem, but they were not accepted.
---
s2io.c | 5 +++++ 1 files changed, 5 insertions(+)
drivers/net/s2io.c +5 -0
@@ -2151,6 +2151,11 @@ static int start_nic(struct s2io_nic *nic) val64 &= ~RX_PA_CFG_STRIP_VLAN_TAG ;writeq (val64, &bar0->rx_pa_cfg); vlan_strip_flag =0 ; + }else { + val64 =readq (&bar0->rx_pa_cfg); + val64 |=RX_PA_CFG_STRIP_VLAN_TAG ; +writeq (val64, &bar0->rx_pa_cfg); + vlan_strip_flag =1 ; }/*
Jeff,
This patch looks good. Please accept.
Ram
Quoted 11 lines
-----Original Message-----
From: Andy Gospodarek [mailto:[email protected]]
Sent: Thursday, December 06, 2007 11:57 AM
To: [email protected]
Cc: [email protected]; Rastapur Santosh; Sivakumar Subramani; Sreenivasa Honnur
Subject: [PATCH] s2io: fix inconsistent hardware VLAN tagging during driver initThe s2io driver keeps a local variable around (
vlan_strip_flag) to
keep
Quoted 3 lines
track of the current state of the hardware and whether or not it will strip VLAN tags on incoming packets. It seems as though the hardware default is to strip them, but that variable is not set correctly
during
Quoted 5 lines
initialization if the default setup is used. This check ensures
vlan_strip_flagand the hardware setting are in sync.These variables were introduced by this patch:
Quoted 7 lines
commit
926930b202d56c3dfb6aea0a0c6bfba2b87a8c03Author: Sivakumar Subramani <[email protected]> Date: Sat Feb 24 01:59:39 2007 -0500so this problem hasn't been around forever.
Recent patches from Ramkrishna Vepa <[email protected]> removed
this
Quoted 26 lines
variable and would have worked around the problem, but they were not accepted.
Signed-off-by Andy Gospodarek <[email protected]>---
s2io.c | 5 +++++ 1 files changed, 5 insertions(+)drivers/net/s2io.c +5
-0@@ -2151,6 +2151,11 @@ static int start_nic(struct s2io_nic *nic) val64 &= ~RX_PA_CFG_STRIP_VLAN_TAG ;writeq (val64, &bar0->rx_pa_cfg); vlan_strip_flag =0 ; + }else { + val64 =readq (&bar0->rx_pa_cfg); + val64 |=RX_PA_CFG_STRIP_VLAN_TAG ; +writeq (val64, &bar0->rx_pa_cfg); + vlan_strip_flag =1 ; }/*
Quoted 12 lines · Ramkrishna Vepa
Jeff,
This patch looks good. Please accept.Ram
Quoted 8 lines
-----Original Message-----
From: Andy Gospodarek [mailto:[email protected]]
Sent: Thursday, December 06, 2007 11:57 AM
To: [email protected]
Cc: [email protected]; Rastapur Santosh; Sivakumar Subramani; Sreenivasa Honnur
Subject: [PATCH] s2io: fix inconsistent hardware VLAN tagging during driver init
queued for my next patch run...