From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] cryptodev: mark experimental state Date: Fri, 27 Nov 2015 14:30:02 +0100 Message-ID: <7197986.Uky0E0JuXH@xps13> References: <1448473135-19604-1-git-send-email-thomas.monjalon@6wind.com> <345C63BAECC1AD42A2EC8C63AFFC3ADC2809A787@irsmsx105.ger.corp.intel.com> <56585604.9030909@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org To: Panu Matilainen Return-path: Received: from mail-wm0-f46.google.com (mail-wm0-f46.google.com [74.125.82.46]) by dpdk.org (Postfix) with ESMTP id 05A162EDA for ; Fri, 27 Nov 2015 14:31:22 +0100 (CET) Received: by wmww144 with SMTP id w144so58496951wmw.0 for ; Fri, 27 Nov 2015 05:31:21 -0800 (PST) In-Reply-To: <56585604.9030909@redhat.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 2015-11-27 15:09, Panu Matilainen: > On 11/26/2015 03:51 PM, Doherty, Declan wrote: > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > >> 2015-11-26 10:00, Panu Matilainen: > >>> On 11/26/2015 09:39 AM, Panu Matilainen wrote: > >>>> I think an experimental library which declares itself exempt from the > >>>> ABI policy should not be compiled by default. That way anybody wanting > >>>> to try it out will be forced to notice the experimental status. > >>>> > >>>> More generally / longer term, perhaps there should be a > >>>> CONFIG_RTE_EXPERIMENTAL which wraps all experimental features and > >>>> defaults to off. > >>> > >>> On a related note, librte_mbuf_offload cannot be built if > >>> CONFIG_RTE_LIBRTE_CRYPTODEV is disabled. Which seems to suggest its (at > >>> least currently) so tightly couple to cryptodev that perhaps it too > >>> should be marked experimental and default to off. > >> > >> I think you are right. > >> Declan, what is your opinion? > > > > > > Hey Thomas, yes librte_mbuf_offload should also be set as experimental, it's > > probably one of the areas which will most likely change in the future. > > > > On the issue of turning off experimental libraries in the build by default, my > > preference would be not to turn them off unless the library has external > > dependencies, otherwise the possibility of patches being submitted which > > could break an experimental library will be much higher. In my opinion the > > fewer build configurations developers have to test against the better. > > What I'm more worried about is users and developers starting to rely on > it while still in experimental state, a single comment in the header is > really easy to miss. There are some comments in the config, the header file, doxygen and the release notes. When using a feature, you have to read the header or the doc. So would it be better advertised by adding a comment in the doxygen section of some of the mandatory functions or structures? > So I'd like to see *some* mechanism which forces users and developers to > acknowledge the fact that they're dealing with experimental work. > Defaulting to off is one possibility, another one would be wrapping > experimental APIs behind a define which you have to set to be able to > use the API, eg: > > #if defined(I_KNOW_THIS_IS_EXPERIMENTAL_AND_MAY_EAT_BABIES) > [...] > #endif Are you sure about the babies? ;)