On 2018/10/29 10:52, Bruce Ashfield wrote: > Looks fine to me. > > And to confirm, this is for 4.18, correct ?
This is for linux-yocto-dev standard/base, linux-yocto v4.18/standard/base. Zhe > > Bruce > > On 2018-10-28 10:24 PM, [email protected] wrote: >> From: He Zhe <[email protected]> >> >> patch from https://lkml.org/lkml/2014/7/29/119 >> >> Ipv4 net namespace requires a similar logic change as commit a79ca223e029 >> [ipv6: fix bad free of addrconf_init_net] introduces for newer kernels. >> >> Since a net namespace is independent to another. That is, there >> is no any relationship between the net namespaces. So a new net >> namespace should not inherit network configurations from another >> net namespace including the host. >> >> CC: Hong Zhiguo <[email protected]> >> CC: David S. Miller <[email protected]> >> Signed-off-by: Zhu Yanjun <[email protected]> >> Signed-off-by: yzhu1 <[email protected]> >> >> The patch was submitted upstream (https://lkml.org/lkml/2014/7/29/119), but >> did not get any significant discussion and was not rejected, and also was >> not merged. It still makes sense for Yocto linux kernel. >> >> Signed-off-by: He Zhe <[email protected]> >> --- >> v2: Add summary about the status of the patch >> >> This is for linux-yocto-dev, linux-yocto master and 4.18 branches. >> >> net/ipv4/devinet.c | 29 ++++++++++++----------------- >> 1 file changed, 12 insertions(+), 17 deletions(-) >> >> diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c >> index a34602a..8df4a72 100644 >> --- a/net/ipv4/devinet.c >> +++ b/net/ipv4/devinet.c >> @@ -2560,28 +2560,23 @@ static __net_init int devinet_init_net(struct net >> *net) >> #endif >> err = -ENOMEM; >> - all = &ipv4_devconf; >> - dflt = &ipv4_devconf_dflt; >> + all = kmemdup(&ipv4_devconf, sizeof(ipv4_devconf), GFP_KERNEL); >> + if (all == NULL) >> + goto err_alloc_all; >> - if (!net_eq(net, &init_net)) { >> - all = kmemdup(all, sizeof(ipv4_devconf), GFP_KERNEL); >> - if (!all) >> - goto err_alloc_all; >> - >> - dflt = kmemdup(dflt, sizeof(ipv4_devconf_dflt), GFP_KERNEL); >> - if (!dflt) >> - goto err_alloc_dflt; >> + dflt = kmemdup(&ipv4_devconf_dflt, sizeof(ipv4_devconf_dflt), >> GFP_KERNEL); >> + if (dflt == NULL) >> + goto err_alloc_dflt; >> #ifdef CONFIG_SYSCTL >> - tbl = kmemdup(tbl, sizeof(ctl_forward_entry), GFP_KERNEL); >> - if (!tbl) >> - goto err_alloc_ctl; >> + tbl = kmemdup(tbl, sizeof(ctl_forward_entry), GFP_KERNEL); >> + if (tbl == NULL) >> + goto err_alloc_ctl; >> - tbl[0].data = &all->data[IPV4_DEVCONF_FORWARDING - 1]; >> - tbl[0].extra1 = all; >> - tbl[0].extra2 = net; >> + tbl[0].data = &all->data[IPV4_DEVCONF_FORWARDING - 1]; >> + tbl[0].extra1 = all; >> + tbl[0].extra2 = net; >> #endif >> - } >> #ifdef CONFIG_SYSCTL >> err = __devinet_sysctl_register(net, "all", NETCONFA_IFINDEX_ALL, all); >> > > -- _______________________________________________ linux-yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/linux-yocto
