diff --git a/sys/netlink/netlink_generic.c b/sys/netlink/netlink_generic.c index 54fc702d8ac..b28b206a7ac 100644 --- a/sys/netlink/netlink_generic.c +++ b/sys/netlink/netlink_generic.c @@ -296,6 +296,7 @@ SYSINIT(genl_load_all, SI_SUB_PROTO_DOMAIN, SI_ORDER_THIRD, genl_load_all, NULL) static void genl_unload(void *u __unused) { + netlink_unregister_proto(NETLINK_GENERIC); EVENTHANDLER_DEREGISTER(genl_family_event, family_event_tag); genl_unregister_family(CTRL_FAMILY_NAME); NET_EPOCH_WAIT(); diff --git a/sys/netlink/netlink_route.c b/sys/netlink/netlink_route.c index 6da07492640..6b293f7ef19 100644 --- a/sys/netlink/netlink_route.c +++ b/sys/netlink/netlink_route.c @@ -134,6 +134,7 @@ static void rtnl_unload(void *u __unused) { netlink_callback_p = nlbridge_orig_p; + netlink_unregister_proto(NETLINK_ROUTE); rtnl_ifaces_destroy(); rtnl_neighs_destroy();