Unverified Commit 33981b1c authored by Alexandre Ghiti's avatar Alexandre Ghiti
Browse files

riscv: Fix missing __free_pages() in check_vector_unaligned_access()

The locally allocated pages are never freed up, so add the corresponding
__free_pages().

Fixes: e7c9d66e ("RISC-V: Report vector unaligned access speed hwprobe")
Link: https://lore.kernel.org/r/20250228090613.345309-1-alexghiti@rivosinc.com


Signed-off-by: default avatarAlexandre Ghiti <alexghiti@rivosinc.com>
parent 475afa39
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -349,7 +349,7 @@ static void check_vector_unaligned_access(struct work_struct *work __always_unus
		pr_warn("cpu%d: rdtime lacks granularity needed to measure unaligned vector access speed\n",
			cpu);

		return;
		goto free;
	}

	if (word_cycles < byte_cycles)
@@ -363,6 +363,9 @@ static void check_vector_unaligned_access(struct work_struct *work __always_unus
		(speed ==  RISCV_HWPROBE_MISALIGNED_VECTOR_FAST) ? "fast" : "slow");

	per_cpu(vector_misaligned_access, cpu) = speed;

free:
	__free_pages(page, MISALIGNED_BUFFER_ORDER);
}

static int riscv_online_cpu_vec(unsigned int cpu)