12/10/2021 02:35, Harris, James R:
> On 10/11/21, 5:55 AM, "Thomas Monjalon" <tho...@monjalon.net> wrote:
> 
>     11/10/2021 08:58, Xia, Chenbo:
>     > From: Liu, Changpeng <changpeng....@intel.com>
>     > > Another issue raised by Jim Harris is that for distro packaged DPDK, 
> since
>     > > this option isn't enabled by default, this will not allow SPDK
>     > > to use the distro packaged DPDK after this release.
>     > 
>     > I think for this problem, we have two options: enable driver sdk by 
> default or
>     > let OSV configure the option when building distros. I'm fine with 
> either option.
> 
>     The meson option enable_driver_sdk is described as "Install headers to 
> build drivers."
>     Standard development packages should provide headers to build an 
> application.
>     This option is for projects extending DPDK drivers out of the tree.
>     The preferred option is to develop drivers inside DPDK.
> 
>     If a project needs the special option enable_driver_sdk,
>     1/ it is not following the recommended approach,
>     2/ it has to manage the burden of driver compatibility with DPDK,
>     3/ it can compile DPDK itself.
> 
>     So I think we neither need to make it a default, nor force distros to 
> enable it.
>     Am I missing something?
> 
> Hi Thomas,
> 
> This preference to develop PCI drivers inside of DPDK seems to be a very 
> recent preference.  enable_driver_sdk was just added in DPDK 21.05, and for 
> building out-of-tree ethdev drivers. But DPDK has always enabled building 
> out-of-tree PCI drivers with its default build configuration - SPDK has 
> relied on these APIs since its inception.

Yes DPDK allows out-of-tree drivers, but it has never been recommended.
We have introduced enable_driver_sdk option recently to keep allowing 
out-of-tree drivers.

> We have always viewed DPDK as being a very useful toolkit for building 
> userspace drivers (especially storage drivers!) that aren't part of DPDK 
> itself.  We hope that continues to be the case.

Yes, there is no plan to stop that, but also no plan to make it easier.

> All of that being said, SPDK already compiles DPDK itself as the default 
> configuration. We maintain a DPDK fork for patches that have not yet hit DPDK 
> upstream. If this gets merged we can document that users building DPDK 
> themselves must set enable_driver_sdk. We can also document to our users that 
> SPDK may not build against distro DPDK packages, once distros pick up these 
> changes.

Yes I think that's the right thing to do.

Note: I don't remember the reason to keep your drivers out of DPDK?


Reply via email to