All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-16  8:46 ` Kai-Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai-Heng Feng @ 2018-01-16  8:46 UTC (permalink / raw)
  To: davem
  Cc: hayeswang, gregkh, linux-usb, netdev, linux-kernel,
	Kai-Heng Feng, Mario Limonciello

r8153 on Dell TB15/16 dock corrupts rx packets.

This change is suggested by Realtek. They guess that the XHCI controller
doesn't have enough buffer, and their guesswork is correct, once the RX
aggregation gets disabled, the issue is gone.

ASMedia is currently working on a real sulotion for this issue.

Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.

Note that TB15 has different bcdDevice and iSerialNumber, which are not
unique values. If you still have TB15, please contact Dell to replace it
with TB16.

BugLink: https://bugs.launchpad.net/bugs/1729674
Cc: Mario Limonciello <mario.limonciello@dell.com>
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
---
v2:
- Disable RX aggregation instead of disable RX checksum
- Use bcdDevice and iSerialNumber to uniquely identify Dell TB16

 drivers/net/usb/r8152.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
index d51d9abf7986..0657203ffb91 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -606,6 +606,7 @@ enum rtl8152_flags {
 	PHY_RESET,
 	SCHEDULE_NAPI,
 	GREEN_ETHERNET,
+	DELL_TB_RX_AGG_BUG,
 };
 
 /* Define these values to match your device */
@@ -1798,6 +1799,9 @@ static int r8152_tx_agg_fill(struct r8152 *tp, struct tx_agg *agg)
 		dev_kfree_skb_any(skb);
 
 		remain = agg_buf_sz - (int)(tx_agg_align(tx_data) - agg->head);
+
+		if (test_bit(DELL_TB_RX_AGG_BUG, &tp->flags))
+			break;
 	}
 
 	if (!skb_queue_empty(&skb_head)) {
@@ -4133,6 +4137,9 @@ static void r8153_init(struct r8152 *tp)
 	/* rx aggregation */
 	ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
 	ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
+	if (test_bit(DELL_TB_RX_AGG_BUG, &tp->flags))
+		ocp_data |= RX_AGG_DISABLE;
+
 	ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
 
 	rtl_tally_reset(tp);
@@ -5207,6 +5214,12 @@ static int rtl8152_probe(struct usb_interface *intf,
 		netdev->hw_features &= ~NETIF_F_RXCSUM;
 	}
 
+	if (le16_to_cpu(udev->descriptor.bcdDevice) == 0x3011 &&
+	    udev->serial && !strcmp(udev->serial, "000001000000")) {
+		dev_info(&udev->dev, "Dell TB16 Dock, disable RX aggregation");
+		set_bit(DELL_TB_RX_AGG_BUG, &tp->flags);
+	}
+
 	netdev->ethtool_ops = &ops;
 	netif_set_gso_max_size(netdev, RTL_LIMITED_TSO_SIZE);
 
-- 
2.15.1

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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-16  8:46 ` Kai-Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai-Heng Feng @ 2018-01-16  8:46 UTC (permalink / raw)
  To: davem
  Cc: hayeswang, gregkh, linux-usb, netdev, linux-kernel,
	Kai-Heng Feng, Mario Limonciello

r8153 on Dell TB15/16 dock corrupts rx packets.

This change is suggested by Realtek. They guess that the XHCI controller
doesn't have enough buffer, and their guesswork is correct, once the RX
aggregation gets disabled, the issue is gone.

ASMedia is currently working on a real sulotion for this issue.

Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.

Note that TB15 has different bcdDevice and iSerialNumber, which are not
unique values. If you still have TB15, please contact Dell to replace it
with TB16.

BugLink: https://bugs.launchpad.net/bugs/1729674
Cc: Mario Limonciello <mario.limonciello@dell.com>
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
---
v2:
- Disable RX aggregation instead of disable RX checksum
- Use bcdDevice and iSerialNumber to uniquely identify Dell TB16

 drivers/net/usb/r8152.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
index d51d9abf7986..0657203ffb91 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -606,6 +606,7 @@ enum rtl8152_flags {
 	PHY_RESET,
 	SCHEDULE_NAPI,
 	GREEN_ETHERNET,
+	DELL_TB_RX_AGG_BUG,
 };
 
 /* Define these values to match your device */
@@ -1798,6 +1799,9 @@ static int r8152_tx_agg_fill(struct r8152 *tp, struct tx_agg *agg)
 		dev_kfree_skb_any(skb);
 
 		remain = agg_buf_sz - (int)(tx_agg_align(tx_data) - agg->head);
+
+		if (test_bit(DELL_TB_RX_AGG_BUG, &tp->flags))
+			break;
 	}
 
 	if (!skb_queue_empty(&skb_head)) {
@@ -4133,6 +4137,9 @@ static void r8153_init(struct r8152 *tp)
 	/* rx aggregation */
 	ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
 	ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
+	if (test_bit(DELL_TB_RX_AGG_BUG, &tp->flags))
+		ocp_data |= RX_AGG_DISABLE;
+
 	ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
 
 	rtl_tally_reset(tp);
@@ -5207,6 +5214,12 @@ static int rtl8152_probe(struct usb_interface *intf,
 		netdev->hw_features &= ~NETIF_F_RXCSUM;
 	}
 
+	if (le16_to_cpu(udev->descriptor.bcdDevice) == 0x3011 &&
+	    udev->serial && !strcmp(udev->serial, "000001000000")) {
+		dev_info(&udev->dev, "Dell TB16 Dock, disable RX aggregation");
+		set_bit(DELL_TB_RX_AGG_BUG, &tp->flags);
+	}
+
 	netdev->ethtool_ops = &ops;
 	netif_set_gso_max_size(netdev, RTL_LIMITED_TSO_SIZE);
 

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

* Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-17 20:39   ` David Miller
  0 siblings, 0 replies; 16+ messages in thread
From: David Miller @ 2018-01-17 20:39 UTC (permalink / raw)
  To: kai.heng.feng
  Cc: hayeswang, gregkh, linux-usb, netdev, linux-kernel, mario.limonciello

From: Kai-Heng Feng <kai.heng.feng@canonical.com>
Date: Tue, 16 Jan 2018 16:46:27 +0800

> r8153 on Dell TB15/16 dock corrupts rx packets.
> 
> This change is suggested by Realtek. They guess that the XHCI controller
> doesn't have enough buffer, and their guesswork is correct, once the RX
> aggregation gets disabled, the issue is gone.
> 
> ASMedia is currently working on a real sulotion for this issue.
> 
> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
> 
> Note that TB15 has different bcdDevice and iSerialNumber, which are not
> unique values. If you still have TB15, please contact Dell to replace it
> with TB16.
> 
> BugLink: https://bugs.launchpad.net/bugs/1729674
> Cc: Mario Limonciello <mario.limonciello@dell.com>
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
> ---
> v2:
> - Disable RX aggregation instead of disable RX checksum
> - Use bcdDevice and iSerialNumber to uniquely identify Dell TB16

Ok, since this is very restricted it's an acceptable way to deal with
this problem.

Applied, thanks.

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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-17 20:39   ` David Miller
  0 siblings, 0 replies; 16+ messages in thread
From: David Miller @ 2018-01-17 20:39 UTC (permalink / raw)
  To: kai.heng.feng
  Cc: hayeswang, gregkh, linux-usb, netdev, linux-kernel, mario.limonciello

From: Kai-Heng Feng <kai.heng.feng@canonical.com>
Date: Tue, 16 Jan 2018 16:46:27 +0800

> r8153 on Dell TB15/16 dock corrupts rx packets.
> 
> This change is suggested by Realtek. They guess that the XHCI controller
> doesn't have enough buffer, and their guesswork is correct, once the RX
> aggregation gets disabled, the issue is gone.
> 
> ASMedia is currently working on a real sulotion for this issue.
> 
> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
> 
> Note that TB15 has different bcdDevice and iSerialNumber, which are not
> unique values. If you still have TB15, please contact Dell to replace it
> with TB16.
> 
> BugLink: https://bugs.launchpad.net/bugs/1729674
> Cc: Mario Limonciello <mario.limonciello@dell.com>
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
> ---
> v2:
> - Disable RX aggregation instead of disable RX checksum
> - Use bcdDevice and iSerialNumber to uniquely identify Dell TB16

Ok, since this is very restricted it's an acceptable way to deal with
this problem.

Applied, thanks.
---
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* RE: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18  3:04     ` Hayes Wang
  0 siblings, 0 replies; 16+ messages in thread
From: Hayes Wang @ 2018-01-18  3:04 UTC (permalink / raw)
  To: David Miller, kai.heng.feng
  Cc: gregkh, linux-usb, netdev, linux-kernel, mario.limonciello, nic_swsd

[...]
> > r8153 on Dell TB15/16 dock corrupts rx packets.
> >
> > This change is suggested by Realtek. They guess that the XHCI
> > controller doesn't have enough buffer, and their guesswork is correct,
> > once the RX aggregation gets disabled, the issue is gone.
> >
> > ASMedia is currently working on a real sulotion for this issue.
> >
> > Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
> >
> > Note that TB15 has different bcdDevice and iSerialNumber, which are
> > not unique values. If you still have TB15, please contact Dell to
> > replace it with TB16.

Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
It seems to make the specific USB nic working and the other ones keeping error.


Best Regards,
Hayes



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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18  3:04     ` Hayes Wang
  0 siblings, 0 replies; 16+ messages in thread
From: Hayes Wang @ 2018-01-18  3:04 UTC (permalink / raw)
  To: David Miller, kai.heng.feng
  Cc: gregkh, linux-usb, netdev, linux-kernel, mario.limonciello, nic_swsd

[...]
> > r8153 on Dell TB15/16 dock corrupts rx packets.
> >
> > This change is suggested by Realtek. They guess that the XHCI
> > controller doesn't have enough buffer, and their guesswork is correct,
> > once the RX aggregation gets disabled, the issue is gone.
> >
> > ASMedia is currently working on a real sulotion for this issue.
> >
> > Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
> >
> > Note that TB15 has different bcdDevice and iSerialNumber, which are
> > not unique values. If you still have TB15, please contact Dell to
> > replace it with TB16.

Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
It seems to make the specific USB nic working and the other ones keeping error.


Best Regards,
Hayes
---
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18  3:38       ` Kai Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai Heng Feng @ 2018-01-18  3:38 UTC (permalink / raw)
  To: Hayes Wang
  Cc: David Miller, gregkh, linux-usb, netdev, linux-kernel,
	mario.limonciello, nic_swsd


> On 18 Jan 2018, at 11:04 AM, Hayes Wang <hayeswang@realtek.com> wrote:
> 
> [...]
>>> r8153 on Dell TB15/16 dock corrupts rx packets.
>>> 
>>> This change is suggested by Realtek. They guess that the XHCI
>>> controller doesn't have enough buffer, and their guesswork is correct,
>>> once the RX aggregation gets disabled, the issue is gone.
>>> 
>>> ASMedia is currently working on a real sulotion for this issue.
>>> 
>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>>> 
>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
>>> not unique values. If you still have TB15, please contact Dell to
>>> replace it with TB16.
> 
> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
> It seems to make the specific USB nic working and the other ones keeping error.

This patch is transient, once ASMedia find the correct solution, the patch
can be reverted.

This patch only targets the builtin 8153 because externally plugged r8152 or
asix do not suffered from this issue.

Kai-Heng

> 
> 
> Best Regards,
> Hayes
> 
> 


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

* Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18  3:38       ` Kai Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai Heng Feng @ 2018-01-18  3:38 UTC (permalink / raw)
  To: Hayes Wang
  Cc: David Miller, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r,
	linux-usb-u79uwXL29TY76Z2rM5mHXA, netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	mario.limonciello-8PEkshWhKlo, nic_swsd


> On 18 Jan 2018, at 11:04 AM, Hayes Wang <hayeswang-Rasf1IRRPZFBDgjK7y7TUQ@public.gmane.org> wrote:
> 
> [...]
>>> r8153 on Dell TB15/16 dock corrupts rx packets.
>>> 
>>> This change is suggested by Realtek. They guess that the XHCI
>>> controller doesn't have enough buffer, and their guesswork is correct,
>>> once the RX aggregation gets disabled, the issue is gone.
>>> 
>>> ASMedia is currently working on a real sulotion for this issue.
>>> 
>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>>> 
>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
>>> not unique values. If you still have TB15, please contact Dell to
>>> replace it with TB16.
> 
> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
> It seems to make the specific USB nic working and the other ones keeping error.

This patch is transient, once ASMedia find the correct solution, the patch
can be reverted.

This patch only targets the builtin 8153 because externally plugged r8152 or
asix do not suffered from this issue.

Kai-Heng

> 
> 
> Best Regards,
> Hayes
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18  3:38       ` Kai Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai-Heng Feng @ 2018-01-18  3:38 UTC (permalink / raw)
  To: Hayes Wang
  Cc: David Miller, gregkh, linux-usb, netdev, linux-kernel,
	mario.limonciello, nic_swsd

> On 18 Jan 2018, at 11:04 AM, Hayes Wang <hayeswang@realtek.com> wrote:
> 
> [...]
>>> r8153 on Dell TB15/16 dock corrupts rx packets.
>>> 
>>> This change is suggested by Realtek. They guess that the XHCI
>>> controller doesn't have enough buffer, and their guesswork is correct,
>>> once the RX aggregation gets disabled, the issue is gone.
>>> 
>>> ASMedia is currently working on a real sulotion for this issue.
>>> 
>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>>> 
>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
>>> not unique values. If you still have TB15, please contact Dell to
>>> replace it with TB16.
> 
> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
> It seems to make the specific USB nic working and the other ones keeping error.

This patch is transient, once ASMedia find the correct solution, the patch
can be reverted.

This patch only targets the builtin 8153 because externally plugged r8152 or
asix do not suffered from this issue.

Kai-Heng

> 
> 
> Best Regards,
> Hayes
> 
>
---
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 14:50       ` David Miller
  0 siblings, 0 replies; 16+ messages in thread
From: David Miller @ 2018-01-18 14:50 UTC (permalink / raw)
  To: hayeswang
  Cc: kai.heng.feng, gregkh, linux-usb, netdev, linux-kernel,
	mario.limonciello, nic_swsd

From: Hayes Wang <hayeswang@realtek.com>
Date: Thu, 18 Jan 2018 03:04:08 +0000

> [...]
>> > r8153 on Dell TB15/16 dock corrupts rx packets.
>> >
>> > This change is suggested by Realtek. They guess that the XHCI
>> > controller doesn't have enough buffer, and their guesswork is correct,
>> > once the RX aggregation gets disabled, the issue is gone.
>> >
>> > ASMedia is currently working on a real sulotion for this issue.
>> >
>> > Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>> >
>> > Note that TB15 has different bcdDevice and iSerialNumber, which are
>> > not unique values. If you still have TB15, please contact Dell to
>> > replace it with TB16.
> 
> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
> It seems to make the specific USB nic working and the other ones keeping error.

Well, are we sure that the device being in the TB16 dock doesn't
contribute to the issue as well?

If the problem only shows up with XHCI and this dock, then this patch
was the appropriate way to deal with the problem for now.

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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 14:50       ` David Miller
  0 siblings, 0 replies; 16+ messages in thread
From: David Miller @ 2018-01-18 14:50 UTC (permalink / raw)
  To: hayeswang
  Cc: kai.heng.feng, gregkh, linux-usb, netdev, linux-kernel,
	mario.limonciello, nic_swsd

From: Hayes Wang <hayeswang@realtek.com>
Date: Thu, 18 Jan 2018 03:04:08 +0000

> [...]
>> > r8153 on Dell TB15/16 dock corrupts rx packets.
>> >
>> > This change is suggested by Realtek. They guess that the XHCI
>> > controller doesn't have enough buffer, and their guesswork is correct,
>> > once the RX aggregation gets disabled, the issue is gone.
>> >
>> > ASMedia is currently working on a real sulotion for this issue.
>> >
>> > Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>> >
>> > Note that TB15 has different bcdDevice and iSerialNumber, which are
>> > not unique values. If you still have TB15, please contact Dell to
>> > replace it with TB16.
> 
> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
> It seems to make the specific USB nic working and the other ones keeping error.

Well, are we sure that the device being in the TB16 dock doesn't
contribute to the issue as well?

If the problem only shows up with XHCI and this dock, then this patch
was the appropriate way to deal with the problem for now.
---
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 16:57         ` Kai Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai Heng Feng @ 2018-01-18 16:57 UTC (permalink / raw)
  To: David Miller
  Cc: Hayes Wang, gregkh, linux-usb, netdev, linux-kernel,
	mario.limonciello, nic_swsd



> On 18 Jan 2018, at 10:50 PM, David Miller <davem@davemloft.net> wrote:
> 
> From: Hayes Wang <hayeswang@realtek.com>
> Date: Thu, 18 Jan 2018 03:04:08 +0000
> 
>> [...]
>>>> r8153 on Dell TB15/16 dock corrupts rx packets.
>>>> 
>>>> This change is suggested by Realtek. They guess that the XHCI
>>>> controller doesn't have enough buffer, and their guesswork is correct,
>>>> once the RX aggregation gets disabled, the issue is gone.
>>>> 
>>>> ASMedia is currently working on a real sulotion for this issue.
>>>> 
>>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>>>> 
>>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
>>>> not unique values. If you still have TB15, please contact Dell to
>>>> replace it with TB16.
>> 
>> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
>> It seems to make the specific USB nic working and the other ones keeping error.
> 
> Well, are we sure that the device being in the TB16 dock doesn't
> contribute to the issue as well?

This is what vendors concluded for now. The very same NIC on WD15 doesn’t
have the issue.

> 
> If the problem only shows up with XHCI and this dock, then this patch
> was the appropriate way to deal with the problem for now.


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

* Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 16:57         ` Kai Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai Heng Feng @ 2018-01-18 16:57 UTC (permalink / raw)
  To: David Miller
  Cc: Hayes Wang, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r,
	linux-usb-u79uwXL29TY76Z2rM5mHXA, netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	mario.limonciello-8PEkshWhKlo, nic_swsd-Rasf1IRRPZFBDgjK7y7TUQ



> On 18 Jan 2018, at 10:50 PM, David Miller <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org> wrote:
> 
> From: Hayes Wang <hayeswang-Rasf1IRRPZFBDgjK7y7TUQ@public.gmane.org>
> Date: Thu, 18 Jan 2018 03:04:08 +0000
> 
>> [...]
>>>> r8153 on Dell TB15/16 dock corrupts rx packets.
>>>> 
>>>> This change is suggested by Realtek. They guess that the XHCI
>>>> controller doesn't have enough buffer, and their guesswork is correct,
>>>> once the RX aggregation gets disabled, the issue is gone.
>>>> 
>>>> ASMedia is currently working on a real sulotion for this issue.
>>>> 
>>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>>>> 
>>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
>>>> not unique values. If you still have TB15, please contact Dell to
>>>> replace it with TB16.
>> 
>> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
>> It seems to make the specific USB nic working and the other ones keeping error.
> 
> Well, are we sure that the device being in the TB16 dock doesn't
> contribute to the issue as well?

This is what vendors concluded for now. The very same NIC on WD15 doesn’t
have the issue.

> 
> If the problem only shows up with XHCI and this dock, then this patch
> was the appropriate way to deal with the problem for now.

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 16:57         ` Kai Heng Feng
  0 siblings, 0 replies; 16+ messages in thread
From: Kai-Heng Feng @ 2018-01-18 16:57 UTC (permalink / raw)
  To: David Miller
  Cc: Hayes Wang, gregkh, linux-usb, netdev, linux-kernel,
	mario.limonciello, nic_swsd

> On 18 Jan 2018, at 10:50 PM, David Miller <davem@davemloft.net> wrote:
> 
> From: Hayes Wang <hayeswang@realtek.com>
> Date: Thu, 18 Jan 2018 03:04:08 +0000
> 
>> [...]
>>>> r8153 on Dell TB15/16 dock corrupts rx packets.
>>>> 
>>>> This change is suggested by Realtek. They guess that the XHCI
>>>> controller doesn't have enough buffer, and their guesswork is correct,
>>>> once the RX aggregation gets disabled, the issue is gone.
>>>> 
>>>> ASMedia is currently working on a real sulotion for this issue.
>>>> 
>>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
>>>> 
>>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
>>>> not unique values. If you still have TB15, please contact Dell to
>>>> replace it with TB16.
>> 
>> Excuse me. I don't understand why this patch is for specific USB nic rather than xHCI.
>> It seems to make the specific USB nic working and the other ones keeping error.
> 
> Well, are we sure that the device being in the TB16 dock doesn't
> contribute to the issue as well?

This is what vendors concluded for now. The very same NIC on WD15 doesn’t
have the issue.

> 
> If the problem only shows up with XHCI and this dock, then this patch
> was the appropriate way to deal with the problem for now.
---
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* RE: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 17:06           ` Mario Limonciello
  0 siblings, 0 replies; 16+ messages in thread
From: Mario.Limonciello @ 2018-01-18 17:06 UTC (permalink / raw)
  To: kai.heng.feng, davem
  Cc: hayeswang, gregkh, linux-usb, netdev, linux-kernel, nic_swsd

> -----Original Message-----
> From: Kai Heng Feng [mailto:kai.heng.feng@canonical.com]
> Sent: Thursday, January 18, 2018 10:57 AM
> To: David Miller <davem@davemloft.net>
> Cc: Hayes Wang <hayeswang@realtek.com>; gregkh@linuxfoundation.org; linux-
> usb@vger.kernel.org; netdev@vger.kernel.org; linux-kernel@vger.kernel.org;
> Limonciello, Mario <Mario_Limonciello@Dell.com>; nic_swsd@realtek.com
> Subject: Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
> 
> 
> 
> > On 18 Jan 2018, at 10:50 PM, David Miller <davem@davemloft.net> wrote:
> >
> > From: Hayes Wang <hayeswang@realtek.com>
> > Date: Thu, 18 Jan 2018 03:04:08 +0000
> >
> >> [...]
> >>>> r8153 on Dell TB15/16 dock corrupts rx packets.
> >>>>
> >>>> This change is suggested by Realtek. They guess that the XHCI
> >>>> controller doesn't have enough buffer, and their guesswork is correct,
> >>>> once the RX aggregation gets disabled, the issue is gone.
> >>>>
> >>>> ASMedia is currently working on a real sulotion for this issue.
> >>>>
> >>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
> >>>>
> >>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
> >>>> not unique values. If you still have TB15, please contact Dell to
> >>>> replace it with TB16.
> >>
> >> Excuse me. I don't understand why this patch is for specific USB nic rather than
> xHCI.
> >> It seems to make the specific USB nic working and the other ones keeping error.
> >
> > Well, are we sure that the device being in the TB16 dock doesn't
> > contribute to the issue as well?

Previous version of this patch checked the parent device to ensure it was in TB16.
I believe there was negative feedback to that approach, which prompted the discussion
to check bcdDevice and iSerialNumber with all vendors involved.

If it's still desirable to analyze parentage tree, I suppose bcdDevice, iSerialNumber
and parent's USB device VID/PID can be analyzed  all at the same time.

> 
> This is what vendors concluded for now. The very same NIC on WD15 doesn’t
> have the issue.

And just so it's extra clear to everyone on this list - WD15 has different bcdDevice
iSerialNumber, and doesn't connect to ASMedia host controller.

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

* [v2] r8152: disable RX aggregation on Dell TB16 dock
@ 2018-01-18 17:06           ` Mario Limonciello
  0 siblings, 0 replies; 16+ messages in thread
From: Mario Limonciello @ 2018-01-18 17:06 UTC (permalink / raw)
  To: kai.heng.feng, davem
  Cc: hayeswang, gregkh, linux-usb, netdev, linux-kernel, nic_swsd

> -----Original Message-----
> From: Kai Heng Feng [mailto:kai.heng.feng@canonical.com]
> Sent: Thursday, January 18, 2018 10:57 AM
> To: David Miller <davem@davemloft.net>
> Cc: Hayes Wang <hayeswang@realtek.com>; gregkh@linuxfoundation.org; linux-
> usb@vger.kernel.org; netdev@vger.kernel.org; linux-kernel@vger.kernel.org;
> Limonciello, Mario <Mario_Limonciello@Dell.com>; nic_swsd@realtek.com
> Subject: Re: [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock
> 
> 
> 
> > On 18 Jan 2018, at 10:50 PM, David Miller <davem@davemloft.net> wrote:
> >
> > From: Hayes Wang <hayeswang@realtek.com>
> > Date: Thu, 18 Jan 2018 03:04:08 +0000
> >
> >> [...]
> >>>> r8153 on Dell TB15/16 dock corrupts rx packets.
> >>>>
> >>>> This change is suggested by Realtek. They guess that the XHCI
> >>>> controller doesn't have enough buffer, and their guesswork is correct,
> >>>> once the RX aggregation gets disabled, the issue is gone.
> >>>>
> >>>> ASMedia is currently working on a real sulotion for this issue.
> >>>>
> >>>> Dell and ODM confirm the bcdDevice and iSerialNumber is unique for TB16.
> >>>>
> >>>> Note that TB15 has different bcdDevice and iSerialNumber, which are
> >>>> not unique values. If you still have TB15, please contact Dell to
> >>>> replace it with TB16.
> >>
> >> Excuse me. I don't understand why this patch is for specific USB nic rather than
> xHCI.
> >> It seems to make the specific USB nic working and the other ones keeping error.
> >
> > Well, are we sure that the device being in the TB16 dock doesn't
> > contribute to the issue as well?

Previous version of this patch checked the parent device to ensure it was in TB16.
I believe there was negative feedback to that approach, which prompted the discussion
to check bcdDevice and iSerialNumber with all vendors involved.

If it's still desirable to analyze parentage tree, I suppose bcdDevice, iSerialNumber
and parent's USB device VID/PID can be analyzed  all at the same time.

> 
> This is what vendors concluded for now. The very same NIC on WD15 doesn’t
> have the issue.

And just so it's extra clear to everyone on this list - WD15 has different bcdDevice
iSerialNumber, and doesn't connect to ASMedia host controller.

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

end of thread, other threads:[~2018-01-18 17:06 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-16  8:46 [PATCH v2] r8152: disable RX aggregation on Dell TB16 dock Kai-Heng Feng
2018-01-16  8:46 ` [v2] " Kai-Heng Feng
2018-01-17 20:39 ` [PATCH v2] " David Miller
2018-01-17 20:39   ` [v2] " David Miller
2018-01-18  3:04   ` [PATCH v2] " Hayes Wang
2018-01-18  3:04     ` [v2] " Hayes Wang
2018-01-18  3:38     ` [PATCH v2] " Kai Heng Feng
2018-01-18  3:38       ` [v2] " Kai-Heng Feng
2018-01-18  3:38       ` [PATCH v2] " Kai Heng Feng
2018-01-18 14:50     ` David Miller
2018-01-18 14:50       ` [v2] " David Miller
2018-01-18 16:57       ` [PATCH v2] " Kai Heng Feng
2018-01-18 16:57         ` [v2] " Kai-Heng Feng
2018-01-18 16:57         ` [PATCH v2] " Kai Heng Feng
2018-01-18 17:06         ` Mario.Limonciello
2018-01-18 17:06           ` [v2] " Mario Limonciello

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.