From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1019A45963; Wed, 11 Sep 2024 21:32:37 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 95B8B402BB; Wed, 11 Sep 2024 21:32:36 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id 89DD54027D for ; Wed, 11 Sep 2024 21:32:34 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1726083153; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tQdPgNZw3VVJ6CHhvcHsj1rcLP5nz3Lxpwk7O6oGd0c=; b=eTFrQb4chHDgWxQhTDXX6jHZ8qyQcfqqac6pS9nfwkHlcTCkZeSBz7LSweq3tQclb/kHxX puh85Q1/UAZBLPZXh3n60/F/IqxnyWUHP897pai8ZtrBqRqvD22S4tP0f3Byvp/DZwU66U L/XT5NdH/FBxklL6nxQkmiQL0kDrrho= Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-503-nG8KXSWUNyOHCGpTq2uADA-1; Wed, 11 Sep 2024 15:32:32 -0400 X-MC-Unique: nG8KXSWUNyOHCGpTq2uADA-1 Received: from mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.40]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 31AFC1955F0D; Wed, 11 Sep 2024 19:32:31 +0000 (UTC) Received: from max-p1.redhat.com (unknown [10.39.208.29]) by mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 0BCD219560AA; Wed, 11 Sep 2024 19:32:27 +0000 (UTC) From: Maxime Coquelin To: dev@dpdk.org, techboard@dpdk.org, david.marchand@redhat.com, thomas@monjalon.net, mb@smartsharesystems.com, stephen@networkplumber.org Cc: Maxime Coquelin Subject: [RFC v3 0/3] Import Kernel uAPI header files Date: Wed, 11 Sep 2024 21:32:21 +0200 Message-ID: <20240911193224.1966122-1-maxime.coquelin@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.40 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org 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. 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 -- 2.46.0