realtek: re-enable IPv6 routing
authorBjørn Mork <bjorn@mork.no>
Fri, 22 Oct 2021 16:09:18 +0000 (18:09 +0200)
committerChristian Lamparter <chunkeey@gmail.com>
Sat, 30 Oct 2021 13:00:22 +0000 (15:00 +0200)
commitd990f805c0caa38ec06ad51b025b6d7b6015c232
tree0f95bf8ce6b1e12cd4c00528baad710ef2c8b280
parentdaefc646e6d4f1f730c5957b5954b88abe7c00f3
realtek: re-enable IPv6 routing

Commit 03e1d93e0779 ("realtek: add driver support for routing
offload") added routing offload for IPv4, but broke IPv6 routing
completely.  The routing table is empty and cannot be updated:

 root@gs1900-10hp:~# ip -6 route
 root@gs1900-10hp:~# ip -6 route add unreachable default
 RTNETLINK answers: Invalid argument

As a side effect, this breaks opkg on IPv4 only systems too,
since uclient-fetch fails when there are no IPv6 routes:

 root@gs1900-10hp:~# uclient-fetch http://192.168.99.1
 Downloading 'http://192.168.99.1'
 Failed to send request: Operation not permitted

Fix by returning NOTIFY_DONE when offloading is unsupported, falling
back to default behaviour.

Fixes: 03e1d93e0779 ("realtek: add driver support for routing offload")
Signed-off-by: Bjørn Mork <bjorn@mork.no>
target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/common.c