OpenWrt/LEDE Project

  • Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Kernel
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version openwrt-19.07
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by rkreis - 18.04.2020

FS#3015 - ag71xx crashes after increasing MTU

Tested on openwrt-19.07.2-ath79-generic-tplink_archer-c7-v5

Steps to reproduce:

root@OpenWrt:~# ip link set eth0 mtu 500
root@OpenWrt:~# ip link set eth0 down; ip link set eth0 up
root@OpenWrt:~# ip link set eth0 mtu 1500

After this, sending a large packet (ping -s 800) causes a kernel panic:

skbuff: skb_over_panic: text:802da154 len:846 put:846 head:8677e3e0 data:8677e422 tail:0x8677e770 end:0x8677e640 dev:<NULL>

The problem is the rx buffer management in target/linux/ath79/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c: ag71xx_change_mtu adjusts the MTU, but doesn’t adjust rx_buf_size (it’s only set in ag71xx_open).

The attached patch fixes it by always using a large receive buffer. Maybe it is better to change rx_buf_size from ag71xx_change_mtu, but I don’t know how to do that.

Admin
Petr Štetiar commented on 25.04.2020 11:09

Please send the patch to the mailing list, see https://openwrt.org/submitting-patches for details, thanks.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing