From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33576) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uud2Q-0004Tj-30 for qemu-devel@nongnu.org; Thu, 04 Jul 2013 02:29:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Uud2O-0000V0-SN for qemu-devel@nongnu.org; Thu, 04 Jul 2013 02:29:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:58392) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uud2O-0000QS-KS for qemu-devel@nongnu.org; Thu, 04 Jul 2013 02:29:04 -0400 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r646T18S028102 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 4 Jul 2013 02:29:02 -0400 From: Markus Armbruster References: <1369300080-31377-1-git-send-email-akong@redhat.com> <1369300080-31377-3-git-send-email-akong@redhat.com> <874ncljiyb.fsf@blackfin.pond.sub.org> <20130702063301.GA5880@amosk.info> <87ppv1tjpn.fsf@blackfin.pond.sub.org> <20130702104010.GA19476@amosk.info> <871u7hf5xr.fsf@blackfin.pond.sub.org> <20130704033113.GA6361@amosk.info> Date: Thu, 04 Jul 2013 08:28:59 +0200 In-Reply-To: <20130704033113.GA6361@amosk.info> (Amos Kong's message of "Thu, 4 Jul 2013 11:31:13 +0800") Message-ID: <87txkadej8.fsf@blackfin.pond.sub.org> MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Qemu-devel] [PATCH v3 2/2] net: introduce command to query rx-filter information List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Amos Kong Cc: lcapitulino@redhat.com, qemu-devel@nongnu.org, stefanha@redhat.com, mst@redhat.com Amos Kong writes: > On Tue, Jul 02, 2013 at 03:27:12PM +0200, Markus Armbruster wrote: >> Amos Kong writes: >> >> > On Tue, Jul 02, 2013 at 11:05:56AM +0200, Markus Armbruster wrote: >> >> Amos Kong writes: >> [...] >> >> >> This interface is abstract in the sense that it applies to all NICs. At >> >> >> this time, it's implemented only virtio-net implements it. I'm >> >> >> habitually wary of abstractions based on just one concrete instance, >> >> >> which makes me ask: >> >> >> >> >> >> 1. Ignorant question first: could the feature make sense for other NICs, >> >> >> too, or is it specific to virtio-net? >> >> > >> >> > We will not. >> >> > >> >> > It's ugly to check if nic is virtio-net nic in net/net.c, so I >> >> > register the query function to NetClientInfo. Traversal the net >> >> > client list in net/net.c, and execute query of each virtio-net >> >> > instance in virtio-net.c >> >> >> >> Implementing the feature as an optional callback is fine. >> >> >> >> Let me rephrase my question: could this feature be implemented for other >> >> NICs? I'm *not* asking you to do that, just whether it would be >> >> possible. >> >> >> >> I'm asking because my review of the QAPI schema depends on the answer. >> >> >> >> >> 2. If the former, are you reasonably sure this object will do for other >> >> >> NICs? >> >> > >> >> > No. >> >> >> >> I'm not sure I understand you. Do you mean to say that the feature >> >> could be implemented for other NICs, but RxFilterInfo would probably not >> >> fit for them? >> > >> > We will not implement the feature to other NICs, no request. >> > >> > We notify the management of virtio-net rx-filter change, because >> > we want to sync the the rx-filter change to macvtap device. >> >> I understand there are no plans to implement this feature for other >> NICs. But I'm not asking whether we *want* to implement it for other >> NICs, I'm asking whether we *could*. > > In theory, we can. > >> Or rephrased yet another way: what exactly makes this feature applicable >> to virtio-net only? > > Macvtap can only be used by virtio-net, not other emulated nic. > It's meaningless for management to know the rx-filter change of > non-virtio-net NICs. I'm having trouble squaring "in theory, we can" with "meaningless". So I'm rephrasing my question yet again. Do NICs other than virtio-net have rx-filters? If yes, what have these NIC rx-filters in common, and how do they differ? Why would anybody want to query rx-filters? Use cases, please. Why is querying rx-filters "meaningless" for anything but virtio-net? The dictionary explains "meaningless" as "having no meaning; of no value". Thus, for the query to be meaningless, the answer must carry no information, or at least none of value. Is querying rx-filters really meaningless? Or is it just something we don't need right now, and can't see being needed in the future? >> If the answer is "nothing", then we *could* implement it for other NICs. >> Else, implementing it for other NICs would be impossible. >> >> Once again, I'm not asking because I want it implemented for other >> NICs. I'm asking because the answer affects my review of the schema.