Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1451437 > unrolled thread
| Started by | Mike Travis <travis@sgi.com> |
|---|---|
| First post | 2016-07-27 19:50 +0200 |
| Last post | 2016-07-27 20:10 +0200 |
| Articles | 4 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH 0/4] x86/platform/UV: SGI UV4 Kernel Fixes Mike Travis <travis@sgi.com> - 2016-07-27 19:50 +0200
[PATCH 1/4] x86/platform/UV: Fix problem with UV4 Socket IDs not being contiguous Mike Travis <travis@sgi.com> - 2016-07-27 19:50 +0200
[PATCH 4/4] x86/platform/UV: Fix kernel panic running RHEL kdump kernel on UV Mike Travis <travis@sgi.com> - 2016-07-27 19:50 +0200
Re: [PATCH 0/4] x86/platform/UV: SGI UV4 Kernel Fixes Greg KH <gregkh@linuxfoundation.org> - 2016-07-27 20:10 +0200
| From | Mike Travis <travis@sgi.com> |
|---|---|
| Date | 2016-07-27 19:50 +0200 |
| Subject | [PATCH 0/4] x86/platform/UV: SGI UV4 Kernel Fixes |
| Message-ID | <rZB7X-2ta-5@gated-at.bofh.it> |
A few problems have been found as the UV4 BIOS and hardware is being developed and tested. These patches fix those problems. Patch1: uv4_fix_gam_range_lookup_table - Fixes a problem with building the UV4 GAM range table Patch2: uv4_fix_bios_init_error - Fixes a panic associated with the UV4 system table Patch3: uv4_remove_uvsystab_pxm - Fixes a problem with incorrect data from UV4 BIOS Patch4: uv4_disable_is_uv_system - Fixes a panic using the RHEL7 kdump kernel --
[toc] | [next] | [standalone]
| From | Mike Travis <travis@sgi.com> |
|---|---|
| Date | 2016-07-27 19:50 +0200 |
| Subject | [PATCH 1/4] x86/platform/UV: Fix problem with UV4 Socket IDs not being contiguous |
| Message-ID | <rZB7X-2ta-15@gated-at.bofh.it> |
| In reply to | #1451437 |
The UV4 Socket IDs are not guaranteed to equate to Node values which
can cause the GAM (Global Addressable Memory) table lookups to fail.
Fix this by using an independent index into the GAM table instead of
the Socket ID to reference the base address.
Reviewed-by: Dimitri Sivanich <sivanich@sgi.com>
Reviewed-by: Nathan Zimmer <nzimmer@sgi.com>
Tested-by: Frank Ramsay <framsay@sgi.com>
Tested-by: John Estabrook <estabrook@sgi.com>
Signed-off-by: Mike Travis <travis@sgi.com>
---
arch/x86/kernel/apic/x2apic_uv_x.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
--- linux-3.12.orig/arch/x86/kernel/apic/x2apic_uv_x.c
+++ linux-3.12/arch/x86/kernel/apic/x2apic_uv_x.c
@@ -325,7 +325,7 @@ static __init void build_uv_gr_table(voi
struct uv_gam_range_entry *gre = uv_gre_table;
struct uv_gam_range_s *grt;
unsigned long last_limit = 0, ram_limit = 0;
- int bytes, i, sid, lsid = -1;
+ int bytes, i, sid, lsid = -1, indx = 0, lindx = -1;
if (!gre)
return;
@@ -356,11 +356,12 @@ static __init void build_uv_gr_table(voi
}
sid = gre->sockid - _min_socket;
if (lsid < sid) { /* new range */
- grt = &_gr_table[sid];
- grt->base = lsid;
+ grt = &_gr_table[indx];
+ grt->base = lindx;
grt->nasid = gre->nasid;
grt->limit = last_limit = gre->limit;
lsid = sid;
+ lindx = indx++;
continue;
}
if (lsid == sid && !ram_limit) { /* update range */
@@ -371,7 +372,7 @@ static __init void build_uv_gr_table(voi
}
if (!ram_limit) { /* non-contiguous ram range */
grt++;
- grt->base = sid - 1;
+ grt->base = lindx;
grt->nasid = gre->nasid;
grt->limit = last_limit = gre->limit;
continue;
--
[toc] | [prev] | [next] | [standalone]
| From | Mike Travis <travis@sgi.com> |
|---|---|
| Date | 2016-07-27 19:50 +0200 |
| Subject | [PATCH 4/4] x86/platform/UV: Fix kernel panic running RHEL kdump kernel on UV |
| Message-ID | <rZB7X-2ta-13@gated-at.bofh.it> |
| In reply to | #1451437 |
The latest UV kernel support panics when RHEL7 kexec's the kdump kernel
to make a dumpfile. This patch fixes the problem by turning off all UV
support if NUMA is off.
Reviewed-by: Dimitri Sivanich <sivanich@sgi.com>
Reviewed-by: Nathan Zimmer <nzimmer@sgi.com>
Tested-by: Frank Ramsay <framsay@sgi.com>
Tested-by: John Estabrook <estabrook@sgi.com>
Signed-off-by: Mike Travis <travis@sgi.com>
---
arch/x86/kernel/apic/x2apic_uv_x.c | 5 +++++
1 file changed, 5 insertions(+)
--- linux-3.12.orig/arch/x86/kernel/apic/x2apic_uv_x.c
+++ linux-3.12/arch/x86/kernel/apic/x2apic_uv_x.c
@@ -223,6 +223,11 @@ static int __init uv_acpi_madt_oem_check
if (strncmp(oem_id, "SGI", 3) != 0)
return 0;
+ if (numa_off) {
+ pr_err("UV: NUMA is off, disabling UV support\n");
+ return 0;
+ }
+
/* Setup early hub type field in uv_hub_info for Node 0 */
uv_cpu_info->p_uv_hub_info = &uv_hub_info_node0;
--
[toc] | [prev] | [next] | [standalone]
| From | Greg KH <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-07-27 20:10 +0200 |
| Message-ID | <rZBrj-2Qg-13@gated-at.bofh.it> |
| In reply to | #1451437 |
On Wed, Jul 27, 2016 at 12:33:31PM -0500, Mike Travis wrote: > > A few problems have been found as the UV4 BIOS and hardware is being > developed and tested. These patches fix those problems. > > Patch1: uv4_fix_gam_range_lookup_table > - Fixes a problem with building the UV4 GAM range table > > Patch2: uv4_fix_bios_init_error > - Fixes a panic associated with the UV4 system table > > Patch3: uv4_remove_uvsystab_pxm > - Fixes a problem with incorrect data from UV4 BIOS > > Patch4: uv4_disable_is_uv_system > - Fixes a panic using the RHEL7 kdump kernel <formletter> This is not the correct way to submit patches for inclusion in the stable kernel tree. Please read Documentation/stable_kernel_rules.txt for how to do this properly. </formletter>
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web