log: add missing experimental tag

Message ID 1543912111-8106-1-git-send-email-david.marchand@redhat.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series log: add missing experimental tag |

Checks

Context Check Description
ci/Intel-compilation success Compilation OK
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/intel-Performance-Testing success Performance Testing PASS

Commit Message

David Marchand Dec. 4, 2018, 8:28 a.m. UTC
  When rte_log_register_type_and_pick_level() has been introduced, it has
been correctly added to the EXPERIMENTAL section of the eal map and the
symbol itself has been marked at its definition.

However, the declaration of this symbol in rte_log.h is missing the
__rte_experimental tag.
Because of this, a user can try to call this symbol without being aware
this is an experimental api (neither compilation nor link warning).

Fixes: b22e77c02620 ("eal: register log type and pick level from args")
Signed-off-by: David Marchand <david.marchand@redhat.com>
---
 lib/librte_eal/common/include/rte_log.h | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

Neil Horman Dec. 4, 2018, 3:18 p.m. UTC | #1
On Tue, Dec 04, 2018 at 09:28:31AM +0100, David Marchand wrote:
> When rte_log_register_type_and_pick_level() has been introduced, it has
> been correctly added to the EXPERIMENTAL section of the eal map and the
> symbol itself has been marked at its definition.
> 
> However, the declaration of this symbol in rte_log.h is missing the
> __rte_experimental tag.
> Because of this, a user can try to call this symbol without being aware
> this is an experimental api (neither compilation nor link warning).
> 
> Fixes: b22e77c02620 ("eal: register log type and pick level from args")
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
>  lib/librte_eal/common/include/rte_log.h | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/lib/librte_eal/common/include/rte_log.h b/lib/librte_eal/common/include/rte_log.h
> index 2f789cb..f334efc 100644
> --- a/lib/librte_eal/common/include/rte_log.h
> +++ b/lib/librte_eal/common/include/rte_log.h
> @@ -24,6 +24,7 @@
>  
>  #include <rte_common.h>
>  #include <rte_config.h>
> +#include <rte_compat.h>
>  
>  struct rte_log_dynamic_type;
>  
> @@ -226,6 +227,7 @@ struct rte_logs {
>   *    - >=0: the newly registered log type
>   *    - <0: rte_log_register() error value
>   */
> +__rte_experimental
>  int rte_log_register_type_and_pick_level(const char *name, uint32_t level_def);
>  
>  /**
> -- 
> 1.8.3.1
> 
> 
Acked-by: Neil Horman <nhorman@tuxdriver.com>
  
David Marchand Dec. 18, 2018, 10:29 a.m. UTC | #2
Hello Thomas,

On Tue, Dec 4, 2018 at 4:20 PM Neil Horman <nhorman@tuxdriver.com> wrote:

> On Tue, Dec 04, 2018 at 09:28:31AM +0100, David Marchand wrote:
> > When rte_log_register_type_and_pick_level() has been introduced, it has
> > been correctly added to the EXPERIMENTAL section of the eal map and the
> > symbol itself has been marked at its definition.
> >
> > However, the declaration of this symbol in rte_log.h is missing the
> > __rte_experimental tag.
> > Because of this, a user can try to call this symbol without being aware
> > this is an experimental api (neither compilation nor link warning).
> >
> > Fixes: b22e77c02620 ("eal: register log type and pick level from args")
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> Acked-by: Neil Horman <nhorman@tuxdriver.com>
>

Can you pick this fix ?
Thanks.
  
Thomas Monjalon Dec. 19, 2018, 1:30 a.m. UTC | #3
04/12/2018 16:18, Neil Horman:
> On Tue, Dec 04, 2018 at 09:28:31AM +0100, David Marchand wrote:
> > When rte_log_register_type_and_pick_level() has been introduced, it has
> > been correctly added to the EXPERIMENTAL section of the eal map and the
> > symbol itself has been marked at its definition.
> > 
> > However, the declaration of this symbol in rte_log.h is missing the
> > __rte_experimental tag.
> > Because of this, a user can try to call this symbol without being aware
> > this is an experimental api (neither compilation nor link warning).
> > 
> > Fixes: b22e77c02620 ("eal: register log type and pick level from args")
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> Acked-by: Neil Horman <nhorman@tuxdriver.com>

+Cc stable@dpdk.org

Applied, thanks
  

Patch

diff --git a/lib/librte_eal/common/include/rte_log.h b/lib/librte_eal/common/include/rte_log.h
index 2f789cb..f334efc 100644
--- a/lib/librte_eal/common/include/rte_log.h
+++ b/lib/librte_eal/common/include/rte_log.h
@@ -24,6 +24,7 @@ 
 
 #include <rte_common.h>
 #include <rte_config.h>
+#include <rte_compat.h>
 
 struct rte_log_dynamic_type;
 
@@ -226,6 +227,7 @@  struct rte_logs {
  *    - >=0: the newly registered log type
  *    - <0: rte_log_register() error value
  */
+__rte_experimental
 int rte_log_register_type_and_pick_level(const char *name, uint32_t level_def);
 
 /**