[PATCH] x86/platform/uv: Add set of kernel block size for hubless arches

From: Mike Travis
Date: Thu Mar 04 2021 - 17:40:36 EST


The commit below added a call to set the block size value that is needed
to set the value used by the kernel. This was done for UV Hubbed systems.
This commit adds that same set call to hubless systems which supports the
same NVRAMS and Intel BIOS thus the same problem occurs.

Fixes: bbbd2b51a2aa ...
Add a call to the new function to "adjust" the current fixed
UV memory block size of 2GB so it can be changed to a different
physical boundary. This accommodates changes in the Intel BIOS,
and therefore UV BIOS, which now can align boundaries different
than the previous UV standard of 2GB.

Signed-off-by: Mike Travis <mike.travis@xxxxxxx>
Reviewed-by: Steve Wahl <steve.wahl@xxxxxxx>
Reviewed-by: Russ Anderson <rja@xxxxxxx>
---
arch/x86/kernel/apic/x2apic_uv_x.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c
index 52bc217ca8c3..c9ddd233e32f 100644
--- a/arch/x86/kernel/apic/x2apic_uv_x.c
+++ b/arch/x86/kernel/apic/x2apic_uv_x.c
@@ -1671,6 +1671,9 @@ static __init int uv_system_init_hubless(void)
if (rc < 0)
return rc;

+ /* Set section block size for current node memory */
+ set_block_size();
+
/* Create user access node */
if (rc >= 0)
uv_setup_proc_files(1);
--
2.21.0