Re: [PATCH] common/rc: cleanup old .kmemleak files

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Wed, Jul 12, 2023 at 03:51:01PM +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@xxxxxxx>
> ---
>  common/rc | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/common/rc b/common/rc
> index 741579af82d2..6aa6be704e51 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -4433,6 +4433,8 @@ _capture_kmemleak()
>  	local kern_knob="$DEBUGFS_MNT/kmemleak"
>  	local leak_file="$1"
>  
> +	rm -f "$leak_file"

Some callers of this helper specify a device file when all they want to
do is clear the old kmemleak report data:

$ git grep -w _capture_kmemleak
common/rc:4490:_capture_kmemleak()
common/rc:4535:         _capture_kmemleak /dev/null
common/rc:4555:         _capture_kmemleak /dev/null
common/rc:4560: _capture_kmemleak "$leak_file"

The simplest fix here I think would be:

	# 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.
	test -f "$leak_file" && rm -f "$leak_file"

--D

> +
>  	# 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.



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux