From: kernel test robot <lkp@intel.com>
To: Adrian Moreno <amorenoz@redhat.com>, netdev@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev,
Adrian Moreno <amorenoz@redhat.com>,
Aaron Conole <aconole@redhat.com>,
Eelco Chaudron <echaudro@redhat.com>,
Ilya Maximets <i.maximets@ovn.org>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Simon Horman <horms@kernel.org>,
dev@openvswitch.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next v1] net: openvswitch: decouple flow_table from ovs_mutex
Date: Tue, 17 Mar 2026 21:30:00 +0800 [thread overview]
Message-ID: <202603172153.FuWl19zD-lkp@intel.com> (raw)
In-Reply-To: <20260313173114.1220551-1-amorenoz@redhat.com>
Hi Adrian,
kernel test robot noticed the following build warnings:
[auto build test WARNING on net-next/main]
url: https://github.com/intel-lab-lkp/linux/commits/Adrian-Moreno/net-openvswitch-decouple-flow_table-from-ovs_mutex/20260314-152511
base: net-next/main
patch link: https://lore.kernel.org/r/20260313173114.1220551-1-amorenoz%40redhat.com
patch subject: [PATCH net-next v1] net: openvswitch: decouple flow_table from ovs_mutex
config: arm-randconfig-r132-20260317 (https://download.01.org/0day-ci/archive/20260317/202603172153.FuWl19zD-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project f46a5153850c1303d687233d4adf699b01041da8)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260317/202603172153.FuWl19zD-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603172153.FuWl19zD-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> net/openvswitch/datapath.c:2016:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct flow_table *table @@ got struct flow_table [noderef] __rcu *table @@
net/openvswitch/datapath.c:2016:28: sparse: expected struct flow_table *table
net/openvswitch/datapath.c:2016:28: sparse: got struct flow_table [noderef] __rcu *table
vim +2016 net/openvswitch/datapath.c
1913
1914 static int ovs_dp_cmd_new(struct sk_buff *skb, struct genl_info *info)
1915 {
1916 struct nlattr **a = info->attrs;
1917 struct flow_table *table;
1918 struct vport_parms parms;
1919 struct sk_buff *reply;
1920 struct datapath *dp;
1921 struct vport *vport;
1922 struct ovs_net *ovs_net;
1923 int err;
1924
1925 err = -EINVAL;
1926 if (!a[OVS_DP_ATTR_NAME] || !a[OVS_DP_ATTR_UPCALL_PID])
1927 goto err;
1928
1929 reply = ovs_dp_cmd_alloc_info();
1930 if (!reply)
1931 return -ENOMEM;
1932
1933 err = -ENOMEM;
1934 dp = kzalloc_obj(*dp);
1935 if (dp == NULL)
1936 goto err_destroy_reply;
1937
1938 ovs_dp_set_net(dp, sock_net(skb->sk));
1939
1940 /* Allocate table. */
1941 table = ovs_flow_tbl_alloc();
1942 if (IS_ERR(table)) {
1943 err = PTR_ERR(table);
1944 goto err_destroy_dp;
1945 }
1946 rcu_assign_pointer(dp->table, table);
1947
1948 err = ovs_dp_stats_init(dp);
1949 if (err)
1950 goto err_destroy_table;
1951
1952 err = ovs_dp_vport_init(dp);
1953 if (err)
1954 goto err_destroy_stats;
1955
1956 err = ovs_meters_init(dp);
1957 if (err)
1958 goto err_destroy_ports;
1959
1960 /* Set up our datapath device. */
1961 parms.name = nla_data(a[OVS_DP_ATTR_NAME]);
1962 parms.type = OVS_VPORT_TYPE_INTERNAL;
1963 parms.options = NULL;
1964 parms.dp = dp;
1965 parms.port_no = OVSP_LOCAL;
1966 parms.upcall_portids = a[OVS_DP_ATTR_UPCALL_PID];
1967 parms.desired_ifindex = nla_get_s32_default(a[OVS_DP_ATTR_IFINDEX], 0);
1968
1969 /* So far only local changes have been made, now need the lock. */
1970 ovs_lock();
1971
1972 err = ovs_dp_change(dp, a);
1973 if (err)
1974 goto err_unlock_and_destroy_meters;
1975
1976 vport = new_vport(&parms);
1977 if (IS_ERR(vport)) {
1978 err = PTR_ERR(vport);
1979 if (err == -EBUSY)
1980 err = -EEXIST;
1981
1982 if (err == -EEXIST) {
1983 /* An outdated user space instance that does not understand
1984 * the concept of user_features has attempted to create a new
1985 * datapath and is likely to reuse it. Drop all user features.
1986 */
1987 if (info->genlhdr->version < OVS_DP_VER_FEATURES)
1988 ovs_dp_reset_user_features(skb, info);
1989 }
1990
1991 goto err_destroy_portids;
1992 }
1993
1994 err = ovs_dp_cmd_fill_info(dp, reply, info->snd_portid,
1995 info->snd_seq, 0, OVS_DP_CMD_NEW);
1996 BUG_ON(err < 0);
1997
1998 ovs_net = net_generic(ovs_dp_get_net(dp), ovs_net_id);
1999 list_add_tail_rcu(&dp->list_node, &ovs_net->dps);
2000
2001 ovs_unlock();
2002
2003 ovs_notify(&dp_datapath_genl_family, reply, info);
2004 return 0;
2005
2006 err_destroy_portids:
2007 kfree(rcu_dereference_raw(dp->upcall_portids));
2008 err_unlock_and_destroy_meters:
2009 ovs_unlock();
2010 ovs_meters_exit(dp);
2011 err_destroy_ports:
2012 kfree(dp->ports);
2013 err_destroy_stats:
2014 free_percpu(dp->stats_percpu);
2015 err_destroy_table:
> 2016 ovs_flow_tbl_put(dp->table);
2017 err_destroy_dp:
2018 kfree(dp);
2019 err_destroy_reply:
2020 kfree_skb(reply);
2021 err:
2022 return err;
2023 }
2024
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2026-03-17 13:31 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-13 17:31 [PATCH net-next v1] net: openvswitch: decouple flow_table from ovs_mutex Adrian Moreno
2026-03-13 19:35 ` Jakub Kicinski
2026-03-16 12:01 ` Adrián Moreno
2026-03-14 18:32 ` [syzbot ci] " syzbot ci
2026-03-17 13:30 ` kernel test robot [this message]
2026-03-18 14:09 ` [PATCH net-next v1] " kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202603172153.FuWl19zD-lkp@intel.com \
--to=lkp@intel.com \
--cc=aconole@redhat.com \
--cc=amorenoz@redhat.com \
--cc=dev@openvswitch.org \
--cc=echaudro@redhat.com \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=i.maximets@ovn.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.