Message ID | 80516b25-a42d-48e1-bcf9-27efe58f44c6@web.de (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | netlink: Fix off-by-one error in netlink_proto_init() | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Guessing tree name failed - patch did not apply |
From: Markus Elfring <Markus.Elfring@web.de> Date: Sun, 3 Nov 2024 14:15:18 +0100 > From: Markus Elfring <elfring@users.sourceforge.net> > Date: Sun, 3 Nov 2024 14:01:26 +0100 > > Hash tables should be properly destroyed after a rhashtable_init() call > failed in this function implementation. > The corresponding exception handling was incomplete because of > a questionable condition check. > Thus use the comparison operator “>=” instead for the affected while loop. This patch is already applied to net-next. https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=bc74d329ceba
… >> Thus use the comparison operator “>=” instead for the affected while loop. > > This patch is already applied to net-next. > https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=bc74d329ceba Thanks for your reminder on the commit bc74d329ceba23f998ead4f716266da5afe319f7 ("netlink: Remove the dead code in netlink_proto_init()") from 2024-10-31 for another contribution by Jinjie Ruan (also according to your suggestion). See also: https://lore.kernel.org/linux-kernel/20241028182421.6692-1-kuniyu@amazon.com/ https://lore.kernel.org/linux-kernel/20241030012147.357400-1-ruanjinjie@huawei.com/ Regards, Markus
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index 0a9287fadb47..9601b85dda95 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -2936,7 +2936,7 @@ static int __init netlink_proto_init(void) for (i = 0; i < MAX_LINKS; i++) { if (rhashtable_init(&nl_table[i].hash, &netlink_rhashtable_params) < 0) { - while (--i > 0) + while (--i >= 0) rhashtable_destroy(&nl_table[i].hash); kfree(nl_table); goto panic;