Unverified Commit e194d206 authored by Nam Cao's avatar Nam Cao Committed by Christian Brauner
Browse files

selftests: coredump: Properly initialize pointer



The buffer pointer "line" is not initialized. This pointer is passed to
getline().

It can still work if the stack is zero-initialized, because getline() can
work with a NULL pointer as buffer.

But this is obviously broken. This bug shows up while running the test on a
riscv64 machine.

Fix it by properly initializing the pointer.

Fixes: 15858da5 ("selftests: coredump: Add stackdump test")
Signed-off-by: default avatarNam Cao <namcao@linutronix.de>
Link: https://lore.kernel.org/4fb9b6fb3e0040481bacc258c44b4aab5c4df35d.1744383419.git.namcao@linutronix.de


Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parent 923ea4d4
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -138,10 +138,12 @@ TEST_F(coredump, stackdump)
	ASSERT_NE(file, NULL);

	/* Step 4: Make sure all stack pointer values are non-zero */
	line = NULL;
	for (i = 0; -1 != getline(&line, &line_length, file); ++i) {
		stack = strtoull(line, NULL, 10);
		ASSERT_NE(stack, 0);
	}
	free(line);

	ASSERT_EQ(i, 1 + NUM_THREAD_SPAWN);