Commit 2e90de76 authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

refperf: Dynamically allocate thread-summary output buffer



Currently, the buffer used to accumulate the thread-summary output is
fixed size, which will cause problems if someone decides to run on a large
number of PCUs.  This commit therefore dynamically allocates this buffer.

[ paulmck: Fix memory allocation as suggested by KASAN. ]
Cc: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
parent f518f154
Loading
Loading
Loading
Loading
+5 −1
Original line number Original line Diff line number Diff line
@@ -301,9 +301,12 @@ u64 process_durations(int n)
	int i;
	int i;
	struct reader_task *rt;
	struct reader_task *rt;
	char buf1[64];
	char buf1[64];
	char buf[512];
	char *buf;
	u64 sum = 0;
	u64 sum = 0;


	buf = kmalloc(128 + nreaders * 32, GFP_KERNEL);
	if (!buf)
		return 0;
	buf[0] = 0;
	buf[0] = 0;
	sprintf(buf, "Experiment #%d (Format: <THREAD-NUM>:<Total loop time in ns>)",
	sprintf(buf, "Experiment #%d (Format: <THREAD-NUM>:<Total loop time in ns>)",
		exp_idx);
		exp_idx);
@@ -322,6 +325,7 @@ u64 process_durations(int n)


	PERFOUT("%s\n", buf);
	PERFOUT("%s\n", buf);


	kfree(buf);
	return sum;
	return sum;
}
}