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=-0.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,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 F37AAC43381 for ; Thu, 21 Feb 2019 02:59:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B88962146E for ; Thu, 21 Feb 2019 02:59:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="epmZKHJm" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726157AbfBUC7L (ORCPT ); Wed, 20 Feb 2019 21:59:11 -0500 Received: from mail-pf1-f193.google.com ([209.85.210.193]:43452 "EHLO mail-pf1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725989AbfBUC7K (ORCPT ); Wed, 20 Feb 2019 21:59:10 -0500 Received: by mail-pf1-f193.google.com with SMTP id q17so12983294pfh.10 for ; Wed, 20 Feb 2019 18:59:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:openpgp:autocrypt:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=3LgDSoLjyb8t83e4D4+3GLTPCAOIKd7vn/ztBYqNn9g=; b=epmZKHJmvwfghe4zI+UsM36hCsZ9lJ3F8iDLbnvcSAyMn+/xThc/RKPP65jC3Wgpo3 frFn+4IbC2qq45AOZPZiKcV5UzP6oY9x3GINlx1fDLV7R/Z8ZlkzNbc0H7szmrGxgKkC 58k7Yq9/BQCIGmrGWQYRXgRUo8aEkJltjEsR1oj5YIfziB7LBrdI+j4w/QE4HWgW0hLQ bqR54M+l14oPwEZ6+sbF2KYkeHDHvuCgcyHY5kHcCjl886aIK26c8LPd9GUEaycwGErY j3jf/FhuSMOlW70ioeZPQUVP6yDf+TOZ6AwYySW0p9DX4bhmsoZN6M++15/kpgMs0PVM GIlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=3LgDSoLjyb8t83e4D4+3GLTPCAOIKd7vn/ztBYqNn9g=; b=dzgiScl+PeLeo9YsrKhyb6sx59C7JADadTTuOOgbFV+KaADrIAT6yHGiisUMN3zkCf Q1g3wyftP/yfOakbZxLXhu0Oz5SrqJWDEh/JnT09TqoGO0D/ymGbY62RlamxHgH7HoLq BRr/hvq+yao3FlSfqKSji4RRRP3ax1caXMFO23qoUmk/L3RgLQBWMp+i2hRD14fDNLVz A2ubztny4hqqVGEf805bcrTX8d5i9gpGjIK4iyh0py7Oa4+lt9E+BLArr09lcLAowAZ4 FCYtX7aNSOSaAemhf8TI+RSq7y8CRvlkFjIBcoyv0cdvrVzIywR8pbqFECAViaucvt+5 urrw== X-Gm-Message-State: AHQUAuacvS0vBzvEef4obyMaBOl4owAu0SUGZbGkjVoItC8SCXhbMybW E20H6sol1+exm+Q/jQCWaSPLEuc4 X-Google-Smtp-Source: AHgI3IZa2HeS8ndR3Uy8tL1kQaD72DJwq+TcBVGzAcOvLNnRcyTiVqxmgFH0JxGVPbB5/xaFp/MWbQ== X-Received: by 2002:a63:1a25:: with SMTP id a37mr18350745pga.428.1550717949602; Wed, 20 Feb 2019 18:59:09 -0800 (PST) Received: from [192.168.1.3] (ip68-228-73-187.oc.oc.cox.net. [68.228.73.187]) by smtp.gmail.com with ESMTPSA id l72sm30965866pge.39.2019.02.20.18.59.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 20 Feb 2019 18:59:08 -0800 (PST) Subject: Re: [PATCH net-next 3/3] nfp: devlink: allow flashing the device via devlink To: Jakub Kicinski , Jiri Pirko Cc: davem@davemloft.net, netdev@vger.kernel.org, oss-drivers@netronome.com, mkubecek@suse.cz, andrew@lunn.ch References: <20190214214046.19182-1-jakub.kicinski@netronome.com> <20190214214046.19182-4-jakub.kicinski@netronome.com> <20190215101514.GD2343@nanopsycho> <20190215074429.6890e47e@cakuba.netronome.com> <20190219091942.GA3080@nanopsycho> <20190219164926.23981359@cakuba.netronome.com> From: Florian Fainelli Openpgp: preference=signencrypt Autocrypt: addr=f.fainelli@gmail.com; keydata= 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 w0j9Sw== Message-ID: Date: Wed, 20 Feb 2019 18:59:05 -0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1 MIME-Version: 1.0 In-Reply-To: <20190219164926.23981359@cakuba.netronome.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On 2/19/2019 4:49 PM, Jakub Kicinski wrote: > On Tue, 19 Feb 2019 10:19:42 +0100, Jiri Pirko wrote: >> Fri, Feb 15, 2019 at 04:44:29PM CET, jakub.kicinski@netronome.com wrote: >>> On Fri, 15 Feb 2019 11:15:14 +0100, Jiri Pirko wrote: >>>>> static const struct ethtool_ops nfp_net_ethtool_ops = { >>>> >>>> Why don't you use the compat fallback? I think you should. >>> >>> You and Michal both asked the same so let me answer the first to ask :) >>> - if devlink is built as a module the fallback is not reachable. >> >> So the fallback is not really good as you can't use it for real drivers >> anyway. Odd. Maybe we should compile devlink in without possibility to >> have it as module. > > Ack, I'll make devlink a bool. Meh how about those poor and memory constrained embedded systems? Ideally ethtool should/could have been modular as well, but that ship has now sailed. > > I need a little extra time, I forgot that nfp's flower offload still > doesn't register all ports (using your port flavour infrastructure). > We have had similar issues with PHYLIB before where we wanted net/core/ethtool.c to be able to call into generic PHYLIB functions to obtain PHY statistics, an inline helper that de-references the PHY device's driver function pointers solved that (look for phy_ethtool_get_{strings,sset,stats}) while letting PHYLIB remain modular. devlink_compat_flash_update() is a bit big to be inlined, but why not? If we make sure we always provide a devlink_mutex and devlink_list that symbols such that this builds wheter CONFIG_DEVLINK=y|m then everything else can be determined at runtime whether devlink.ko is loaded or not. Does that make sense? -- Florian