Skip to content

Commit 0a8700a

Browse files
mike-travisSomasundaram Krishnasamy
authored andcommitted
x86/platform/uv: Decode UVsystab Info
Upstream commit f5a8f0e Decode the hubless UVsystab passed from BIOS to the kernel saving pertinent info in a similar manner that hubbed UVsystabs are decoded. Signed-off-by: Mike Travis <[email protected]> Reviewed-by: Steve Wahl <[email protected]> Reviewed-by: Dimitri Sivanich <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Christoph Hellwig <[email protected]> Cc: H. Peter Anvin <[email protected]> Cc: Hedi Berriche <[email protected]> Cc: Justin Ernst <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Russ Anderson <[email protected]> Cc: Thomas Gleixner <[email protected]> Link: https://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]> Orabug: 30518602 Signed-off-by: Somasundaram Krishnasamy <[email protected]> Reviewed-by: John Donnelly <[email protected]>
1 parent a61436d commit 0a8700a

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

arch/x86/kernel/apic/x2apic_uv_x.c

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1330,7 +1330,8 @@ static int __init decode_uv_systab(void)
13301330
struct uv_systab *st;
13311331
int i;
13321332

1333-
if (uv_hub_info->hub_revision < UV4_HUB_REVISION_BASE)
1333+
/* If system is uv3 or lower, there is no extended UVsystab */
1334+
if (is_uv_hubbed(0xfffffe) < uv(4) && is_uv_hubless(0xfffffe) < uv(4))
13341335
return 0; /* No extended UVsystab required */
13351336

13361337
st = uv_systab;
@@ -1581,8 +1582,15 @@ static __init int uv_system_init_hubless(void)
15811582

15821583
/* Init kernel/BIOS interface */
15831584
rc = uv_bios_init();
1585+
if (rc < 0)
1586+
return rc;
15841587

1585-
/* Create user access node if UVsystab available */
1588+
/* Process UVsystab */
1589+
rc = decode_uv_systab();
1590+
if (rc < 0)
1591+
return rc;
1592+
1593+
/* Create user access node */
15861594
if (rc >= 0)
15871595
uv_setup_proc_files(1);
15881596

0 commit comments

Comments
 (0)