From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.0 required=3.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2AAB0C43381 for ; Sat, 23 Mar 2019 20:31:09 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id D433F2133F for ; Sat, 23 Mar 2019 20:31:08 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="twPodfn4" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727596AbfCWUbH (ORCPT ); Sat, 23 Mar 2019 16:31:07 -0400 Received: from mail-pf1-f193.google.com ([209.85.210.193]:45674 "EHLO mail-pf1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726230AbfCWUbH (ORCPT ); Sat, 23 Mar 2019 16:31:07 -0400 Received: by mail-pf1-f193.google.com with SMTP id e24so2888531pfi.12 for ; Sat, 23 Mar 2019 13:31:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:in-reply-to:references :organization:mime-version:content-transfer-encoding; bh=jfaEyIiGtOUY/vP2uKxo0MD/RpgqO5AvcEA4izsnJvc=; b=twPodfn4ToEOJ5I5AjmXbnZBFH1igItsq5GvTbUEa0thtpf9rJyhVIv+qeiHPxwLa7 CZ/NfH5KNOXjiUmtVEvBqPakibVevYsUmDztY8UU3uIHmYG+zJA+NEYJE+WLE70mfHs9 UVGLzLf5r1/GXGR3m+PSUTmD/yYRqekRGzetfiGVMKPUmftVH9YCvVd8A5zp/AeqhdyV D5tUcSVyYe7P51FZzEeFFOdZ8Tvjxj28cWL64fPjV4rNCqsuZStp0/fFyrN7CFyIeZ5a 1T42xukDOOlCqaVGm6cSnwoiWzMgHz1LQbU6KMCvhElmWJabhAF7kV3vyFX7LVJWJJMa rYgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:organization:mime-version:content-transfer-encoding; bh=jfaEyIiGtOUY/vP2uKxo0MD/RpgqO5AvcEA4izsnJvc=; b=eM3Z47mZkbJNuXat5BMcfdwubLH9MLiqGpjiJP2SDFOEaMlKHXSIGgmke3HkMiwlAH RfcReUtyrxhckxrP7rc7Twsz7vgd2n+kMaJVYkedjfF57mZkgbzHxlz5fSvpJmI5oURf CRAArWgEjklpXaXOS1ajOoZ+TOy8f4BSnUc2BxWz7Suft/5PYTjdD+hPMAyoviQ0nEHo vCFYyU+bvHs79vgwGP5SSTl0HfU1+k1eZHDhkGKqtmjZZsTzqhpP/mvBnQdlkz5ogR7B UoNQQmA9Vxn6ZsOPSY7AH7EAndMHKDBNEdJC/MzTdOjsUcH87jFHc8W8dBzc5BkxrSQi 0C2A== X-Gm-Message-State: APjAAAXImURqtELb50mGzzcdq4i646iEnTW4tMCh+0o49i0bxBdCPGBf 2CTFG0bcmIlXi47eiTZXZmSd+g== X-Google-Smtp-Source: APXvYqzS8jJ3huMDh4fRlfJQW47e9h8qL0NYhiRkNyIQP4SDEfY31gCT4mUGxIq/TIhgSi0e62G8OA== X-Received: by 2002:a63:694a:: with SMTP id e71mr15875269pgc.129.1553373066574; Sat, 23 Mar 2019 13:31:06 -0700 (PDT) Received: from cakuba.netronome.com ([2601:646:8e00:1b7a::2]) by smtp.gmail.com with ESMTPSA id k9sm23652596pfc.57.2019.03.23.13.31.05 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 23 Mar 2019 13:31:06 -0700 (PDT) Date: Sat, 23 Mar 2019 13:31:02 -0700 From: Jakub Kicinski To: Jiri Pirko Cc: netdev@vger.kernel.org, davem@davemloft.net, mlxsw@mellanox.com, idosch@mellanox.com, f.fainelli@gmail.com, andrew@lunn.ch, vivien.didelot@gmail.com Subject: Re: [patch net-next v2 11/15] nfp: move devlink port type set after netdev registration Message-ID: <20190323133102.60fceb6e@cakuba.netronome.com> In-Reply-To: <20190322165636.1725-12-jiri@resnulli.us> References: <20190322165636.1725-1-jiri@resnulli.us> <20190322165636.1725-12-jiri@resnulli.us> Organization: Netronome Systems, Ltd. MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Fri, 22 Mar 2019 17:56:32 +0100, Jiri Pirko wrote: > From: Jiri Pirko > > Similar to other driver, move the port type set after netdev registration > is done. Along with that, clear the type before unregistration. > > Signed-off-by: Jiri Pirko > diff --git a/drivers/net/ethernet/netronome/nfp/nfp_devlink.c b/drivers/net/ethernet/netronome/nfp/nfp_devlink.c > index e9eca99cf493..cb59a18ec6a6 100644 > --- a/drivers/net/ethernet/netronome/nfp/nfp_devlink.c > +++ b/drivers/net/ethernet/netronome/nfp/nfp_devlink.c > @@ -362,7 +362,6 @@ int nfp_devlink_port_register(struct nfp_app *app, struct nfp_port *port) > if (ret) > return ret; > > - devlink_port_type_eth_set(&port->dl_port, port->netdev); > devlink_port_attrs_set(&port->dl_port, DEVLINK_PORT_FLAVOUR_PHYSICAL, > eth_port.label_port, eth_port.is_split, > eth_port.label_subport); > @@ -377,6 +376,16 @@ void nfp_devlink_port_unregister(struct nfp_port *port) > devlink_port_unregister(&port->dl_port); > } > > +void nfp_devlink_port_type_eth_set(struct nfp_port *port) > +{ > + devlink_port_type_eth_set(&port->dl_port, port->netdev); > +} > + > +void nfp_devlink_port_type_clear(struct nfp_port *port) > +{ > + devlink_port_type_clear(&port->dl_port); > +} > + > struct devlink *nfp_devlink_get_devlink(struct net_device *netdev) > { > struct nfp_app *app; > diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_main.c b/drivers/net/ethernet/netronome/nfp/nfp_net_main.c > index 08f5fdbd8e41..e29744f2af02 100644 > --- a/drivers/net/ethernet/netronome/nfp/nfp_net_main.c > +++ b/drivers/net/ethernet/netronome/nfp/nfp_net_main.c > @@ -169,6 +169,8 @@ nfp_net_pf_init_vnic(struct nfp_pf *pf, struct nfp_net *nn, unsigned int id) > if (err) > goto err_devlink_port_clean; > } > + if (nn->port) > + nfp_devlink_port_type_eth_set(nn->port); > > return 0; > > @@ -218,6 +220,8 @@ nfp_net_pf_alloc_vnics(struct nfp_pf *pf, void __iomem *ctrl_bar, > > static void nfp_net_pf_clean_vnic(struct nfp_pf *pf, struct nfp_net *nn) > { > + if (nn->port) > + nfp_devlink_port_type_clear(nn->port); > if (nfp_net_is_data_vnic(nn)) > nfp_app_vnic_clean(pf->app, nn); Sorry for not noticing right away, I thought you just split my patch in two, but it seems you reordered the app_vnic_init/clean calls with the type setting. I'd rather those calls happened on fully initialized netdev (and port), could you perhaps just take this patch into the series: https://git.kernel.org/pub/scm/linux/kernel/git/kuba/linux.git/commit/?h=devlink-pci-ports&id=1debfdef5aef369412e72f370d11120d309a6a74 > if (nn->port)