Hi Nicolas, Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master] url: https://github.com/0day-ci/linux/commits/Nicolas-Dichtel/netns-remove-net-arg-from-rtnl_net_fill/20181126-035032 config: x86_64-allmodconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All warnings (new ones prefixed by >>): include/linux/slab.h:332:43: warning: dubious: x & !y include/linux/slab.h:332:43: warning: dubious: x & !y >> net/core/net_namespace.c:963:23: warning: context imbalance in >> 'rtnl_net_dumpid' - different lock contexts for basic block vim +/rtnl_net_dumpid +963 net/core/net_namespace.c 5589651eb Nicolas Dichtel 2018-11-22 929 a143c40c3 Nicolas Dichtel 2015-04-07 930 static int rtnl_net_dumpid(struct sk_buff *skb, struct netlink_callback *cb) a143c40c3 Nicolas Dichtel 2015-04-07 931 { a143c40c3 Nicolas Dichtel 2015-04-07 932 struct rtnl_net_dump_cb net_cb = { 5589651eb Nicolas Dichtel 2018-11-22 933 .tgt_net = sock_net(skb->sk), a143c40c3 Nicolas Dichtel 2015-04-07 934 .skb = skb, 70955fc94 Nicolas Dichtel 2018-11-22 935 .fillargs = { 70955fc94 Nicolas Dichtel 2018-11-22 936 .portid = NETLINK_CB(cb->skb).portid, 70955fc94 Nicolas Dichtel 2018-11-22 937 .seq = cb->nlh->nlmsg_seq, 70955fc94 Nicolas Dichtel 2018-11-22 938 .flags = NLM_F_MULTI, 70955fc94 Nicolas Dichtel 2018-11-22 939 .cmd = RTM_NEWNSID, 70955fc94 Nicolas Dichtel 2018-11-22 940 }, a143c40c3 Nicolas Dichtel 2015-04-07 941 .idx = 0, a143c40c3 Nicolas Dichtel 2015-04-07 942 .s_idx = cb->args[0], a143c40c3 Nicolas Dichtel 2015-04-07 943 }; 5589651eb Nicolas Dichtel 2018-11-22 944 int err = 0; a143c40c3 Nicolas Dichtel 2015-04-07 945 5589651eb Nicolas Dichtel 2018-11-22 946 if (cb->strict_check) { 5589651eb Nicolas Dichtel 2018-11-22 947 err = rtnl_valid_dump_net_req(cb->nlh, skb->sk, &net_cb, cb); 5589651eb Nicolas Dichtel 2018-11-22 948 if (err < 0) 5589651eb Nicolas Dichtel 2018-11-22 949 goto end; f80f14c36 David Ahern 2018-10-07 950 } f80f14c36 David Ahern 2018-10-07 951 5589651eb Nicolas Dichtel 2018-11-22 952 spin_lock_bh(&net_cb.tgt_net->nsid_lock); 8a46e1ccc Nicolas Dichtel 2018-11-22 953 if (net_cb.fillargs.add_ref && 8a46e1ccc Nicolas Dichtel 2018-11-22 954 !net_eq(net_cb.ref_net, net_cb.tgt_net) && 8a46e1ccc Nicolas Dichtel 2018-11-22 955 !spin_trylock_bh(&net_cb.ref_net->nsid_lock)) { 8a46e1ccc Nicolas Dichtel 2018-11-22 956 err = -EAGAIN; 8a46e1ccc Nicolas Dichtel 2018-11-22 957 goto end; 8a46e1ccc Nicolas Dichtel 2018-11-22 958 } 5589651eb Nicolas Dichtel 2018-11-22 959 idr_for_each(&net_cb.tgt_net->netns_ids, rtnl_net_dumpid_one, &net_cb); 8a46e1ccc Nicolas Dichtel 2018-11-22 960 if (net_cb.fillargs.add_ref && 8a46e1ccc Nicolas Dichtel 2018-11-22 961 !net_eq(net_cb.ref_net, net_cb.tgt_net)) 8a46e1ccc Nicolas Dichtel 2018-11-22 962 spin_unlock_bh(&net_cb.ref_net->nsid_lock); 5589651eb Nicolas Dichtel 2018-11-22 @963 spin_unlock_bh(&net_cb.tgt_net->nsid_lock); a143c40c3 Nicolas Dichtel 2015-04-07 964 a143c40c3 Nicolas Dichtel 2015-04-07 965 cb->args[0] = net_cb.idx; 5589651eb Nicolas Dichtel 2018-11-22 966 end: 8a46e1ccc Nicolas Dichtel 2018-11-22 967 if (net_cb.fillargs.add_ref) 5589651eb Nicolas Dichtel 2018-11-22 968 put_net(net_cb.tgt_net); 5589651eb Nicolas Dichtel 2018-11-22 969 return err < 0 ? err : skb->len; a143c40c3 Nicolas Dichtel 2015-04-07 970 } a143c40c3 Nicolas Dichtel 2015-04-07 971 :::::: The code at line 963 was first introduced by commit :::::: 5589651eb5e06b32107a1d8830af4be67aa58b85 netns: add support of NETNSA_TARGET_NSID :::::: TO: Nicolas Dichtel <nicolas.dich...@6wind.com> :::::: CC: 0day robot <l...@intel.com> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip