The following patches are for OpenHarmony 5.10 kernel.
These patches refer to some bugfixes (ext4/sched/mm, etc) and 2 major features
(arm kasan and kaslr with dependent patches).
-------------------------------------------------------------
Ard Biesheuvel (33):
ARM: 9028/1: disable KASAN in call stack capturing routines
ARM: module: add support for place relative relocations
ARM: p2v: move patching code to separate assembler source file
ARM: p2v: factor out shared loop processing
ARM: p2v: factor out BE8 handling
ARM: p2v: drop redundant 'type' argument from __pv_stub
ARM: p2v: use relative references in patch site arrays
ARM: p2v: simplify __fixup_pv_table()
ARM: p2v: switch to MOVW for Thumb2 and ARM/LPAE
ARM: p2v: reduce p2v alignment requirement to 2 MiB
ARM: head-common.S: use PC-relative insn sequence for __proc_info
ARM: head-common.S: use PC-relative insn sequence for idmap creation
ARM: head.S: use PC-relative insn sequence for secondary_data
ARM: kernel: use relative references for UP/SMP alternatives
ARM: head: use PC-relative insn sequence for __smp_alt
ARM: sleep.S: use PC-relative insn sequence for
sleep_save_sp/mpidr_hash
ARM: head.S: use PC relative insn sequence to calculate PHYS_OFFSET
ARM: kvm: replace open coded VA->PA calculations with adr_l call
ARM: 9031/1: hyp-stub: remove unused .L__boot_cpu_mode_offset symbol
asm-generic: add .data.rel.ro sections to __ro_after_init
arm-soc: exynos: replace open coded VA->PA conversions
arm-soc: mvebu: replace open coded VA->PA conversion
arm-soc: various: replace open coded VA->PA calculation of pen_release
ARM: kernel: switch to relative exception tables
ARM: kernel: make vmlinux buildable as a PIE executable
ARM: kernel: use PC-relative symbol references in MMU switch code
ARM: kernel: use PC relative symbol references in suspend/resume code
ARM: mm: export default vmalloc base address
ARM: kernel: refer to swapper_pg_dir via its symbol
arm: vectors: use local symbol names for vector entry points
ARM: kernel: implement randomization of the kernel load address
ARM: decompressor: explicitly map decompressor binary cacheable
ARM: decompressor: add KASLR support
Arnd Bergmann (1):
ARM: kprobes: fix gcc-7 build warning
Chen Jun (1):
rockchip: Make cdn_dp_resume depend on CONFIG_PM_SLEEP
Cheng Jian (1):
sched, rt: fix isolated CPUs leaving task_group indefinitely throttled
Cui GaoSheng (6):
arm32: kaslr: Add missing sections about relocatable
arm32: kaslr: Fix the bug of module install failure
arm32: kaslr: Fix the bug of hidden symbols when decompressing code is
compiled
arm32: kaslr: Adapt dts files of multiple memory nodes
arm32: kaslr: Fix the bug of symbols relocation
arm32: kaslr: Print the real kaslr offset when kernel panic
Fangrui Song (1):
ARM: 9022/1: Change arch/arm/lib/mem*.S to use WEAK instead of .weak
Gaosheng Cui (2):
arm32: kaslr: Bugfix of fiq when enabled kaslr
arm32: kaslr: Bugfix of BSS size calculation when enabled kaslr
Gu Zheng (1):
mtd: avoid blktrans_open/release race and avoid insmod ftl.ko deadlock
Jan Kara (13):
ext4: remove redundant sb checksum recomputation
ext4: standardize error message in ext4_protect_reserved_inode()
ext4: make ext4_abort() use __ext4_error()
ext4: move functions in super.c
ext4: simplify ext4 error translation
ext4: defer saving error info from atomic context
ext4: combine ext4_handle_error() and save_error_info()
ext4: drop sync argument of ext4_commit_super()
ext4: protect superblock modifications with a buffer lock
ext4: save error info to sb through journal if available
ext4: use sbi instead of EXT4_SB(sb) in ext4_update_super()
ext4: drop ext4_handle_dirty_super()
ext4: fix timer use-after-free on failed mount
Jens Axboe (1):
io_uring: convert io_buffer_idr to XArray
JeongHyeon Lee (1):
dm verity: allow only one error handling mode
Kefeng Wang (2):
mm, page_alloc: avoid page_to_pfn() in move_freepages()
mm: Move HOLES_IN_ZONE into mm
Li Bin (1):
sched/deadline.c: pick and check task if double_lock_balance() unlock
the rq
Linus Walleij (5):
ARM: 9013/2: Disable KASan instrumentation for some code
ARM: 9014/2: Replace string mem* functions for KASan
ARM: 9015/2: Define the virtual space of KASan's shadow region
ARM: 9016/2: Initialize the mapping of KASan shadow memory
ARM: 9017/2: Enable KASan for ARM
Liu Shixin (1):
mm/page_alloc: fix counting of managed_pages
Lorenzo Stoakes (1):
mm: page_alloc: refactor setup_per_zone_lowmem_reserve()
Lu Jialin (1):
cgroup: Return ERSCH when add Z process into task
Matthew Wilcox (Oracle) (1):
io_uring: Convert personality_idr to XArray
Mauricio Faria de Oliveira (1):
loop: fix I/O error on fsync() in detached loop devices
Oscar Salvador (1):
mm,hwpoison: return -EBUSY when migration fails
Xie XiuQi (1):
Document: add guideline to submitting patches to OpenHarmony kernel
Xiongfeng Wang (3):
PCI: add a member in 'struct pci_bus' to record the original 'pci_ops'
PCI/AER: increments pci bus reference count in aer-inject process
sysrq: avoid concurrently info printing by 'sysrq-trigger'
Yang Jihong (1):
arm_pmu: Fix write counter error in ARMv7 big-endian mode
Yang Yingliang (1):
drm/radeon: check the alloc_workqueue return value
Ye Bin (6):
arm32: kaslr: Add missing sections about relocatable
arm: kaslr: Fix memtop calculate, when there is no memory top info, we
can't use zero instead it.
arm32: kaslr: When boot with vxboot, we must adjust dtb address before
kaslr_early_init, and store dtb address after init.
arm32: kaslr: pop visibility when compile decompress boot code as we
need relocate BSS by GOT.
arm32: kaslr: print kaslr offset when kernel panic
arm32: kaslr: Fix clock_gettime and gettimeofday performance
degradation when configure CONFIG_RANDOMIZE_BASE
Yejune Deng (1):
io_uring: simplify io_remove_personalities()
Zefan Li (2):
cgroup: check if cgroup root is alive in cgroupstats_show()
cgroup: wait for cgroup destruction to complete when umount
Zhou Chengming (1):
sched/rt.c: pick and check task if double_lock_balance() unlock the rq
liujian (1):
driver: input: fix UBSAN warning in input_defuzz_abs_event
yangerkun (1):
proc: fix ubsan warning in mem_lseek
zhangyi (F) (1):
aio: add timeout validity check for io_[p]getevents
Documentation/arm/memory.rst | 5 +
Documentation/dev-tools/kasan.rst | 4 +-
.../features/debug/KASAN/arch-support.txt | 2 +-
README | 252 +++++++++
arch/arm/Kconfig | 29 +-
arch/arm/Makefile | 6 +
arch/arm/boot/compressed/Makefile | 19 +-
arch/arm/boot/compressed/head.S | 154 +++++-
arch/arm/boot/compressed/kaslr.c | 453 ++++++++++++++++
arch/arm/boot/compressed/misc.c | 1 -
arch/arm/boot/compressed/string.c | 19 +
arch/arm/include/asm/Kbuild | 1 -
arch/arm/include/asm/assembler.h | 22 +-
arch/arm/include/asm/elf.h | 5 +
arch/arm/include/asm/extable.h | 47 ++
arch/arm/include/asm/futex.h | 6 +-
arch/arm/include/asm/kasan.h | 33 ++
arch/arm/include/asm/kasan_def.h | 81 +++
arch/arm/include/asm/memory.h | 76 ++-
arch/arm/include/asm/pgalloc.h | 8 +-
arch/arm/include/asm/pgtable.h | 1 +
arch/arm/include/asm/processor.h | 2 +-
arch/arm/include/asm/string.h | 26 +
arch/arm/include/asm/thread_info.h | 8 +
arch/arm/include/asm/uaccess-asm.h | 2 +-
arch/arm/include/asm/uaccess.h | 17 +-
arch/arm/include/asm/vmlinux.lds.h | 13 +-
arch/arm/include/asm/word-at-a-time.h | 6 +-
arch/arm/kernel/Makefile | 4 +
arch/arm/kernel/entry-armv.S | 44 +-
arch/arm/kernel/entry-common.S | 9 +-
arch/arm/kernel/fiq.c | 7 +
arch/arm/kernel/head-common.S | 88 +---
arch/arm/kernel/head.S | 308 ++++-------
arch/arm/kernel/hyp-stub.S | 33 +-
arch/arm/kernel/module.c | 20 +-
arch/arm/kernel/perf_event_v7.c | 4 +-
arch/arm/kernel/phys2virt.S | 238 +++++++++
arch/arm/kernel/setup.c | 32 ++
arch/arm/kernel/sleep.S | 26 +-
arch/arm/kernel/swp_emulate.c | 8 +-
arch/arm/kernel/unwind.c | 6 +-
arch/arm/kernel/vmlinux.lds.S | 19 +
arch/arm/lib/backtrace.S | 13 +-
arch/arm/lib/getuser.S | 24 +-
arch/arm/lib/memcpy.S | 4 +-
arch/arm/lib/memmove.S | 6 +-
arch/arm/lib/memset.S | 4 +-
arch/arm/lib/putuser.S | 15 +-
arch/arm/mach-exynos/headsmp.S | 9 +-
arch/arm/mach-exynos/sleep.S | 26 +-
arch/arm/mach-mvebu/coherency_ll.S | 8 +-
arch/arm/mach-prima2/headsmp.S | 11 +-
arch/arm/mach-spear/headsmp.S | 11 +-
arch/arm/mm/Makefile | 5 +
arch/arm/mm/alignment.c | 24 +-
arch/arm/mm/extable.c | 2 +-
arch/arm/mm/kasan_init.c | 291 +++++++++++
arch/arm/mm/mmu.c | 21 +-
arch/arm/mm/pgd.c | 16 +-
arch/arm/nwfpe/entry.S | 6 +-
arch/arm/plat-versatile/headsmp.S | 9 +-
arch/arm/probes/kprobes/Makefile | 4 +
arch/arm/vdso/Makefile | 2 +
arch/arm/vdso/vgettimeofday.c | 5 +
arch/arm64/Kconfig | 4 +-
arch/ia64/Kconfig | 5 +-
arch/mips/Kconfig | 3 -
drivers/block/loop.c | 3 +
drivers/gpu/drm/radeon/radeon_display.c | 7 +-
drivers/gpu/drm/rockchip/cdn-dp-core.c | 2 +
drivers/input/input.c | 13 +-
drivers/md/dm-verity-target.c | 40 +-
drivers/mtd/mtd_blkdevs.c | 31 +-
drivers/mtd/mtdcore.c | 75 ++-
drivers/mtd/mtdcore.h | 4 +-
drivers/pci/bus.c | 2 +
drivers/pci/pcie/aer_inject.c | 9 +
drivers/pci/probe.c | 12 +-
drivers/tty/sysrq.c | 6 +
fs/aio.c | 11 +-
fs/ext4/block_validity.c | 10 +-
fs/ext4/ext4.h | 50 +-
fs/ext4/ext4_jbd2.c | 21 +-
fs/ext4/ext4_jbd2.h | 5 -
fs/ext4/file.c | 5 +-
fs/ext4/inode.c | 8 +-
fs/ext4/namei.c | 10 +-
fs/ext4/resize.c | 20 +-
fs/ext4/super.c | 482 ++++++++++--------
fs/ext4/xattr.c | 5 +-
fs/io_uring.c | 116 ++---
fs/proc/base.c | 32 +-
fs/read_write.c | 5 -
include/asm-generic/vmlinux.lds.h | 2 +-
include/linux/cgroup-defs.h | 3 +
include/linux/fs.h | 5 +
include/linux/pci.h | 1 +
kernel/cgroup/cgroup-v1.c | 8 +-
kernel/cgroup/cgroup.c | 24 +-
kernel/sched/deadline.c | 55 +-
kernel/sched/rt.c | 66 ++-
mm/Kconfig | 3 +
mm/memory-failure.c | 6 +-
mm/page_alloc.c | 61 +--
scripts/module.lds.S | 1 +
scripts/sorttable.c | 2 +-
107 files changed, 2814 insertions(+), 1079 deletions(-)
create mode 100644 arch/arm/boot/compressed/kaslr.c
create mode 100644 arch/arm/include/asm/extable.h
create mode 100644 arch/arm/include/asm/kasan.h
create mode 100644 arch/arm/include/asm/kasan_def.h
create mode 100644 arch/arm/kernel/phys2virt.S
create mode 100644 arch/arm/mm/kasan_init.c
--
2.22.0