profile: fix stats and data leakage

commit 16a2164bb0 upstream.

If the kernel is large or the profiling step small, /proc/profile
leaks data and readprofile shows silly stats, until readprofile -r
has reset the buffer: clear the prof_buffer when it is vmalloc()ed.

Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Hugh Dickins
2010-05-14 19:44:10 -07:00
committed by Greg Kroah-Hartman
parent d8ca15afb8
commit 7ff4b9ccda

View File

@@ -127,8 +127,10 @@ int __ref profile_init(void)
return 0;
prof_buffer = vmalloc(buffer_bytes);
if (prof_buffer)
if (prof_buffer) {
memset(prof_buffer, 0, buffer_bytes);
return 0;
}
free_cpumask_var(prof_cpu_mask);
return -ENOMEM;