summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVegard Nossum <vegard.nossum@oracle.com>2024-08-06 08:38:08 -0700
committerDavid S. Miller <davem@davemloft.net>2024-08-09 13:18:46 +0100
commitbc75dcc3cea797974913c6ccdbe17ed470be3da6 (patch)
tree7dcf92ff1d97f106563621ea649c7a2161d41920
parenta0f6e5e9f1f8a0837a9e3ccc5a1f98cbfd2a6cf4 (diff)
downloadlinux-bc75dcc3cea797974913c6ccdbe17ed470be3da6.tar.gz
linux-bc75dcc3cea797974913c6ccdbe17ed470be3da6.tar.bz2
linux-bc75dcc3cea797974913c6ccdbe17ed470be3da6.zip
net: rds: add option for GCOV profiling
To better our unit tests we need code coverage to be part of the kernel. This patch borrows heavily from how CONFIG_GCOV_PROFILE_FTRACE is implemented Reviewed-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Vegard Nossum <vegard.nossum@oracle.com> Signed-off-by: Allison Henderson <allison.henderson@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/rds/Kconfig9
-rw-r--r--net/rds/Makefile5
2 files changed, 14 insertions, 0 deletions
diff --git a/net/rds/Kconfig b/net/rds/Kconfig
index 75cd696963b2..f007730aa2bb 100644
--- a/net/rds/Kconfig
+++ b/net/rds/Kconfig
@@ -26,3 +26,12 @@ config RDS_DEBUG
bool "RDS debugging messages"
depends on RDS
default n
+
+config GCOV_PROFILE_RDS
+ bool "Enable GCOV profiling on RDS"
+ depends on GCOV_KERNEL
+ help
+ Enable GCOV profiling on RDS for checking which functions/lines
+ are executed.
+
+ If unsure, say N.
diff --git a/net/rds/Makefile b/net/rds/Makefile
index 8fdc118e2927..3af1ca1d965c 100644
--- a/net/rds/Makefile
+++ b/net/rds/Makefile
@@ -15,3 +15,8 @@ rds_tcp-y := tcp.o tcp_connect.o tcp_listen.o tcp_recv.o \
tcp_send.o tcp_stats.o
ccflags-$(CONFIG_RDS_DEBUG) := -DRDS_DEBUG
+
+# for GCOV coverage profiling
+ifdef CONFIG_GCOV_PROFILE_RDS
+GCOV_PROFILE := y
+endif