[RFC v3 0/3] Import Kernel uAPI header files
Maxime Coquelin
maxime.coquelin at redhat.com
Thu Sep 12 14:08:08 CEST 2024
Hi Ferruh,
On 9/12/24 10:30, Ferruh Yigit wrote:
> On 9/11/2024 8:32 PM, Maxime Coquelin wrote:
>> This series enables importing Linux Kernel uAPI headers
>> into the DPDK repository. It aims at solving alignment
>> issues between the build system and the system applications
>> linked ot DPDK libraries are run on.
>>
>
> Hi Maxime,
>
> Is the imported Linux Kernel uAPI headers are always backward compatible?
Yes, at least that's what is advertised! :)
"
The binary interface provided by the kernel to user space cannot be
broken except under the most severe circumstances.
"
> If I build and run on identical platform, lets say has kernel v5.4,
> and DPDK has the kernel uAPI header from v6.10, is this has any chance
> to create backward compatibility issues?
It should not if backward compatibility is preserved as advertised.
> Or can it enable some features which are indeed not exist/supported in
> the platform that has old version of kernel?
It can enable new feature, like for example a new ioctl command.
In this case, it should return something like ENOIOCTLCMD if the Kernel
does not support it.
>
>> It can also help simplify spaghetti code done to support
>> different versions of the Linux Kernel headers used by
>> the build system.
>>
>> Guidelines and import script are also part of first patch.
>> A uAPI checker script is added in this 3rd RFC, goals is to
>> use it in CI for any patch touching linux-headers/uapi.
>>
>> Follow-up patches are an example of imported uAPI inclusion
>> of VDUSE header into the Vhost library.
>>
>> Morten, I did not (again) apply your Ack on patch 1, as it
>> has some significant changes and additions.
>>
>> Changes in RFC v3:
>> ==================
>> - Support nested headers include
>> - Interactive mode to select which headers to include
>> - Store version in a file instead of git commit messages
>> - All imported headers aligned on same version
>> - Improve loops in scripts (David)
>> - Update documentation
>>
>>
>> Changes in RFC v2:
>> ==================
>> - Fix typos in documentation and commit messags (David, Morten)
>> - Add uAPI checker script
>> - Add uAPI to global_inc
>> - Fix build issues on FreeBSD and documentation (CI, David)
>> - Simplify import script (David)
>>
>> Maxime Coquelin (3):
>> uapi: introduce kernel uAPI headers import
>> uapi: import VDUSE header
>> vduse: use imported VDUSE uAPI header
>>
>> devtools/check-linux-uapi.sh | 85 ++++++
>> devtools/import-linux-uapi.sh | 119 +++++++++
>> doc/guides/contributing/index.rst | 1 +
>> doc/guides/contributing/linux_uapi.rst | 71 +++++
>> lib/vhost/meson.build | 5 +-
>> lib/vhost/vduse.c | 2 +-
>> lib/vhost/vduse.h | 22 --
>> linux-headers/uapi/.gitignore | 4 +
>> linux-headers/uapi/linux/vduse.h | 353 +++++++++++++++++++++++++
>> linux-headers/uapi/version | 1 +
>> meson.build | 8 +-
>> 11 files changed, 642 insertions(+), 29 deletions(-)
>> create mode 100755 devtools/check-linux-uapi.sh
>> create mode 100755 devtools/import-linux-uapi.sh
>> create mode 100644 doc/guides/contributing/linux_uapi.rst
>> create mode 100644 linux-headers/uapi/.gitignore
>> create mode 100644 linux-headers/uapi/linux/vduse.h
>> create mode 100644 linux-headers/uapi/version
>>
>
More information about the dev
mailing list