[GIT PULL] RISC-V Patches for the 5.10 Merge Window, Part 1
Palmer Dabbelt
palmer at dabbelt.com
Mon Oct 19 17:00:44 EDT 2020
On Mon, 19 Oct 2020 13:43:27 PDT (-0700), atishp at atishpatra.org wrote:
> On Mon, Oct 19, 2020 at 12:08 PM Palmer Dabbelt <palmer at dabbelt.com> wrote:
>>
>> The following changes since commit d012a7190fc1fd72ed48911e77ca97ba4521bccd:
>>
>> Linux 5.9-rc2 (2020-08-23 14:08:43 -0700)
>>
>> are available in the Git repository at:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git tags/riscv-for-linus-5.10-mw0
>>
>> for you to fetch changes up to de22d2107ced3cc5355cc9dbbd85e44183546bd5:
>>
>> RISC-V: Add page table dump support for uefi (2020-10-02 14:31:33 -0700)
>>
>> ----------------------------------------------------------------
>> RISC-V Patches for the 5.10 Merge Window, Part 1
>>
>> This contains a handful of cleanups and new features, including:
>>
>> * A handful of cleanups for our page fault handling.
>> * Improvements to how we fill out cacheinfo.
>> * Support for EFI-based systems.
>>
>> ---
>>
>> This contains a merge from the EFI tree that was necessary as some of the EFI
>> support landed over there. It's my first time doing something like this,
>>
>> I haven't included the set_fs stuff because the base branch it depends on
>> hasn't been merged yet. I'll probably have another merge window PR, as
>> there's more in flight (most notably the fix for new binutils I just sent out),
>> but I figured there was no reason to delay this any longer.
>>
>> There is one merge conflict, which is between my fixes and for-next branches:
>>
>> diff --cc arch/riscv/kernel/vmlinux.lds.S
>> index 67db80e12d1f,9795359cb9da..ffaa3da375c2
>> --- a/arch/riscv/kernel/vmlinux.lds.S
>> +++ b/arch/riscv/kernel/vmlinux.lds.S
>> @@@ -66,8 -71,11 +70,13 @@@ SECTION
>> _etext = .;
>> }
>>
>> + INIT_DATA_SECTION(16)
>> +
>> + #ifdef CONFIG_EFI
>> + . = ALIGN(PECOFF_SECTION_ALIGNMENT);
>> + __pecoff_text_end = .;
>> + #endif
>> +
>> /* Start of data section */
>> _sdata = .;
>> RO_DATA(SECTION_ALIGN)
>>
>> ----------------------------------------------------------------
>> Anup Patel (1):
>> RISC-V: Move DT mapping outof fixmap
>>
>> Ard Biesheuvel (3):
>> efi/libstub: arm32: Base FDT and initrd placement on image address
>> efi/libstub: Export efi_low_alloc_above() to other units
>> efi/libstub: arm32: Use low allocation for the uncompressed kernel
>>
>
> I thought these 3 were being taken through the EFI tree. I already see
> them in the master branch.
>
> 762cd288fc4a efi/libstub: arm32: Use low allocation for the uncompressed kernel
> 1a895dbf4b66 efi/libstub: Export efi_low_alloc_above() to other units
> 6208857b8f7e efi/libstub: arm32: Base FDT and initrd placement on image address
I see them in Linus' master with those exact hashes, so IIUC this is all OK? I
guess I just assumed they were supposed to show up in the shortlog, but it's my
first time trying one of these multi-tree merges so maybe I screwed something
up?
I obtained these by merging a tag from the EFI tree (that's already been
merged) into my tree, which looks OK to me:
commit 8a3f30c4319dc70547f11c18da2e7b5987543aa1
gpg: Signature made Fri 02 Oct 2020 02:30:05 PM PDT
gpg: using RSA key 2B3C3747446843B24A943A7A2E1319F35FBB1889
gpg: issuer "palmer at dabbelt.com"
gpg: Good signature from "Palmer Dabbelt <palmer at dabbelt.com>" [ultimate]
gpg: aka "Palmer Dabbelt <palmerdabbelt at google.com>" [ultimate]
merged tag 'efi-riscv-shared-for-v5.10'
gpg: Signature made Wed 16 Sep 2020 08:57:07 AM PDT
gpg: using RSA key 9CD2A0DA6AD8F7330175E2BBC237207E9574FA7D
gpg: Good signature from "Adriaan (Ard) Biesheuvel <ard.biesheuvel at linaro.org>" [unknown]
gpg: aka "Adriaan (Ard) Biesheuvel <ard.biesheuvel at gmail.com>" [unknown]
gpg: aka "Adriaan (Ard) Biesheuvel <ardb at kernel.org>" [unknown]
gpg: aka "Adriaan (Ard) Biesheuvel <ard.biesheuvel at arm.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: F43D 0332 8115 A198 C900 1688 3D20 0E9C A632 9909
Subkey fingerprint: 9CD2 A0DA 6AD8 F733 0175 E2BB C237 207E 9574 FA7D
Merge: 54701a0d12e2 762cd288fc4a
Author: Palmer Dabbelt <palmerdabbelt at google.com>
Date: Fri Oct 2 14:29:51 2020 -0700
Merge tag 'efi-riscv-shared-for-v5.10' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/efi/efi into for-next
Stable branch for v5.10 shared between the EFI and RISC-V trees
The RISC-V EFI boot and runtime support will be merged for v5.10 via
the RISC-V tree. However, it incorporates some changes that conflict
with other EFI changes that are in flight, so this tag serves as a
shared base that allows those conflicts to be resolved beforehand.
* tag 'efi-riscv-shared-for-v5.10' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/efi/efi:
efi/libstub: arm32: Use low allocation for the uncompressed kernel
efi/libstub: Export efi_low_alloc_above() to other units
efi/libstub: arm32: Base FDT and initrd placement on image address
efi: Rename arm-init to efi-init common for all arch
include: pe.h: Add RISC-V related PE definition
I think the actual issue here is just that whatever I pointed git to when
generating the PR didn't contain the merge of the shared code yet, so
git-shortlog included it?
>> Atish Patra (8):
>> include: pe.h: Add RISC-V related PE definition
>> efi: Rename arm-init to efi-init common for all arch
>> RISC-V: Add early ioremap support
>> RISC-V: Implement late mapping page table allocation functions
>> RISC-V: Add PE/COFF header for EFI stub
>> RISC-V: Add EFI stub support.
>> RISC-V: Add EFI runtime services
>> RISC-V: Add page table dump support for uefi
>>
>> Palmer Dabbelt (1):
>> Merge tag 'efi-riscv-shared-for-v5.10' of ssh://gitolite.kernel.org/.../efi/efi into for-next
>>
>> Pekka Enberg (11):
>> riscv/mm: Simplify retry logic in do_page_fault()
>> riscv/mm/fault: Move no context handling to no_context()
>> riscv/mm/fault: Move bad area handling to bad_area()
>> riscv/mm/fault: Move vmalloc fault handling to vmalloc_fault()
>> riscv/mm/fault: Simplify fault error handling
>> riscv/mm/fault: Move fault error handling to mm_fault_error()
>> riscv/mm/fault: Simplify mm_fault_error()
>> riscv/mm/fault: Move FAULT_FLAG_WRITE handling in do_page_fault()
>> riscv/mm/fault: Move access error check to function
>> riscv/mm/fault: Fix inline placement in vmalloc_fault() declaration
>> riscv/mm/fault: Set FAULT_FLAG_INSTRUCTION flag in do_page_fault()
>>
>> Tian Tao (1):
>> RISC-V: Fix duplicate included thread_info.h
>>
>> Zong Li (3):
>> riscv: Set more data to cacheinfo
>> riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO
>> riscv: Add cache information in AUX vector
>>
>> arch/arm/include/asm/efi.h | 23 +-
>> arch/arm64/include/asm/efi.h | 5 +-
>> arch/riscv/Kconfig | 25 ++
>> arch/riscv/Makefile | 1 +
>> arch/riscv/configs/defconfig | 1 +
>> arch/riscv/include/asm/Kbuild | 1 +
>> arch/riscv/include/asm/cacheinfo.h | 5 +
>> arch/riscv/include/asm/efi.h | 55 ++++
>> arch/riscv/include/asm/elf.h | 13 +
>> arch/riscv/include/asm/fixmap.h | 16 +-
>> arch/riscv/include/asm/io.h | 1 +
>> arch/riscv/include/asm/mmu.h | 2 +
>> arch/riscv/include/asm/pgtable.h | 5 +
>> arch/riscv/include/asm/sections.h | 13 +
>> arch/riscv/include/uapi/asm/auxvec.h | 24 ++
>> arch/riscv/kernel/Makefile | 2 +
>> arch/riscv/kernel/cacheinfo.c | 98 +++++--
>> arch/riscv/kernel/efi-header.S | 111 ++++++++
>> arch/riscv/kernel/efi.c | 96 +++++++
>> arch/riscv/kernel/head.S | 18 +-
>> arch/riscv/kernel/head.h | 2 -
>> arch/riscv/kernel/image-vars.h | 51 ++++
>> arch/riscv/kernel/setup.c | 18 +-
>> arch/riscv/kernel/vmlinux.lds.S | 23 +-
>> arch/riscv/mm/fault.c | 356 +++++++++++++-----------
>> arch/riscv/mm/init.c | 191 ++++++++++---
>> arch/riscv/mm/ptdump.c | 48 +++-
>> drivers/firmware/efi/Kconfig | 3 +-
>> drivers/firmware/efi/Makefile | 4 +-
>> drivers/firmware/efi/{arm-init.c => efi-init.c} | 0
>> drivers/firmware/efi/libstub/Makefile | 10 +
>> drivers/firmware/efi/libstub/arm32-stub.c | 178 +++---------
>> drivers/firmware/efi/libstub/arm64-stub.c | 1 -
>> drivers/firmware/efi/libstub/efi-stub.c | 59 +---
>> drivers/firmware/efi/libstub/efistub.h | 7 +-
>> drivers/firmware/efi/libstub/relocate.c | 4 +-
>> drivers/firmware/efi/libstub/riscv-stub.c | 109 ++++++++
>> drivers/firmware/efi/riscv-runtime.c | 143 ++++++++++
>> include/linux/pe.h | 3 +
>> 39 files changed, 1275 insertions(+), 450 deletions(-)
>> create mode 100644 arch/riscv/include/asm/efi.h
>> create mode 100644 arch/riscv/include/asm/sections.h
>> create mode 100644 arch/riscv/kernel/efi-header.S
>> create mode 100644 arch/riscv/kernel/efi.c
>> create mode 100644 arch/riscv/kernel/image-vars.h
>> rename drivers/firmware/efi/{arm-init.c => efi-init.c} (100%)
>> create mode 100644 drivers/firmware/efi/libstub/riscv-stub.c
>> create mode 100644 drivers/firmware/efi/riscv-runtime.c
>>
>> _______________________________________________
>> linux-riscv mailing list
>> linux-riscv at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-riscv
More information about the linux-riscv
mailing list