Skip to contentSkip to conversation

gianfar: disable vlan tag insertion by default on 2.6.x

PATCH In review Zhu Yanjun 3 participants 6 messages Oct 15, 2014

Subsystems (2)
lore
Share & tools
lore

Zhu Yanjun

author
#0 lore raw

PATCH 1/1 gianfar: disable vlan tag insertion by default on 2.6.x

In commit f43c75d4b6[gianfar: disable TX vlan based on kernel 2.6.x], gianfar nic disables TX vlan. But gianfar nic enables vlan tag insertion by default. This will lead to unusable connections on some configurations. Since vlan tag insertion is disabled by default and it is not enabled any longer, it is not necessary to disable it again.

Zhu Yanjun (1):
gianfar: disable vlan tag insertion by default

 drivers/net/gianfar.c | 6 ------
 1 file changed, 6 deletions(-)
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH 1/1 gianfar: disable vlan tag insertion by default

2.6.x kernels require a similar logic change as commit 51b8cbfc [gianfar: fix bug caused by e1653c3e] introduces for newer kernels.

Gianfar driver originally enables vlan tag insertion by default. This will lead to unusable connections on some configurations.

Since gianfar nic vlan tag insertion is disabled by default and it is not enabled any longer, it is not necessary to disable it again.

---
 drivers/net/gianfar.c | 6 ------
 1 file changed, 6 deletions(-)
drivers/net/gianfar.c +0 -6
index 8aa2cf6..afdcb41 100644
@@ -1115,7 +1115,6 @@ int startup_gfar(struct net_device *dev)
 	/* keep vlan related bits if it's enabled */
 	if (priv->vlgrp) {
 		rctrl |= RCTRL_VLEX | RCTRL_PRSDEP_INIT;
-		tctrl |= TCTRL_VLINS;
 	}
 
 	/* Init rctrl based on our settings */
@@ -1456,11 +1455,6 @@ static void gfar_vlan_rx_register(struct net_device *dev,
 		tempval |= (RCTRL_VLEX | RCTRL_PRSDEP_INIT);
 		gfar_write(&priv->regs->rctrl, tempval);
 	} else {
-		/* Disable VLAN tag insertion */
-		tempval = gfar_read(&priv->regs->tctrl);
-		tempval &= ~TCTRL_VLINS;
-		gfar_write(&priv->regs->tctrl, tempval);
-
 		/* Disable VLAN tag extraction */
 		tempval = gfar_read(&priv->regs->rctrl);
 		tempval &= ~RCTRL_VLEX;
Signature · 1 line
1.9.1
#2 lore raw
In reply to Zhu Yanjun

Hi Zhu,

Quoted 6 lines · Zhu Yanjun

In commit f43c75d4b6[gianfar: disable TX vlan based on kernel 2.6.x], gianfar nic disables TX vlan. But gianfar nic enables vlan tag insertion by default. This will lead to unusable connections on some configurations. Since vlan tag insertion is disabled by default and it is not enabled any longer, it is not necessary to disable it again.

Quoted 8 lines

Zhu Yanjun (1):
gianfar: disable vlan tag insertion by default

 drivers/net/gianfar.c | 6 ------
 1 file changed, 6 deletions(-)
Signature · 1 line
1.9.1

There's no patch in this e-mail. Since you sent another e-mail with almost the same subject, I'm confused, it's unclear to me whether I only need to apply the patch in the other one with this commit message or if it's just that you accidently dropped the patch when sending this e-mail. Could you please enlighten me ?

Thanks,
Willy

#3 lore raw
Quoted 17 lines · Willy Tarreau

Hi Zhu,

Quoted 6 lines · Zhu Yanjun

In commit f43c75d4b6[gianfar: disable TX vlan based on kernel 2.6.x], gianfar nic disables TX vlan. But gianfar nic enables vlan tag insertion by default. This will lead to unusable connections on some configurations. Since vlan tag insertion is disabled by default and it is not enabled any longer, it is not necessary to disable it again.

Quoted 8 lines

Zhu Yanjun (1):
gianfar: disable vlan tag insertion by default

  drivers/net/gianfar.c | 6 ------
  1 file changed, 6 deletions(-)
Signature · 1 line
1.9.1
Quoted 9 lines

There's no patch in this e-mail. Since you sent another e-mail with almost the same subject, I'm confused, it's unclear to me whether I only need to apply the patch in the other one with this commit message or if it's just that you accidently dropped the patch when sending this e-mail. Could you please enlighten me ?

Thanks,
Willy

Hi, Willy

Sorry. Please apply the patch in the other one with this commit message.

Thanks a lot.
Zhu Yanjun

author
#4 lore raw
Quoted 27 lines · On 10/15/2014 06:15 PM, yzhu1 wrote:
Quoted 17 lines · Willy Tarreau

Hi Zhu,

Quoted 6 lines · Zhu Yanjun

In commit f43c75d4b6[gianfar: disable TX vlan based on kernel 2.6.x], gianfar nic disables TX vlan. But gianfar nic enables vlan tag insertion by default. This will lead to unusable connections on some configurations. Since vlan tag insertion is disabled by default and it is not enabled any longer, it is not necessary to disable it again.

Quoted 8 lines

Zhu Yanjun (1):
gianfar: disable vlan tag insertion by default

  drivers/net/gianfar.c | 6 ------
  1 file changed, 6 deletions(-)
Signature · 1 line
1.9.1
Quoted 9 lines

There's no patch in this e-mail. Since you sent another e-mail with almost the same subject, I'm confused, it's unclear to me whether I only need to apply the patch in the other one with this commit message or if it's just that you accidently dropped the patch when sending this e-mail. Could you please enlighten me ?

Thanks,
Willy

Quoted 7 lines

Hi, Willy

Sorry. Please apply the patch in the other one with this commit message.

Thanks a lot.
Zhu Yanjun

Hi, Willy

Sorry, it is my fault. Please apply this patch in the attachment.

Thanks a lot.
Zhu Yanjun

Quoted 1 line

From 48cb11f57e363e8831c4bcaa854d6df23ca300f7 Mon Sep 17 00:00:00 2001

From: Zhu Yanjun <[email protected]>
Date: Wed, 15 Oct 2014 16:52:51 +0800
Subject: [PATCH] gianfar: disable vlan tag insertion by default

2.6.x kernels require a similar logic change as commit 51b8cbfc [gianfar: fix bug caused by e1653c3e] introduces for newer kernels.

Gianfar driver originally enables vlan tag insertion by default. This will lead to unusable connections on some configurations.

Since gianfar nic vlan tag insertion is disabled by default and it is not enabled any longer, it is not necessary to disable it again.

---
 drivers/net/gianfar.c | 6 ------
 1 file changed, 6 deletions(-)
drivers/net/gianfar.c +0 -6
index 8aa2cf6..afdcb41 100644
@@ -1115,7 +1115,6 @@ int startup_gfar(struct net_device *dev)
 	/* keep vlan related bits if it's enabled */
 	if (priv->vlgrp) {
 		rctrl |= RCTRL_VLEX | RCTRL_PRSDEP_INIT;
-		tctrl |= TCTRL_VLINS;
 	}
 
 	/* Init rctrl based on our settings */
@@ -1456,11 +1455,6 @@ static void gfar_vlan_rx_register(struct net_device *dev,
 		tempval |= (RCTRL_VLEX | RCTRL_PRSDEP_INIT);
 		gfar_write(&priv->regs->rctrl, tempval);
 	} else {
-		/* Disable VLAN tag insertion */
-		tempval = gfar_read(&priv->regs->tctrl);
-		tempval &= ~TCTRL_VLINS;
-		gfar_write(&priv->regs->tctrl, tempval);
-
 		/* Disable VLAN tag extraction */
 		tempval = gfar_read(&priv->regs->rctrl);
 		tempval &= ~RCTRL_VLEX;
Signature · 1 line
1.9.1
#5 lore raw

Hi,

Quoted 1 line · zhuyj

Sorry, it is my fault.

no problem, don't worry :-)

Quoted 1 line

Please apply this patch in the attachment.

Thank you, patch queued now!

Willy