From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 1CF4AA0032;
	Mon, 11 Jul 2022 14:36:44 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id AE86E410DD;
	Mon, 11 Jul 2022 14:36:43 +0200 (CEST)
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by mails.dpdk.org (Postfix) with ESMTP id AB58640695;
 Mon, 11 Jul 2022 14:36:41 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 5E9B55C0107;
 Mon, 11 Jul 2022 08:36:41 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Mon, 11 Jul 2022 08:36:41 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h=
 cc:cc:content-transfer-encoding:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:sender:subject:subject:to:to; s=fm3; t=1657543001; x=
 1657629401; bh=exh+fL/39WzhRI8DK5KsEGRzwbodKQMRHreqz4hBnPg=; b=m
 i3/+bihkd5NGUMwzhI1hndM+eYxdL2Ji1k/HpEGp7AvzgANF768xlQkEcwIuCLV6
 DTFYnmx2jy+WXKU04IIOLEZMuKfS/UyG3KqeBJvnQ3YsV/kjiDI3TC7fFhUTSoxo
 bIffyd80K/EG8IEnJ9mslzEkNYWoJWG7jne007c3Y+AMRte+P7UNbM5qi0FmJgie
 HGA9tcOT8qOy5fNtSFaqorjgK00QmEe+n4HjcBsK5InroVcjFAp/eAJA0YkFCCq1
 65ys4dPccgNpdBxHENlo9Q54Wq/1+tUPAJRJBgYA0yLMNuvKAS26HUnj+YqBCjOe
 sB1aRUQDt/43h2dTZddHg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:feedback-id:feedback-id:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1657543001; x=
 1657629401; bh=exh+fL/39WzhRI8DK5KsEGRzwbodKQMRHreqz4hBnPg=; b=l
 4H/WjK1qTjUsGcz/+mBtdo8MeRri8rhjtOZyRhY3V9U6mcZ7spTVceg2FHw9+ll5
 bWSR3ino8fEgLyn2uDBxZqgQYEqR6sVmTkLlu4ZJGIjbKNJv1xIBBuA2KfMtpoQ+
 YBEdaIxDN05mLtnibufQFsr5JBcsS6BiPptcWW2tBO+nO518V/9g1S4yoAaPpQ6K
 8yBNpvdz0dfgeqdFThbW1InY0XnPB2if6fY1unT4oONMlzpmCkj7MgIkJddzayLS
 iKKhpSJ9ymRuly7sDZp02GzWognFBz917C89jevlk6JfqwmQl02ZzfJWNJFlUG0r
 FzgAjvqDA/EN9dqhGZNbA==
X-ME-Sender: <xms:WRnMYu_HV96ypziY07HiqfyhOFT9XSW6mklILESKil0Re1u2PbfBYw>
 <xme:WRnMYuv2SmPCmfj0H-UyZ0ICJlBm9R2pGBrSO0XCJpEGWLVVrlQ9p-9J_OQoK9LDI
 escks2OzHpC_fvgCg>
X-ME-Received: <xmr:WRnMYkCcxgJZewyl6_si0bQOZih4UtmWoqsyHRBjAcsn81bxPiMg-6rG0Mt6TvjTubbAhpr3K4wuP9G6ixtyllg5Vg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudejfedgheduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhephffvvefufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhm
 rghsucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenuc
 ggtffrrghtthgvrhhnpeejjefffffgffekfefflefgkeelteejffelledugefhheelffet
 heevudffudfgvdenucffohhmrghinhepughpughkrdhorhhgnecuvehluhhsthgvrhfuih
 iivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhho
 nhdrnhgvth
X-ME-Proxy: <xmx:WRnMYmdz1W5sGzjMPl48PRDJ70v4gD3HdVksdQkCmLvHORKxAJQmvA>
 <xmx:WRnMYjNxyOdJ5vRm1WSNU2RLvWqG_IHcgJhudvGzCn-TGjBbAbJ6UA>
 <xmx:WRnMYgmh9tujZvJAucO53sD5XgqHGTZF3OOlIPba6aayKEN95AHX1A>
 <xmx:WRnMYvAGkwdO8Qd5PfeEItKCYQ8vhp__XUHzg7LFzUG3VWsRoGDbeg>
Feedback-ID: i47234305:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 11 Jul 2022 08:36:40 -0400 (EDT)
From: Thomas Monjalon <thomas@monjalon.net>
To: David Marchand <david.marchand@redhat.com>, "Harris,
 James R" <james.r.harris@intel.com>, "Walker,
 Benjamin" <benjamin.walker@intel.com>, "Xia, Chenbo" <chenbo.xia@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>, "techboard@dpdk.org" <techboard@dpdk.org>,
 Ray Kinsella <mdr@ashroe.eu>, "Liu, Changpeng" <changpeng.liu@intel.com>
Subject: Re: [PATCH] doc: announce marking device and driver objects as
 internal
Date: Mon, 11 Jul 2022 14:36:38 +0200
Message-ID: <7492000.Bh6DGQjDyp@thomas>
In-Reply-To: <SN6PR11MB3504F8C17FF3EBAE8C45BC449C879@SN6PR11MB3504.namprd11.prod.outlook.com>
References: <20220710061736.973563-1-david.marchand@redhat.com>
 <SN6PR11MB3504F8C17FF3EBAE8C45BC449C879@SN6PR11MB3504.namprd11.prod.outlook.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

11/07/2022 04:16, Xia, Chenbo:
> From: David Marchand <david.marchand@redhat.com>
> > rte_driver and rte_device are unnecessarily exposed in the public API/ABI.
> > Announce that they will be made opaque in the public API and mark
> > associated API as internal.
> > This impacts all bus, as their driver registration mechanism will be
> > made internal.
> > 
> > Note: the PCI bus had a similar deprecation notice that we can remove as
> > the new one is more generic.
[...]
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > +* drivers: As a followup on the work on the ``rte_bus`` object, the
> > +  ``rte_driver`` and ``rte_device`` objects (and as a domino effect,
> > their
> > +  bus-specific counterparts) will be made opaque in DPDK 22.11.
> > +  Registering a driver on a bus will be marked as an internal API:
> > +  external users may still register their drivers using the bus specific
> > +  driver header (see ``enable_driver_sdk`` meson option).
> > +
> 
> Cc SPDK folks
> 
> Thanks for your work! My only concern is using enable_driver_sdk may not be
> a good way for SPDK based on the discussion.
> http://patchwork.dpdk.org/project/dpdk/cover/20210918022443.12719-1-chenbo.xia@intel.com/

Quick summary:
- Symbols exported by DPDK by default are supposed to be for applications.
- Option enable_driver_sdk allow installing headers to build drivers.
- Driver interface is not part of the stable ABI, i.e. no compat guarantee.
- SPDK is building drivers on top of DPDK bus drivers (PCI for now).
- SPDK was asked to check whether anything else is required.

There is no decision about ABI guarantee because we lack feedbacks.
After this cleanup, the option enable_driver_sdk would be required
when working with buses, like SPDK.
Is there a real need to build against distro-provided package?
Is there a way to provide bus drivers SDK without messing with app SDK?


> But overall this idea makes sense, so:
> 
> Acked-by: Chenbo Xia <chenbo.xia@intel.com>

I like the cleanup as well. It will allow more enhancements in future.
I hope and believe we can accomodate SDK needs when it will be clear.

Acked-by: Thomas Monjalon <thomas@monjalon.net>