Re: [GIT PULL] RISC-V Patches for the 5.18 Merge Window, Part 2

From: Palmer Dabbelt
Date: Fri Apr 01 2022 - 15:07:03 EST


On Fri, 01 Apr 2022 11:52:32 PDT (-0700), Palmer Dabbelt wrote:
> On Fri, 01 Apr 2022 09:41:50 PDT (-0700), Palmer Dabbelt wrote:
>> merged tag 'riscv-for-linus-5.18-mw0'
>> The following changes since commit aa5b537b0ecc16992577b013f11112d54c7ce869:
>>
>> Merge tag 'riscv-for-linus-5.18-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux (2022-03-25 10:11:38 -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.18-mw1
>>
>> for you to fetch changes up to 1464d00b27b2e29a5556f6a4099cf083886e883f:
>>
>> RISC-V: K210 defconfigs: Drop redundant MEMBARRIER=n (2022-03-31 17:19:27 -0700)
>>
>> ----------------------------------------------------------------
>> RISC-V Patches for the 5.18 Merge Window, Part 2
>>
>> This has a handful of new features
>>
>> * Support for CURRENT_STACK_POINTER, which enables some extra stack
>> debugging for HARDENED_USERCOPY.
>> * Support for the new SBI CPU idle extension, via cpuidle and suspend
>> drivers.
>
> Sorry, looks like there are some issues with this series that Rob
> pointed out. I'm going to re-spin this PR without those, unfortunately
> they're towards the beginning.

Sorry for the confusion, but after talking to Rob on IRC: the plan is to
send a Part 3, with a fix for the DT warnings on top of this -- that's
much less scary that a rebase this late.

>> * Profiling has been enabled in the defconfigs.
>>
>> but is mostly fixes and cleanups.
>>
>> ----------------------------------------------------------------
>> There are no merge conflicts. I'm getting on allyesconfig warning in
>> drivers/misc/habanalabs, but that appears to just be a 32-bit problem (it's
>> happening on 32-bit x86 as well). I've sent a patch for that, but I doubt it's
>> a RISC-V issue so I'm sending this at the same time.
>>
>> With that patch I get clean build that boot after my test merge.
>>
>> ----------------------------------------------------------------
>> Anup Patel (9):
>> RISC-V: Enable CPU_IDLE drivers
>> RISC-V: Rename relocate() and make it global
>> RISC-V: Add arch functions for non-retentive suspend entry/exit
>> RISC-V: Add SBI HSM suspend related defines
>> cpuidle: Factor-out power domain related code from PSCI domain driver
>> cpuidle: Add RISC-V SBI CPU idle driver
>> dt-bindings: Add common bindings for ARM and RISC-V idle states
>> RISC-V: Enable RISC-V SBI CPU Idle driver for QEMU virt machine
>> RISC-V: Enable profiling by default
>>
>> Atish Patra (2):
>> RISC-V: Fix a comment typo in riscv_of_parent_hartid()
>> RISC-V: Declare per cpu boot data as static
>>
>> Bagas Sanjaya (1):
>> Documentation: riscv: remove non-existent directory from table of contents
>>
>> Dmitry Vyukov (1):
>> riscv: Increase stack size under KASAN
>>
>> Fangrui Song (1):
>> riscv module: remove (NOLOAD)
>>
>> Kees Cook (1):
>> riscv: Rename "sp_in_global" to "current_stack_pointer"
>>
>> Nikita Shubin (1):
>> riscv: Fix fill_callchain return value
>>
>> Niklas Cassel (1):
>> riscv: dts: canaan: Fix SPI3 bus width
>>
>> Palmer Dabbelt (3):
>> RISC-V CPU Idle Support
>> RISC-V: defconfig: Drop redundant SBI HVC and earlycon
>> RISC-V: K210 defconfigs: Drop redundant MEMBARRIER=n
>>
>> Randy Dunlap (1):
>> riscv: cpu.c: don't use kernel-doc markers for comments
>>
>> Wu Caize (1):
>> RISC-V: module: fix apply_r_riscv_rcv_branch_rela typo
>>
>> .../bindings/arm/msm/qcom,idle-state.txt | 2 +-
>> Documentation/devicetree/bindings/arm/psci.yaml | 2 +-
>> .../bindings/{arm => cpu}/idle-states.yaml | 228 +++++++-
>> Documentation/devicetree/bindings/riscv/cpus.yaml | 6 +
>> Documentation/riscv/index.rst | 1 -
>> MAINTAINERS | 14 +
>> arch/riscv/Kconfig | 8 +
>> arch/riscv/Kconfig.socs | 3 +
>> arch/riscv/boot/dts/canaan/sipeed_maix_bit.dts | 2 +
>> arch/riscv/boot/dts/canaan/sipeed_maix_dock.dts | 2 +
>> arch/riscv/boot/dts/canaan/sipeed_maix_go.dts | 2 +
>> arch/riscv/boot/dts/canaan/sipeed_maixduino.dts | 2 +
>> arch/riscv/configs/defconfig | 5 +-
>> arch/riscv/configs/nommu_k210_defconfig | 1 -
>> arch/riscv/configs/nommu_k210_sdcard_defconfig | 1 -
>> arch/riscv/configs/nommu_virt_defconfig | 1 -
>> arch/riscv/configs/rv32_defconfig | 5 +-
>> arch/riscv/include/asm/asm.h | 26 +
>> arch/riscv/include/asm/cpuidle.h | 24 +
>> arch/riscv/include/asm/current.h | 2 +
>> arch/riscv/include/asm/module.lds.h | 6 +-
>> arch/riscv/include/asm/suspend.h | 36 ++
>> arch/riscv/include/asm/thread_info.h | 10 +-
>> arch/riscv/kernel/Makefile | 2 +
>> arch/riscv/kernel/asm-offsets.c | 3 +
>> arch/riscv/kernel/cpu.c | 6 +-
>> arch/riscv/kernel/cpu_ops_sbi.c | 2 +-
>> arch/riscv/kernel/head.S | 27 +-
>> arch/riscv/kernel/module.c | 4 +-
>> arch/riscv/kernel/perf_callchain.c | 2 +-
>> arch/riscv/kernel/process.c | 3 +-
>> arch/riscv/kernel/stacktrace.c | 6 +-
>> arch/riscv/kernel/suspend.c | 87 +++
>> arch/riscv/kernel/suspend_entry.S | 124 ++++
>> drivers/cpuidle/Kconfig | 9 +
>> drivers/cpuidle/Kconfig.arm | 1 +
>> drivers/cpuidle/Kconfig.riscv | 15 +
>> drivers/cpuidle/Makefile | 5 +
>> drivers/cpuidle/cpuidle-psci-domain.c | 138 +----
>> drivers/cpuidle/cpuidle-psci.h | 15 +-
>> drivers/cpuidle/cpuidle-riscv-sbi.c | 627 +++++++++++++++++++++
>> drivers/cpuidle/dt_idle_genpd.c | 178 ++++++
>> drivers/cpuidle/dt_idle_genpd.h | 50 ++
>> 43 files changed, 1491 insertions(+), 202 deletions(-)
>> rename Documentation/devicetree/bindings/{arm => cpu}/idle-states.yaml (74%)
>> create mode 100644 arch/riscv/include/asm/cpuidle.h
>> create mode 100644 arch/riscv/include/asm/suspend.h
>> create mode 100644 arch/riscv/kernel/suspend.c
>> create mode 100644 arch/riscv/kernel/suspend_entry.S
>> create mode 100644 drivers/cpuidle/Kconfig.riscv
>> create mode 100644 drivers/cpuidle/cpuidle-riscv-sbi.c
>> create mode 100644 drivers/cpuidle/dt_idle_genpd.c
>> create mode 100644 drivers/cpuidle/dt_idle_genpd.h