- 10 Oct, 2018 1 commit
-
-
Juergen Gross authored
Xen PVH guests receive the address of the RSDP table from Xen. In order to support booting a Xen PVH guest via Grub2 using the standard x86 boot entry we need a way for Grub2 to pass the RSDP address to the kernel. For this purpose expand the struct setup_header to hold the physical address of the RSDP address. Being zero means it isn't specified and has to be located the legacy way (searching through low memory or EBDA). While documenting the new setup_header layout and protocol version 2.14 add the missing documentation of protocol version 2.13. There are Grub2 versions in several distros with a downstream patch violating the boot protocol by writing past the end of setup_header. This requires another update of the boot protocol to enable the kernel to distinguish between a specified RSDP address and one filled with garbage by such a broken Grub2. From protocol 2.14 on Grub2 will write the version it is supporting (but never a higher value than found to be supported by the kernel) ored with 0x8000 to the version field of setup_header. This enables the kernel to know up to which field Grub2 has written information to. All fields after that are supposed to be clobbered. Signed-off-by:
Juergen Gross <jgross@suse.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: boris.ostrovsky@oracle.com Cc: bp@alien8.de Cc: corbet@lwn.net Cc: linux-doc@vger.kernel.org Cc: xen-devel@lists.xenproject.org Link: http://lkml.kernel.org/r/20181010061456.22238-3-jgross@suse.comSigned-off-by:
Ingo Molnar <mingo@kernel.org>
-
- 24 Oct, 2016 1 commit
-
-
Mauro Carvalho Chehab authored
The previous patch renamed several files that are cross-referenced along the Kernel documentation. Adjust the links to point to the right places. Signed-off-by:
Mauro Carvalho Chehab <mchehab@s-opensource.com>
-
- 11 May, 2015 1 commit
-
-
Miroslav Benes authored
Documentation/x86/boot.txt labels the bit in boot_params.hdr.loadflags as ALSR_FLAG while it should be KASLR_FLAG. Signed-off-by:
Miroslav Benes <mbenes@suse.cz> Signed-off-by:
Borislav Petkov <bp@suse.de> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Borislav Petkov <bp@alien8.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Jiri Kosina <jkosina@suse.cz> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/1429011324-7170-1-git-send-email-mbenes@suse.cz Link: http://lkml.kernel.org/r/1431332153-18566-4-git-send-email-bp@alien8.deSigned-off-by:
Ingo Molnar <mingo@kernel.org>
-
- 30 Apr, 2015 1 commit
-
-
Alex Smith authored
The cmdline_size field in setup_header is listed as read-only, and is never read by the kernel. Therefore, there is no need for it to be set by a boot loader implementing the EFI handover protocol, so remove it from the list of fields required to be set by a boot loader. Signed-off-by:
Alex Smith <alex@alex-smith.me.uk> Cc: H. Peter Anvin <hpa@linux.intel.com> Cc: x86@kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by:
Matt Fleming <matt.fleming@intel.com>
-
- 03 Apr, 2015 1 commit
-
-
Borislav Petkov authored
Commit: e2b32e67 ("x86, kaslr: randomize module base load address") made module base address randomization unconditional and didn't regard disabled KKASLR due to CONFIG_HIBERNATION and command line option "nokaslr". For more info see (now reverted) commit: f47233c2 ("x86/mm/ASLR: Propagate base load address calculation") In order to propagate KASLR status to kernel proper, we need a single bit in boot_params.hdr.loadflags and we've chosen bit 1 thus leaving the top-down allocated bits for bits supposed to be used by the bootloader. Originally-From: Jiri Kosina <jkosina@suse.cz> Suggested-by:
H. Peter Anvin <hpa@zytor.com> Signed-off-by:
Borislav Petkov <bp@suse.de> Cc: Kees Cook <keescook@chromium.org> Signed-off-by:
Ingo Molnar <mingo@kernel.org>
-
- 13 Mar, 2014 1 commit
-
-
Borislav Petkov authored
The name in struct bootparam is ->initrd_addr_max and not ramdisk_max. Fix that. Signed-off-by:
Borislav Petkov <bp@suse.de> Link: http://lkml.kernel.org/r/1394633584-5509-2-git-send-email-bp@alien8.deSigned-off-by:
H. Peter Anvin <hpa@linux.intel.com>
-
- 29 Dec, 2013 1 commit
-
-
Dave Young authored
Old kexec-tools can not load new kernels. The reason is kexec-tools does not fill efi_info in x86 setup header previously, thus EFI failed to initialize. In new kexec-tools it will by default to fill efi_info and pass other EFI required infomation to 2nd kernel so kexec kernel EFI initialization can succeed finally. To prevent from breaking userspace, add a new xloadflags bit so kexec-tools can check the flag and switch to old logic. Signed-off-by:
Dave Young <dyoung@redhat.com> Acked-by:
Borislav Petkov <bp@suse.de> Tested-by:
Toshi Kani <toshi.kani@hp.com> Signed-off-by:
Matt Fleming <matt.fleming@intel.com>
-
- 25 Jul, 2013 1 commit
-
-
Masanari Iida authored
Correct typo (double words) in documentations. Signed-off-by:
Masanari Iida <standby24x7@gmail.com> Acked-by:
Randy Dunlap <rdunlap@infradead.org> Signed-off-by:
Jiri Kosina <jkosina@suse.cz>
-
- 09 Jul, 2013 1 commit
-
-
Kyungsik Lee authored
Integrates the LZ4 decompression code to the arm pre-boot code. Signed-off-by:
Kyungsik Lee <kyungsik.lee@lge.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Borislav Petkov <bp@alien8.de> Cc: Florian Fainelli <florian@openwrt.org> Cc: Yann Collet <yann.collet.73@gmail.com> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- 08 Feb, 2013 2 commits
-
-
H. Peter Anvin authored
OVMF (an implementation of UEFI based on TianoCore used in virtual environments) now has the ability to boot Linux natively; this is used for "qemu -kernel" and similar things in a UEFI environment. Accordingly, assign it a bootloader ID. Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com> Cc: David Woodhouse <dwmw2@infradead.org>
-
H. Peter Anvin authored
The boot protocol 2.12 changes were pulled for 3.8, so update the documentation accordingly. Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com>
-
- 01 Feb, 2013 1 commit
-
-
H. Peter Anvin authored
The boot protocol 2.12 changes were pulled for 3.8, so update the documentation accordingly. Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com>
-
- 30 Jan, 2013 1 commit
-
-
Yinghai Lu authored
Now 64bit entry is fixed on 0x200, can not be changed anymore. Update the comments to reflect that. Also put info about it in boot.txt -v2: fix some grammar error Signed-off-by:
Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/1359058816-7615-27-git-send-email-yinghai@kernel.org Cc: Rob Landley <rob@landley.net> Cc: Matt Fleming <matt.fleming@intel.com> Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com>
-
- 27 Jan, 2013 1 commit
-
-
H. Peter Anvin authored
Define the 2.12 bzImage boot protocol: add xloadflags and additional fields to allow the command line, initramfs and struct boot_params to live above the 4 GiB mark. The xloadflags now communicates if this is a 64-bit kernel with the legacy 64-bit entry point and which of the EFI handover entry points are supported. Avoid adding new read flags to loadflags because of claimed bootloaders testing the whole byte for == 1 to determine bzImageness at least until the issue can be researched further. This is based on patches by Yinghai Lu and David Woodhouse. Originally-by:
Yinghai Lu <yinghai@kernel.org> Originally-by:
David Woodhouse <dwmw2@infradead.org> Acked-by:
Yinghai Lu <yinghai@kernel.org> Acked-by:
David Woodhouse <dwmw2@infradead.org> Acked-by:
Matt Fleming <matt.fleming@intel.com> Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com> Link: http://lkml.kernel.org/r/1359058816-7615-26-git-send-email-yinghai@kernel.org Cc: Rob Landley <rob@landley.net> Cc: Gokul Caushik <caushik1@gmail.com> Cc: Josh Triplett <josh@joshtriplett.org> Cc: Joe Millenbach <jmillenbach@gmail.com>
-
- 13 Dec, 2012 2 commits
-
-
H. Peter Anvin authored
Etherboot -> gPXE -> iPXE... Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com> Cc: Michael Brown <mbrown@fensystems.co.uk>
-
H. Peter Anvin authored
Add bootloader id D for kexec-tools (it is kexec-tools, not the kexec system call, that builds the data structures, therefore it is kexec-tools which is the "bootloader" for this purpose.) Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com> Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/50C95832.5030306@zytor.com
-
- 26 Oct, 2012 1 commit
-
-
Kees Cook authored
Fixes some minor issues in the x86 boot documentation. Signed-off-by:
Kees Cook <keescook@chromium.org> Cc: Rob Landley <rob@landley.net> Link: http://lkml.kernel.org/r/20121026031702.GA23828@www.outflux.netSigned-off-by:
Ingo Molnar <mingo@kernel.org>
-
- 23 Jul, 2012 1 commit
-
-
H. Peter Anvin authored
Assign a bootloader ID for Sebastian Plotz' "Minimal Linux Bootloader" (http://sebastian-plotz.blogspot.de). Sebastian has agreed to make this the pilot for the use of extended boot loader IDs, so this is assigned version ID 0x11 (avoid assigning 0x10 for now to catch bugs with people putting E in the primary ID but leaving the extended ID as zero.) Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com> Cc: Sebastian Plotz <sebastian-plotz@web.de> Link: http://lkml.kernel.org/n/tip-nq318h0okuaem8x9dpv9854k@git.kernel.org
-
- 20 Jul, 2012 1 commit
-
-
Matt Fleming authored
As things currently stand, traditional EFI boot loaders and the EFI boot stub are carrying essentially the same initialisation code required to setup an EFI machine for booting a kernel. There's really no need to have this code in two places and the hope is that, with this new protocol, initialisation and booting of the kernel can be left solely to the kernel's EFI boot stub. The responsibilities of the boot loader then become, o Loading the kernel image from boot media File system code still needs to be carried by boot loaders for the scenario where the kernel and initrd files reside on a file system that the EFI firmware doesn't natively understand, such as ext4, etc. o Providing a user interface Boot loaders still need to display any menus/interfaces, for example to allow the user to select from a list of kernels. Bump the boot protocol number because we added the 'handover_offset' field to indicate the location of the handover protocol entry point. Cc: H. Peter Anvin <hpa@zytor.com> Cc: Peter Jones <pjones@redhat.com> Cc: Ingo Molnar <mingo@kernel.org> Signed-off-by:
Matt Fleming <matt.fleming@intel.com> Acked-and-Tested-by:
Matthew Garrett <mjg@redhat.com> Link: http://lkml.kernel.org/r/1342689828-16815-1-git-send-email-matt@console-pimps.orgSigned-off-by:
H. Peter Anvin <hpa@zytor.com>
-
- 13 Jul, 2011 1 commit
-
-
Darren Hart authored
The real-mode kernel header init_size field is located at 0x260 per the field listing in th e"REAL-MODE KERNEL HEADER" section. It is listed as 0x25c in the "DETAILS OF HEADER FIELDS" section, which overlaps with pref_address. Correct the details listing to 0x260. Signed-off-by:
Darren Hart <dvhart@linux.intel.com> Link: http://lkml.kernel.org/r/541cf88e2dfe5b8186d8b96b136d892e769a68c1.1310441260.git.dvhart@linux.intel.com CC: H. Peter Anvin <hpa@zytor.com> Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com>
-
- 13 Jan, 2011 1 commit
-
-
Lasse Collin authored
This integrates the XZ decompression code to the x86 pre-boot code. mkpiggy.c is updated to reserve about 32 KiB more buffer safety margin for kernel decompression. It is done unconditionally for all decompressors to keep the code simpler. The XZ decompressor needs around 30 KiB of heap, so the heap size is increased to 32 KiB on both x86-32 and x86-64. Documentation/x86/boot.txt is updated to list the XZ magic number. With the x86 BCJ filter in XZ, XZ-compressed x86 kernel tends to be a few percent smaller than the equivalent LZMA-compressed kernel. Signed-off-by:
Lasse Collin <lasse.collin@tukaani.org> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Alain Knaff <alain@knaff.lu> Cc: Albin Tonnerre <albin.tonnerre@free-electrons.com> Cc: Phillip Lougher <phillip@lougher.demon.co.uk> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- 11 Nov, 2010 1 commit
-
-
Thomas Gleixner authored
Add CE4100 platform support. CE4100 needs early setup like moorestown. Signed-off-by:
Thomas Gleixner <tglx@linutronix.de> Signed-off-by:
Dirk Brandewie <dirk.brandewie@gmail.com> LKML-Reference: <94720fd7f5564a12ebf202cf2c4f4c0d619aab35.1289331834.git.dirk.brandewie@gmail.com> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 31 Aug, 2009 1 commit
-
-
Pan, Jacob jun authored
x86 bootprotocol 2.07 has introduced hardware_subarch ID in the boot parameters provided by FW. We use it to identify Moorestown platforms. [ tglx: Cleanup and paravirt fix ] Signed-off-by:
Jacob Pan <jacob.jun.pan@intel.com> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 12 May, 2009 2 commits
-
-
H. Peter Anvin authored
A long ago, in days of yore, it all began with a god named Thor. There were vikings and boats and some plans for a Linux kernel header. Unfortunately, a single 8-bit field was used for bootloader type and version. This has generally worked without *too* much pain, but we're getting close to flat running out of ID fields. Add extension fields for both type and version. The type will be extended if it the old field is 0xE; the version is a simple MSB extension. Keep /proc/sys/kernel/bootloader_type containing (type << 4) + (ver & 0xf) for backwards compatiblity, but also add /proc/sys/kernel/bootloader_version which contains the full version number. [ Impact: new feature to support more bootloaders ] Signed-off-by:
H. Peter Anvin <hpa@zytor.com>
-
H. Peter Anvin authored
Document the new bzImage fields for kernel memory placement. [ Impact: adds documentation ] Signed-off-by:
H. Peter Anvin <hpa@zytor.com>
-
- 15 Jan, 2009 2 commits
-
-
Baodong Chen authored
Modify field names to the right ones: - start_sys was changed to start_sys_seg - iinitrd_addr_max was changed to ramdisk_max - pad2 was changed to pad2 and pad3 - readmode_swtch was changed to realmode_swtch Signed-off-by:
Baodong Chen <[email]chenbdchenbd@gmail.com[email]> Acked-by:
Jiri Kosina <jkosina@suse.cz> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
H. Peter Anvin authored
Impact: documentation Update the boot protocol specification to include the currently supported file formats and their magic numbers. Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com>
-
- 04 Jan, 2009 1 commit
-
-
Baodong Chen authored
Signed-off-by:
Baodong Chen <[email]chenbdchenbd@gmail.com[email]> Acked-by:
Jiri Kosina <jkosina@suse.cz> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
- 16 Dec, 2008 1 commit
-
-
Philipp Kohlbecher authored
Impact: clarify documentation Documentation/x86/boot.txt describes payload_offset as the offset from the end of the real-mode code. In fact, it is more accurately described as the offset from the beginning of the protected-mode code, as (a) this is how it is actually calculated and (b) the padding after the real-mode code is not included in the offset. Signed-off-by:
Philipp Kohlbecher <xt28@gmx.de> Acked-by:
Ian Campbell <ijc@hellion.org.uk> Acked-by:
H. Peter Anvin <hpa@zytor.com> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
- 11 Nov, 2008 1 commit
-
-
KOSAKI Motohiro authored
Impact: documentation fix I met okuji-san (GRUB maintainer) yesterday. He said GRuB isn't correct spelled and he want to fix it. Signed-off-by:
KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
- 22 Jul, 2008 2 commits
-
-
H. Peter Anvin authored
The start_sys field is two bytes, not four. Signed-off-by:
H. Peter Anvin <hpa@zytor.com>
-
H. Peter Anvin authored
The boot protocol, USB legacy support, and zero-page documentation is common to the x86 platform, not i386-specific. Signed-off-by:
H. Peter Anvin <hpa@zytor.com>
-
- 31 May, 2008 2 commits
-
-
H. Peter Anvin authored
The current organization of the x86 documentation makes it appear as if the "i386" documentation doesn't apply to x86-64, which is does. Thus, move that documentation into Documentation/x86, and move the x86-64-specific stuff into Documentation/x86/x86_64 with the eventual goal to move stuff that isn't actually 64-bit specific back into Documentation/x86. Signed-off-by:
H. Peter Anvin <hpa@zytor.com>
-
H. Peter Anvin authored
Document QUIET_FLAG, correct the definition of several fields, make it clear this applies to the entire x86 architecture, not just i386. Signed-off-by:
H. Peter Anvin <hpa@zytor.com>
-
- 29 Apr, 2008 1 commit
-
-
Ian Campbell authored
Signed-off-by:
Ian Campbell <ijc@hellion.org.uk> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Acked-by:
H. Peter Anvin <hpa@zytor.com> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
- 26 Apr, 2008 1 commit
-
-
Huang, Ying authored
Documentation for linked list of struct setup_data. Signed-off-by:
Huang Ying <ying.huang@intel.com> Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 17 Apr, 2008 3 commits
-
-
Ian Campbell authored
Also update field names to simply payload_{offset,length} so as to not rule out uncompressed images. Signed-off-by:
Ian Campbell <ijc@hellion.org.uk> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Cc: virtualization@lists.linux-foundation.org Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
Ian Campbell authored
Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Ian Campbell authored
Signed-off-by:
Ian Campbell <ijc@hellion.org.uk> Cc: Ian Campbell <ijc@hellion.org.uk> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Cc: virtualization@lists.linux-foundation.org Cc: H. Peter Anvin <hpa@zytor.com> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Cc: virtualization@lists.linux-foundation.org Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 29 Oct, 2007 1 commit
-
-
Huang, Ying authored
This patch documents the 32-bit boot protocol of x86. It has been used by Kexec and LinuxBIOS. This patch is based on the proposal of Peter Anvin. Signed-off-by:
Huang Ying <ying.huang@intel.com> Signed-off-by:
H. Peter Anvin <hpa@zytor.com> Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-