Star64_linux/arch/powerpc/kernel
Michael Ellerman d34a5709be Merge branch 'topic/secureboot' into next
Merge the secureboot support, as well as the IMA changes needed to
support it.

From Nayna's cover letter:
  In order to verify the OS kernel on PowerNV systems, secure boot
  requires X.509 certificates trusted by the platform. These are
  stored in secure variables controlled by OPAL, called OPAL secure
  variables. In order to enable users to manage the keys, the secure
  variables need to be exposed to userspace.

  OPAL provides the runtime services for the kernel to be able to
  access the secure variables. This patchset defines the kernel
  interface for the OPAL APIs. These APIs are used by the hooks, which
  load these variables to the keyring and expose them to the userspace
  for reading/writing.

  Overall, this patchset adds the following support:
    * expose secure variables to the kernel via OPAL Runtime API interface
    * expose secure variables to the userspace via kernel sysfs interface
    * load kernel verification and revocation keys to .platform and
      .blacklist keyring respectively.

  The secure variables can be read/written using simple linux
  utilities cat/hexdump.

  For example:
  Path to the secure variables is: /sys/firmware/secvar/vars

    Each secure variable is listed as directory.
    $ ls -l
    total 0
    drwxr-xr-x. 2 root root 0 Aug 20 21:20 db
    drwxr-xr-x. 2 root root 0 Aug 20 21:20 KEK
    drwxr-xr-x. 2 root root 0 Aug 20 21:20 PK

  The attributes of each of the secure variables are (for example: PK):
    $ ls -l
    total 0
    -r--r--r--. 1 root root  4096 Oct  1 15:10 data
    -r--r--r--. 1 root root 65536 Oct  1 15:10 size
    --w-------. 1 root root  4096 Oct  1 15:12 update

  The "data" is used to read the existing variable value using
  hexdump. The data is stored in ESL format. The "update" is used to
  write a new value using cat. The update is to be submitted as AUTH
  file.
2019-11-13 16:55:50 +11:00
..
syscalls powerpc: Wire up clone3 syscall 2019-07-29 09:34:27 +10:00
trace powerpc/ftrace: Enable HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-09-18 12:24:55 +10:00
vdso32 powerpc/32s: drop CPU_FTR_USE_RTC feature 2019-08-28 23:19:33 +10:00
vdso64 powerpc: Allow 64bit VDSO __kernel_sync_dicache to work across ranges >4GB 2019-11-07 22:48:34 +11:00
.gitignore powerpc: improve prom_init_check rule 2019-09-14 00:04:41 +10:00
align.c powerpc/spe: Mark expected switch fall-throughs 2019-07-31 00:19:34 +10:00
asm-offsets.c powerpc/kvm: Use UV_RETURN ucall to return to ultravisor 2019-08-30 09:40:16 +10:00
audit.c
btext.c
cacheinfo.c
cacheinfo.h
compat_audit.c
cpu_setup_6xx.S
cpu_setup_44x.S
cpu_setup_fsl_booke.S
cpu_setup_pa6t.S
cpu_setup_power.S powerpc/64s: Set reserved PCR bits 2019-09-21 08:36:53 +10:00
cpu_setup_ppc970.S
cputable.c powerpc/32s: get rid of CPU_FTR_601 feature 2019-08-28 23:19:33 +10:00
crash.c
crash_dump.c
dawr.c
dbell.c KVM: PPC: Book3S HV: use smp_mb() when setting/clearing host_ipi flag 2019-09-24 12:46:26 +10:00
dma-iommu.c powerpc updates for 5.4 2019-09-20 11:48:06 -07:00
dma-mask.c
dma-swiotlb.c
dt_cpu_ftrs.c powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 2019-09-24 20:58:55 +10:00
early_32.c
eeh.c powerpc/eeh: Fix eeh eeh_debugfs_break_device() with SRIOV devices 2019-09-27 09:04:17 +10:00
eeh_cache.c powerpc/eeh: Convert log messages to eeh_edev_* macros 2019-08-22 23:12:47 +10:00
eeh_dev.c powerpc/eeh: Add bdfn field to eeh_dev 2019-08-22 23:12:46 +10:00
eeh_driver.c powerpc/eeh: Fix build with STACKTRACE=n 2019-09-14 00:01:14 +10:00
eeh_event.c powerpc/eeh: Fix build with STACKTRACE=n 2019-09-14 00:01:14 +10:00
eeh_pe.c powerpc/eeh: Clean up EEH PEs after recovery finishes 2019-09-05 14:22:37 +10:00
eeh_sysfs.c
entry_32.S powerpc/32s: get rid of CPU_FTR_601 feature 2019-08-28 23:19:33 +10:00
entry_64.S powerpc/64: remove support for kernel-mode syscalls 2019-08-28 23:19:34 +10:00
epapr_hcalls.S
epapr_paravirt.c
exceptions-64e.S powerpc/64: optimise LOAD_REG_IMMEDIATE_SYM() 2019-08-27 13:03:36 +10:00
exceptions-64s.S powerpc/64s/exception: reduce page fault unnecessary loads 2019-08-30 11:14:59 +10:00
fadump.c powerpc/fadump: support holes in kernel boot memory area 2019-09-14 00:04:46 +10:00
firmware.c
fpu.S
fsl_booke_entry_mapping.S
head_8xx.S powerpc/8xx: set STACK_END_MAGIC earlier on the init_stack 2019-08-28 11:31:18 +10:00
head_32.h powerpc/32: replace LOAD_MSR_KERNEL() by LOAD_REG_IMMEDIATE() 2019-08-27 13:03:36 +10:00
head_32.S powerpc/32s: use CONFIG_PPC_BOOK3S_601 instead of reading PVR 2019-08-28 23:19:33 +10:00
head_40x.S
head_44x.S
head_64.S powerpc/prom: convert PROM_BUG() to standard trap 2019-08-28 11:31:18 +10:00
head_booke.h
head_fsl_booke.S
hw_breakpoint.c powerpc/watchpoint: Disable watchpoint hit by larx/stcx instructions 2019-09-12 09:27:00 +10:00
idle.c
idle_6xx.S
idle_book3e.S
idle_book3s.S
idle_e500.S
idle_power4.S
ima_arch.c powerpc/ima: Indicate kernel modules appended signatures are enforced 2019-11-12 12:25:50 +11:00
ima_kexec.c
io-workarounds.c powerpc/mm: rework io-workaround invocation. 2019-08-27 13:03:34 +10:00
io.c
iomap.c
iommu.c Merge branch 'topic/ppc-kvm' into next 2019-08-30 09:52:57 +10:00
irq.c
isa-bridge.c
jump_label.c
kexec_elf_64.c kexec: add KEXEC_ELF 2019-09-06 23:58:43 +02:00
kgdb.c
kprobes-ftrace.c
kprobes.c
kvm.c powerpc/kvm: Explicitly mark kvm guest code as __init 2019-09-14 00:04:40 +10:00
kvm_emul.S powerpc/kvm: Add ifdefs around template code 2019-09-14 00:04:40 +10:00
l2cr_6xx.S
legacy_serial.c
machine_kexec.c
machine_kexec_32.c
machine_kexec_64.c powerpc/pseries/svm: Unshare all pages before kexecing a new kernel 2019-08-30 09:55:40 +10:00
machine_kexec_file_64.c
Makefile Merge branch 'topic/secureboot' into next 2019-11-13 16:55:50 +11:00
mce.c powerpc/64s/pseries: machine check convert to use common event code 2019-08-30 10:32:35 +10:00
mce_power.c powerpc/mm/mce: Keep irqs disabled during lockless page table walk 2019-09-19 21:24:59 +10:00
misc.S
misc_32.S powerpc: Convert flush_icache_range & friends to C 2019-11-07 23:35:37 +11:00
misc_64.S powerpc: Convert flush_icache_range & friends to C 2019-11-07 23:35:37 +11:00
module.c
module.lds
module_32.c
module_64.c
msi.c
note.S powerpc: Add PowerPC Capabilities ELF note 2019-08-30 09:40:15 +10:00
nvram_64.c
of_platform.c
optprobes.c
optprobes_head.S
paca.c powerpc/pseries/svm: Use shared memory for LPPACA structures 2019-08-30 09:55:40 +10:00
pci-common.c powerpc/64: Adjust order in pcibios_init() 2019-08-22 23:11:48 +10:00
pci-hotplug.c powerpc/eeh: Fix race when freeing PDNs 2019-09-05 14:22:37 +10:00
pci_32.c powerpc/64: Adjust order in pcibios_init() 2019-08-22 23:11:48 +10:00
pci_64.c powerpc/64: Adjust order in pcibios_init() 2019-08-22 23:11:48 +10:00
pci_dn.c powerpc/eeh: Fix race when freeing PDNs 2019-09-05 14:22:37 +10:00
pci_of_scan.c powerpc/of/pci: Rewrite pci_parse_of_flags 2019-08-29 20:24:05 +10:00
pmc.c
ppc32.h
ppc_save_regs.S
proc_powerpc.c
process.c powerpc updates for 5.4 2019-09-20 11:48:06 -07:00
prom.c powerpc/fadump: add support to preserve crash data on FADUMP disabled kernel 2019-09-14 00:04:45 +10:00
prom_init.c powerpc: Support CMDLINE_EXTEND 2019-11-07 21:15:27 +11:00
prom_init_check.sh powerpc/prom_init: Undo relocation before entering secure mode 2019-10-29 15:12:17 +11:00
prom_parse.c
ptrace.c powerpc: Add build-time check of ptrace PT_xx defines 2019-10-30 22:31:54 +11:00
ptrace32.c
reloc_32.S
reloc_64.S
rtas-proc.c
rtas-rtc.c
rtas.c powerpc/rtas: allow rescheduling while changing cpu states 2019-08-20 21:22:27 +10:00
rtas_flash.c
rtas_pci.c
rtasd.c
secure_boot.c powerpc: Detect the trusted boot state of the system 2019-11-12 12:25:49 +11:00
security.c powerpc/security: Fix debugfs data leak on 32-bit 2019-11-05 22:29:27 +11:00
secvar-ops.c powerpc/powernv: Add OPAL API interface to access secure variable 2019-11-13 00:33:22 +11:00
secvar-sysfs.c powerpc: expose secure variables to userspace via sysfs 2019-11-13 00:33:22 +11:00
setup-common.c powerpc updates for 5.4 2019-09-20 11:48:06 -07:00
setup.h
setup_32.c powerpc/32: drop CPU_FTR_UNIFIED_ID_CACHE 2019-08-28 23:19:33 +10:00
setup_64.c powerpc/setup_64: fix -Wempty-body warnings 2019-10-11 19:33:25 +11:00
signal.c
signal.h
signal_32.c powerpc/tm: Fix oops on sigreturn on systems without TM 2019-07-22 13:05:23 +10:00
signal_64.c powerpc/tm: Fix oops on sigreturn on systems without TM 2019-07-22 13:05:23 +10:00
smp-tbsync.c
smp.c
stacktrace.c powerpc/ftrace: Enable HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-09-18 12:24:55 +10:00
suspend.c
swsusp.c
swsusp_32.S
swsusp_64.c
swsusp_asm64.S
swsusp_booke.S
sys_ppc32.c
syscalls.c
sysfs.c powerpc/pseries/svm: Export guest SVM status to user space via sysfs 2019-08-30 09:55:41 +10:00
systbl.S
systbl_chk.sh
tau_6xx.c
time.c powerpc/pseries: Mark accumulate_stolen_time() as notrace 2019-10-28 21:54:16 +11:00
tm.S
traps.c powerpc: dump kernel log before carrying out fadump or kdump 2019-09-18 00:03:51 +10:00
ucall.S powerpc/kernel: Add ucall_norets() ultravisor call handler 2019-08-30 09:40:15 +10:00
udbg.c powerpc/udbg: Make it safe to call udbg_printf() always 2019-10-11 19:33:25 +11:00
udbg_16550.c
uprobes.c
vdso.c powerpc/32s: drop CPU_FTR_USE_RTC feature 2019-08-28 23:19:33 +10:00
vecemu.c
vector.S
vmlinux.lds.S
watchdog.c