All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>
To: "Lee,
	Chun-Yi" <joeyli.kernel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Matt Fleming
	<matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
Cc: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
	Borislav Petkov <bp-Gina5bIWoIWzQB+pC5nmwQ@public.gmane.org>,
	Ingo Molnar <mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	x86-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, "Lee,
	Chun-Yi" <jlee-IBi9RG/b67k@public.gmane.org>
Subject: Re: [PATCH] x86_64/efi: Mapping Boot and Runtime EFI memory regions to different starting virtual address
Date: Thu, 30 Jul 2015 00:53:42 -0700	[thread overview]
Message-ID: <55B9D806.7030705@zytor.com> (raw)
In-Reply-To: <1438230757-30840-1-git-send-email-jlee-IBi9RG/b67k@public.gmane.org>

On 07/29/2015 09:32 PM, Lee, Chun-Yi wrote:
> When testing hibernate, I found the EFI runtime services was broken
> on some old EFI machines on my hand, Intel DQ57TM development board
> and Acer Gateway Z5WT2 notebook.
> 
> After printing the EFI memmap and virtual address mapping on -4G area,
> found those issue machines keep the physical address of Runtime
> Data/Code regions unchanged but not Boot Data/Code. The logs were
> attached on openSUSE bug:
>     https://bugzilla.suse.com/show_bug.cgi?id=939979
> 
> Due to Boot Data/Code can be used by OS as available memory regions,
> so those old EFI BIOS do not keep the physical address of Boot regions
> unchanged. But, address of Runtime regions are the same.
> 
> On Intel DQ57TM, sometimes the order of EFI Boot regions changed. On
> Acer Gateway Z5WT2, the amount of EFI Boot regions changed.
> 
> The above changing of EFI Boot regions causes the EFI Runtime Data/Code
> may not mapping to constant virtual address, that's because the EFI Boot
> and Runtime regions are interleaved and EFI va mapping applied PMD
> 2M-aligned logic.
> 
> A workaround of this situation is mapping Boot and Runtime regions to
> different starting virtual address. Then the changing of Boot Data/Code
> regions will not affect to the virtual address mapping to Runtime
> Data/Code.
> 
> This patch adds codes for mapping Boot Data/Code regions start from
> 0xffff_ffff_0000_0000, has 1G space. And mapping Runtime Data/Code
> regions start from 0xffff_fffe_c000_0000 that has 63G space.
> 

This changelog is at least partially incomprehensive.  It also seems
more than a bit aggressive to expect that 1 GB will be sufficient forever.

	-hpa

WARNING: multiple messages have this Message-ID (diff)
From: "H. Peter Anvin" <hpa@zytor.com>
To: "Lee, Chun-Yi" <joeyli.kernel@gmail.com>,
	Matt Fleming <matt@codeblueprint.co.uk>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Borislav Petkov <bp@alien8.de>, Ingo Molnar <mingo@redhat.com>,
	x86@kernel.org, linux-efi@vger.kernel.org,
	linux-kernel@vger.kernel.org, "Lee, Chun-Yi" <jlee@suse.com>
Subject: Re: [PATCH] x86_64/efi: Mapping Boot and Runtime EFI memory regions to different starting virtual address
Date: Thu, 30 Jul 2015 00:53:42 -0700	[thread overview]
Message-ID: <55B9D806.7030705@zytor.com> (raw)
In-Reply-To: <1438230757-30840-1-git-send-email-jlee@suse.com>

On 07/29/2015 09:32 PM, Lee, Chun-Yi wrote:
> When testing hibernate, I found the EFI runtime services was broken
> on some old EFI machines on my hand, Intel DQ57TM development board
> and Acer Gateway Z5WT2 notebook.
> 
> After printing the EFI memmap and virtual address mapping on -4G area,
> found those issue machines keep the physical address of Runtime
> Data/Code regions unchanged but not Boot Data/Code. The logs were
> attached on openSUSE bug:
>     https://bugzilla.suse.com/show_bug.cgi?id=939979
> 
> Due to Boot Data/Code can be used by OS as available memory regions,
> so those old EFI BIOS do not keep the physical address of Boot regions
> unchanged. But, address of Runtime regions are the same.
> 
> On Intel DQ57TM, sometimes the order of EFI Boot regions changed. On
> Acer Gateway Z5WT2, the amount of EFI Boot regions changed.
> 
> The above changing of EFI Boot regions causes the EFI Runtime Data/Code
> may not mapping to constant virtual address, that's because the EFI Boot
> and Runtime regions are interleaved and EFI va mapping applied PMD
> 2M-aligned logic.
> 
> A workaround of this situation is mapping Boot and Runtime regions to
> different starting virtual address. Then the changing of Boot Data/Code
> regions will not affect to the virtual address mapping to Runtime
> Data/Code.
> 
> This patch adds codes for mapping Boot Data/Code regions start from
> 0xffff_ffff_0000_0000, has 1G space. And mapping Runtime Data/Code
> regions start from 0xffff_fffe_c000_0000 that has 63G space.
> 

This changelog is at least partially incomprehensive.  It also seems
more than a bit aggressive to expect that 1 GB will be sufficient forever.

	-hpa



  parent reply	other threads:[~2015-07-30  7:53 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-30  4:32 [PATCH] x86_64/efi: Mapping Boot and Runtime EFI memory regions to different starting virtual address Lee, Chun-Yi
2015-07-30  4:32 ` Lee, Chun-Yi
     [not found] ` <1438230757-30840-1-git-send-email-jlee-IBi9RG/b67k@public.gmane.org>
2015-07-30  7:53   ` H. Peter Anvin [this message]
2015-07-30  7:53     ` H. Peter Anvin
     [not found]     ` <55B9D806.7030705-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>
2015-07-30  8:03       ` Borislav Petkov
2015-07-30  8:03         ` Borislav Petkov
     [not found]         ` <20150730080323.GD8984-K5JNixvcfoxupOikMc4+xw@public.gmane.org>
2015-07-30 10:11           ` Matt Fleming
2015-07-30 10:11             ` Matt Fleming
     [not found]             ` <20150730101131.GB2725-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-07-30 11:09               ` joeyli
2015-07-30 11:09                 ` joeyli
     [not found]                 ` <20150730110959.GJ15651-empE8CJ7fzk2xCFIczX1Fw@public.gmane.org>
2015-07-30 11:18                   ` joeyli
2015-07-30 11:18                     ` joeyli
     [not found]                     ` <20150730111819.GK15651-empE8CJ7fzk2xCFIczX1Fw@public.gmane.org>
2015-07-30 12:09                       ` Matt Fleming
2015-07-30 12:09                         ` Matt Fleming
     [not found]                         ` <20150730120916.GD2725-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-07-30 12:31                           ` joeyli
2015-07-30 12:31                             ` joeyli
2015-07-30 13:17                             ` Matt Fleming
     [not found]                               ` <20150730131723.GG2725-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-07-30 13:39                                 ` joeyli
2015-07-30 13:39                                   ` joeyli
2015-07-30 14:05                                   ` Matt Fleming
     [not found]                                     ` <20150730140542.GI2725-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-07-30 14:16                                       ` joeyli
2015-07-30 14:16                                         ` joeyli
2015-08-19 16:31                                         ` Matt Fleming
2015-08-20  1:05                                           ` joeyli

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=55B9D806.7030705@zytor.com \
    --to=hpa-ymnouzjc4hwavxtiumwx3w@public.gmane.org \
    --cc=bp-Gina5bIWoIWzQB+pC5nmwQ@public.gmane.org \
    --cc=jlee-IBi9RG/b67k@public.gmane.org \
    --cc=joeyli.kernel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org \
    --cc=mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org \
    --cc=x86-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.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.