On Tue, May 11, 2021 at 12:09 PM Thomas Monjalon <tho...@monjalon.net> wrote:
>
> From: David Marchand <david.march...@redhat.com>
>
> Let's try to enforce the convention where most drivers use a pmd. logtype
> with their class reflected in it, and libraries use a lib. logtype.
>
> Introduce two new macros:
> - RTE_LOG_REGISTER_DEFAULT can be used when a single logtype is
>   used in a component. It is associated to the default name provided
>   by the build system,
> - RTE_LOG_REGISTER_SUFFIX can be used when multiple logtypes are used,
>   and then the passed name is appended to the default name,
>
> RTE_LOG_REGISTER is left untouched for existing external users
> and for components that do not comply with the convention.
>
> There is a new Meson variable log_prefix to adapt the default name
> for baseband (pmd.bb.), bus (no pmd.) and mempool (no pmd.) classes.

These exceptions can be updated in the commands below:

>
> Note: achieved with below commands + reverted change on net/bonding +
> edits on crypto/virtio, compress/mlx5, regex/mlx5, baseband, bus and
> mempool drivers.
>
> $ git grep -l RTE_LOG_REGISTER drivers/ |
>   while read file; do
>     pattern=${file##drivers/};
>     class=${pattern%%/*};
>     pattern=${pattern#$class/};
>     pattern=pmd.$class.${pattern%%/*};
>     sed -i -e 's/RTE_LOG_REGISTER(\(.*\), 
> '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file;
>     sed -i -e 's/RTE_LOG_REGISTER(\(.*\), 
> '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file;
>   done

Becomes:

    Note: achieved with below commands + reverted change on net/bonding +
    edits on crypto/virtio, compress/mlx5, regex/mlx5

    $ git grep -l RTE_LOG_REGISTER drivers/ |
      while read file; do
        pattern=${file##drivers/};
        class=${pattern%%/*};
        pattern=${pattern#$class/};
        drv=${pattern%%/*};
        case "$class" in
          baseband) pattern=pmd.bb.$drv;;
          bus) pattern=bus.$drv;;
          mempool) pattern=mempool.$drv;;
          *) pattern=pmd.$class.$drv;;
        esac
        sed -i -e 's/RTE_LOG_REGISTER(\(.*\),
'$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file;
        sed -i -e 's/RTE_LOG_REGISTER(\(.*\),
'$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file;
      done

>
> $ git grep -l RTE_LOG_REGISTER lib/ |
>   while read file; do
>     pattern=${file##lib/};
>     pattern=lib.${pattern%%/*};
>     sed -i -e 's/RTE_LOG_REGISTER(\(.*\), 
> '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file;
>     sed -i -e 's/RTE_LOG_REGISTER(\(.*\), 
> '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file;
>   done
>
> Signed-off-by: David Marchand <david.march...@redhat.com>
> Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
> ---
>
> Changes since v2:
> - use RTE_LOG_REGISTER_DEFAULT in baseband, bus, mempool
>   by adding the variable log_prefix in drivers/meson.build

Compared the registered logtypes before/after, all good.
Thanks for this addition.


-- 
David Marchand

Reply via email to