The PM QoS API (rte_power_qos_{set,get}_cpu_resume_latency) has been
experimental since 24.11, and the uncore environment and frequency list
functions (rte_power_{set,unset,get}_uncore_env, rte_power_uncore_freqs)
since 23.11.These interfaces have not changed since they were introduced and the rest of the uncore API is already stable, so promote them. Signed-off-by: Stephen Hemminger <[email protected]> --- doc/guides/rel_notes/release_26_11.rst | 7 +++++++ lib/power/rte_power_qos.c | 4 ++-- lib/power/rte_power_qos.h | 10 ---------- lib/power/rte_power_uncore.c | 8 ++++---- lib/power/rte_power_uncore.h | 5 ----- 5 files changed, 13 insertions(+), 21 deletions(-) diff --git a/doc/guides/rel_notes/release_26_11.rst b/doc/guides/rel_notes/release_26_11.rst index fad1a53e04..e9e9b1f6da 100644 --- a/doc/guides/rel_notes/release_26_11.rst +++ b/doc/guides/rel_notes/release_26_11.rst @@ -348,6 +348,13 @@ API Changes functions in pipeline, the ``rte_swx_table_*`` symbols in table and the ``rte_swx_port_*`` symbols in port. +* power: Promoted the following API from experimental to stable: + + * PM QoS: ``rte_power_qos_set_cpu_resume_latency`` and + ``rte_power_qos_get_cpu_resume_latency`` + * uncore: ``rte_power_set_uncore_env``, ``rte_power_unset_uncore_env``, + ``rte_power_get_uncore_env`` and ``rte_power_uncore_freqs`` + * reorder: Promoted the following API from experimental to stable: ``rte_reorder_seqn``, ``rte_reorder_drain_up_to_seqn``, ``rte_reorder_min_seqn_set`` and ``rte_reorder_memory_footprint_get``. diff --git a/lib/power/rte_power_qos.c b/lib/power/rte_power_qos.c index d8d8d36a76..3ecfcc54fa 100644 --- a/lib/power/rte_power_qos.c +++ b/lib/power/rte_power_qos.c @@ -18,7 +18,7 @@ #define PM_QOS_CPU_RESUME_LATENCY_BUF_LEN 32 -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_power_qos_set_cpu_resume_latency, 24.11) +RTE_EXPORT_SYMBOL(rte_power_qos_set_cpu_resume_latency) int rte_power_qos_set_cpu_resume_latency(uint16_t lcore_id, int latency) { @@ -69,7 +69,7 @@ rte_power_qos_set_cpu_resume_latency(uint16_t lcore_id, int latency) return ret; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_power_qos_get_cpu_resume_latency, 24.11) +RTE_EXPORT_SYMBOL(rte_power_qos_get_cpu_resume_latency) int rte_power_qos_get_cpu_resume_latency(uint16_t lcore_id) { diff --git a/lib/power/rte_power_qos.h b/lib/power/rte_power_qos.h index 05a3f51ae2..d8c5ab92d5 100644 --- a/lib/power/rte_power_qos.h +++ b/lib/power/rte_power_qos.h @@ -7,8 +7,6 @@ #include <stdint.h> -#include <rte_compat.h> - #ifdef __cplusplus extern "C" { #endif @@ -36,9 +34,6 @@ extern "C" { #define RTE_POWER_QOS_RESUME_LATENCY_NO_CONSTRAINT INT32_MAX /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * @param lcore_id * target logical core id * @@ -48,13 +43,9 @@ extern "C" { * @return * 0 on success. Otherwise negative value is returned. */ -__rte_experimental int rte_power_qos_set_cpu_resume_latency(uint16_t lcore_id, int latency); /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * Get the current resume latency of this logical core. * The default value in kernel is @see RTE_POWER_QOS_RESUME_LATENCY_NO_CONSTRAINT * if don't set it. @@ -63,7 +54,6 @@ int rte_power_qos_set_cpu_resume_latency(uint16_t lcore_id, int latency); * Negative value on failure. * >= 0 means the actual resume latency limit on this core. */ -__rte_experimental int rte_power_qos_get_cpu_resume_latency(uint16_t lcore_id); #ifdef __cplusplus diff --git a/lib/power/rte_power_uncore.c b/lib/power/rte_power_uncore.c index b50e09a2ad..90e83d9f2a 100644 --- a/lib/power/rte_power_uncore.c +++ b/lib/power/rte_power_uncore.c @@ -46,7 +46,7 @@ rte_power_register_uncore_ops(struct rte_power_uncore_ops *driver_ops) return 0; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_power_set_uncore_env, 23.11) +RTE_EXPORT_SYMBOL(rte_power_set_uncore_env) int rte_power_set_uncore_env(enum rte_uncore_power_mgmt_env env) { @@ -86,7 +86,7 @@ rte_power_set_uncore_env(enum rte_uncore_power_mgmt_env env) return ret; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_power_unset_uncore_env, 23.11) +RTE_EXPORT_SYMBOL(rte_power_unset_uncore_env) void rte_power_unset_uncore_env(void) { @@ -95,7 +95,7 @@ rte_power_unset_uncore_env(void) rte_spinlock_unlock(&global_env_cfg_lock); } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_power_get_uncore_env, 23.11) +RTE_EXPORT_SYMBOL(rte_power_get_uncore_env) enum rte_uncore_power_mgmt_env rte_power_get_uncore_env(void) { @@ -180,7 +180,7 @@ rte_power_uncore_freq_min(unsigned int pkg, unsigned int die) return global_uncore_ops->freq_min(pkg, die); } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_power_uncore_freqs, 23.11) +RTE_EXPORT_SYMBOL(rte_power_uncore_freqs) int rte_power_uncore_freqs(unsigned int pkg, unsigned int die, uint32_t *freqs, uint32_t num) diff --git a/lib/power/rte_power_uncore.h b/lib/power/rte_power_uncore.h index 66aea1b37f..9599839d89 100644 --- a/lib/power/rte_power_uncore.h +++ b/lib/power/rte_power_uncore.h @@ -11,7 +11,6 @@ * Uncore Frequency Management */ -#include <rte_compat.h> #include <rte_common.h> #ifdef __cplusplus @@ -39,14 +38,12 @@ enum rte_uncore_power_mgmt_env { * - 0 on success. * - Negative on error. */ -__rte_experimental int rte_power_set_uncore_env(enum rte_uncore_power_mgmt_env env); /** * Unset the global uncore environment configuration. * This can only be called after all threads have completed. */ -__rte_experimental void rte_power_unset_uncore_env(void); /** @@ -55,7 +52,6 @@ void rte_power_unset_uncore_env(void); * @return * power_management_env The configured environment. */ -__rte_experimental enum rte_uncore_power_mgmt_env rte_power_get_uncore_env(void); /** @@ -203,7 +199,6 @@ int rte_power_uncore_freq_min(unsigned int pkg, unsigned int die); * - The number of available index's in frequency array. * - Negative on error. */ -__rte_experimental int rte_power_uncore_freqs(unsigned int pkg, unsigned int die, uint32_t *freqs, uint32_t num); -- 2.53.0

