lib: Allow for the DIM library to be modular

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.

Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Link: https://lore.kernel.org/r/20240506175040.410446-1-florian.fainelli@broadcom.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Florian Fainelli 2024-05-06 10:50:40 -07:00 committed by Jakub Kicinski
parent 445c0b69c7
commit 0d5044b4e7
3 changed files with 6 additions and 3 deletions

View File

@ -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

View File

@ -2,6 +2,6 @@
# DIM Dynamic Interrupt Moderation library
#
obj-$(CONFIG_DIMLIB) += dim.o
obj-$(CONFIG_DIMLIB) += dimlib.o
dim-y := dim.o net_dim.o rdma_dim.o
dimlib-objs := dim.o net_dim.o rdma_dim.o

View File

@ -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");