All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Thorlton <athorlton@sgi.com>
To: linux-kernel@vger.kernel.org
Cc: Alex Thorlton <athorlton@sgi.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	Matt Fleming <matt@codeblueprint.co.uk>,
	Adam Buchbinder <adam.buchbinder@gmail.com>,
	Len Brown <len.brown@intel.com>, Borislav Petkov <bp@suse.de>,
	Russ Anderson <rja@sgi.com>, Dimitri Sivanich <sivanich@sgi.com>,
	x86@kernel.org
Subject: [PATCH] x86/platform/UV: Bring back the call to map_low_mmrs in uv_system_init
Date: Wed,  4 May 2016 17:39:52 -0500	[thread overview]
Message-ID: <1462401592-120735-1-git-send-email-athorlton@sgi.com> (raw)

A while back, commit d394f2d9d8e1 ("x86/platform/UV: Remove EFI memmap
quirk for UV2+") changed uv_system_init to only call map_low_mmrs on
older UV1 hardware, which requires EFI_OLD_MEMMAP to be set in order to
boot.  The recent changes to the EFI memory mapping code in commit
d2f7cbe7b26a ("x86/efi: Runtime services virtual mapping") exposed some
issues with the fact that we were relying on the EFI memory mapping
mechanisms to map in our MMRs for us, after commit d394f2d9d8e1.

Rather than revert the entire commit and go back to forcing
EFI_OLD_MEMMAP on all UVs, we're going to add the call to map_low_mmrs
back into uv_system_init, and then fix up our EFI runtime calls to use
the appropriate page table.

For now, UV2+ will still need efi=old_map to boot, but there will be
other changes soon that should eliminate the need for this.

Signed-off-by: Alex Thorlton <athorlton@sgi.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Adam Buchbinder <adam.buchbinder@gmail.com>
Cc: Len Brown <len.brown@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: Russ Anderson <rja@sgi.com>
Cc: Dimitri Sivanich <sivanich@sgi.com>
Cc: x86@kernel.org
---
 arch/x86/kernel/apic/x2apic_uv_x.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c
index 8f4942e..d7ce96a 100644
--- a/arch/x86/kernel/apic/x2apic_uv_x.c
+++ b/arch/x86/kernel/apic/x2apic_uv_x.c
@@ -891,9 +891,7 @@ void __init uv_system_init(void)
 	}
 	pr_info("UV: Found %s hub\n", hub);
 
-	/* We now only need to map the MMRs on UV1 */
-	if (is_uv1_hub())
-		map_low_mmrs();
+	map_low_mmrs();
 
 	m_n_config.v = uv_read_local_mmr(UVH_RH_GAM_CONFIG_MMR );
 	m_val = m_n_config.s.m_skt;
-- 
1.8.5.6

             reply	other threads:[~2016-05-04 22:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-04 22:39 Alex Thorlton [this message]
2016-05-05  7:53 ` [PATCH] x86/platform/UV: Bring back the call to map_low_mmrs in uv_system_init Ingo Molnar
2016-05-05 14:18   ` Alex Thorlton
2016-05-05  9:43 ` [tip:x86/platform] " tip-bot for Alex Thorlton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1462401592-120735-1-git-send-email-athorlton@sgi.com \
    --to=athorlton@sgi.com \
    --cc=adam.buchbinder@gmail.com \
    --cc=bp@suse.de \
    --cc=hpa@zytor.com \
    --cc=len.brown@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matt@codeblueprint.co.uk \
    --cc=mingo@redhat.com \
    --cc=rja@sgi.com \
    --cc=sivanich@sgi.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.