Releases: alibaba/cloud-kernel
Releases · alibaba/cloud-kernel
Cloud Kernel Release 22
- configs: x86_64: reconfig to sync with internal version (Shile Zhang)
- configs: Enable rich container (Xunlei Pang)
- configs: enable md raid support (Joseph Qi)
- block: disable iopoll for split bio (Jeffle Xu)
- perf/core: Fix race in the perf_mmap_close() function (Jiri Olsa) {CVE-2020-14351}
- powercap: restrict energy meter to root access (Len Brown) {CVE-2020-8694}
- perf/core: Fix a memory leak in perf_event_parse_addr_filter() (kiyin(尹亮)) {CVE-2020-25704}
- vt: Disable KD_FONT_OP_COPY (Daniel Vetter) {CVE-2020-28974}
- blktrace: fix debugfs use after free (Luis Chamberlain) {CVE-2019-19770}
- vt: keyboard, extend func_buf_lock to readers (Jiri Slaby) {CVE-2020-25656}
- vt: keyboard, simplify vt_kdgkbsent (Jiri Slaby) {CVE-2020-25656}
- tty: make FONTX ioctl use the tty pointer they were actually passed (Linus Torvalds) {CVE-2020-25668}
- icmp: randomize the global rate limiter (Eric Dumazet) {CVE-2020-25705}
- netfilter: ctnetlink: add a range check for l3/l4 protonum (Will McVicker) {CVE-2020-25211}
- hdlc_ppp: add range checks in ppp_cp_parse_cr() (Dan Carpenter) {CVE-2020-25643}
- geneve: add transport ports in route lookup for geneve (Mark Gray) {CVE-2020-25645}
- rbd: require global CAP_SYS_ADMIN for mapping and unmapping (Ilya Dryomov) {CVE-2020-25284}
- mm/hugetlb: fix a race between hugetlb sysctl handlers (Muchun Song) {CVE-2020-25285}
- random32: update the net random state on interrupt and activity (Willy Tarreau) {CVE-2020-16166}
- crypto: ccp - Release all allocated memory if sha type is invalid (Navid Emamdoost) {CVE-2019-18808}
- sctp: implement memory accounting on tx path (Xin Long) {CVE-2019-3874}
- Revert "zram: convert remaining CLASS_ATTR() to CLASS_ATTR_RO()" (Wade Mealing) {CVE-2020-10781}
- x86/speculation: Add Ivy Bridge to affected list (Josh Poimboeuf) {CVE-2020-0543}
- x86/speculation: Add SRBDS vulnerability and mitigation documentation (Mark Gross) {CVE-2020-0543}
- x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation (Mark Gross) {CVE-2020-0543}
- x86/cpu: Add 'table' argument to cpu_matches() (Mark Gross) {CVE-2020-0543}
- x86/cpu: Add a steppings field to struct x86_cpu_id (Mark Gross) {CVE-2020-0543}
- kernel/relay.c: handle alloc_percpu returning NULL in relay_open (Daniel Axtens) {CVE-2019-19462}
- vt: keyboard: avoid signed integer overflow in k_ascii (Dmitry Torokhov) {CVE-2020-13974}
- x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches. (Anthony Steinhauser) {CVE-2020-10767}
- x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS. (Anthony Steinhauser) {CVE-2020-10767}
- x86/speculation: Prevent rogue cross-process SSBD shutdown (Anthony Steinhauser) {CVE-2020-10766}
- mm: Fix mremap not considering huge pmd devmap (Fan Yang) {CVE-2020-10757}
- alinux: mm: Fix the vma merge warning (Baolin Wang)
- io_uring: fix IOPOLL -EAGAIN retries (Xiaoguang Wang)
- io_uring: clear req->result on IOPOLL re-issue (Jens Axboe)
- selftests/tls: Add MSG_WAITALL in recv() syscall (Vakul Garg)
- alinux: io_uring: revert io_file_supports_async() (Hao Xu)
- bpf: improve verifier branch analysis (Alexei Starovoitov)
- selftests/bpf: Test narrow loads with off > 0 in test_verifier (Andrey Ignatov)
- alinux: dm: apply more restrictive constraints for iopoll (Jeffle Xu)
- alinux: block: fix inflight statistics of part0 (Jeffle Xu)
- net: ipvs: add sysctl_run_estimation to support disable estimation (Dust Li)
- ipvs: move estimation from timer to kworker (Dust Li)
- cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled (Francisco Jerez)
- rtnetlink: avoid frame size warning in rtnl_newlink() (Jakub Kicinski)
- memcg, oom: check memcg margin for parallel oom (Yafang Shao)
- mm, memcg: reclaim harder before high throttling (Jiang Zhong)
- mm: swap: Sync fixes swap patches (Jiang Zhong)
- mm, compaction: make capture control handling safe wrt interrupts (Vlastimil Babka)
- alinux: virtio_net: fix wrong print format type (Tony Lu)
- alinux: Introduce rich container support (Xunlei Pang)
- checkpatch/coding-style: deprecate 80-column warning (Joe Perches)
- alinux: net: track the pid who created socks (Tony Lu)
- mm: never attempt async page lock if we've transferred data already (Jens Axboe)
- mm: mark async iocb read as NOWAIT once some data has been copied (Jens Axboe)
- io_uring: don't use retry based buffered reads for non-async bdev (Jens Axboe)
- alinux: configs: Enable NITRO_ENCLAVES for x86_64 (Jason Cai (Xiang Feng))
- alinux: nitro_enclaves: Add support for Dragonfly Enclaves (Jason Cai (Xiang Feng))
- io_uring: fix shift-out-of-bounds when round up cq size (Joseph Qi)
- io_uring: round-up cq size before comparing with rounded sq size (Jens Axboe)
- alinux: io_uring: refactor precpu io sq thread feature (Xiaoguang Wang)
- mm/memcontrol.c: fix memory.stat item ordering (Johannes Weiner)
- mm: memcontrol: fix missing suffix of workingset_restore (Muchun Song)
- mm: remove activate_page() from unuse_pte() (Yu Zhao)
- mm/vmscan: restore active/inactive ratio for anonymous LRU (Joonsoo Kim)
- mm/swap: implement workingset detection for anonymous LRU (Joonsoo Kim)
- mm/swapcache: support to handle the shadow entries (Joonsoo Kim)
- mm/workingset: prepare the workingset detection infrastructure for anon LRU (Joonsoo Kim)
- mm/vmscan: protect the workingset on anonymous LRU (Joonsoo Kim)
- mm/vmscan: make active/inactive ratio as 1:1 for anon lru (Joonsoo Kim)
- mm, memcg: add workingset_restore in memory.stat (Yafang Shao)
- io_uring: add timeout support for io_uring_enter() (Hao Xu)
- mm: mm: balance LRU lists based on relative thrashing (Jiang Zhong)
- alinux: mm: bring back unevictable.o in obj-y (Xu Yu)
- alinux: virtio_net: introduce TX timeout dev_watchdog handler (Tony Lu)
- net: bpfilter: restart bpfilter_umh when error occurred (Taehee Yoo)
- net: bpfilter: use cleanup callback to release umh_info (Taehee Yoo)
- umh: Add command line to user mode helpers (Olivier Brunel)
- umh: add exit routine for UMH process (Taehee Yoo)
- alinux: configs: enable sockmap feature (Tony Lu)
- cifs: Fix double add page to memcg when cifs_readpages (Zhang Xiaoxu)
- mm/memcontrol: fix OOPS inside mem_cgroup_get_nr_swap_pages() (Bhupesh Sharma)
- ksm: reinstate memcg charge on copied pages (Hugh Dickins)
- mm: memcontrol: charge swapin pages on instantiation (Jiang Zhong)
- alinux: io_uring: don't take percpu_ref operations for registered files in IOPOLL mode (Xiaoguang Wang)
- alinux: io_uring: keep a pointer ref_node in io_kiocb (Xiaoguang Wang)
- io_uring: registered files improvements for IOPOLL mode (Xiaoguang Wang)
- mm: fix page aging across multiple cgroups (Jiang Zhong)
- mm: Support recursive memcg stats (Jiang Zhong)
- alinux: dm: add support for IO polling (Jeffle Xu)
- alinux: block: add back ->poll_fn in request queue (Jeffle Xu)
- alinux: block/mq: add iterator for polling hw queues (Jeffle Xu)
- alinux: Revert "blk-mq: fix NULL pointer deference in case no poll implementation" (Jeffle Xu)
- io_uring: use blk_queue_nowait() to check if NOWAIT supported (Jeffle Xu)
- dm: add support for DM_TARGET_NOWAIT for various targets (Jeffle Xu)
- dm: add support for REQ_NOWAIT and enable it for linear target (Konstantin Khlebnikov)
- block: add QUEUE_FLAG_NOWAIT (Mike Snitzer)
- block: Fix use-after-free in blkdev_get() (Jason Yan)
- proc: Use new_inode not new_inode_pseudo (Eric W. Biederman)
- aio: fix async fsync creds (Miklos Szeredi)
- propagate_one(): mnt_set_mountpoint() needs mount_lock (Al Viro)
- vmalloc: fix remap_vmalloc_range() bounds checks (Jann Horn)
- dax: pass NOWAIT flag to iomap_apply (Jeff Moyer)
- aio: prevent potential eventfd recursion on poll (Jens Axboe)
- chardev: Avoid potential use-after-free in 'chrdev_open()' (Will Deacon)
- backport fs bugfix from 4.19.y stable (Jeffle Xu)
- tcp: increase tcp_max_syn_backlog max value (Eric Dumazet)
- net: increase SOMAXCONN to 4096 (Eric Dumazet)
- NFS: fix nfs_path in case of a rename retry (Ashish Sangwan)
- nfs: Fix security label length not being reset (Jeffrey Mitchell)
- nfs: Fix getxattr kernel panic and memory overflow (Jeffrey Mitchell)
- blk-cgroup: Fix memleak on error path (Gabriel Krisman Bertazi)
- block: ensure bdi->io_pages is always initialized (Jens Axboe)
- blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART (Ming Lei)
- nvme-core: put ctrl ref when module ref get fail (Chaitanya Kulkarni)
- nvme-core: get/put ctrl and transport module in nvme_dev_open/release() (Chaitanya Kulkarni)
- nvme: Fix controller creation races with teardown flow (Israel Rukshin)
- virtio_ring: Avoid loop when vq is broken in virtqueue_poll (Mao Wenan)
- dm thin metadata: Avoid returning cmd->bm wild pointer on error (Ye Bin)
- alinux: update config to add PCIE EDR support (Zelin Deng)
- Enable PCIE Error Disconnect Recovery (Zelin Deng)
- alinux: io_uring: fix compile warning in io_ioctl() (Hao Xu)
- xsk: Use struct_size() helper (Magnus Karlsson)
- io_uring: only wake up sq thread while current task is in io worker context (Xiaoguang Wang)
- alinux: io_uring: support ioctl (Hao Xu)
- task_work: cleanup notification modes (Jens Axboe)
- io_uring: use TWA_SIGNAL for task_work uncondtionally (Jens Axboe)
- io_uring: fix regression with always ignoring signals in io_cqring_wait() (Jens Axboe)
- io_uring: use signal based task_work running (Jens Axboe)
- task_work: teach task_work_add() to do signal_wake_up() (Oleg Nesterov)
- x86/unwind/orc: Fall back to using frame pointers for generated code (Josh Poimboeuf)
- alinux: cpuacct: Export nr_running & nr_uninterruptible (Yihao Wu)
- alinux: sched: Maintain "nr_uninterruptible" in runqueue (Xunlei Pang)
- ovl: provide a mount option "volatile" (Vivek Goyal)
- ovl: only pass ->ki_flags to ovl_iocb_to_rwf() (Miklos Szeredi)
- ovl: fix some xino co...
Cloud Kernel release 21
Notable Changes
- Intel Icelake RAS support (Wept Zhang)
- PCIe Gen4 support (Artie Ding)
- intel_idle driver enhancements (Erwei Deng)
- intel-speed-select tool cherry-pick from upstream (Erwei Deng)
- AMD RAS enhancements (Zelin Deng)
- AMD PMCs/Perf enhancements (Peng Wang)
- Intel Icelake PMU enhancements (Peng Wang)
- virtio-fs support (Bob Liu)
- virtio-mem support (Alex Shi)
- mm semaphore enhancements (Yang Shi)
- backport watermark boost features and bug fixes (Xu Yu)
- arm64 pseudo NMIs support (Zou Cao)
- arm64: Neoverse N1 support (Bin Yu)
Config Changes
- configs: Open the IGB IGBVF IXGBE IXGBEVF configs (Erwei Deng)
- configs: enable vsyscall emulate by default for x86_64 (Shile Zhang)
- configs: open the UIO Kconfig for x86_64 (Erwei Deng)
- configs: disable some needless builtin modules (Shile Zhang)
- configs: Enable CONFIG_RESCTRL to enable Intel RDT and AMD QoS (Zelin Deng)
- configs: Enabled CONFIG_PCIE_DPC (Zelin Deng)
- configs: enable AF_XDP socket by default (Dust Li)
- configs: disable CONFIG_REFCOUNT_FULL for release kernel (Dust Li)
- configs: enable conntrack_zone option (Zhiyuan Hou)
- configs: arm64: keep the unified configs tuned for both arches (Shile Zhang)
- configs: arm64: reconfig to sync with internal version (Shile Zhang)
Patches From Upstream
- efi: Fix a race and a buffer overflow while reading efivars via sysfs (Vladis Dronov)
- EDAC, skx_common: Refactor so that we initialize "dev" in result of adxl decode. (Tony Luck)
- libnvdimm: Out of bounds read in __nd_ioctl() (Dan Carpenter)
- io_uring: hold 'ctx' reference around task_work queue + execute (Jiufei Xue)
- x86/mce: Move nmi_enter/exit() into the entry point (Thomas Gleixner)
- io_uring: Fix NULL pointer dereference in loop_rw_iter() (Guoyu Huang)
- blk-mq: fix failure to decrement plug count on single rq removal (Jens Axboe)
- block: sum requests in the plug structure (Jens Axboe)
- mm/mmap.c: close race between munmap() and expand_upwards()/downwards() (Kirill A. Shutemov)
- x86/mpx, mm/core: Fix recursive munmap() corruption (Dave Hansen)
- io_uring: clear IORING_SQ_NEED_WAKEUP after executing task works (Xiaoguang Wang)
- io_uring bug fixes from v5.8 (Jiufei Xue)
- perf vendor events intel: Add Icelake V1.00 event file (Haiyan Song)
- ovl: initialize error in ovl_copy_xattr (Yuxuan Shui)
- xfs: add agf freeblocks verify in xfs_agf_verify (Zheng Bin)
- dm: use noio when sending kobject event (Mikulas Patocka)
- ext4: fix race between ext4_sync_parent() and rename() (Eric Biggers)
- ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max (Harshad Shirwadkar)
- x86/cpufeatures: Add feature bit RDPRU on AMD (Babu Moger)
- ext4: disable dioread_nolock whenever delayed allocation is disabled (Eric Whitney)
- nvme: fix possible deadlock when nvme_update_formats fails (Sagi Grimberg)
- nvme: single segment enhancements (Baolin Wang)
- TencentOS-kernel: ipvs: avoid drop first packet by reusing conntrack (YangYuxi)
- blk-mq: add multiple queue maps support (Xiaoguang Wang)
- io_uring: fix recvmsg memory leak with buffer selection (Pavel Begunkov)
- iocost misc bug fixes from upstream (Jiufei Xue)
- perf vendor events amd: Add L3 cache events for Family 17h (Kim Phillips)
- x86/resctrl: Fix memory bandwidth counter width for AMD (Babu Moger)
- x86/resctrl: Support CPUID enumeration of MBM counter width (Reinette Chatre)
- x86/cpu: Move resctrl CPUID code to resctrl/ (Reinette Chatre)
- x86/resctrl: Rename asm/resctrl_sched.h to asm/resctrl.h (Reinette Chatre)
- ovl: inode reference leak in ovl_is_inuse true case. (youngjun)
- Revert "samples/bpf: fix build by setting HAVE_ATTR_TEST to zero" (Dust Li)
- samples/bpf: Add a workaround for asm_inline (KP Singh)
- samples/bpf: fix build with new clang (Alexei Starovoitov)
- samples/bpf: workaround clang asm goto compilation errors (Yonghong Song)
- io_uring misc fixes from upstream (Jiufei Xue)
- vfs, afs, ext4: Make the inode hash table RCU searchable (David Howells)
- io_uring: export cq overflow status to userspace (Xiaoguang Wang)
- backport security support for nvdimm (Shile Zhang)
- io_uring: fix current->mm NULL dereference on exit (Pavel Begunkov)
- io_uring: fix hanging iopoll in case of -EAGAIN (Pavel Begunkov)
- ACPICA: ACPI 6.3: MADT: add support for statistical profiling in GICC (Erik Schmauss)
- perf: arm_spe: Enable ACPI/Platform automatic module loading (Jeremy Linton)
- arm_pmu: acpi: spe: Add initial MADT/SPE probing (Jeremy Linton)
- blk-iolatency: only call ktime_get() if needed (Hongnan Li)
- ICX: platform/x86: ISST: Fix wrong unregister type (Srinivas Pandruvada)
- ICX: platform/x86: ISST: Allow additional core-power mailbox commands (Srinivas Pandruvada)
- perf stat: Fix shadow stats for clock events (Ravi Bangoria)
- arm64/dma-mapping: Mildly optimise non-coherent IOMMU ops (Robin Murphy)
- iommu/dma: Use fast DMA domain lookup (Robin Murphy)
- iommu: Add fast hook for getting DMA domains (Robin Murphy)
- io_uring: fix io_sq_thread no schedule when busy (Xuan Zhuo)
- perf arm64: Fix mksyscalltbl when system kernel headers are ahead of the kernel (Vitaly Chikunov)
- drm/amdgpu: fix unload driver fail (Emily Deng)
- io_uring patchset sync from v5.8 (part 2) (Xiaoguang Wang)
- vfio-pci: Invalidate mmaps and block MMIO access on disabled memory (Alex Williamson)
- vfio-pci: Fault mmaps to enable vma tracking (Alex Williamson)
- cpufreq: intel_pstate: Fix compilation for !CONFIG_ACPI (Dominik Brodowski)
Patches From Alibaba Cloud Operating System Team
- alinux: nvme: pci: Fix the incorrect ways to calculate the request size (Baolin Wang)
- alinux: arm64: adjust tk_core memory layout (Peng Wang)
- alinux: sched: Fix per-cgroup idle accounting deadlock (Yihao Wu)
- alinux: nvme: pci: Use bio->bi_vcnt directly (Baolin Wang)
- alinux: blk: export sector and len fields for iohang (Jeffle Xu)
- alinux: Fix latency histogram & nr_migrations rcu bugs (Yihao Wu)
- alinux: configs: disable low limit and enable io latency (Joseph Qi)
- alinux: block: don't decrement nr_phys_segments for physically contigous segments (Baolin Wang)
- alinux: mm: completely disable swapout with negative swappiness (Xu Yu)
- alinux: virtio-blk: fix discard buffer overrun (Jeffle Xu)
- alinux: nvme-pci: hold cq_lock while completing CQEs (Xiaoguang Wang)
- alinux: panic: change the default value of crash_kexec_post_notifiers to true (Shile Zhang)
- alinux: configs: add VIRTIO_MEM and VIRTIO_FS (Liu Bo)
- alinux: sched: Add cpu_stress to show system-wide task waiting (Yihao Wu)
- alinux: block: initialize io hang counter (Xiaoguang Wang)
- hookers: fix Kconfig dependency on INET (Dust Li)
- alinux: tcp_rt module support (Xuan Zhuo)
- alinux: blk-iocost: bypass IOs earlier if disabled (Joseph Qi)
- alinux: block-throttle: only do io statistics if needed (Xiaoguang Wang)
- alinux: introduce deferred_meminit boot parameter (chenxiangzuo)
Cloud Kernel release 20
Notable Changes
- io_uring patchset sync from v5.8 (Xiaoguang Wang)
- io_uring patchset sync from v5.7 (Xiaoguang Wang)
- io_uring patchset sync from v5.6 (Joseph Qi)
- io_uring patchset sync from v5.5 (Joseph Qi)
- thp/khugepaged improvements and CoW semantics (Yang Shi)
- ACPI/APEI enhancements for arm64 (Baolin Wang)
- commits_rqs support for blk-mq (Baolin Wang)
Config Changes
- configs: Enabled acpi-cpufreq for x86 platform (Zelin Deng)
- configs: disable ext4 encryption (Joseph Qi)
- configs: arm64: use 48-bit virtual address (Xu Yu)
Patches Sync From Upstream
- sched/cpufreq: Move the cfs_rq_util_change() call to cpufreq_update_util() (Vincent Guittot)
- sched/fair: Fix O(nr_cgroups) in the load balancing path (Vincent Guittot)
- sched/fair: Optimize update_blocked_averages() (Vincent Guittot)
- usb driver misc fixes and enhancements (Baolin Wang)
- lib/genalloc: add gen_pool_dma_zalloc() for zeroed DMA allocations (Fredrik Noring)
- sched/fair: Remove sgs->sum_weighted_load (Dietmar Eggemann)
- sched/core: Remove sd->*_idx (Dietmar Eggemann)
- sched/core: Remove rq->cpu_load[] (Dietmar Eggemann)
- sched/debug: Remove sd->*_idx range on sysctl (Dietmar Eggemann)
- sched/fair: Replace source_load() & target_load() with weighted_cpuload() (Dietmar Eggemann)
- sched/fair: Remove the rq->cpu_load[] update code (Dietmar Eggemann)
- sched/fair: Remove rq->load (Dietmar Eggemann)
- cpuidle: menu: Remove get_loadavg() from the performance multiplier (Daniel Lezcano)
- sched/fair: Disable LB_BIAS by default (Dietmar Eggemann)
- device-dax: don't leak kernel memory to user space after unloading kmem (David Hildenbrand)
- device-dax: "Hotremove" persistent memory that is used like normal RAM (Pavel Tatashin)
- kbuild: mark prepare0 as PHONY to fix external module build (Masahiro Yamada)
- pvpanic: add crash loaded event (Shile Zhang)
- NFS misc fixes from 4.19 LTS (Jeffle Xu)
- xfs misc fixes from 4.19 LTS (Jeffle Xu)
- ovl misc fixes from 4.19 LTS (Jeffle Xu)
- jbd2 misc fixes from 4.19 LTS (Jeffle Xu)
- ext4 misc fixes from 4.19 LTS (Jeffle Xu)
- nvme driver misc fixes from 4.19 LTS (Jeffle Xu)
- dm misc fixes from 4.19 LTS (Jeffle Xu)
- virtio-blk misc fixes from 4.19 LTS (Jeffle Xu)
- block layer misc fixes from 4.19 LTS (Jeffle Xu)
- io_uring: check file O_NONBLOCK state for accept (Jiufei Xue)
- ext4: fix partial cluster initialization when splitting extent (Jeffle Xu)
- psi misc fixes from upstream (zhongjiang-ali)
- fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() (Alexander Potapenko) {CVE-2020-10732}
- KVM: SVM: Fix potential memory leak in svm_cpu_init() (Miaohe Lin) {CVE-2020-12768}
- netlabel: cope with NULL catmap (Paolo Abeni) {CVE-2020-10711}
- selinux: properly handle multiple messages in selinux_netlink_send() (Paul Moore) {CVE-2020-10751}
- sched/fair: Don't NUMA balance for kthreads (Jens Axboe)
- KVM: polling: add architecture backend to disable polling (Christian Borntraeger)
- KVM: x86: fix missing prototypes (Paolo Bonzini)
Patches From Alibaba Cloud Operating System Team
- alinux: sched: Fix wrong cpuacct_update_latency declaration (Yihao Wu)
- alinux: sched: Finer grain of sched latency (Yihao Wu)
- alinux: sched: Add "nr" to sched latency histogram (Yihao Wu)
- alinux: sched: Add cgroup's scheduling latency histograms (Yihao Wu)
- alinux: sched: Add cgroup-level blocked time histograms (Yihao Wu)
- alinux: sched: Introduce cfs scheduling latency histograms (Yihao Wu)
- alinux: sched: Add switch for scheduler_tick load tracking (Yihao Wu)
- alinux: sched: Add switch for update_blocked_averages (Yihao Wu)
- alinux: sched: Fix %steal in cpuacct.proc_stat in guest OS (Yihao Wu)
- alinux: blk-mq: remove QUEUE_FLAG_POLL from default MQ flags (Joseph Qi)
- alinux: tcp_rt framework adds two new maintainers (xuanzhuo)
Cloud Kernel release 19.2
- configs: enable AMD IOMMU support (Artie Ding)
Cloud Kernel release 19.1
- alinux: sched: Fix regression caused by nr_uninterruptible (Yihao Wu)
Cloud Kernel release 19
Config Changes
- configs/x86: add some NET_EMATCH options as module (Dust Li)
- configs/x86: align x86 NET_SCH configs to aarch64 (Dust Li)
- configs: aarch64: keep uniform configs between ARM and X86 (Shile Zhang)
- configs: enable support for TCP_RT (xuanzhuo)
- configs: enable multipath for kernel selftests (Joseph Qi)
- configs: disable deferred struct page init (Shile Zhang)
- configs: enable squashfs support (Joseph Qi)
- configs: enable support for virtio pmem driver (Shile Zhang)
- configs: update configs to adapt AMD QoS series (Shile Zhang)
- configs: enable null block device for blk-mq tests (Joseph Qi)
- configs: enable security and sm3/4 configs for trust (Tianjia Zhang)
- configs: align configs of aarch64 to x86_64 (Shile Zhang)
- configs: add configs in tree (Shile Zhang)
Patches From Upstream
- ipmi: fix hung processes in __get_guid() (Wen Yang)
- mm: return zero_resv_unavail optimization (Pavel Tatashin)
- mm: zero remaining unavailable struct pages (Naoya Horiguchi)
- blk-mq: balance mapping between present CPUs and queues (Ming Lei)
- fs/namespace.c: fix mountpoint reference counter race (Piotr Krysiuk) {CVE-2020-12114}
- blktrace: fix dereference after null check (Cengiz Can) {CVE-2019-19768}
- blktrace: Protect q->blk_trace with RCU (Jan Kara) {CVE-2019-19768}
- net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup (Sabrina Dubroca) {CVE-2020-1749}
- net: ipv6: add net argument to ip6_dst_lookup_flow (Sabrina Dubroca) {CVE-2020-1749}
- vhost: Check docket sk_family instead of call getname (Eugenio Pérez) {CVE-2020-10942}
- libnvdimm/region: Enable MAP_SYNC for volatile regions (Aneesh Kumar K.V)
- virtio_pmem: fix sparse warning (Pankaj Gupta)
- xfs: disable map_sync for async flush (Pankaj Gupta)
- ext4: disable map_sync for async flush (Pankaj Gupta)
- dax: check synchronous mapping is supported (Pankaj Gupta)
- libnvdimm: add dax_dev sync flag (Pankaj Gupta)
- virtio-pmem: Add virtio pmem driver (Pankaj Gupta)
- libnvdimm: nd_region flush callback support (Pankaj Gupta)
- fix autofs regression caused by follow_managed() changes (Al Viro)
- fs/namei.c: fix missing barriers when checking positivity (Al Viro)
- fix dget_parent() fastpath race (Al Viro)
- new helper: lookup_positive_unlocked() (Al Viro)
- fs/namei.c: pull positivity check into follow_managed() (Al Viro)
- ovl: inherit SB_NOSEC flag from upperdir (Jeffle Xu)
- lib/crc32.c: mark crc32_le_base/__crc32c_le_base aliases as __pure (Rongwei Wang)
- arm64/lib: improve CRC32 performance for deep pipelines (Rongwei Wang)
- arm64/lib: add accelerated crc32 routines (Rongwei Wang)
- arm64: cpufeature: add feature for CRC32 instructions (Rongwei Wang)
- lib/crc32: make core crc32() routines weak so they can be overridden (Rongwei Wang)
- x86/resctrl: Introduce AMD QOS feature (Shile Zhang)
- mm: mempolicy: require at least one nodeid for MPOL_PREFERRED (Randy Dunlap) {CVE-2020-11565}
- serial: 8250: Support disabling mdelay-filled probes of 16550A variants (Josh Triplett)
- ext4: fix error pointer dereference (Jeffle Xu)
- mm/compaction: memory compaction optimaztion (Yang Shi)
- vt: vt_ioctl: fix race in VT_RESIZEX (Eric Dumazet)
- arm64: enable per-task stack canaries (Ard Biesheuvel)
- spi: spi-dw: Add lock protect dw_spi rx/tx to prevent concurrent calls (wuxu.wu)
- iommu/amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE (Suravee Suthikulpanit)
- iommu/amd: Re-factor guest virtual APIC (de-)activation code (Suthikulpanit, Suravee)
- iommu/amd: Lock code paths traversing protection_domain->dev_list (Joerg Roedel)
- iommu/amd: Lock dev_data in attach/detach code paths (Joerg Roedel)
- iommu/amd: Check for busy devices earlier in attach_device() (tianyi)
- iommu/amd: Take domain->lock for complete attach/detach path (Joerg Roedel)
- iommu/amd: Remove amd_iommu_devtable_lock (Joerg Roedel)
- iommu/amd: Remove domain->updated (Joerg Roedel)
- ACPI: PPTT: Consistently use unsigned int as parameter type (Tian Tao)
- ACPI/PPTT: Add function to return ACPI 6.3 Identical tokens (Jeremy Linton)
- ACPI/PPTT: Modify node flag detection to find last IDENTICAL (Jeremy Linton)
- ACPI: Fix comment typos (Bjorn Helgaas)
- ACPI: tables: Simplify PPTT leaf node detection (Jeremy Linton)
- ACPI/PPTT: Add acpi_pptt_warn_missing() to consolidate logs (John Garry)
- drm/amdgpu: add VM eviction lock v3 (Christian König)
- drm/amdgpu: move VM eviction decision into amdgpu_vm.c (Christian König)
- drm/amdgpu: stop evicting busy PDs/PTs (Christian König)
- sysctl: handle overflow in proc_get_long (Christian Brauner)
- SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge (Yihao Wu)
- sched: Avoid scale real weight down to zero (Michael Wang)
- sched/fair: Fix race between runtime distribution and assignment (Huaixin Chang)
- mm: do not allow MADV_PAGEOUT for CoW pages (Michal Hocko)
- mm, vmstat: reduce zone->lock holding time by /proc/pagetypeinfo (Michal Hocko)
- virtio-pci: check name when counting MSI-X vectors (Daniel Verkamp)
- virtio-balloon: initialize all vq callbacks (Daniel Verkamp)
- mm/page_reporting: add free page reporting support (Yang Shi)
- mm/page_alloc.c: fix regression with deferred struct page init (Juergen Gross)
- ima: add sm3 algorithm to hash algorithm configuration list (Tianjia Zhang)
- crypto: rename sm3-256 to sm3 in hash_algo_name (Tianjia Zhang)
- vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console (Eric Biggers)
- vt: vt_ioctl: fix use-after-free in vt_in_use() (Eric Biggers)
- vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines (Jiri Slaby)
- vt: selection, introduce vc_is_sel (Jiri Slaby)
- io_uring: use current task creds instead of allocating a new one (Jens Axboe)
- io_uring: only return -EBUSY for submit on non-flushed backlog (Jens Axboe)
- cpuidle: header file stubs must be "static inline" (Stephen Rothwell)
- kvm: vmx: fix coccinelle warnings (Yi Wang)
Patches From Alibaba Cloud Operating System Team
- alinux: sched: make SCHED_SLI dependent on FAIR_GROUP_SCHED (Yihao Wu)
- alinux: add tcprt framework to kernel (xuanzhuo)
- alinux: quota: fix unused label warning in dquot_load_quota_inode() (Jeffle Xu)
- alinux: mm: fix undefined reference to printk_ratelimit_state (Xu Yu)
- alinux: mm: fix undefined reference to mlock_fixup (Xu Yu)
- alinux: sched: Fix p->cpu build error on aarch64 (Yihao Wu)
- alinux: sched: Fix nr_migrations compile errors (Yihao Wu)
- alinux: kernel: Reduce tasklist_lock contention at fork and exit (Xunlei Pang)
- alinux: oom: add ratelimit printk to prevent softlockup (zhongjiang-ali)
- alinux: Limit the print message frequency when memcg oom triggers (zhongjiang-ali)
- alinux: mm: restrict the print message frequency further when memcg oom triggers (zhongjiang-ali)
- alinux: sched: add schedule SLI support (Yihao Wu)
- alinux: cgroup: Fix task_css_check rcu warnings (Xunlei Pang)
- alinux: config: disable CONFIG_NFS_V3_ACL and CONFIG_NFSD_V3_ACL (Chunmei Xu)
- alinux: kernel: reap zombie process by specified pid (zhongjiang-ali)
- alinux: Fix an potential null pointer reference in dump_header (zhongjiang-ali)
- alinux: mm: Pin code section of process in memory (Xunlei Pang)
- alinux: kidled: make kidled_inc_page_age return latest page age (Xu Yu)
- alinux: mm, memcg: optimize division operation with memsli counters (Xu Yu)
- alinux: mm, memcg: rework memsli interfaces (Xu Yu)
- alinux: mm, memcg: add memory SLI support (Xu Yu)
- alinux: Revert "net: get rid of an signed integer overflow in ip_idents_reserve()" (xuanzhuo)
- alinux: pci/iohub-sriov: fix iohub-sriov VF probe issue (shanghui.lsh)
- alinux: mm, memcg: optimize division operation with memcg counters (Xu Yu)
- alinux: blk-mq: fix broken io_ticks & time_in_queue update (Xiaoguang Wang)
Cloud Kernel Release 18
Cloud Kernel release 18 is rolling out! This release is rebased upon v4.19.91 LTS, let's see what else we're bringing to you (this is really a long changelog):
Highlight: Features, Enhancements and Bug Fixes from Alibaba Cloud Linux Internal Version
- alinux: mm: add proc interface to control context readahead (Xiaoguang Wang)
- alinux: Hookers: add arm64 support (Zou Cao)
- alinux: mm, memcg: export workingset counters on memcg v1 (Xu Yu)
- alinux: pci/iohub-sriov: Support for Alibaba PCIe IOHub SRIOV (liushanghui)
- alinux: mm, memcg: abort priority oom if with oom victim (Xu Yu)
- alinux: mm, memcg: account number of processes in the css (Xu Yu)
- alinux: mm, memcg: fix soft lockup in priority oom (Xu Yu)
- alinux: mm, memcg: record latency of memcg wmark reclaim (Xu Yu)
- alinux: doc: use unified official project name Cloud Kernel (Caspar Zhang)
- alinux: mm: oom_kill: show killed task's cgroup info in global oom (Wenwei Tao)
- alinux: mm: memcontrol: enable oom.group on cgroup-v1 (Wenwei Tao)
- alinux: doc: alibaba: Add priority oom descriptions (Wenwei Tao)
- alinux: mm: memcontrol: introduce memcg priority oom (Wenwei Tao)
- alinux: kernel: cgroup: account number of tasks in the css and its descendants (Wenwei Tao)
- alinux: doc: Add Documentation/alibaba/interfaces.rst (Xunlei Pang)
- alinux: memcg: Account throttled time due to memory.wmark_min_adj (Xunlei Pang)
- alinux: memcg: Introduce memory.wmark_min_adj (Xunlei Pang)
- alinux: memcg: Provide users the ability to reap zombie memcgs (Xunlei Pang)
- alinux: jbd2: track slow handle which is preventing transaction committing (Xiaoguang Wang)
- alinux: fs: record page or bio info while process is waitting on it (Xiaoguang Wang)
- alinux: blk: add iohang check function (Xiaoguang Wang)
- alinux: mm,memcg: export memory.{min,low} to cgroup v1 (Xu Yu)
- alinux: mm,memcg: export memory.{events,events.local} to v1 (Xu Yu)
- alinux: mm,memcg: export memory.high to v1 (Xu Yu)
- alinux: arm64: add livepatch support (Zou Cao)
- alinux: blk-throttle: fix logic error about BIO_THROTL_STATED in throtl_bio_end_io() (Xiaoguang Wang)
- alinux: jbd2: fix build errors (Xiaoguang Wang)
- alinux: mm: remove unused variable (Joseph Qi)
- alinux: jbd2: fix build warnings (Joseph Qi)
- alinux: mm: kidled: fix frame-larger-than build warning (Xu Yu)
- alinux: mm: thp: remove deferred split queue from mem_cgroup (Caspar Zhang)
- alinux: psi: using cpuacct_cgrp_id under CONFIG_CGROUP_CPUACCT (Joseph Qi)
- alinux: iocost: fix format mismatch build warning (Joseph Qi)
- alinux: mm: memcontrol: memcg_wmark_wq can be static (kbuild test robot)
New Features and Enhancements From Upstream
- AMD CPU Enhancements
- Hygon CPU Support
- IOUring Support
- cpuidle: Support guest halt polling (Yihao Wu)
- mm: fix trying to reclaim unevictable lru page when calling madvise_pageout (zhong jiang)
- mm: factor out common parts between MADV_COLD and MADV_PAGEOUT (Minchan Kim)
- mm: introduce MADV_PAGEOUT (Minchan Kim)
- mm: introduce MADV_COLD (Minchan Kim)
- mm: change PAGEREF_RECLAIM_CLEAN with PAGE_REFRECLAIM (Minchan Kim)
- arm64: mm: implement pte_devmap support (Shannon Zhao)
- add the support of patchable-function-entry for hotfix kpatch with gcc 9.2 (Zou Cao)
- KVM: arm64: Add support 1G hugepages at stage 2 (Shannon Zhao)
- spi: spi: add GPIO chipselect support (Baoyou Xie)
Kernel Config Changes
- configs: enable overlay redirect dir and inode index by default
- configs: Build support for Alibaba PCIe IOHub SRIOV
- configs: enable CONFIG_FTRACE_SYSCALLS on x86_64 kernel
- configs: Enable arm64 hookers support
- configs: enable CONFIG_LIVEPATCH for aarch64
- configs: enable NVME block device support
- configs: configs: enable intel idle driver
- configs: enable guest halt polling support
- configs: enable X86 PM timer support
- configs: enable io wq for iouring
- configs: add CGROUP_BPF support on X86
- configs: add vmware support
- configs: enable SOFT_WATCHDOG
- configs: enable Hygon support
- configs: enable iocost for aarch64
- configs: enable CONFIG_BLK_DEBUG_FS by default
- configs: add aarch64 config base
- configs: enable deferred page init
- configs: always enable THP by default
- configs: enable iouring support
Other Bug Fixes
- vfs: fix do_last() regression (Al Viro)
- io-wq: wait for io_wq_create() to setup necessary workers (Jens Axboe) {CVE-2019-19241}
- io_uring: async workers should inherit the user creds (Jens Axboe) {CVE-2019-19241}
- io-wq: have io_wq_create() take a 'data' argument (Jens Axboe) {CVE-2019-19241}
- io_wq: add get/put_work handlers to io_wq_create() (Jens Axboe) {CVE-2019-19241}
- dccp: Fix memleak in __feat_register_sp (YueHaibing) {CVE-2019-20096}
- scsi: libsas: stop discovering if oob mode is disconnected (Jason Yan) {CVE-2019-19965}
- drm/i915/gen9: Clear residual context state on context switch (Akeem G Abodunrin) {CVE-2019-14615}
- RDMA: Fix goto target to release the allocated memory (Navid Emamdoost) {CVE-2019-19077}
- ipmi: Fix memory leak in __ipmi_bmc_register (Navid Emamdoost) {CVE-2019-19046}
- vt: selection, close sel_buffer race (Jiri Slaby) {CVE-2020-8648}
- vgacon: Fix a UAF in vgacon_invert_region (Zhang Xiaoxu) {CVE-2020-8647,CVE-2020-8649}
- do_last(): fetch directory ->i_mode and ->i_uid before it's too late (Al Viro) {CVE-2020-8428}
- x86/kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit (Boris Ostrovsky) {CVE-2019-3016}
- KVM: nVMX: Check IO instruction VM-exit conditions (Oliver Upton) {CVE-2020-2732}
- KVM: nVMX: Refactor IO bitmap checks into helper function (Oliver Upton) {CVE-2020-2732}
- KVM: nVMX: Don't emulate instructions in guest mode (Paolo Bonzini) {CVE-2020-2732}
- mm: fix tick timer stall during deferred page init (Shile Zhang)
- bpf/sockmap: Read psock ingress_msg before sk_receive_queue (Lingpeng Chen)
- mm: memcontrol: use CSS_TASK_ITER_PROCS at mem_cgroup_scan_tasks() (Tetsuo Handa)
- io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled (Xiaoguang Wang)
- md: make sure desc_nr less than MD_SB_DISKS (Yufen Yu)
- md: avoid invalid memory access for array sb->dev_roles (Yufen Yu)
- md: no longer compare spare disk superblock events in super_load (Yufen Yu)
- md: return -ENODEV if rdev has no mddev assigned (Pawel Baldysiak)
- md/raid10: Fix raid10 replace hang when new added disk faulty (Alex Wu)
- cpuidle: governor: Add new governors to cpuidle_governors again (Rafael J. Wysocki)
- kvm: x86: add host poll control msrs (Marcelo Tosatti)
- KVM: arm64: Opportunistically turn off WFI trapping when using direct LPI injection (Marc Zyngier)
- KVM: vgic-v4: Track the number of VLPIs per vcpu (Marc Zyngier)
- KVM: arm64: vgic-v4: Move the GICv4 residency flow to be driven by vcpu_load/put (Marc Zyngier)
- EDAC, skx: Retrieve and print retry_rd_err_log registers (Tony Luck)
- tools headers uapi: Sync asm-generic/mman-common.h with the kernel (Arnaldo Carvalho de Melo)
- tools build: Check if gettid() is available before providing helper (Arnaldo Carvalho de Melo)
- efi: Make efi_rts_work accessible to efi page fault handler (Sai Praneeth)
- netfilter: conntrack: udp: set stream timeout to 2 minutes (Florian Westphal)
- netfilter: conntrack: udp: only extend timeout to stream mode after 2s (Florian Westphal)
- iomap: Allow forcing of waiting for running DIO in iomap_dio_rw() (Jan Kara)
- io_uring: fix poll_list race for SETUP_IOPOLL|SETUP_SQPOLL (Xiaoguang Wang)
- io_uring: add io_uring support (Joseph Qi)
- ext4: start to support iopoll method (Xiaoguang Wang)
- ext4: Move to shared i_rwsem even without dioread_nolock mount opt (Ritesh Harjani)
- ext4: Start with shared i_rwsem in case of DIO instead of exclusive (Ritesh Harjani)
- ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT (Ritesh Harjani)
- ext4: introduce direct I/O write using iomap infrastructure (Matthew Bobrowski)
- iomap: move the iomap_dio_rw ->end_io callback into a structure (Christoph Hellwig)
- ext4: update ext4_sync_file() to not use __generic_file_fsync() (Matthew Bobrowski)
- ext4: move inode extension check out from ext4_iomap_alloc() (Matthew Bobrowski)
- ext4: move inode extension/truncate code out from ->iomap_end() callback (Matthew Bobrowski)
- ext4: introduce direct I/O read using iomap infrastructure (Matthew Bobrowski)
- ext4: introduce new callback for IOMAP_REPORT (Matthew Bobrowski)
- iomap: use a srcmap for a read-modify-write I/O (Goldwyn Rodrigues)
- ext4: split IOMAP_WRITE branch in ext4_iomap_begin() into helper (Matthew Bobrowski)
- ext4: move set iomap routines into a separate helper ext4_set_iomap() (Matthew Bobrowski)
- ext4: iomap that extends beyond EOF should be marked dirty (Matthew Bobrowski)
- ext4: update direct I/O read lock pattern for IOCB_NOWAIT (Matthew Bobrowski)
- ext4: reorder map.m_flags checks within ext4_iomap_begin() (Matthew Bobrowski)
- x86/amd_nb: Make hygon_nb_misc_ids static (Pu Wen)
- io-wq: add support for bounded vs unbunded work (Jens Axboe)
- io-wq: io_wqe_run_queue() doesn't need to use list_empty_careful() (Jens Axboe)
- io-wq: use proper nesting IRQ disabling spinlocks for cancel (Jens Axboe)
- io-wq: use kfree_rcu() to simplify the code (YueHaibing)
- net: add __sys_accept4_file() helper (Jens Axboe)
- sched/core, workqueues: Distangle worker accounting from rq lock (Thomas Gleixner)
- sched: Remove stale PF_MUTEX_TESTER bit (Thomas Gleixner)
- ixgbe: Fix calculation of queue with VFs and flow director on interface flap (Cambda Zhu)
- tcp: do not leave dangling pointers in tp->highest_sack (Eric Dumazet)
- include/linux/notifier.h: SRCU: fix ctags (Sam Protsenko)
- mm: thp: don't need care deferred split queue in memcg charge move path (Wei Yang)
- signal: simplify set_user_sigmask/restore_user_sigmask (Oleg Nesterov)
- block: never take page references for ITER_BVEC (Christoph Hellwig)
- s...
Cloud Kernel Release 17
Happy New Year! Here is a new Cloud Kernel release 17, rebased upon v4.19.81 LTS, with many new features, enhancements, as well as bug fixes.
Highlight: Features, Enhancements and Bug Fixes from Alibaba Cloud Linux Internal Version
- alinux: sched/fair: use static load in wake_affine_weight (Huaixin Chang)
- alinux: introduce psi_v1 boot parameter (Joseph Qi)
- alinux: psi: Support PSI under cgroup v1 (Xunlei Pang)
- alinux: mm: kidled support (Gavin Shan)
- alinux: per-cgroup kswapd support (Yang Shi)
- alinux: blk-throttle: limit bios to fix amount of pages entering writeback prematurely (Xiaoguang Wang)
- alinux: block-throttle: add counters for completed io (Jiufei Xue)
- alinux: block-throttle: code cleanup (Jiufei Xue)
- alinux: blk-throttle: add throttled io/bytes counter (Joseph Qi)
- alinux: blk-throttle: fix tg NULL pointer dereference (Joseph Qi)
- alinux: blk-throttle: support io delay stats (Joseph Qi)
- alinux: nvme-pci: Disable dicard zero-out functionality on Intel's P3600 NVMe disk drive (Wenwei Tao)
- alinux: memcg: Point wb to root memcg/blkcg when offlining to avoid zombie (Xunlei Pang)
- alinux: block: add counter to track io request's d2c time (Xiaoguang Wang)
- alinux: fuse: add sysfs api to flush processing queue requests (Ma Jie Yue)
- alinux: jbd2: add proc entry to control whether doing buffer copy-out (Xiaoguang Wang)
- alinux: ext4: don't submit unwritten extent while holding active jbd2 handle (Xiaoguang Wang)
- alinux: fs,ext4: remove projid limit when create hard link (zhangliguang)
- alinux: jbd2: add new "stats" proc file (Xiaoguang Wang)
- alinux: jbd2: create jbd2-ckpt thread for journal checkpoint (Joseph Qi)
- alinux: hotfix: Add Cloud Kernel hotfix enhancement (Xunlei Pang)
New Features and Enhancements From Upstream
- scripts/sorttable: Implement build-time ORC unwind table sorting (Shile Zhang)
- AMD CPU-related enhancements
- mm: thp: make deferred split shrinker memcg aware (Yang Shi)
- device-dax: add presistent memory support
- ICX: Intel IceLake support
- iocost: add iocost support
Kernel Config Changes
- configs: change to CONFIG_HW_RANDOM_AMD=m
- configs: enable CONFIG_FTRACE_SYSCALLS
- configs: add AMD configs
- configs: add Intel configs
- configs: enable CONFIG_BLK_CGROUP_IOCOST
Other Bug Fixes
- modsign: use all trusted keys to verify module signature (Ke Wu)
- tpm: Fix off-by-one when reading binary_bios_measurements (Jia Zhang)
- tpm: Simplify the measurements loop (Jia Zhang)
- alinux: jbd2: fix build warning on i386 (Joseph Qi)
- alinux: jbd2/doc: fix new kernel-doc warning (Joseph Qi)
- alinux: mm/thp: remove unused variable 'pgdata' in split_huge_page_to_list() (Joseph Qi)
- ovl: implement async IO routines (Jiufei Xue)
- vfs: add vfs_iocb_iter_[read|write] helper functions (Jiufei Xue)
- alinux: mm, memcg: fix possible soft lockup in try_charge (Xu Yu)
- dm thin: wakeup worker only when deferred bios exist (Jeffle Xu)
- mm, memcg: add missing memory stall section in mem_cgroup_handle_over_high (Caspar Zhang)
- mm: thp: handle page cache THP correctly in PageTransCompoundMap (Yang Shi)
- mm, memcg: throttle allocators when failing reclaim over memory.high (Chris Down)
- mm/zsmalloc.c: fix a -Wunused-function warning (Qian Cai)
- x86/mm: Split vmalloc_sync_all() (Joerg Roedel)
- zswap: do not map same object twice (Vitaly Wool)
- lib/lz4: update LZ4 decompressor module (Gao Xiang)
- zram: fix race between backing_dev_show and backing_dev_store (Chenwandun)
- iomap: fix page_done callback for short writes (Andreas Gruenbacher)
- block: fix .bi_size overflow (Ming Lei)
- iomap: Fix use-after-free error in page_done callback (Andreas Gruenbacher)
- fs: Turn __generic_write_end into a void function (Andreas Gruenbacher)
- mm/swap_state.c: simplify total_swapcache_pages() with get_swap_device() (Huang Ying)
- mm, swap: fix race between swapoff and some swap operations (Huang Ying)
- mm: swap: check if swap backing device is congested or not (Yang Shi)
- vmscan: return NODE_RECLAIM_NOSCAN in node_reclaim() when CONFIG_NUMA is n (Wei Yang)
- jbd2: fix deadlock while checkpoint thread waits commit thread to finish (Xiaoguang Wang)
- virtio_ring: Support using kernel booting paramter when compiled as module (Shannon Zhao)
- sched/fair: Fix -Wunused-but-set-variable warnings (Qian Cai)
- sched/fair: Fix low cpu usage with high throttling by removing expiration of cpu-local slices (Dave Chiluk)
- sched/fair: Don't push cfs_bandwith slack timers forward ([email protected])
Cloud Kernel Release 16
Cloud Kernel Release 16 is ready, this is another regular release with several architectural updates as well as a bunch of bug fixes.
Highlights
- Bump to kernel 4.19.67 LTS;
- Add Intel Cooper Lake CPU support;
- ARM64 enhancements;
Enhancements
- configs: compile mouse/cirrus driver as modules for qboot optimization
- configs: enable torture test for kernel-debug
- x86/mm/cpa: Improve large page preservation handling
- e1000e: increase pause and refresh time (Miguel Bernal Marin)
- reduce e1000e boot time by tightening sleep ranges (Arjan van de Ven)
Bug Fixes
- ovl: fix regression caused by overlapping layers detection (Amir Goldstein)
- sched/psi: Correct overly pessimistic size calculation (Miles Chen)
- sched/psi: Do not require setsched permission from the trigger creator (Suren Baghdasaryan)
- sched/psi: Reduce psimon FIFO priority (Peter Zijlstra)
- blk-cgroup: turn on psi memstall stuff (Josef Bacik)
- KVM: coalesced_mmio: add bounds checking (Matt Delco) {CVE-2019-14821}
- sched/fair: Don't assign runtime for throttled cfs_rq (Liangyan)
- zswap: use movable memory if zpool support allocate movable memory (Hui Zhu)
- zpool: add malloc_support_movable to zpool_driver (Hui Zhu)
- net/rds: Fix info leak in rds6_inc_info_copy() (Ka-Cheong Poon) {CVE-2019-16714}
- ip_sockglue: Fix missing-check bug in ip_ra_control() (Gen Zhang) {CVE-2019-12381}
- efi/x86/Add missing error handling to old_memmap 1:1 mapping code (Gen Zhang) {CVE-2019-12380}
- ipv6_sockglue: Fix a missing-check bug in ip6_ra_control() (Gen Zhang) {CVE-2019-12378}
- scsi: mpt3sas_ctl: fix double-fetch bug in _ctl_ioctl_main() (Gen Zhang) {CVE-2019-12456}
- clk-sunxi: fix a missing-check bug in sunxi_divs_clk_setup() (Gen Zhang) {CVE-2019-12455}
- powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() (Gen Zhang) {CVE-2019-12614}
- vhost: make sure log_num < in_num (yongduan) {CVE-2019-14835}
- psi: get poll_work to run when calling poll syscall next time (Jason Xing)
Cloud Kernel Release 15
It has been a long time since last release. In this new release, we rebased our codes to upstream LTS 4.19.57, with extra updates as follows:
Notable Changes
- In this release, we set
cubic
as default TCP congestion control algorithm instead ofbbr
, due to a performance degradation observed in production system. The troubleshooting process and solution could be found at this Kbase article. - CVE-2019-1125: the latest Spectre SWAPGS gadget vulnerability fix;
Bug Fixes
- mm/page-writeback.c: fix range_cyclic writeback vs writepages deadlock (Dave Chinner)
- block: fix single range discard merge (Ming Lei)
- NFSv4.x: fix lock recovery during delegation recall (Olga Kornievskaia)
- block: fix the DISCARD request merge (Jianchao Wang)
- dm raid: fix false -EBUSY when handling check/repair message (Heinz Mauelshagen)
- xfs: fix use-after-free race in xfs_buf_rele (Dave Chinner)
- x86: uaccess: Inhibit speculation past access_ok() in user_access_begin() (Will Deacon)
- make 'user_access_begin()' do 'access_ok()' (Linus Torvalds)
- i915: fix missing user_access_end() in page fault exception case (Linus Torvalds)
- drm/i915: Force the slow path after a user-write error (Chris Wilson)
- userfaultfd: allow get_mempolicy(MPOL_F_NODE|MPOL_F_ADDR) to trigger userfaults (Andrea Arcangeli)
- random: speed up the initialization of module (Xingjun Liu)
- random: introduce the initialization seed (Xingjun Liu)
- cpufreq/intel_pstate: Load only on Intel hardware (Shanpei Chen)
- cpufreq: intel_pstate: Add reasons for failure and debug messages (Shanpei Chen)
- cpufreq: intel_pstate: Force HWP min perf before offline (Shanpei Chen)
- ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME (Jann Horn)
- dm: add missing trace_block_split() to __split_and_process_bio() (Mike Snitzer)
- dm: fix dm_wq_work() to only use __split_and_process_bio() if appropriate (Mike Snitzer)
- dm: avoid indirect call in __dm_make_request (Mikulas Patocka)
- dm: fix redundant IO accounting for bios that need splitting (Mike Snitzer)
- dm: fix clone_bio() to trigger blk_recount_segments() (Mike Snitzer)
- NFS: Fix dentry revalidation on NFSv4 lookup (Trond Myklebust)
- ext4: unlock unused_pages timely when doing writeback (Xiaoguang Wang)
- x86/kvmclock: set offset for kvm unstable clock (Pavel Tatashin)
- xfs: serialize unaligned dio writes against all other dio writes (Brian Foster)