[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20131127030706.GB11852@dhcp-16-126.nay.redhat.com>
Date: Wed, 27 Nov 2013 11:07:06 +0800
From: Dave Young <dyoung@...hat.com>
To: Matt Fleming <matt@...sole-pimps.org>
Cc: linux-kernel@...r.kernel.org, linux-efi@...r.kernel.org,
x86@...nel.org, mjg59@...f.ucam.org, hpa@...or.com,
James.Bottomley@...senPartnership.com, vgoyal@...hat.com,
ebiederm@...ssion.com, horms@...ge.net.au,
kexec@...ts.infradead.org, bp@...en8.de, greg@...ah.com,
toshi.kani@...com
Subject: Re: [PATCH v4 06/12] efi: export efi runtime memory mapping to sysfs
On 11/26/13 at 07:30pm, Matt Fleming wrote:
> On Tue, 26 Nov, at 01:57:51PM, Dave Young wrote:
> > kexec kernel will need exactly same mapping for
> > efi runtime memory ranges. Thus here export the
> > runtime ranges mapping to sysfs, kexec-tools
> > will assemble them and pass to 2nd kernel via
> > setup_data.
> >
> > Introducing a new directly /sys/firmware/efi/runtime-map
>
> I'm not sure why the word "directly" is used here?
should be directory, will fix.
>
> > Just like /sys/firmware/memmap. Containing below attribute
> > in each file of that directory:
> > attribute num_pages phys_addr type virt_addr
> >
> > It will not work for efi 32bit. Only x86_64 currently.
>
> Actually, exporting the tables does work for 32-bit, right? It's just
> that kexec doesn't work for 32-bit EFI?
It does not make sense to export them for 32-bit because we do not
support kexec efi on 32-bit. Will change the description to below:
"kexec efi boot on 32-bit is not supported so I only export the tables
for 64-bit efi system."
>
> > Matt: s/efi-runtime-map.c/runtime-map.c
> > change dir name to runtime-map
> > update to use desc_size in efi_runtime_map
> > cleaup the code, add function efi_save_runtime_map
> > improve err handling
> >
> > Signed-off-by: Dave Young <dyoung@...hat.com>
> > ---
> > .../ABI/testing/sysfs-firmware-efi-runtime-map | 45 +++++
> > arch/x86/platform/efi/efi.c | 26 +++
> > drivers/firmware/efi/Kconfig | 10 ++
> > drivers/firmware/efi/Makefile | 1 +
> > drivers/firmware/efi/efi.c | 3 +-
> > drivers/firmware/efi/runtime-map.c | 199 +++++++++++++++++++++
> > include/linux/efi.h | 6 +
> > 7 files changed, 289 insertions(+), 1 deletion(-)
> > create mode 100644 Documentation/ABI/testing/sysfs-firmware-efi-runtime-map
> > create mode 100644 drivers/firmware/efi/runtime-map.c
> >
> > diff --git a/Documentation/ABI/testing/sysfs-firmware-efi-runtime-map b/Documentation/ABI/testing/sysfs-firmware-efi-runtime-map
> > new file mode 100644
> > index 0000000..dab8d41
> > --- /dev/null
> > +++ b/Documentation/ABI/testing/sysfs-firmware-efi-runtime-map
> > @@ -0,0 +1,45 @@
> > +What: /sys/firmware/efi/runtime-map/
> > +Date: Oct 2013
> > +Contact: Dave Young <dyoung@...hat.com>
> > +Description:
> > + Switching efi runtime services to virtual mode requires
> > + that all efi memory ranges which has the runtime attribute
> > + bit set to be mapped to virtual addresses.
> > +
> > + In kexec kernel kernel can not entering virtual mode again
> > + because there's a limitation that SetVirtualAddressMap can
> > + only be called once for entering virtual mode. But kexec
> > + kernel still need maintain same physical address to virtual
> > + address mapping as the 1st kernel. The mappings are exported
> > + to sysfs so userspace tools can reassemble them and pass them
> > + into kexec kernel.
>
> How about,
>
> "The efi runtime services can only be switched to virtual
> mode once without rebooting. The kexec kernel must maintain
> the same physical to virtual address mappings as the first
> kernel. The mappings are exported to sysfs so userspace tools
> can reassemble them and pass them into the kexec kernel."
>
> ?
Excellent, will above.
>
> > + /sys/firmware/efi/runtim-map/ is what kernel export for
>
> ^^ runtime-map/
Will fix the typo.
Thanks for review
Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists