lkml.org 
[lkml]   [2024]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
SubjectRe: [PATCH net-next v2] lib: Allow for the DIM library to be modular
From
From: Florian Fainelli <florian.fainelli@broadcom.com>
Date: Mon, 6 May 2024 10:50:40 -0700

> Allow the Dynamic Interrupt Moderation (DIM) library to be built as a
> module. This is particularly useful in an Android GKI (Google Kernel
> Image) configuration where everything is built as a module, including
> Ethernet controller drivers. Having to build DIMLIB into the kernel
> image with potentially no user is wasteful.

Some bloat-o-meter -c vmlinux.{before,after} would be good to have here.
The library is small, but I personally would like to see it modular.

>
> Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>

Reviewed-by: Alexander Lobakin <aleksander.lobakin@intel.com>

> ---
> Changes in v2:
>
> - Added MODULE_DESCRIPTION()
>
> lib/Kconfig | 2 +-
> lib/dim/Makefile | 4 ++--
> lib/dim/dim.c | 3 +++
> 3 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/lib/Kconfig b/lib/Kconfig
> index 4557bb8a5256..d33a268bc256 100644
> --- a/lib/Kconfig
> +++ b/lib/Kconfig
> @@ -628,7 +628,7 @@ config SIGNATURE
> Implementation is done using GnuPG MPI library
>
> config DIMLIB
> - bool
> + tristate
> help
> Dynamic Interrupt Moderation library.
> Implements an algorithm for dynamically changing CQ moderation values
> diff --git a/lib/dim/Makefile b/lib/dim/Makefile
> index 1d6858a108cb..c4cc4026c451 100644
> --- a/lib/dim/Makefile
> +++ b/lib/dim/Makefile
> @@ -2,6 +2,6 @@
> # DIM Dynamic Interrupt Moderation library
> #
>
> -obj-$(CONFIG_DIMLIB) += dim.o
> +obj-$(CONFIG_DIMLIB) += dimlib.o

I guess you renamed it due to that there's already a module named 'dim'?

>
> -dim-y := dim.o net_dim.o rdma_dim.o
> +dimlib-objs := dim.o net_dim.o rdma_dim.o
> diff --git a/lib/dim/dim.c b/lib/dim/dim.c
> index e89aaf07bde5..83b65ac74d73 100644
> --- a/lib/dim/dim.c
> +++ b/lib/dim/dim.c
> @@ -82,3 +82,6 @@ bool dim_calc_stats(struct dim_sample *start, struct dim_sample *end,
> return true;
> }
> EXPORT_SYMBOL(dim_calc_stats);
> +
> +MODULE_DESCRIPTION("Dynamic Interrupt Moderation (DIM) library");
> +MODULE_LICENSE("Dual BSD/GPL");

Thanks,
Olek

\
 
 \ /
  Last update: 2024-05-27 18:19    [W:2.236 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site