mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-30 08:02:30 +00:00
f8b427772a
Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: He Ying <heying24@huawei.com> Acked-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20210326100853.173586-1-heying24@huawei.com Signed-off-by: Jonathan Corbet <corbet@lwn.net>
41 lines
1.3 KiB
ReStructuredText
41 lines
1.3 KiB
ReStructuredText
==========================
|
|
ELF Note PowerPC Namespace
|
|
==========================
|
|
|
|
The PowerPC namespace in an ELF Note of the kernel binary is used to store
|
|
capabilities and information which can be used by a bootloader or userland.
|
|
|
|
Types and Descriptors
|
|
---------------------
|
|
|
|
The types to be used with the "PowerPC" namespace are defined in [#f1]_.
|
|
|
|
1) PPC_ELFNOTE_CAPABILITIES
|
|
|
|
Define the capabilities supported/required by the kernel. This type uses a
|
|
bitmap as "descriptor" field. Each bit is described below:
|
|
|
|
- Ultravisor-capable bit (PowerNV only).
|
|
|
|
.. code-block:: c
|
|
|
|
#define PPCCAP_ULTRAVISOR_BIT (1 << 0)
|
|
|
|
Indicate that the powerpc kernel binary knows how to run in an
|
|
ultravisor-enabled system.
|
|
|
|
In an ultravisor-enabled system, some machine resources are now controlled
|
|
by the ultravisor. If the kernel is not ultravisor-capable, but it ends up
|
|
being run on a machine with ultravisor, the kernel will probably crash
|
|
trying to access ultravisor resources. For instance, it may crash in early
|
|
boot trying to set the partition table entry 0.
|
|
|
|
In an ultravisor-enabled system, a bootloader could warn the user or prevent
|
|
the kernel from being run if the PowerPC ultravisor capability doesn't exist
|
|
or the Ultravisor-capable bit is not set.
|
|
|
|
References
|
|
----------
|
|
|
|
.. [#f1] arch/powerpc/include/asm/elfnote.h
|
|
|