From: Emil Goode <emilgoode@gmail.com>
To: Oliver Neukum <oliver@neukum.org>
Cc: "David S. Miller" <davem@davemloft.net>,
Ming Lei <ming.lei@canonical.com>,
Mark Brown <broonie@linaro.org>,
Jeff Kirsher <jeffrey.t.kirsher@intel.com>,
Glen Turner <gdt@gdt.id.au>,
netdev@vger.kernel.org, linux-usb@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/2 v2] usbnet: fix bad header length bug
Date: Mon, 10 Feb 2014 13:00:48 +0100 [thread overview]
Message-ID: <20140210115812.GA4278@lianli> (raw)
In-Reply-To: <1392014458.21271.6.camel@linux-fkkt.site>
On Mon, Feb 10, 2014 at 07:40:58AM +0100, Oliver Neukum wrote:
> On Mon, 2014-02-10 at 00:06 +0100, Emil Goode wrote:
> > The AX88772B occasionally send rx packets that cross urb boundaries
> > and the remaining partial packet is sent with no hardware header.
> > When the buffer with a partial packet is of less number of octets
> > than the value of hard_header_len the buffer is discarded by the
> > usbnet module. This is causing dropped packages and error messages
> > in dmesg.
> >
> > This can be reproduced by using ping with a packet size
> > between 1965-1976.
>
> Well, then how about simply removing the check?
> It seems to have outlived its usefulness.
>
> Regards
> Oliver
>
>
I did consider that and I think it is probably the best thing to do.
However, I think the removal of the check could have negative effects
on the other minidrivers, at least the qmi_wwan minidriver explicitly
states that it is depending on this check to be made in rx_complete().
For safety the check could be added at the top of the rx_fixup callback
of the affected minidrivers.
There are devices that depend on the usbnet module that do not have
a rx_fixup callback assigned to it's driver_info struct, the check
could be added for these in the rx_process function.
This led me to think it would be a lot of noise about a small check :)
My conclusion is that 12 rx_fixup callbacks might need the check
to be added. There are 18 driver_info structs with no rx_fixup
callback assigned, these devices might need the check to be added
to the rx_process function.
Patches could be sent out to notify the affected minidrivers of the
change and hopefully someone has the hardware to test if it's
necessary to add the check to the minidriver?
I'm happy to do this if it seem like a good idea.
Best regards,
Emil Goode
next prev parent reply other threads:[~2014-02-10 11:58 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-09 23:06 [PATCH 1/2 v2] usbnet: fix bad header length bug Emil Goode
2014-02-09 23:06 ` [PATCH 2/2] net: asix: add missing flag to struct driver_info Emil Goode
2014-02-10 6:40 ` [PATCH 1/2 v2] usbnet: fix bad header length bug Oliver Neukum
2014-02-10 12:00 ` Emil Goode [this message]
2014-02-10 12:22 ` Oliver Neukum
2014-02-10 12:39 ` David Laight
2014-02-10 13:05 ` Bjørn Mork
2014-02-10 15:54 ` Emil Goode
2014-02-11 7:43 ` Oliver Neukum
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140210115812.GA4278@lianli \
--to=emilgoode@gmail.com \
--cc=broonie@linaro.org \
--cc=davem@davemloft.net \
--cc=gdt@gdt.id.au \
--cc=jeffrey.t.kirsher@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=ming.lei@canonical.com \
--cc=netdev@vger.kernel.org \
--cc=oliver@neukum.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox