* [PATCH Resend] net: asix: add missing flag to struct driver_info
@ 2014-02-13 18:30 Emil Goode
2014-02-14 20:48 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Emil Goode @ 2014-02-13 18:30 UTC (permalink / raw)
To: David S. Miller, Ming Lei, Mark Brown, Jeff Kirsher, Glen Turner
Cc: linux-usb, netdev, linux-kernel, Emil Goode
The struct driver_info ax88178_info is assigned the function
asix_rx_fixup_common as it's rx_fixup callback. This means that
FLAG_MULTI_PACKET must be set as this function is cloning the
data and calling usbnet_skb_return. Not setting this flag leads
to usbnet_skb_return beeing called a second time from within
the rx_process function in the usbnet module.
Signed-off-by: Emil Goode <emilgoode@gmail.com>
Reported-by: Bjørn Mork <bjorn@mork.no>
---
drivers/net/usb/asix_devices.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/usb/asix_devices.c b/drivers/net/usb/asix_devices.c
index 9765a7d..5d19409 100644
--- a/drivers/net/usb/asix_devices.c
+++ b/drivers/net/usb/asix_devices.c
@@ -917,7 +917,8 @@ static const struct driver_info ax88178_info = {
.status = asix_status,
.link_reset = ax88178_link_reset,
.reset = ax88178_reset,
- .flags = FLAG_ETHER | FLAG_FRAMING_AX | FLAG_LINK_INTR,
+ .flags = FLAG_ETHER | FLAG_FRAMING_AX | FLAG_LINK_INTR |
+ FLAG_MULTI_PACKET,
.rx_fixup = asix_rx_fixup_common,
.tx_fixup = asix_tx_fixup,
};
--
1.7.10.4
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH Resend] net: asix: add missing flag to struct driver_info
2014-02-13 18:30 [PATCH Resend] net: asix: add missing flag to struct driver_info Emil Goode
@ 2014-02-14 20:48 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2014-02-14 20:48 UTC (permalink / raw)
To: emilgoode
Cc: ming.lei, broonie, jeffrey.t.kirsher, gdt, linux-usb, netdev,
linux-kernel
From: Emil Goode <emilgoode@gmail.com>
Date: Thu, 13 Feb 2014 19:30:39 +0100
> The struct driver_info ax88178_info is assigned the function
> asix_rx_fixup_common as it's rx_fixup callback. This means that
> FLAG_MULTI_PACKET must be set as this function is cloning the
> data and calling usbnet_skb_return. Not setting this flag leads
> to usbnet_skb_return beeing called a second time from within
> the rx_process function in the usbnet module.
>
> Signed-off-by: Emil Goode <emilgoode@gmail.com>
> Reported-by: Bjørn Mork <bjorn@mork.no>
Applied and queued up for -stable.
It would be great if there were some way to validate these
callback flags requirements and catch such errors.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-02-14 20:48 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-13 18:30 [PATCH Resend] net: asix: add missing flag to struct driver_info Emil Goode
2014-02-14 20:48 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox