linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [RESEND PATCH] kmemleak-test: Optimize kmemleak_test.c build flow
@ 2023-03-30  6:09 Hao Ge
  2023-03-30 20:10 ` Andrew Morton
  0 siblings, 1 reply; 2+ messages in thread
From: Hao Ge @ 2023-03-30  6:09 UTC (permalink / raw)
  To: akpm, alex.williamson, jgg, akrowiak, arnd, mark.rutland,
	ye.xingchen, ojeda, alex.gaynor, me, gregkh
  Cc: linux-mm, linux-kernel, gehao618, Hao Ge

Now kmemleak-test.c is moved to samples directory,
if CONFIG_DEBUG_KMEMLEAK_TEST=m,but CONFIG_SAMPLES
is not set,it will be meaningless.

So we will remove CONFIG_DEBUG_KMEMLEAK_TEST and
add CONFIG_SAMPLE_KMEMLEAK which in samples directory
to control kmemleak-test.c build or not

Signed-off-by: Hao Ge <gehao@kylinos.cn>
---
 mm/Kconfig.debug          | 8 --------
 samples/Kconfig           | 7 +++++++
 samples/Makefile          | 2 +-
 samples/kmemleak/Makefile | 2 +-
 4 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug
index c3547a373c9c..fb86e9952bac 100644
--- a/mm/Kconfig.debug
+++ b/mm/Kconfig.debug
@@ -249,14 +249,6 @@ config DEBUG_KMEMLEAK_MEM_POOL_SIZE
 	  fully initialised, this memory pool acts as an emergency one
 	  if slab allocations fail.
 
-config DEBUG_KMEMLEAK_TEST
-	tristate "Simple test for the kernel memory leak detector"
-	depends on DEBUG_KMEMLEAK && m
-	help
-	  This option enables a module that explicitly leaks memory.
-
-	  If unsure, say N.
-
 config DEBUG_KMEMLEAK_DEFAULT_OFF
 	bool "Default kmemleak to off"
 	depends on DEBUG_KMEMLEAK
diff --git a/samples/Kconfig b/samples/Kconfig
index 30ef8bd48ba3..69076fbf3298 100644
--- a/samples/Kconfig
+++ b/samples/Kconfig
@@ -273,6 +273,13 @@ config SAMPLE_CORESIGHT_SYSCFG
 	  This demonstrates how a user may create their own CoreSight
 	  configurations and easily load them into the system at runtime.
 
+config SAMPLE_KMEMLEAK
+        tristate "Simple test for the kernel memory leak detector"
+        depends on DEBUG_KMEMLEAK && m
+        help
+          Build a sample program which have explicitly leaks memory to test
+          kmemleak
+
 source "samples/rust/Kconfig"
 
 endif # SAMPLES
diff --git a/samples/Makefile b/samples/Makefile
index 7cb632ef88ee..7727f1a0d6d1 100644
--- a/samples/Makefile
+++ b/samples/Makefile
@@ -33,7 +33,7 @@ subdir-$(CONFIG_SAMPLE_VFS)		+= vfs
 obj-$(CONFIG_SAMPLE_INTEL_MEI)		+= mei/
 subdir-$(CONFIG_SAMPLE_WATCHDOG)	+= watchdog
 subdir-$(CONFIG_SAMPLE_WATCH_QUEUE)	+= watch_queue
-obj-$(CONFIG_DEBUG_KMEMLEAK_TEST)	+= kmemleak/
+obj-$(CONFIG_SAMPLE_KMEMLEAK)		+= kmemleak/
 obj-$(CONFIG_SAMPLE_CORESIGHT_SYSCFG)	+= coresight/
 obj-$(CONFIG_SAMPLE_FPROBE)		+= fprobe/
 obj-$(CONFIG_SAMPLES_RUST)		+= rust/
diff --git a/samples/kmemleak/Makefile b/samples/kmemleak/Makefile
index 16b6132c540c..8a999ab43b6d 100644
--- a/samples/kmemleak/Makefile
+++ b/samples/kmemleak/Makefile
@@ -1,3 +1,3 @@
 # SPDX-License-Identifier: GPL-2.0-only
 
-obj-$(CONFIG_DEBUG_KMEMLEAK_TEST) += kmemleak-test.o
+obj-$(CONFIG_SAMPLE_KMEMLEAK) += kmemleak-test.o
-- 
2.25.1


No virus found
		Checked by Hillstone Network AntiVirus


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [RESEND PATCH] kmemleak-test: Optimize kmemleak_test.c build flow
  2023-03-30  6:09 [RESEND PATCH] kmemleak-test: Optimize kmemleak_test.c build flow Hao Ge
@ 2023-03-30 20:10 ` Andrew Morton
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Morton @ 2023-03-30 20:10 UTC (permalink / raw)
  To: Hao Ge
  Cc: alex.williamson, jgg, akrowiak, arnd, mark.rutland, ye.xingchen,
	ojeda, alex.gaynor, me, gregkh, linux-mm, linux-kernel, gehao618,
	Catalin Marinas

On Thu, 30 Mar 2023 14:09:04 +0800 Hao Ge <gehao@kylinos.cn> wrote:

> Now kmemleak-test.c is moved to samples directory,
> if CONFIG_DEBUG_KMEMLEAK_TEST=m,but CONFIG_SAMPLES
> is not set,it will be meaningless.
> 
> So we will remove CONFIG_DEBUG_KMEMLEAK_TEST and
> add CONFIG_SAMPLE_KMEMLEAK which in samples directory
> to control kmemleak-test.c build or not

Thanks.

I changed the patch title, reworked the changelog and added the Fixes:
information.  Please check all this carefully.



From: Hao Ge <gehao@kylinos.cn>
Subject: kmemleak-test: fix kmemleak_test.c build logic
Date: Thu, 30 Mar 2023 14:09:04 +0800

kmemleak-test.c was moved to the samples directory in 1abbef4f51724
("mm,kmemleak-test.c: move kmemleak-test.c to samples dir").

If CONFIG_DEBUG_KMEMLEAK_TEST=m and CONFIG_SAMPLES is unset,
kmemleak-test.c will be unnecessarily compiled.

So move the entry for CONFIG_DEBUG_KMEMLEAK_TEST from mm/Kconfig and add a
new CONFIG_SAMPLE_KMEMLEAK in samples/ to control whether kmemleak-test.c
is built or not.

Link: https://lkml.kernel.org/r/20230330060904.292975-1-gehao@kylinos.cn
Fixes: 1abbef4f51724 ("mm,kmemleak-test.c: move kmemleak-test.c to samples dir")
Signed-off-by: Hao Ge <gehao@kylinos.cn>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Alex Gaynor <alex.gaynor@gmail.com>
Cc: Alex Williamson <alex.williamson@redhat.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Finn Behrens <me@kloenk.dev>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Miguel Ojeda <ojeda@kernel.org>
Cc: Tony Krowiak <akrowiak@linux.ibm.com>
Cc: Ye Xingchen <ye.xingchen@zte.com.cn>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 mm/Kconfig.debug          |    8 --------
 samples/Kconfig           |    7 +++++++
 samples/Makefile          |    2 +-
 samples/kmemleak/Makefile |    2 +-
 4 files changed, 9 insertions(+), 10 deletions(-)

--- a/mm/Kconfig.debug~kmemleak-test-optimize-kmemleak_testc-build-flow
+++ a/mm/Kconfig.debug
@@ -249,14 +249,6 @@ config DEBUG_KMEMLEAK_MEM_POOL_SIZE
 	  fully initialised, this memory pool acts as an emergency one
 	  if slab allocations fail.
 
-config DEBUG_KMEMLEAK_TEST
-	tristate "Simple test for the kernel memory leak detector"
-	depends on DEBUG_KMEMLEAK && m
-	help
-	  This option enables a module that explicitly leaks memory.
-
-	  If unsure, say N.
-
 config DEBUG_KMEMLEAK_DEFAULT_OFF
 	bool "Default kmemleak to off"
 	depends on DEBUG_KMEMLEAK
--- a/samples/Kconfig~kmemleak-test-optimize-kmemleak_testc-build-flow
+++ a/samples/Kconfig
@@ -273,6 +273,13 @@ config SAMPLE_CORESIGHT_SYSCFG
 	  This demonstrates how a user may create their own CoreSight
 	  configurations and easily load them into the system at runtime.
 
+config SAMPLE_KMEMLEAK
+        tristate "Simple test for the kernel memory leak detector"
+        depends on DEBUG_KMEMLEAK && m
+        help
+          Build a sample program which have explicitly leaks memory to test
+          kmemleak
+
 source "samples/rust/Kconfig"
 
 endif # SAMPLES
--- a/samples/kmemleak/Makefile~kmemleak-test-optimize-kmemleak_testc-build-flow
+++ a/samples/kmemleak/Makefile
@@ -1,3 +1,3 @@
 # SPDX-License-Identifier: GPL-2.0-only
 
-obj-$(CONFIG_DEBUG_KMEMLEAK_TEST) += kmemleak-test.o
+obj-$(CONFIG_SAMPLE_KMEMLEAK) += kmemleak-test.o
--- a/samples/Makefile~kmemleak-test-optimize-kmemleak_testc-build-flow
+++ a/samples/Makefile
@@ -33,7 +33,7 @@ subdir-$(CONFIG_SAMPLE_VFS)		+= vfs
 obj-$(CONFIG_SAMPLE_INTEL_MEI)		+= mei/
 subdir-$(CONFIG_SAMPLE_WATCHDOG)	+= watchdog
 subdir-$(CONFIG_SAMPLE_WATCH_QUEUE)	+= watch_queue
-obj-$(CONFIG_DEBUG_KMEMLEAK_TEST)	+= kmemleak/
+obj-$(CONFIG_SAMPLE_KMEMLEAK)		+= kmemleak/
 obj-$(CONFIG_SAMPLE_CORESIGHT_SYSCFG)	+= coresight/
 obj-$(CONFIG_SAMPLE_FPROBE)		+= fprobe/
 obj-$(CONFIG_SAMPLES_RUST)		+= rust/
_



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-03-30 20:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-30  6:09 [RESEND PATCH] kmemleak-test: Optimize kmemleak_test.c build flow Hao Ge
2023-03-30 20:10 ` Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox