On 2014/5/8 19:11, Neil Horman wrote: > On Thu, May 08, 2014 at 03:55:05PM +0800, Wang Weidong wrote: >> When register_net_sysctl failed, we should free the >> sysctl_table while the net_namespace is not init_net. >> >> Signed-off-by: Wang Weidong <wangweidong1@xxxxxxxxxx> >> --- >> net/sctp/sysctl.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/net/sctp/sysctl.c b/net/sctp/sysctl.c >> index 844d2b0..4c17694 100644 >> --- a/net/sctp/sysctl.c >> +++ b/net/sctp/sysctl.c >> @@ -450,6 +450,11 @@ int sctp_sysctl_net_register(struct net *net) >> } >> >> net->sctp.sysctl_header = register_net_sysctl(net, "net/sctp", table); >> + if (net->sctp.sysctl_header == NULL) { >> + if (!net_eq(net, &init_net)) >> + kfree(table); >> + return -ENOMEM; >> + } > Sorry, we're not special casing this in 3 places. Why not just revert the > origonal commit so that all the sysctl tables can be handled the same way > Neil > Hi Neil, The original commit avoids to kmemdup >> return 0; >> } >> >> -- >> 1.7.12 >> >> >> > -- > To unsubscribe from this list: send the line "unsubscribe netdev" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- To unsubscribe from this list: send the line "unsubscribe linux-sctp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html