[openwrt/openwrt] realtek: re-enable IPv6 routing

LEDE Commits lede-commits at lists.infradead.org
Sat Oct 30 07:33:18 PDT 2021


chunkeey pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/d990f805c0caa38ec06ad51b025b6d7b6015c232

commit d990f805c0caa38ec06ad51b025b6d7b6015c232
Author: Bjørn Mork <bjorn at mork.no>
AuthorDate: Fri Oct 22 18:09:18 2021 +0200

    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 at gs1900-10hp:~# ip -6 route
     root at 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 at 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 at mork.no>
---
 target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/common.c b/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/common.c
index 9691b8b5c7..6d2996f0af 100644
--- a/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/common.c
+++ b/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/common.c
@@ -1342,7 +1342,7 @@ static int rtl83xx_fib_event(struct notifier_block *this, unsigned long event, v
 			struct fib6_entry_notifier_info *fen6_info = ptr;
 			pr_warn("%s: FIB_RULE ADD/DELL for IPv6 not supported\n", __func__);
 			kfree(fib_work);
-			return notifier_from_errno(-EINVAL);
+			return NOTIFY_DONE;
 		}
 		break;
 



More information about the lede-commits mailing list