Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp3200251ybl; Sun, 26 Jan 2020 22:24:36 -0800 (PST) X-Google-Smtp-Source: APXvYqyyDb/e2D2pkvwhloavZ63ELTk4noKzJhdiph124tuM4DFVeDX+PngaJh6FoyRc8Yx8Z5ug X-Received: by 2002:a05:6808:8d5:: with SMTP id k21mr6711267oij.121.1580106275984; Sun, 26 Jan 2020 22:24:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580106275; cv=none; d=google.com; s=arc-20160816; b=Obof7+r53vhMpozlXQD7l8blWP9dngRzulu7xXlnvN5BBvyj5IH1N9qkT4fNgxVdLf vQc7YFT975guLQ/xp3O0lJAF2wmHEyvaBscXdDDCabzYgDBRs3qTbkBPMdEuOVkpC2u2 rQ81mqkWp4OISCDbEDDtretXvB+qPhJb5SwCmD7VUe0ThiIYBHTasDZalO68C1fj0QrC v7xPnnDPWL6iOdHzWeve1oEyBKVhyuNHLMErKFHEP4ZbAJiGgwAEjxS5gnHPuAKSbJJN lFuJ8FVi8rSjKBFXX/DNR842gDfz/184HcK7mahROntynD1LrFRgYqhM5qkVhLUtFjJO UJvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=hFYEYBpPYUH1dB9SkOE0P9SUTdn4CeTIh4JBJ1WMr9Q=; b=Sp3jaPKuTeSkZdk/DEWUK2TkgLR0UYp9/vLpWMjgNquOOOlAfhL9eL6Q9rf0ZBgOMx VGctYhYyJrG21sPv9h/V3lBsITvpePFokNgsuEBskfQrtM2FVVh7RVJLjTrFskZe7hZs 7COISV9+/mcsDrRIP7OOl0fmMdX2myxwvmBAVpjSGB09OEsSNjuvhoJMehyFio+kOBcg Ji4ZVFLFQyp/t8605XakWnQnuOLejMTXK/utnMw/jFgAqiCamu7AqvjHgN+ue4atBkHV aK2WKbVE50XqoO5V2fD4UqPPpaAD0pfq0CLj9F1Y0H7JcQ8l37MXzQ67wUjScMx8y/go EUuw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v10si6225161ote.97.2020.01.26.22.24.21; Sun, 26 Jan 2020 22:24:35 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726922AbgA0GXW (ORCPT + 99 others); Mon, 27 Jan 2020 01:23:22 -0500 Received: from mx2.suse.de ([195.135.220.15]:47502 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725763AbgA0GXW (ORCPT ); Mon, 27 Jan 2020 01:23:22 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id CF065B071; Mon, 27 Jan 2020 06:23:19 +0000 (UTC) Received: by unicorn.suse.cz (Postfix, from userid 1000) id EBE4FE0B78; Mon, 27 Jan 2020 07:23:17 +0100 (CET) Date: Mon, 27 Jan 2020 07:23:17 +0100 From: Michal Kubecek To: netdev@vger.kernel.org Cc: Andrew Lunn , David Miller , Jakub Kicinski , Jiri Pirko , Florian Fainelli , John Linville , Johannes Berg , linux-kernel@vger.kernel.org Subject: Re: [PATCH net-next 3/7] ethtool: set message mask with DEBUG_SET request Message-ID: <20200127062317.GB570@unicorn.suse.cz> References: <844bf6bf518640fbfc67b5dd7976d9e8683c2d2d.1580075977.git.mkubecek@suse.cz> <20200127002206.GC12816@lunn.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200127002206.GC12816@lunn.ch> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jan 27, 2020 at 01:22:06AM +0100, Andrew Lunn wrote: > On Sun, Jan 26, 2020 at 11:11:07PM +0100, Michal Kubecek wrote: > > Implement DEBUG_SET netlink request to set debugging settings for a device. > > At the moment, only message mask corresponding to message level as set by > > ETHTOOL_SMSGLVL ioctl request can be set. (It is called message level in > > ioctl interface but almost all drivers interpret it as a bit mask.) > > > > Signed-off-by: Michal Kubecek > > +int ethnl_set_debug(struct sk_buff *skb, struct genl_info *info) > > +{ > > + struct nlattr *tb[ETHTOOL_A_DEBUG_MAX + 1]; > > + struct ethnl_req_info req_info = {}; > > + struct net_device *dev; > > + bool mod = false; > > + u32 msg_mask; > > + int ret; > > + > > + ret = nlmsg_parse(info->nlhdr, GENL_HDRLEN, tb, > > + ETHTOOL_A_DEBUG_MAX, debug_set_policy, > > + info->extack); > > + if (ret < 0) > > + return ret; > > + ret = ethnl_parse_header(&req_info, tb[ETHTOOL_A_DEBUG_HEADER], > > + genl_info_net(info), info->extack, true); > > + if (ret < 0) > > + return ret; > > + dev = req_info.dev; > > + if (!dev->ethtool_ops->get_msglevel || !dev->ethtool_ops->set_msglevel) > > + return -EOPNOTSUPP; > > This seems like a new requirement, that both get and set callbacks are > implemented. However, A quick look thought the code suggests all > drivers already do have both get and set. So i think this is safe. Technically it's a new requirement but as ethtool (userspace utility) always issues ETHTOOL_GMSGLVL before ETHTOOL_SMSGLVL and does so even for command lines like "ethtool -s eth0 msglvl 5" where it's not really needed, providing ->set_msglevel() without ->get_msglevel() wouldn't be of much use even now. Michal > > Reviewed-by: Andrew Lunn > > Andrew