Message ID | 20240607003631.32484-3-allison.henderson@oracle.com (mailing list archive) |
---|---|
State | RFC |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | selftests: rds selftest | expand |
On Thu, 2024-06-06 at 17:36 -0700, allison.henderson@oracle.com wrote: +cc Chuck Lever, Peter Oberparleiter, Vegard Nossum, rds-devel > From: Vegard Nossum <vegard.nossum@oracle.com> > > This commit basically implements what ftrace does with > CONFIG_GCOV_PROFILE_FTRACE for RDS. > > We need this in order to better be able to understand what code paths > our unit tests are hitting (or not hitting). > > Signed-off-by: Vegard Nossum <vegard.nossum@oracle.com> > Reviewed-by: Allison Henderson <allison.henderson@oracle.com> > Reviewed-by: Chuck Lever <chuck.lever@oracle.com> > Signed-off-by: Allison Henderson <allison.henderson@oracle.com> > --- > net/rds/Kconfig | 9 +++++++++ > net/rds/Makefile | 5 +++++ > 2 files changed, 14 insertions(+) > > 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
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