Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1338457

Re: [PATCH 5/9] apm32: remove paravirt_enabled() use

From "Luis R. Rodriguez" <mcgrof@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH 5/9] apm32: remove paravirt_enabled() use
Date 2016-02-19 22:00 +0100
Message-ID <r40jE-2yF-9@gated-at.bofh.it> (permalink)
References <r3SYO-5z8-5@gated-at.bofh.it> <r3SYP-5z8-31@gated-at.bofh.it> <r3V0C-6Wq-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Feb 19, 2016 at 10:08:43AM -0500, Boris Ostrovsky wrote:
> 
> 
> On 02/19/2016 08:08 AM, Luis R. Rodriguez wrote:
> >There is already a check for apm_info.bios == 0, the
> >apm_info.bios is set from the boot_params.apm_bios_info.
> >Both Xen and lguest, which are also the only ones that set
> >paravirt_enabled to true) do never set the apm_bios_info,
> >the paravirt_enabled() check is simply not needed.
> 
> We need to guarantee that boot_params is filled with zeroes. On
> baremetal path we clear .bss (which is where boot_params live)
> before copying data from zero page.

To be clear Xen is the only user of this that just sets it
outright instead of poking at the file and using that as
reference, and setting what it needs. Its a good point
though that things like this which are 0 still should
probably be set.

> So we need to at least memset(&boot_params, 0, sz)

This use case would be just Xen specific, for lguest
we can just set the things we need clearly on the
launcher. So like this (I can fold in a separate
patch):


diff --git a/tools/lguest/lguest.c b/tools/lguest/lguest.c
index ff0aa580c6e1..0aa75af6e862 100644
--- a/tools/lguest/lguest.c
+++ b/tools/lguest/lguest.c
@@ -3357,6 +3357,12 @@ int main(int argc, char *argv[])
 	/* Tell the entry path not to try to reload segment registers. */
 	boot->hdr.loadflags |= KEEP_SEGMENTS;
 
+	/* We don't support tboot */
+	boot->tboot_addr = 0;
+
+	/* Ensure this is 0 to prevent apm from loading */
+	boot->apm_bios_info.version = 0;
+
 	/* We tell the kernel to initialize the Guest. */
 	tell_kernel(start);
 

> in xen_start_kernel(). Better yet, clear whole .bss.
> 
> (This applies to the next patch as well).

So clear_bss() -- oh look, another call that xen_start_kernel() could have made
good use of. :)  Can you send a respective patch I can old into this series?
I'm afraid it is by no means obvious to me where it would be safe to do this on
xen_start_kernel().

  Luis

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/9] x86/init: replace paravirt_enabled() were possible "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:10 +0100
  [PATCH 8/9] x86/rtc: replace paravirt_enabled() check with subarch check "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:10 +0100
    Re: [Xen-devel] [PATCH 8/9] x86/rtc: replace paravirt_enabled() check  with subarch check Juergen Gross <jgross@suse.com> - 2016-02-19 14:30 +0100
      Re: [Xen-devel] [PATCH 8/9] x86/rtc: replace paravirt_enabled()  check with subarch check "Luis R. Rodriguez" <mcgrof@suse.com> - 2016-02-19 15:50 +0100
        Re: [Xen-devel] [PATCH 8/9] x86/rtc: replace paravirt_enabled()  check with subarch check "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-22 07:10 +0100
          Re: [Xen-devel] [PATCH 8/9] x86/rtc: replace paravirt_enabled()  check with subarch check Borislav Petkov <bp@alien8.de> - 2016-02-22 11:30 +0100
            Re: [Xen-devel] [PATCH 8/9] x86/rtc: replace paravirt_enabled() check  with subarch check Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-02-22 15:40 +0100
    Re: [Xen-devel] [PATCH 8/9] x86/rtc: replace paravirt_enabled() check  with subarch check David Vrabel <david.vrabel@citrix.com> - 2016-02-19 14:30 +0100
  [PATCH 5/9] apm32: remove paravirt_enabled() use "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:10 +0100
    Re: [PATCH 5/9] apm32: remove paravirt_enabled() use Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-02-19 16:20 +0100
      Re: [PATCH 5/9] apm32: remove paravirt_enabled() use "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 22:00 +0100
        Re: [PATCH 5/9] apm32: remove paravirt_enabled() use Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-02-19 23:20 +0100
          Re: [PATCH 5/9] apm32: remove paravirt_enabled() use "Luis R. Rodriguez" <mcgrof@suse.com> - 2016-02-20 01:50 +0100
            Re: [PATCH 5/9] apm32: remove paravirt_enabled() use Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-02-22 15:20 +0100
  [PATCH 4/9] x86/init: make ebda depend on PC subarch "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:20 +0100
  [PATCH 1/9] x86/boot: enumerate documentation for the x86 hardware_subarch "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:20 +0100
    Re: [Xen-devel] [PATCH 1/9] x86/boot: enumerate documentation for the  x86 hardware_subarch Juergen Gross <jgross@suse.com> - 2016-02-19 14:30 +0100
    Re: [Xen-devel] [PATCH 1/9] x86/boot: enumerate documentation for the  x86 hardware_subarch David Vrabel <david.vrabel@citrix.com> - 2016-02-19 14:50 +0100
      Re: [Xen-devel] [PATCH 1/9] x86/boot: enumerate documentation for  the x86 hardware_subarch "Luis R. Rodriguez" <mcgrof@suse.com> - 2016-02-19 15:50 +0100
  [PATCH 6/9] x86/tboot: remove paravirt_enabled() "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:20 +0100
  [PATCH 7/9] x86/cpu/intel: replace paravirt_enabled() for f00f work around "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:20 +0100
  [PATCH 3/9] x86/xen: use X86_SUBARCH_XEN for PV guest boots "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-02-19 14:20 +0100
  Re: [Xen-devel] [PATCH 0/9] x86/init: replace paravirt_enabled() were  possible David Vrabel <david.vrabel@citrix.com> - 2016-02-19 14:40 +0100
    Re: [Xen-devel] [PATCH 0/9] x86/init: replace paravirt_enabled()  were possible "Luis R. Rodriguez" <mcgrof@suse.com> - 2016-02-19 15:40 +0100

csiph-web