Commit Graph

1 Commits (7b3354bb92fe7b9edc3efdf26437f1ca53cca96e)

Author SHA1 Message Date
Hauke Mehrtens 64f54741e3 kernel: bgmac: rework patch checking packet length
This bgmac patch was an attempt to fix/workaround bug reported in
https://dev.openwrt.org/ticket/7198 noticed on WNR3500L.
Patch assumed length reported by the hardware was 0 and was trying to
read it until getting a different value. This was actually the opposite.
Lenghts were some invalid & huge values that resulted in skb_over_panic.
For example:
skbuff: skb_over_panic: text:83b21074 len:57222 (...)
skbuff: skb_over_panic: text:87af1024 len:43226 (...)
skbuff: skb_over_panic: text:87af5024 len:8739 (...)

So instead of that not-working patch checking for 0, write a new one
checking for huge values. In case something like that happens, dump
hardware state and drop the packet.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 40424
10 years ago