From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jiri Pirko Subject: Re: [RFC PATCH net-next v2 09/17] ethtool: implement GET_DRVINFO message Date: Mon, 30 Jul 2018 15:21:07 +0200 Message-ID: <20180730132107.GB10626@nanopsycho> References: <4dcd60f25efe368ada4e0c035dc1d7612ab59132.1532953989.git.mkubecek@suse.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, David Miller , Florian Fainelli , Roopa Prabhu , Jakub Kicinski , "John W. Linville" To: Michal Kubecek Return-path: Received: from mail-wm0-f46.google.com ([74.125.82.46]:54935 "EHLO mail-wm0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726649AbeG3O6t (ORCPT ); Mon, 30 Jul 2018 10:58:49 -0400 Received: by mail-wm0-f46.google.com with SMTP id c14-v6so13123084wmb.4 for ; Mon, 30 Jul 2018 06:23:49 -0700 (PDT) Content-Disposition: inline In-Reply-To: <4dcd60f25efe368ada4e0c035dc1d7612ab59132.1532953989.git.mkubecek@suse.cz> Sender: netdev-owner@vger.kernel.org List-ID: Mon, Jul 30, 2018 at 02:53:27PM CEST, mkubecek@suse.cz wrote: [...] >+/* GET_DRVINFO / SET_DRVINFO */ >+ >+enum { >+ ETHA_DRVINFO_UNSPEC, >+ ETHA_DRVINFO_DEV, /* nest - ETHA_DEV_* */ >+ ETHA_DRVINFO_DRIVER, /* string */ >+ ETHA_DRVINFO_VERSION, /* string */ >+ ETHA_DRVINFO_FWVERSION, /* string */ >+ ETHA_DRVINFO_BUSINFO, /* string */ >+ ETHA_DRVINFO_EROM_VER, /* string */ >+ ETHA_DRVINFO_N_PRIV_FLAGS, /* u32 */ >+ ETHA_DRVINFO_N_STATS, /* u32 */ >+ ETHA_DRVINFO_TESTINFO_LEN, /* u32 */ >+ ETHA_DRVINFO_EEDUMP_LEN, /* u32 */ >+ ETHA_DRVINFO_REGDUMP_LEN, /* u32 */ This is a nice example of why 1:1 ioctl->netlink conversion would be a big mistake. I understand that for ioclt, getting lengths of various things is important. Userspace can prepare buffer for next ioctl which would actually do dump transfer. However in netlink, this is totally pointless as the dump goes into userspace in multiple netlink messages. We need to figure out the netlink uapi from scratch. [...]