diff mbox series

[v3] common/rc: cleanup old .kmemleak files

Message ID 20230713082631.10666-1-lhenriques@suse.de (mailing list archive)
State New, archived
Headers show
Series [v3] common/rc: cleanup old .kmemleak files | expand

Commit Message

Luis Henriques July 13, 2023, 8:26 a.m. UTC
I've spent a non-negligible amount of time looking into a kmemleak that
didn't exist in the code I was testing because there was an old .kmemleak
file in the results directory.  I don't think this is an intended behaviour,
so I'm proposing to remove these files everytime we capture the result of a
new scan.

Signed-off-by: Luís Henriques <lhenriques@suse.de>
---
 common/rc | 4 ++++
 1 file changed, 4 insertions(+)

Changes since v2:
Incorporated comment from Darrick to explain the usage of '-f' in the test

Changes since v1:
I realised that _capture_kmemleak() is called with /dev/null as argument, so
this version is probably better.

Comments

Darrick J. Wong July 13, 2023, 2:04 p.m. UTC | #1
On Thu, Jul 13, 2023 at 09:26:31AM +0100, Luís Henriques wrote:
> I've spent a non-negligible amount of time looking into a kmemleak that
> didn't exist in the code I was testing because there was an old .kmemleak
> file in the results directory.  I don't think this is an intended behaviour,
> so I'm proposing to remove these files everytime we capture the result of a
> new scan.
> 
> Signed-off-by: Luís Henriques <lhenriques@suse.de>

Looks good now,
Reviewed-by: Darrick J. Wong <djwong@kernel.org>

--D

> ---
>  common/rc | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> Changes since v2:
> Incorporated comment from Darrick to explain the usage of '-f' in the test
> 
> Changes since v1:
> I realised that _capture_kmemleak() is called with /dev/null as argument, so
> this version is probably better.
> 
> diff --git a/common/rc b/common/rc
> index 741579af82d2..5c4429ed0425 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -4433,6 +4433,10 @@ _capture_kmemleak()
>  	local kern_knob="$DEBUGFS_MNT/kmemleak"
>  	local leak_file="$1"
>  
> +	# Some callers pass in /dev/null when they want to clear the
> +	# kernel's leak report file and do not care what was in that.
> +	[ -f "$leak_file" ] && rm -f "$leak_file"
> +
>  	# Tell the kernel to scan for memory leaks.  Apparently the write
>  	# returns before the scan is complete, so do it twice in the hopes
>  	# that twice is enough to capture all the leaks.
diff mbox series

Patch

diff --git a/common/rc b/common/rc
index 741579af82d2..5c4429ed0425 100644
--- a/common/rc
+++ b/common/rc
@@ -4433,6 +4433,10 @@  _capture_kmemleak()
 	local kern_knob="$DEBUGFS_MNT/kmemleak"
 	local leak_file="$1"
 
+	# Some callers pass in /dev/null when they want to clear the
+	# kernel's leak report file and do not care what was in that.
+	[ -f "$leak_file" ] && rm -f "$leak_file"
+
 	# Tell the kernel to scan for memory leaks.  Apparently the write
 	# returns before the scan is complete, so do it twice in the hopes
 	# that twice is enough to capture all the leaks.