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 14C53457BB; Wed, 14 Aug 2024 09:51:10 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 36C28427C6; Wed, 14 Aug 2024 09:49:14 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.16]) by mails.dpdk.org (Postfix) with ESMTP id 477964026C for ; Tue, 13 Aug 2024 18:00:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1723564852; x=1755100852; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=rS+4kds/xKnBQ6M+HMcvDgwJo4imZ/COXWC9r3MBr/g=; b=YNQwT0cp4rwKlRQ699lCGUEC8TZN7o8W6lcONmLge3bd4L6Pdup9nxEx B2wUtDEM7yoJBlFsG9v1tGXwxO5ppoe5aaN8v9QUcwNNI8U74680I47Ae o8CBI+hkpmAoxuZlqUZuxbOLFA3rL6KPrSfxarzxbi0FFrtI3kr6swuZ9 z05fTvAnOYyIT+dZsB0lTiO6cIgJXU7ciw1HXHd8pB7qvbpt7I1XJKXVQ KsmvtKgBDSgCyWTQmuAlljTa0z1h71r9MM9mJNKH+JufMxLKsmWeNQRCt 4ygYTmfaq44liawWt6VPn8Gcm2zYzdE67xfvk1RcCI03cjDW7p3nUDASV A==; X-CSE-ConnectionGUID: NTRaH5lWSSymAd2EJHo3jQ== X-CSE-MsgGUID: d/Xdag7ZRKaDytFvuehtWw== X-IronPort-AV: E=McAfee;i="6700,10204,11163"; a="12987905" X-IronPort-AV: E=Sophos;i="6.09,286,1716274800"; d="scan'208";a="12987905" Received: from fmviesa007.fm.intel.com ([10.60.135.147]) by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Aug 2024 09:00:51 -0700 X-CSE-ConnectionGUID: YkqSW+1fSHitccwfEyMQPQ== X-CSE-MsgGUID: ul5vEmOyR+CvxT8CHH2X4Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.09,286,1716274800"; d="scan'208";a="58406722" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by fmviesa007.fm.intel.com with ESMTP; 13 Aug 2024 09:00:49 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: ferruh.yigit@amd.com, thomas@monjalon.net, mb@smartsharesystems.com, Bruce Richardson , Bruce Richardson Subject: [RFC PATCH v2 26/26] config: add computed max queues define for compatibility Date: Tue, 13 Aug 2024 17:00:03 +0100 Message-ID: <20240813160003.423935-27-bruce.richards@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240813160003.423935-1-bruce.richards@intel.com> References: <20240812132910.162252-1-bruce.richardson@intel.com> <20240813160003.423935-1-bruce.richards@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailman-Approved-At: Wed, 14 Aug 2024 09:48:35 +0200 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 End applications may use the RTE_MAX_QUEUES_PER_PORT define in their structure definitions, so keep a define present in DPDK for backward compatibility. Rather than having a hard-coded value, we can use the maximum of the Rx and Tx values as the overall max value. Rather than using a macro which does the MAX() calculation inside it, we can compute the actual value at configuration time and write it using meson. Signed-off-by: Bruce Richardson --- config/meson.build | 8 ++++++++ doc/guides/rel_notes/deprecation.rst | 11 +++++++++++ doc/guides/rel_notes/release_24_11.rst | 8 +++++++- 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/config/meson.build b/config/meson.build index fc41354c53..9677636754 100644 --- a/config/meson.build +++ b/config/meson.build @@ -372,6 +372,14 @@ if get_option('mbuf_refcnt_atomic') endif dpdk_conf.set10('RTE_IOVA_IN_MBUF', get_option('enable_iova_as_pa')) +# set old MAX_QUEUES_PER_PORT option for compatibility. Compute +# value as max of Rx and Tx counts +if get_option('max_ethport_rx_queues') > get_option('max_ethport_tx_queues') + dpdk_conf.set('RTE_MAX_QUEUES_PER_PORT', get_option('max_ethport_rx_queues')) +else + dpdk_conf.set('RTE_MAX_QUEUES_PER_PORT', get_option('max_ethport_tx_queues')) +endif + compile_time_cpuflags = [] subdir(arch_subdir) dpdk_conf.set('RTE_COMPILE_TIME_CPUFLAGS', ','.join(compile_time_cpuflags)) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 211f59fdc9..e4ba00040f 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -17,6 +17,17 @@ Other API and ABI deprecation notices are to be posted below. Deprecation Notices ------------------- +* config: The define ``RTE_MAX_QUEUES_PER_PORT`` should be considered deprecated + and may be removed in a future release. + Its use in apps should be replaced by ``RTE_MAX_ETHPORT_RX_QUEUES`` or ``RTE_MAX_ETHPORT_TX_QUEUES``, + as appropriate. + +* config: The ``RTE_MAX_QUEUES_PER_PORT`` value is no longer hard-coded to 1024. + Its value is now computed at configuration time to be the maximum of the configured max Rx and Tx queue values, + given by the meson options ``max_ethport_rx_queues`` and ``max_ethport_tx_queues``. + If these are unmodified from the defaults, + the value of ``RTE_MAX_QUEUES_PER_PORT`` will be 256. + * build: The ``enable_kmods`` option is deprecated and will be removed in a future release. Setting/clearing the option has no impact on the build. Instead, kernel modules will be always built for OS's where out-of-tree kernel modules diff --git a/doc/guides/rel_notes/release_24_11.rst b/doc/guides/rel_notes/release_24_11.rst index 825cc0fad9..130564d38e 100644 --- a/doc/guides/rel_notes/release_24_11.rst +++ b/doc/guides/rel_notes/release_24_11.rst @@ -67,9 +67,15 @@ New Features The default max values for Rx and Tx queue limits are reduced from 1024, in previous releases, to 256 in this release. - For application that require large numbers of queues, + For applications that require large numbers of queues, these defaults can be changed via the meson configuration options described above. +.. note:: + + The define ``RTE_MAX_QUEUES_PER_PORT`` is kept for backward compatibility. + Its value is no longer hard-coded, + but is set, at configuration time, to the maximum of the configured max Rx and Tx queue values. + Removed Items ------------- -- 2.43.0