mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 14:41:39 +00:00
riscv: mm: don't advertise 1 num_asid for 0 asid bits
Even if mmu doesn't support ASID, current code calculates @num_asids=1 which is misleading, so avoid setting any asid related variables in such case. Also while here, print the number of asid bits discovered even for the disabled case. Verified this on Hifive Unmatched. Reviewed-by: Anup Patel <anup@brainfault.org> Signed-off-by: Vineet Gupta <vgupta@kernel.org> Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
This commit is contained in:
parent
f2928e224d
commit
21ccdccd21
@ -233,8 +233,10 @@ static int __init asids_init(void)
|
||||
local_flush_tlb_all();
|
||||
|
||||
/* Pre-compute ASID details */
|
||||
num_asids = 1 << asid_bits;
|
||||
asid_mask = num_asids - 1;
|
||||
if (asid_bits) {
|
||||
num_asids = 1 << asid_bits;
|
||||
asid_mask = num_asids - 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Use ASID allocator only if number of HW ASIDs are
|
||||
@ -255,7 +257,7 @@ static int __init asids_init(void)
|
||||
pr_info("ASID allocator using %lu bits (%lu entries)\n",
|
||||
asid_bits, num_asids);
|
||||
} else {
|
||||
pr_info("ASID allocator disabled\n");
|
||||
pr_info("ASID allocator disabled (%lu bits)\n", asid_bits);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user