# changelog

author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.4.0.0067
changelog:
  - ext4: fix potential error in ext4_do_update_inode
  - mm, sl[aou]b: guarantee natural alignment for kmalloc(power-of-two)
  - mm,hwpoison: return -EBUSY when migration fails
  - config: Enable files cgroup on x86
  - ext4: Fix unreport netlink message to userspace when fs abort
  - ext4: don't leak old mountpoint samples
  - scsi: libiscsi: convert change of struct iscsi_conn to fix KABI
  - scsi: libiscsi: Reset max/exp cmdsn during recovery
  - scsi: iscsi_tcp: Fix shost can_queue initialization
  - scsi: libiscsi: Add helper to calculate max SCSI cmds per session
  - scsi: libiscsi: Fix iSCSI host workq destruction
  - scsi: libiscsi: Fix iscsi_task use after free()
  - scsi: libiscsi: Drop taskqueuelock
  - scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling
  - scsi: libiscsi: Fix error count for active session
  - ext4: fix timer use-after-free on failed mount
  - loop: fix I/O error on fsync() in detached loop devices
  - md/bitmap: fix memory leak of temporary bitmap
  - md: get sysfs entry after redundancy attr group create
  - md: fix deadlock causing by sysfs_notify
  - md: fix the checking of wrong work queue
  - md: flush md_rdev_misc_wq for HOT_ADD_DISK case
  - md: don't flush workqueue unconditionally in md_open
  - md: add new workqueue for delete rdev


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.5.0.0068
changelog:
  - ext4: add reclaim checks to xattr code
  - locking/mutex: Fix non debug version of mutex_lock_io_nested()
  - dm verity: add root hash pkcs#7 signature verification
  - Revert "netfilter: x_tables: Update remaining dereference to RCU"
  - netfilter: x_tables: Use correct memory barriers.
  - Revert "netfilter: x_tables: Switch synchronization to RCU"
  - arm64: kdump: update ppos when reading elfcorehdr
  - netfilter: ctnetlink: fix dump of the expect mask attribute
  - dm ioctl: fix out of bounds array access when no devices
  - block: Suppress uevent for hidden device when removed
  - NFS: Correct size calculation for create reply length
  - cifs: Fix preauth hash corruption
  - ext4: do not try to set xattr into ea_inode if value is empty
  - kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data()
  - nvme-rdma: fix possible hang when failing to set io queues
  - sunrpc: fix refcount leak for rpc auth modules
  - include/linux/sched/mm.h: use rcu_dereference in in_vfork()
  - hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event()
  - scsi: target: core: Prevent underflow for service actions
  - scsi: target: core: Add cmd length set before cmd complete
  - PCI: Fix pci_register_io_range() memory leak
  - Revert "mm, slub: consider rest of partial list if acquire_slab() fails"
  - cifs: return proper error code in statfs(2)
  - tcp: add sanity tests to TCP_QUEUE_SEQ
  - tcp: annotate tp->write_seq lockless reads
  - tcp: annotate tp->copied_seq lockless reads
  - netfilter: x_tables: gpf inside xt_find_revision()
  - net: Fix gro aggregation for udp encaps with zero csum
  - dm table: fix zoned iterate_devices based device capability checks
  - dm table: fix DAX iterate_devices based device capability checks
  - dm table: fix iterate_devices based device capability checks
  - dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size
  - swap: fix swapfile read/write offset
  - mm/hugetlb.c: fix unnecessary address expansion of pmd sharing
  - net: fix up truesize of cloned skb in skb_prepare_for_shift()
  - xfs: Fix assert failure in xfs_setattr_size()
  - arm64 module: set plt* section addresses to 0x0
  - hugetlb: fix update_and_free_page contig page struct assumption
  - net: icmp: pass zeroed opts from icmp{,v6}_ndo_send before sending
  - ipv6: silence compilation warning for non-IPV6 builds
  - ipv6: icmp6: avoid indirect call for icmpv6_send()
  - xfrm: interface: use icmp_ndo_send helper
  - sunvnet: use icmp_ndo_send helper
  - gtp: use icmp_ndo_send helper
  - icmp: allow icmpv6_ndo_send to work with CONFIG_IPV6=n
  - icmp: introduce helper for nat'd source address in network device context
  - dm: fix deadlock when swapping to encrypted device
  - printk: fix deadlock when kernel panic
  - module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols
  - hugetlb: fix copy_huge_page_from_user contig page struct assumption
  - x86: fix seq_file iteration for pat/memtype.c
  - ACPI: property: Fix fwnode string properties matching
  - blk-settings: align max_sectors on "logical_block_size" boundary
  - mm/rmap: fix potential pte_unmap on an not mapped pte
  - arm64: Add missing ISB after invalidating TLB in __primary_switch
  - mm/hugetlb: fix potential double free in hugetlb_register_node() error path
  - mm/memory.c: fix potential pte_unmap_unlock pte error
  - ocfs2: fix a use after free on error
  - tracepoint: Do not fail unregistering a probe due to memory failure
  - isofs: release buffer head before return
  - tcp: fix SO_RCVLOWAT related hangs under mem pressure
  - random: fix the RNDRESEEDCRNG ioctl
  - bfq: Avoid false bfq queue merging
  - locking/static_key: Fix false positive warnings on concurrent dec/inc
  - jump_label/lockdep: Assert we hold the hotplug lock for _cpuslocked() operations
  - KVM: fix memory leak in kvm_io_bus_unregister_dev()
  - net: qrtr: fix a kernel-infoleak in qrtr_recvmsg()
  - xen-blkback: don't leak persistent grants from xen_blkbk_map()
  - KVM: SVM: Periodically schedule when unregistering regions on destroy
  - gianfar: fix jumbo packets+napi+rx overrun crash
  - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf
  - media: v4l: ioctl: Fix memory leak in video_usercopy
  - block: only update parent bi_status when bio fail
  - RDMA/hns: fix timer, gid_type, scc cfg
  - block: respect queue limit of max discard segment
  - block: Use non _rcu version of list functions for tag_set_list


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.6.0.0069
changelog:
  - sched/fair: fix kabi broken due to adding idle_h_nr_running in cfs_rq
  - sched/fair: Make sched-idle CPU selection consistent throughout
  - sched/fair: Optimize select_idle_cpu
  - sched/fair: Fall back to sched-idle CPU if idle CPU isn't found
  - sched/fair: Start tracking SCHED_IDLE tasks count in cfs_rq
  - sched/core: Create task_has_idle_policy() helper


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.7.0.0070
changelog:
  - sched/fair: fix kabi broken due to adding fields in rq and sched_domain_shared
  - sched/fair: fix try_steal compile error
  - config: enable CONFIG_SCHED_STEAL by default
  - sched/fair: introduce SCHED_STEAL
  - disable stealing by default
  - sched/fair: Provide idle search schedstats
  - sched/fair: disable stealing if too many NUMA nodes
  - sched/fair: Steal work from an overloaded CPU when CPU goes idle
  - sched/fair: Provide can_migrate_task_llc
  - sched/fair: Generalize the detach_task interface
  - sched/fair: Hoist idle_stamp up from idle_balance
  - sched/fair: Dynamically update cfs_overload_cpus
  - sched/topology: Provide cfs_overload_cpus bitmap
  - sched/topology: Provide hooks to allocate data shared per LLC
  - sched: Provide sparsemask, a reduced contention bitmap


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.8.0.0071
changelog:
  - config: Enable CONFIG_USERSWAP
  - userswap: support userswap via userfaultfd
  - userswap: add a new flag 'MAP_REPLACE' for mmap()
  - mm, mempolicy: fix up gup usage in lookup_node
  - mm/mempolicy: Allow lookup_node() to handle fatal signal
  - mm/gup: Let __get_user_pages_locked() return -EINTR for fatal signal
  - mm/gup: fix fixup_user_fault() on multiple retries
  - mm/gup: allow VM_FAULT_RETRY for multiple times
  - mm: allow VM_FAULT_RETRY for multiple times


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.9.0.0072
changelog:
  - mm/vmalloc.c: fix percpu free VM area search criteria
  - mm/vmalloc.c: avoid bogus -Wmaybe-uninitialized warning
  - mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro
  - mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro
  - mm/vmalloc.c: keep track of free blocks for vmap allocation


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.10.0.0073
changelog:
  - bpf, x86: Validate computation of branch displacements for x86-32
  - bpf, x86: Validate computation of branch displacements for x86-64


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.11.0.0074
changelog:
  - io_uring: order refnode recycling
  - io_uring: get an active ref_node from files_data
  - io_uring: fix racy req->flags modification
  - io_uring: defer file table grabbing request cleanup for locked requests
  - io_uring: batch put_task_struct()
  - tasks: add put_task_struct_many()
  - io_uring: fix missing io_queue_linked_timeout()
  - io_uring: deduplicate io_grab_files() calls
  - io_uring: don't do opcode prep twice
  - io_uring: don't open-code recv kbuf managment
  - io_uring: extract io_put_kbuf() helper
  - io_uring: simplify file ref tracking in submission state
  - io_uring: move BUFFER_SELECT check into *recv[msg]
  - io_uring: free selected-bufs if error'ed
  - io_uring: don't forget cflags in io_recv()
  - io_uring: remove extra checks in send/recv
  - io_uring: indent left {send,recv}[msg]()
  - io-wq: update hash bits
  - io_uring: get rid of atomic FAA for cq_timeouts
  - io_uring: consolidate *_check_overflow accounting
  - io_uring: de-unionise io_kiocb
  - io_uring: follow **iovec idiom in io_import_iovec
  - io_uring: mark ->work uninitialised after cleanup
  - io_uring/io-wq: move RLIMIT_FSIZE to io-wq
  - io_uring: alloc ->io in io_req_defer_prep()
  - io_uring: inline io_req_work_grab_env()
  - io_uring: fix racy IOPOLL completions
  - io_uring: always let io_iopoll_complete() complete polled io
  - io_uring: don't recurse on tsk->sighand->siglock with signalfd
  - io_uring: don't use poll handler if file can't be nonblocking read/written
  - io_uring: fix linked deferred ->files cancellation
  - io_uring: fix cancel of deferred reqs with ->files
  - io_uring: flush timeouts that should already have expired
  - io_uring: find and cancel head link async work on files exit
  - io_uring: always plug for any number of IOs
  - io_uring: fix recursive completion locking on oveflow flush
  - io_uring: enable lookup of links holding inflight files
  - io_uring: place cflags into completion data
  - io_uring: remove sequence from io_kiocb
  - io_uring: use non-intrusive list for defer
  - io_uring: remove init for unused list
  - io_uring: add req->timeout.list
  - io_uring: use completion list for CQ overflow
  - io_uring: use inflight_entry list for iopoll'ing
  - io_uring: rename ctx->poll into ctx->iopoll
  - io_uring: share completion list w/ per-op space
  - io_uring: get rid of __req_need_defer()
  - io_uring: only call kfree() for a non-zero pointer
  - io_uring: fix a use after free in io_async_task_func()
  - io_uring: remove nr_events arg from iopoll_check()
  - io_uring: don't delay iopoll'ed req completion
  - io_uring: fix lost cqe->flags
  - io_uring: keep queue_sqe()'s fail path separately
  - io_uring: fix mis-refcounting linked timeouts
  - io_uring: use new io_req_task_work_add() helper throughout
  - io_uring: abstract out task work running
  - io_uring: do grab_env() just before punting
  - io_uring: factor out grab_env() from defer_prep()
  - io_uring: do init work in grab_env()
  - io_uring: don't pass def into io_req_work_grab_env
  - io_uring: fix function args for !CONFIG_NET
  - io_uring: set @poll->file after @poll init
  - io_uring: remove REQ_F_MUST_PUNT
  - io_uring: remove setting REQ_F_MUST_PUNT in rw
  - io_uring: optimise io_req_find_next() fast check
  - io_uring: kill REQ_F_TIMEOUT_NOSEQ
  - io_uring: kill REQ_F_TIMEOUT
  - io_uring: replace find_next() out param with ret
  - io_uring: fix missing io_grab_files()
  - io_uring: don't mark link's head for_async
  - io_uring: fix feeding io-wq with uninit reqs
  - io_uring: fix punting req w/o grabbed env
  - io_uring: fix req->work corruption
  - io_uring: simplify io_async_task_func()
  - io_uring: fix NULL mm in io_poll_task_func()
  - io_uring: use task_work for links if possible
  - io_uring: do task_work_run() during iopoll
  - io_uring: clean up req->result setting by rw
  - io_uring: cosmetic changes for batch free
  - io_uring: batch-free linked requests as well
  - io_uring: dismantle req early and remove need_iter
  - io_uring: remove inflight batching in free_many()
  - io_uring: fix refs underflow in io_iopoll_queue()
  - io_uring: enable READ/WRITE to use deferred completions
  - io_uring: pass in completion state to appropriate issue side handlers
  - io_uring: pass down completion state on the issue side
  - io_uring: add 'io_comp_state' to struct io_submit_state
  - io_uring: provide generic io_req_complete() helper
  - io_uring: add missing REQ_F_COMP_LOCKED for nested requests
  - io_uring: clean up io_kill_linked_timeout() locking
  - io_uring: deduplicate freeing linked timeouts
  - io_uring: kill REQ_F_LINK_NEXT
  - io_uring: fix stalled deferred requests
  - io_uring: add IORING_OP_OPENAT2 for compatablity
  - arm64: fix kabi with io_uring interface
  - x86: fix kabi with io_uring interface
  - io_uring: fix provide_buffers sign extension
  - io_uring: ignore double poll add on the same waitqueue head
  - io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state
  - io_uring: make ctx cancel on exit targeted to actual ctx
  - io_uring: fix error path cleanup in io_sqe_files_register()
  - io_uring: ensure open/openat2 name is cleaned on cancelation
  - io_uring: sanitize double poll handling
  - io_uring: fail poll arm on queue proc failure
  - io_uring: allow non-fixed files with SQPOLL
  - io_uring: ensure consistent view of original task ->mm from SQPOLL
  - io_uring: stash ctx task reference for SQPOLL
  - io_uring: don't miscount pinned memory
  - io_uring: don't burn CPU for iopoll on exit
  - io_uring: fix imbalanced sqo_mm accounting
  - io_uring: return locked and pinned page accounting
  - io_uring: fix missing ->mm on exit
  - io_uring: fix NULL-mm for linked reqs
  - io_uring: account locked memory before potential error case
  - io_uring: don't touch 'ctx' after installing file descriptor
  - io_uring: remove dead 'ctx' argument and move forward declaration
  - io_uring: fix recvmsg setup with compat buf-select
  - io_uring: fix shift-out-of-bounds when round up cq size
  - io_uring: round-up cq size before comparing with rounded sq size
  - io_uring: use type appropriate io_kiocb handler for double poll
  - io_uring: fix double poll mask init
  - io_uring: Fix sizeof() mismatch
  - io_uring: keep a pointer ref_node in file_data
  - io_uring: refactor *files_register()'s error paths
  - io_uring: clean file_data access in files_register
  - io-wq: fix use-after-free in io_wq_worker_running
  - io_uring: fix potential ABBA deadlock in ->show_fdinfo()
  - io_uring: always delete double poll wait entry on match
  - io-wq: fix hang after cancelling pending hashed work
  - io_uring: fix racy overflow count reporting
  - io_uring: partially inline io_iopoll_getevents()
  - io_uring: briefly loose locks while reaping events
  - io_uring: fix stopping iopoll'ing too early
  - io_uring: fix potential use after free on fallback request free
  - io_uring: set table->files[i] to NULL when io_sqe_file_register failed
  - io_uring: fix removing the wrong file in __io_sqe_files_update()
  - io_uring: fix IOPOLL -EAGAIN retries
  - io_uring: clear req->result on IOPOLL re-issue
  - io_uring: hold 'ctx' reference around task_work queue + execute
  - io_uring: use TWA_SIGNAL for task_work uncondtionally
  - io_uring: Fix NULL pointer dereference in loop_rw_iter()
  - io_uring: clear IORING_SQ_NEED_WAKEUP after executing task works
  - io_uring: add a helper for async rw iovec prep
  - io_uring: simplify io_req_map_rw()
  - io_uring: extract io_sendmsg_copy_hdr()
  - io_uring: use more specific type in rcv/snd msg cp
  - io_uring: rename sr->msg into umsg
  - io_uring: fix sq array offset calculation
  - io_uring: fix lockup in io_fail_links()
  - io_uring: fix ->work corruption with poll_add
  - io_uring: missed req_init_async() for IOSQE_ASYNC
  - io_uring: always allow drain/link/hardlink/async sqe flags
  - io_uring: ensure double poll additions work with both request types
  - io_uring: fix recvmsg memory leak with buffer selection
  - io_uring: fix not initialised work->flags
  - io_uring: fix missing msg_name assignment
  - io_uring: account user memory freed when exit has been queued
  - io_uring: fix memleak in io_sqe_files_register()
  - io_uring: fix memleak in __io_sqe_files_update()
  - io_uring: export cq overflow status to userspace
  - io_uring: fix regression with always ignoring signals in io_cqring_wait()
  - io_uring: use signal based task_work running
  - task_work: teach task_work_add() to do signal_wake_up()
  - io_uring: fix current->mm NULL dereference on exit
  - io_uring: fix hanging iopoll in case of -EAGAIN
  - io_uring: fix io_sq_thread no schedule when busy
  - io-wq: return next work from ->do_work() directly
  - io-wq: compact io-wq flags numbers
  - io_uring: separate reporting of ring pages from registered pages
  - io_uring: report pinned memory usage
  - io_uring: rename ctx->account_mem field
  - io_uring: add wrappers for memory accounting
  - io_uring: use EPOLLEXCLUSIVE flag to aoid thundering herd type behavior
  - io_uring: change the poll type to be 32-bits
  - io_uring: fix possible race condition against REQ_F_NEED_CLEANUP
  - io_uring: reap poll completions while waiting for refs to drop on exit
  - io_uring: acquire 'mm' for task_work for SQPOLL
  - io_uring: add memory barrier to synchronize io_kiocb's result and iopoll_completed
  - io_uring: don't fail links for EAGAIN error in IOPOLL mode
  - io_uring: cancel by ->task not pid
  - io_uring: lazy get task
  - io_uring: batch cancel in io_uring_cancel_files()
  - io_uring: cancel all task's requests on exit
  - io-wq: add an option to cancel all matched reqs
  - io-wq: reorder cancellation pending -> running
  - io_uring: fix lazy work init
  - io_uring: fix io_kiocb.flags modification race in IOPOLL mode
  - io_uring: check file O_NONBLOCK state for accept
  - io_uring: avoid unnecessary io_wq_work copy for fast poll feature
  - io_uring: avoid whole io_wq_work copy for requests completed inline
  - io_uring: allow O_NONBLOCK async retry
  - io_wq: add per-wq work handler instead of per work
  - io_uring: don't arm a timeout through work.func
  - io_uring: remove custom ->func handlers
  - io_uring: don't derive close state from ->func
  - io_uring: use kvfree() in io_sqe_buffer_register()
  - io_uring: validate the full range of provided buffers for access
  - io_uring: re-set iov base/len for buffer select retry
  - io_uring: move send/recv IOPOLL check into prep
  - io_uring: fix {SQ,IO}POLL with unsupported opcodes
  - io_uring: disallow close of ring itself
  - io_uring: fix overflowed reqs cancellation
  - io_uring: off timeouts based only on completions
  - io_uring: move timeouts flushing to a helper
  - statx: hide interfaces no longer used by io_uring
  - io_uring: call statx directly
  - statx: allow system call to be invoked from io_uring
  - io_uring: add io_statx structure
  - io_uring: get rid of manual punting in io_close
  - io_uring: separate DRAIN flushing into a cold path
  - io_uring: don't re-read sqe->off in timeout_prep()
  - io_uring: simplify io_timeout locking
  - io_uring: fix flush req->refs underflow
  - io_uring: don't submit sqes when ctx->refs is dying
  - io_uring: async task poll trigger cleanup
  - io_uring: add tee(2) support
  - splice: export do_tee()
  - io_uring: don't repeat valid flag list
  - io_uring: rename io_file_put()
  - io_uring: remove req->needs_fixed_files
  - io_uring: cleanup io_poll_remove_one() logic
  - io_uring: file registration list and lock optimization
  - io_uring: add IORING_CQ_EVENTFD_DISABLED to the CQ ring flags
  - io_uring: add 'cq_flags' field for the CQ ring
  - io_uring: allow POLL_ADD with double poll_wait() users
  - io_uring: batch reap of dead file registrations
  - io_uring: name sq thread and ref completions
  - io_uring: remove duplicate semicolon at the end of line
  - io_uring: remove obsolete 'state' parameter
  - io_uring: remove 'fd is io_uring' from close path
  - io_uring: reset -EBUSY error when io sq thread is waken up
  - io_uring: don't add non-IO requests to iopoll pending list
  - io_uring: don't use kiocb.private to store buf_index
  - io_uring: cancel work if task_work_add() fails
  - io_uring: remove dead check in io_splice()
  - io_uring: fix FORCE_ASYNC req preparation
  - io_uring: don't prepare DRAIN reqs twice
  - io_uring: initialize ctx->sqo_wait earlier
  - io_uring: polled fixed file must go through free iteration
  - io_uring: fix zero len do_splice()
  - io_uring: don't use 'fd' for openat/openat2/statx
  - splice: move f_mode checks to do_{splice,tee}()
  - io_uring: handle -EFAULT properly in io_uring_setup()
  - io_uring: fix mismatched finish_wait() calls in io_uring_cancel_files()
  - io_uring: punt splice async because of inode mutex
  - io_uring: check non-sync defer_list carefully
  - io_uring: fix extra put in sync_file_range()
  - io_uring: use cond_resched() in io_ring_ctx_wait_and_kill()
  - io_uring: use proper references for fallback_req locking
  - io_uring: only force async punt if poll based retry can't handle it
  - io_uring: enable poll retry for any file with ->read_iter / ->write_iter
  - io_uring: statx must grab the file table for valid fd
  - io_uring: only restore req->work for req that needs do completion
  - io_uring: don't count rqs failed after current one
  - io_uring: kill already cached timeout.seq_offset
  - io_uring: fix cached_sq_head in io_timeout()
  - io_uring: only post events in io_poll_remove_all() if we completed some
  - io_uring: io_async_task_func() should check and honor cancelation
  - io_uring: check for need to re-wait in polled async handling
  - io_uring: correct O_NONBLOCK check for splice punt
  - io_uring: restore req->work when canceling poll request
  - io_uring: move all request init code in one place
  - io_uring: keep all sqe->flags in req->flags
  - io_uring: early submission req fail code
  - io_uring: track mm through current->mm
  - io_uring: remove obsolete @mm_fault
  - io_uring: punt final io_ring_ctx wait-and-free to workqueue
  - io_uring: fix fs cleanup on cqe overflow
  - io_uring: don't read user-shared sqe flags twice
  - io_uring: remove req init from io_get_req()
  - io_uring: alloc req only after getting sqe
  - io_uring: simplify io_get_sqring
  - io_uring: do not always copy iovec in io_req_map_rw()
  - io_uring: ensure openat sets O_LARGEFILE if needed
  - io_uring: initialize fixed_file_data lock
  - io_uring: remove redundant variable pointer nxt and io_wq_assign_next call
  - io_uring: fix ctx refcounting in io_submit_sqes()
  - io_uring: process requests completed with -EAGAIN on poll list
  - io_uring: remove bogus RLIMIT_NOFILE check in file registration
  - io_uring: use io-wq manager as backup task if task is exiting
  - io_uring: grab task reference for poll requests
  - io_uring: retry poll if we got woken with non-matching mask
  - io_uring: add missing finish_wait() in io_sq_thread()
  - io_uring: refactor file register/unregister/update handling
  - io_uring: cleanup io_alloc_async_ctx()
  - io_uring: fix missing 'return' in comment
  - io-wq: handle hashed writes in chains
  - io-uring: drop 'free_pfile' in struct io_file_put
  - io-uring: drop completion when removing file
  - io_uring: Fix ->data corruption on re-enqueue
  - io-wq: close cancel gap for hashed linked work
  - io_uring: make spdxcheck.py happy
  - io_uring: honor original task RLIMIT_FSIZE
  - io-wq: hash dependent work
  - io-wq: split hashing and enqueueing
  - io-wq: don't resched if there is no work
  - io-wq: remove duplicated cancel code
  - io_uring: fix truncated async read/readv and write/writev retry
  - io_uring: dual license io_uring.h uapi header
  - io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled
  - io_uring: Fix unused function warnings
  - io_uring: add end-of-bits marker and build time verify it
  - io_uring: provide means of removing buffers
  - io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_RECVMSG
  - net: abstract out normal and compat msghdr import
  - io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_READV
  - io_uring: support buffer selection for OP_READ and OP_RECV
  - io_uring: add IORING_OP_PROVIDE_BUFFERS
  - io_uring: buffer registration infrastructure
  - io_uring/io-wq: forward submission ref to async
  - io-wq: optimise out *next_work() double lock
  - io-wq: optimise locking in io_worker_handle_work()
  - io-wq: shuffle io_worker_handle_work() code
  - io_uring: get next work with submission ref drop
  - io_uring: remove @nxt from handlers
  - io_uring: make submission ref putting consistent
  - io_uring: clean up io_close
  - io_uring: Ensure mask is initialized in io_arm_poll_handler
  - io_uring: remove io_prep_next_work()
  - io_uring: remove extra nxt check after punt
  - io_uring: use poll driven retry for files that support it
  - io_uring: mark requests that we can do poll async in io_op_defs
  - io_uring: add per-task callback handler
  - io_uring: store io_kiocb in wait->private
  - task_work_run: don't take ->pi_lock unconditionally
  - io-wq: use BIT for ulong hash
  - io_uring: remove IO_WQ_WORK_CB
  - io-wq: remove unused IO_WQ_WORK_HAS_MM
  - io_uring: extract kmsg copy helper
  - io_uring: clean io_poll_complete
  - io_uring: add splice(2) support
  - io_uring: add interface for getting files
  - splice: make do_splice public
  - io_uring: remove req->in_async
  - io_uring: don't do full *prep_worker() from io-wq
  - io_uring: don't call work.func from sync ctx
  - io_uring: io_accept() should hold on to submit reference on retry
  - io_uring: consider any io_read/write -EAGAIN as final
  - io_uring: make sure accept honor rlimit nofile
  - io_uring: make sure openat/openat2 honor rlimit nofile
  - io_uring: NULL-deref for IOSQE_{ASYNC,DRAIN}
  - io_uring: ensure RCU callback ordering with rcu_barrier()
  - io_uring: fix lockup with timeouts
  - io_uring: free fixed_file_data after RCU grace period
  - io-wq: remove io_wq_flush and IO_WQ_WORK_INTERNAL
  - io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation
  - io_uring: fix 32-bit compatability with sendmsg/recvmsg
  - io_uring: define and set show_fdinfo only if procfs is enabled
  - io_uring: drop file set ref put/get on switch
  - io_uring: import_single_range() returns 0/-ERROR
  - io_uring: pick up link work on submit reference drop
  - io-wq: ensure work->task_pid is cleared on init
  - io-wq: remove spin-for-work optimization
  - io_uring: fix poll_list race for SETUP_IOPOLL|SETUP_SQPOLL
  - io_uring: fix personality idr leak
  - io_uring: handle multiple personalities in link chains
  - io_uring: fix __io_iopoll_check deadlock in io_sq_thread
  - io_uring: prevent sq_thread from spinning when it should stop
  - io_uring: fix use-after-free by io_cleanup_req()
  - io_uring: remove unnecessary NULL checks
  - io_uring: add missing io_req_cancelled()
  - io_uring: prune request from overflow list on flush
  - io-wq: don't call kXalloc_node() with non-online node
  - io_uring: retain sockaddr_storage across send/recvmsg async punt
  - io_uring: cancel pending async work if task exits
  - io-wq: add io_wq_cancel_pid() to cancel based on a specific pid
  - io-wq: make io_wqe_cancel_work() take a match handler
  - io_uring: fix openat/statx's filename leak
  - io_uring: fix double prep iovec leak
  - io_uring: fix async close() with f_op->flush()
  - io_uring: allow AT_FDCWD for non-file openat/openat2/statx
  - io_uring: grab ->fs as part of async preparation
  - io-wq: add support for inheriting ->fs
  - io_uring: retry raw bdev writes if we hit -EOPNOTSUPP
  - io_uring: add cleanup for openat()/statx()
  - io_uring: fix iovec leaks
  - io_uring: remove unused struct io_async_open
  - io_uring: flush overflowed CQ events in the io_uring_poll()
  - io_uring: statx/openat/openat2 don't support fixed files
  - io_uring: fix deferred req iovec leak
  - io_uring: fix 1-bit bitfields to be unsigned
  - io_uring: get rid of delayed mm check
  - io_uring: cleanup fixed file data table references
  - io_uring: spin for sq thread to idle on shutdown
  - io_uring: put the flag changing code in the same spot
  - io_uring: iterate req cache backwards
  - io_uring: punt even fadvise() WILLNEED to async context
  - io_uring: fix sporadic double CQE entry for close
  - io_uring: remove extra ->file check
  - io_uring: don't map read/write iovec potentially twice
  - io_uring: use the proper helpers for io_send/recv
  - io_uring: prevent potential eventfd recursion on poll
  - io_uring: add BUILD_BUG_ON() to assert the layout of struct io_uring_sqe
  - io_uring: add ->show_fdinfo() for the io_uring file descriptor
  - io_uring: add support for epoll_ctl(2)
  - eventpoll: support non-blocking do_epoll_ctl() calls
  - eventpoll: abstract out epoll_ctl() handler
  - io_uring: fix linked command file table usage
  - io_uring: support using a registered personality for commands
  - io_uring: allow registering credentials
  - io_uring: add io-wq workqueue sharing
  - io-wq: allow grabbing existing io-wq
  - io_uring/io-wq: don't use static creds/mm assignments
  - io-wq: make the io_wq ref counted
  - io_uring: fix refcounting with batched allocations at OOM
  - io_uring: add comment for drain_next
  - io_uring: don't attempt to copy iovec for READ/WRITE
  - io_uring: honor IOSQE_ASYNC for linked reqs
  - io_uring: prep req when do IOSQE_ASYNC
  - io_uring: use labeled array init in io_op_defs
  - io_uring: optimise sqe-to-req flags translation
  - io_uring: remove REQ_F_IO_DRAINED
  - io_uring: file switch work needs to get flushed on exit
  - io_uring: hide uring_fd in ctx
  - io_uring: remove extra check in __io_commit_cqring
  - io_uring: optimise use of ctx->drain_next
  - io_uring: add support for probing opcodes
  - io_uring: account fixed file references correctly in batch
  - io_uring: add opcode to issue trace event
  - io_uring: remove 'fname' from io_open structure
  - io_uring: enable option to only trigger eventfd for async completions
  - io_uring: change io_ring_ctx bool fields into bit fields
  - io_uring: file set registration should use interruptible waits
  - io_uring: Remove unnecessary null check
  - io_uring: add support for send(2) and recv(2)
  - io_uring: remove extra io_wq_current_is_worker()
  - io_uring: optimise commit_sqring() for common case
  - io_uring: optimise head checks in io_get_sqring()
  - io_uring: clamp to_submit in io_submit_sqes()
  - io_uring: add support for IORING_SETUP_CLAMP
  - io_uring: extend batch freeing to cover more cases
  - io_uring: wrap multi-req freeing in struct req_batch
  - io_uring: batch getting pcpu references
  - pcpu_ref: add percpu_ref_tryget_many()
  - io_uring: add IORING_OP_MADVISE
  - mm: make do_madvise() available internally
  - io_uring: add IORING_OP_FADVISE
  - io_uring: allow use of offset == -1 to mean file position
  - io_uring: add non-vectored read/write commands
  - io_uring: improve poll completion performance
  - io_uring: split overflow state into SQ and CQ side
  - io_uring: add lookup table for various opcode needs
  - io_uring: remove two unnecessary function declarations
  - io_uring: move *queue_link_head() from common path
  - io_uring: rename prev to head
  - io_uring: add IOSQE_ASYNC
  - io-wq: support concurrent non-blocking work
  - io_uring: add support for IORING_OP_STATX
  - fs: make two stat prep helpers available
  - io_uring: avoid ring quiesce for fixed file set unregister and update
  - io_uring: add support for IORING_OP_CLOSE
  - io-wq: add support for uncancellable work
  - percpu-refcount: Introduce percpu_ref_resurrect()
  - percpu_ref: introduce PERCPU_REF_ALLOW_REINIT flag
  - fs: make filename_lookup available externally
  - fs: introduce __close_fd_get_file to support IORING_OP_CLOSE for io_uring
  - io_uring: add support for IORING_OP_OPENAT
  - fs: make build_open_flags() available internally
  - io_uring: add support for fallocate()
  - io_uring: don't cancel all work on process exit
  - Revert "io_uring: only allow submit from owning task"
  - io_uring: fix compat for IORING_REGISTER_FILES_UPDATE
  - io_uring: only allow submit from owning task
  - io_uring: ensure workqueue offload grabs ring mutex for poll list
  - io_uring: clear req->result always before issuing a read/write request
  - io_uring: be consistent in assigning next work from handler
  - io-wq: cancel work if we fail getting a mm reference
  - io_uring: don't setup async context for read/write fixed
  - io_uring: remove punt of short reads to async context
  - io-wq: add cond_resched() to worker thread
  - io-wq: remove unused busy list from io_sqe
  - io_uring: pass in 'sqe' to the prep handlers
  - io_uring: standardize the prep methods
  - io_uring: read 'count' for IORING_OP_TIMEOUT in prep handler
  - io_uring: move all prep state for IORING_OP_{SEND,RECV}_MGS to prep handler
  - io_uring: move all prep state for IORING_OP_CONNECT to prep handler
  - io_uring: add and use struct io_rw for read/writes
  - io_uring: use u64_to_user_ptr() consistently
  - io_uring: io_wq_submit_work() should not touch req->rw
  - io_uring: don't wait when under-submitting
  - io_uring: warn about unhandled opcode
  - io_uring: read opcode and user_data from SQE exactly once
  - io_uring: make IORING_OP_TIMEOUT_REMOVE deferrable
  - io_uring: make IORING_OP_CANCEL_ASYNC deferrable
  - io_uring: make IORING_POLL_ADD and IORING_POLL_REMOVE deferrable
  - io_uring: make HARDLINK imply LINK
  - io_uring: any deferred command must have stable sqe data
  - io_uring: remove 'sqe' parameter to the OP helpers that take it
  - io_uring: fix pre-prepped issue with force_nonblock == true
  - io-wq: re-add io_wq_current_is_worker()
  - io_uring: fix sporadic -EFAULT from IORING_OP_RECVMSG
  - io_uring: fix stale comment and a few typos
  - io_uring: ensure we return -EINVAL on unknown opcode
  - io_uring: add sockets to list of files that support non-blocking issue
  - io_uring: only hash regular files for async work execution
  - io_uring: run next sqe inline if possible
  - io_uring: don't dynamically allocate poll data
  - io_uring: deferred send/recvmsg should assign iov
  - io_uring: sqthread should grab ctx->uring_lock for submissions
  - io-wq: briefly spin for new work after finishing work
  - io-wq: remove worker->wait waitqueue
  - io_uring: allow unbreakable links
  - io_uring: fix a typo in a comment
  - io_uring: hook all linked requests via link_list
  - io_uring: fix error handling in io_queue_link_head
  - io_uring: use hash table for poll command lookups
  - io-wq: clear node->next on list deletion
  - io_uring: ensure deferred timeouts copy necessary data
  - io_uring: allow IO_SQE_* flags on IORING_OP_TIMEOUT
  - io_uring: handle connect -EINPROGRESS like -EAGAIN
  - io_uring: remove io_wq_current_is_worker
  - io_uring: remove parameter ctx of io_submit_state_start
  - io_uring: mark us with IORING_FEAT_SUBMIT_STABLE
  - io_uring: ensure async punted connect requests copy data
  - io_uring: ensure async punted sendmsg/recvmsg requests copy data
  - net: disallow ancillary data for __sys_{send,recv}msg_file()
  - net: separate out the msghdr copy from ___sys_{send,recv}msg()
  - io_uring: ensure async punted read/write requests copy iovec
  - io_uring: add general async offload context
  - io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR
  - io_uring: use current task creds instead of allocating a new one
  - io_uring: fix missing kmap() declaration on powerpc
  - io_uring: add mapping support for NOMMU archs
  - io_uring: make poll->wait dynamically allocated
  - io-wq: shrink io_wq_work a bit
  - io-wq: fix handling of NUMA node IDs
  - io_uring: use kzalloc instead of kcalloc for single-element allocations
  - io_uring: cleanup io_import_fixed()
  - io_uring: inline struct sqe_submit
  - io_uring: store timeout's sqe->off in proper place
  - io_uring: remove superfluous check for sqe->off in io_accept()
  - io_uring: async workers should inherit the user creds
  - io-wq: have io_wq_create() take a 'data' argument
  - io_uring: fix dead-hung for non-iter fixed rw
  - io_uring: add support for IORING_OP_CONNECT
  - net: add __sys_connect_file() helper
  - io_uring: only return -EBUSY for submit on non-flushed backlog
  - io_uring: only !null ptr to io_issue_sqe()
  - io_uring: simplify io_req_link_next()
  - io_uring: pass only !null to io_req_find_next()
  - io_uring: remove io_free_req_find_next()
  - io_uring: add likely/unlikely in io_get_sqring()
  - io_uring: rename __io_submit_sqe()
  - io_uring: improve trace_io_uring_defer() trace point
  - io_uring: drain next sqe instead of shadowing
  - io_uring: close lookup gap for dependent next work
  - io_uring: allow finding next link independent of req reference count
  - io_uring: io_allocate_scq_urings() should return a sane state
  - io_uring: Always REQ_F_FREE_SQE for allocated sqe
  - io_uring: io_fail_links() should only consider first linked timeout
  - io_uring: Fix leaking linked timeouts
  - io_uring: remove redundant check
  - io_uring: break links for failed defer
  - io-wq: remove extra space characters
  - io-wq: wait for io_wq_create() to setup necessary workers
  - io_uring: request cancellations should break links
  - io_uring: correct poll cancel and linked timeout expiration completion
  - io_uring: remove dead REQ_F_SEQ_PREV flag
  - io_uring: fix sequencing issues with linked timeouts
  - io_uring: make req->timeout be dynamically allocated
  - io_uring: make io_double_put_req() use normal completion path
  - io_uring: cleanup return values from the queueing functions
  - io_uring: io_async_cancel() should pass in 'nxt' request pointer
  - io_uring: make POLL_ADD/POLL_REMOVE scale better
  - io-wq: remove now redundant struct io_wq_nulls_list
  - io_uring: Fix getting file for non-fd opcodes
  - io_uring: introduce req_need_defer()
  - io_uring: clean up io_uring_cancel_files()
  - io-wq: ensure free/busy list browsing see all items
  - io_uring: ensure registered buffer import returns the IO length
  - io-wq: ensure we have a stable view of ->cur_work for cancellations
  - io_wq: add get/put_work handlers to io_wq_create()
  - io_uring: Fix getting file for timeout
  - io_uring: check for validity of ->rings in teardown
  - io_uring: fix potential deadlock in io_poll_wake()
  - io_uring: use correct "is IO worker" helper
  - io_uring: make timeout sequence == 0 mean no sequence
  - io_uring: fix -ENOENT issue with linked timer with short timeout
  - io_uring: don't do flush cancel under inflight_lock
  - io_uring: flag SQPOLL busy condition to userspace
  - io_uring: make ASYNC_CANCEL work with poll and timeout
  - io_uring: provide fallback request for OOM situations
  - io_uring: convert accept4() -ERESTARTSYS into -EINTR
  - io_uring: fix error clear of ->file_table in io_sqe_files_register()
  - io_uring: separate the io_free_req and io_free_req_find_next interface
  - io_uring: keep io_put_req only responsible for release and put req
  - io_uring: remove passed in 'ctx' function parameter ctx if possible
  - io_uring: reduce/pack size of io_ring_ctx
  - io_uring: properly mark async work as bounded vs unbounded
  - io-wq: add support for bounded vs unbunded work
  - io-wq: io_wqe_run_queue() doesn't need to use list_empty_careful()
  - io_uring: add support for backlogged CQ ring
  - io_uring: pass in io_kiocb to fill/add CQ handlers
  - io_uring: make io_cqring_events() take 'ctx' as argument
  - io_uring: add support for linked SQE timeouts
  - io_uring: abstract out io_async_cancel_one() helper
  - io_uring: use inlined struct sqe_submit
  - io_uring: Use submit info inlined into req
  - io_uring: allocate io_kiocb upfront
  - io_uring: io_queue_link*() right after submit
  - io_uring: Merge io_submit_sqes and io_ring_submit
  - io_uring: kill dead REQ_F_LINK_DONE flag
  - io_uring: fixup a few spots where link failure isn't flagged
  - io_uring: enable optimized link handling for IORING_OP_POLL_ADD
  - io-wq: use proper nesting IRQ disabling spinlocks for cancel
  - io_uring: add completion trace event
  - io-wq: use kfree_rcu() to simplify the code
  - io_uring: set -EINTR directly when a signal wakes up in io_cqring_wait
  - io_uring: support for generic async request cancel
  - io_uring: ensure we clear io_kiocb->result before each issue
  - io_uring: io_wq_create() returns an error pointer, not NULL
  - io_uring: fix race with canceling timeouts
  - io_uring: support for larger fixed file sets
  - io_uring: protect fixed file indexing with array_index_nospec()
  - io_uring: add support for IORING_OP_ACCEPT
  - net: add __sys_accept4_file() helper
  - io_uring: io_uring: add support for async work inheriting files
  - io_uring: replace workqueue usage with io-wq
  - io-wq: small threadpool implementation for io_uring
  - sched/core, workqueues: Distangle worker accounting from rq lock
  - sched: Remove stale PF_MUTEX_TESTER bit
  - io_uring: Fix mm_fault with READ/WRITE_FIXED
  - io_uring: remove index from sqe_submit
  - io_uring: add set of tracing events
  - io_uring: add support for canceling timeout requests
  - io_uring: add support for absolute timeouts
  - io_uring: replace s->needs_lock with s->in_async
  - io_uring: allow application controlled CQ ring size
  - io_uring: add support for IORING_REGISTER_FILES_UPDATE
  - io_uring: allow sparse fixed file sets
  - io_uring: run dependent links inline if possible
  - io_uring: don't touch ctx in setup after ring fd install
  - io_uring: Fix leaked shadow_req
  - io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD
  - io_uring: used cached copies of sq->dropped and cq->overflow
  - io_uring: Fix race for sqes with userspace
  - io_uring: Fix broken links with offloading
  - io_uring: Fix corrupted user_data
  - io_uring: correct timeout req sequence when inserting a new entry
  - io_uring : correct timeout req sequence when waiting timeout
  - io_uring: revert "io_uring: optimize submit_and_wait API"
  - io_uring: fix logic error in io_timeout
  - io_uring: fix up O_NONBLOCK handling for sockets
  - io_uring: consider the overflow of sequence for timeout req
  - io_uring: fix sequence logic for timeout requests
  - io_uring: only flush workqueues on fileset removal
  - io_uring: remove wait loop spurious wakeups
  - io_uring: fix reversed nonblock flag for link submission
  - io_uring: use __kernel_timespec in timeout ABI
  - io_uring: make CQ ring wakeups be more efficient
  - io_uring: compare cached_cq_tail with cq.head in_io_uring_poll
  - io_uring: correctly handle non ->{read,write}_iter() file_operations
  - io_uring: IORING_OP_TIMEOUT support
  - io_uring: use cond_resched() in sqthread
  - io_uring: fix potential crash issue due to io_get_req failure
  - io_uring: ensure poll commands clear ->sqe
  - io_uring: fix use-after-free of shadow_req
  - io_uring: use kmemdup instead of kmalloc and memcpy
  - io_uring: increase IORING_MAX_ENTRIES to 32K
  - io_uring: make sqpoll wakeup possible with getevents
  - io_uring: extend async work merging
  - io_uring: limit parallelism of buffered writes
  - io_uring: add io_queue_async_work() helper
  - io_uring: optimize submit_and_wait API
  - io_uring: add support for link with drain
  - io_uring: fix wrong sequence setting logic
  - io_uring: expose single mmap capability
  - io_uring: allocate the two rings together
  - io_uring: add need_resched() check in inner poll loop
  - io_uring: don't enter poll loop if we have CQEs pending
  - io_uring: fix potential hang with polled IO
  - io_uring: fix an issue when IOSQE_IO_LINK is inserted into defer list
  - io_uring: fix manual setup of iov_iter for fixed buffers
  - io_uring: fix KASAN use after free in io_sq_wq_submit_work
  - io_uring: ensure ->list is initialized for poll commands
  - io_uring: track io length in async_list based on bytes
  - io_uring: don't use iov_iter_advance() for fixed buffers
  - io_uring: add a memory barrier before atomic_read
  - io_uring: fix counter inc/dec mismatch in async_list
  - io_uring: fix the sequence comparison in io_sequence_defer
  - io_uring: fix io_sq_thread_stop running in front of io_sq_thread
  - io_uring: add support for recvmsg()
  - io_uring: add support for sendmsg()
  - io_uring: add support for sqe links
  - io_uring: punt short reads to async context
  - uio: make import_iovec()/compat_import_iovec() return bytes on success
  - io_uring: ensure req->file is cleared on allocation
  - io_uring: fix memory leak of UNIX domain socket inode
  - io_uring: Fix __io_uring_register() false success
  - tools/io_uring: sync with liburing
  - tools/io_uring: fix Makefile for pthread library link
  - select: shift restore_saved_sigmask_unless() into poll_select_copy_remaining()
  - select: change do_poll() to return -ERESTARTNOHAND rather than -EINTR
  - signal: simplify set_user_sigmask/restore_user_sigmask
  - signal: remove the wrong signal_pending() check in restore_user_sigmask()
  - io_uring: use wait_event_interruptible for cq_wait conditional wait
  - io_uring: adjust smp_rmb inside io_cqring_events
  - io_uring: fix infinite wait in khread_park() on io_finish_async()
  - io_uring: remove 'ev_flags' argument
  - io_uring: fix failure to verify SQ_AFF cpu
  - io_uring: fix race condition reading SQE data
  - io_uring: use cpu_online() to check p->sq_thread_cpu instead of cpu_possible()
  - io_uring: fix shadowed variable ret return code being not checked
  - req->error only used for iopoll
  - io_uring: add support for eventfd notifications
  - io_uring: add support for IORING_OP_SYNC_FILE_RANGE
  - io_uring: add support for marking commands as draining
  - fs: add sync_file_range() helper
  - io_uring: avoid page allocation warnings
  - io_uring: drop req submit reference always in async punt
  - io_uring: free allocated io_memory once
  - io_uring: fix SQPOLL cpu validation
  - io_uring: have submission side sqe errors post a cqe
  - io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP
  - io_uring: remove unnecessary barrier after incrementing dropped counter
  - io_uring: remove unnecessary barrier before reading SQ tail
  - io_uring: remove unnecessary barrier after updating SQ head
  - io_uring: remove unnecessary barrier before reading cq head
  - io_uring: remove unnecessary barrier before wq_has_sleeper
  - io_uring: fix notes on barriers
  - io_uring: fix handling SQEs requesting NOWAIT
  - io_uring: remove 'state' argument from io_{read,write} path
  - io_uring: fix poll full SQ detection
  - io_uring: fix race condition when sq threads goes sleeping
  - io_uring: fix race condition reading SQ entries
  - io_uring: fail io_uring_register(2) on a dying io_uring instance
  - io_uring: fix CQ overflow condition
  - io_uring: fix possible deadlock between io_uring_{enter,register}
  - io_uring: drop io_file_put() 'file' argument
  - io_uring: only test SQPOLL cpu after we've verified it
  - io_uring: park SQPOLL thread if it's percpu
  - io_uring: restrict IORING_SETUP_SQPOLL to root
  - io_uring: fix double free in case of fileset regitration failure
  - io_uring: offload write to async worker in case of -EAGAIN
  - io_uring: fix big-endian compat signal mask handling
  - io_uring: retry bulk slab allocs as single allocs
  - io_uring: fix poll races
  - io_uring: fix fget/fput handling
  - io_uring: add prepped flag
  - io_uring: make io_read/write return an integer
  - io_uring: use regular request ref counts
  - tools/io_uring: remove IOCQE_FLAG_CACHEHIT
  - io_uring: add a few test tools
  - io_uring: allow workqueue item to handle multiple buffered requests
  - io_uring: add support for IORING_OP_POLL
  - io_uring: add io_kiocb ref count
  - io_uring: add submission polling
  - io_uring: add file set registration
  - net: split out functions related to registering inflight socket files
  - io_uring: add support for pre-mapped user IO buffers
  - io_uring: batch io_kiocb allocation
  - io_uring: use fget/fput_many() for file references
  - fs: add fget_many() and fput_many()
  - io_uring: support for IO polling
  - io_uring: add fsync support
  - Add io_uring IO interface
  - io_pgetevents: use __kernel_timespec
  - pselect6: use __kernel_timespec
  - ppoll: use __kernel_timespec
  - signal: Add restore_user_sigmask()
  - signal: Add set_user_sigmask()
  - block: Initialize BIO I/O priority early
  - block: prevent merging of requests with different priorities
  - aio: Fix fallback I/O priority value
  - block: Introduce get_current_ioprio()
  - aio: Comment use of IOCB_FLAG_IOPRIO aio flag
  - fs: fix kabi change since add iopoll
  - fs: add an iopoll method to struct file_operations
  - signal: Allow cifs and drbd to receive their terminating signals
  - cifs: fix rmmod regression in cifs.ko caused by force_sig changes
  - signal/cifs: Fix cifs_put_tcp_session to call send_sig instead of force_sig


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.12.0.0075
changelog:
  - iommu/arm-smmu-v3: Reduce contention during command-queue insertion
  - iommu/arm-smmu-v3: Operate directly on low-level queue where possible
  - iommu/arm-smmu-v3: Move low-level queue fields out of arm_smmu_queue
  - iommu/arm-smmu-v3: Drop unused 'q' argument from Q_OVF macro
  - iommu/arm-smmu-v3: Separate s/w and h/w views of prod and cons indexes
  - iommu/io-pgtable: Rename iommu_gather_ops to iommu_flush_ops
  - iommu/io-pgtable-arm: Remove redundant call to io_pgtable_tlb_sync()
  - iommu/arm-smmu-v3: Increase maximum size of queues
  - iommu/io-pgtable: Replace IO_PGTABLE_QUIRK_NO_DMA with specific flag
  - iommu: Allow io-pgtable to be used outside of drivers/iommu/
  - iommu: Fix flush_tlb_all typo
  - iommu: Change tlb_range_add to iotlb_range_add and tlb_sync to iotlb_sync


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.14.0.0077
changelog:
  - arm64: errata: enable HISILICON_ERRATUM_HIP08_RU_PREFETCH
  - arm64: errata: fix kabi changed for cpu_errata
  - arm64: errata: add option to disable cache readunique prefetch on 1620


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.15.0.0078
changelog:
  - config/x86: enable SHRINK_PAGECACHE
  - arm64: Add config switch and kernel parameter for CPU0 hotplug


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.17.0.0081
changelog:
  - net/hinic: Fix null pointer dereference in hinic_physical_port_id
  - kvm: debugfs: Export x86 kvm exits to vcpu_stat
  - ext4: fix time overflow
  - ext4: drop legacy pre-1970 encoding workaround
  - fuse: fix live lock in fuse_iget()
  - fuse: fix bad inode
  - net/sctp: fix race condition in sctp_destroy_sock
  - config: set config hip08 prefetch default value
  - ext4: do not set SB_ACTIVE in ext4_orphan_cleanup()
  - RDMA/hns: add eq and cq time cfg compatibility support.
  - nvme: fix incorrect behavior when BLKROSET is called by the user
  - nvme-fc: fix error loop in create_hw_io_queues
  - nvme-fc: Fix wrong return value in __nvme_fc_init_request()
  - nvme-multipath: fix deadlock between ana_work and scan_work
  - nvme: fix deadlock caused by ANA update wrong locking
  - nvme-multipath: Fix memory leak with ana_log_buf
  - nvme-fc: fix module unloads while lports still pending
  - ipmi: remve duplicate code in __ipmi_bmc_register()
  - ipmi_si_intf: Fix race in timer shutdown handling
  - ipmi_ssif: fix unexpected driver unregister warning
  - ipmi_si: fix unexpected driver unregister warning
  - ipmi:ssif: Only unregister the platform driver if it was registered
  - ipmi: Make ipmi_interfaces_srcu variable static
  - ipmi: Fix return value when a message is truncated
  - ipmi: Free the address list on module cleanup
  - net: hns3: clear VF down state bit before request link status
  - config: disable config ARM64_BOOTPARAM_HOTPLUG_CPU0 by default
  - config: disable CONFIG_SATA_ZHAOXIN by default


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.18.0.0082
changelog:
  - bcache: Add a sample of userspace prefetch client
  - bcache: Delay to invalidate cache data in writearound write
  - bcache: inflight prefetch requests block overlapped normal requests
  - bcache: provide a switch to bypass all IO requests
  - bcache: add a framework to perform prefetch


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.19.0.0083
changelog:
  - KVM: arm64: Support the vCPU preemption check
  - KVM: arm64: Add interface to support vCPU preempted check
  - KVM: arm64: Support pvsched preempted via shared structure
  - KVM: arm64: Implement PV_SCHED_FEATURES call
  - KVM: arm64: Document PV-sched interface
  - KVM: Check preempted_in_kernel for involuntary preemption
  - KVM: Boost vCPUs that are delivering interrupts
  - arm64/spinlock: fix a -Wunused-function warning
  - locking/osq: Use optimized spinning loop for arm64
  - arm/arm64: Make use of the SMCCC 1.1 wrapper
  - arm/arm64: Provide a wrapper for SMCCC 1.1 calls
  - KVM: Implement kvm_put_guest()
  - KVM: arm/arm64: Factor out hypercall handling from PSCI code


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.21.0.0084
changelog:
  - bcache: Rewrite patch to delay to invalidate cache data
  - nfc: Avoid endless loops caused by repeated llcp_sock_connect()
  - nfc: fix memory leak in llcp_sock_connect()
  - nfc: fix refcount leak in llcp_sock_connect()
  - nfc: fix refcount leak in llcp_sock_bind()


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2104.26.0.0085
changelog:
  - pid: fix pid recover method kabi change
  - config: enable kernel hotupgrade features by default
  - kexec: Add quick kexec support for kernel
  - arm64: smp: Add support for cpu park
  - pid: add pid reserve method for checkpoint and restore
  - mm: add pin memory method for checkpoint add restore
  - Revert "sched: Introduce qos scheduler for co-location"
  - Revert "sched: Throttle qos cfs_rq when current cpu is running online task"
  - Revert "sched: Enable qos scheduler config"
  - Revert "memcg: support priority for oom"
  - Revert "memcg: enable CONFIG_MEMCG_QOS by default"
  - Revert "memcg: fix kabi broken when enable CONFIG_MEMCG_QOS"
  - f2fs: fix to avoid out-of-bounds memory access
  - ext4: Reduce ext4 timestamp warnings
  - livepatch: Restoring code segment permissions after stop_machine completed
  - livepatch: Delete redundant variable 'flag'
  - memcg: fix kabi broken when enable CONFIG_MEMCG_QOS
  - memcg: enable CONFIG_MEMCG_QOS by default
  - memcg: support priority for oom
  - sched: Enable qos scheduler config
  - sched: Throttle qos cfs_rq when current cpu is running online task
  - sched: Introduce qos scheduler for co-location
  - ipv6: route: convert comma to semicolon
  - ipv6/route: Add a missing check on proc_dointvec
  - netfilter: xtables: avoid BUG_ON
  - SUNRPC: Test whether the task is queued before grabbing the queue spinlocks
  - SUNRPC: If there is no reply expected, bail early from call_decode
  - SUNRPC: Fix backchannel latency metrics
  - sunrpc: convert to time64_t for expiry
  - sunrpc: Fix potential leaks in sunrpc_cache_unhash()
  - SUNRPC: Skip zero-refcount transports
  - SUNRPC: Fix buffer handling of GSS MIC without slack
  - SUNRPC: Don't allow compiler optimisation of svc_xprt_release_slot()
  - SUNRPC/nfs: Fix return value for nfs4_callback_compound()
  - net/sunrpc: return 0 on attempt to write to "transports"
  - net/sunrpc: Fix return value for sysctl sunrpc.transports
  - sunrpc: raise kernel RPC channel buffer size
  - sunrpc: add missing newline when printing parameter 'pool_mode' by sysfs
  - xprtrdma: Fix trace point use-after-free race
  - SUNRPC: Fix backchannel RPC soft lockups
  - SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge
  - nfsd: export upcalls must not return ESTALE when mountd is down
  - sunrpc/cache: handle missing listeners better.
  - xprtrdma: Fix handling of RDMA_ERROR replies
  - xprtrdma: Expose transport header errors
  - sunrpc: destroy rpc_inode_cachep after unregister_filesystem
  - xprtrdma: fix incorrect header size calculations
  - nvme: fix ns removal hang when failing to revalidate due to a transient error
  - kernel/cputime: do not update cputime when cpu offline
  - perf/x86: Always store regs->ip in perf_callchain_kernel()
  - perf/x86: Make perf callchains work without CONFIG_FRAME_POINTER
  - irqchip/gic-v3: Do not enable irqs when handling spurious interrups
  - config: enable CONFIG_HW_RANDOM_HISI_V2 by default
  - hwrng: add data_mode to support rand data with post process
  - hwrng: add HiSilicon TRNG driver


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.2.0.0086
changelog:
  - ovl: allow upperdir inside lowerdir
  - ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade()
  - ACPI: tables: x86: Reserve memory occupied by ACPI tables
  - x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access
  - locking/qrwlock: Fix ordering in queued_write_lock_slowpath()
  - net: ip6_tunnel: Unregister catch-all devices
  - netfilter: nft_limit: avoid possible divide error in nft_limit_init
  - netfilter: conntrack: do not print icmpv6 as unknown via /proc
  - scsi: libsas: Reset num_scatter if libata marks qc as NODATA
  - arm64: alternatives: Move length validation in alternative_{insn, endif}
  - arm64: fix inline asm in load_unaligned_zeropad()
  - readdir: make sure to verify directory entry for legacy interfaces too
  - neighbour: Disregard DEAD dst in neigh_update
  - driver core: Fix locking bug in deferred_probe_timeout_work_func()
  - netfilter: x_tables: fix compat match/target pad out-of-bound write
  - workqueue: Move the position of debug_work_activate() in __queue_work()
  - xfrm: interface: fix ipv4 pmtu check to honor ip header df
  - net-ipv6: bugfix - raw & sctp - switch to ipv6_can_nonlocal_bind()
  - net: ensure mac header is set in virtio_net_hdr_to_skb()
  - fs: direct-io: fix missing sdio->boundary
  - net: ipv6: check for validity before dereferencing cfg->fc_nlinfo.nlh
  - cifs: Silently ignore unknown oplock break handle
  - cifs: revalidate mapping when we open files for SMB1 POSIX
  - scsi: target: pscsi: Clean up after failure in pscsi_map_sg()
  - mm: fix race by making init_zero_pfn() early_initcall
  - tracing: Fix stack trace event size
  - PM: runtime: Fix ordering in pm_runtime_get_suppliers()
  - PM: runtime: Fix race getting/putting suppliers at probe
  - ext4: do not iput inode under running transaction in ext4_rename()
  - locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling
  - thermal/core: Add NULL pointer check before using cooling device stats
  - scsi: st: Fix a use after free in st_open()
  - vhost: Fix vhost_vq_reset()
  - rpc: fix NULL dereference on kmalloc failure
  - ext4: fix bh ref count on error paths
  - ipv6: weaken the v4mapped source check
  - tcp: relookup sock for RST+ACK packets handled by obsolete req sock
  - nfs: we don't support removing system.nfs4_acl
  - NFSv4.2: fix return value of _nfs4_get_security_label()
  - nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
  - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process()
  - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process()
  - NFSv4.2: condition READDIR's mask for security label based on LSM state
  - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag
  - NFS: fix nfs_path in case of a rename retry
  - NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall
  - NFS: Don't return layout segments that are in use
  - NFS: Don't move layouts to plh_return_segs list while in use
  - SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion")
  - NFSv4 fix CLOSE not waiting for direct IO compeletion
  - NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION
  - nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl
  - NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid()
  - NFSv4.1 make cachethis=no for writes
  - NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes()
  - NFS/pnfs: Bulk destroy of layouts needs to be safe w.r.t. umount
  - cgroup/files: support boot parameter to control if disable files cgroup
  - efi: Fix a race and a buffer overflow while reading efivars via sysfs
  - RDMA/hns: Allocate one more recv SGE for HIP08
  - mm: memcontrol: fix slub memory accounting
  - mm, sl[ou]b: improve memory accounting
  - mm: fix numa stats for thp migration
  - mm/vmscan: count layzfree pages and fix nr_isolated_* mismatch
  - SUNRPC: Close a race with transport setup and module put
  - sunrpc: Change the place of endtime in struct krb5_ctx
  - bpf: Tighten speculative pointer arithmetic mask
  - bpf: Move sanitize_val_alu out of op switch
  - bpf: Refactor and streamline bounds check into helper
  - bpf: Improve verifier error messages for users
  - bpf: Rework ptr_limit into alu_limit and add common error path
  - bpf: Ensure off_reg has no mixed signed bounds for all types
  - bpf: Move off_reg into sanitize_ptr_alu
  - bpf: Add sanity check for upper ptr_limit
  - bpf: Simplify alu_limit masking for pointer arithmetic


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.3.0.0087
changelog:
  - jbd2: don't abort the journal when freeing buffers
  - jbd2: ensure abort the journal if detect IO error when writing original buffer back
  - jbd2: remove the out label in __jbd2_journal_remove_checkpoint()
  - x86/unwind/orc: Remove boot-time ORC unwind tables sorting
  - scripts/sorttable: Implement build-time ORC unwind table sorting
  - scripts/sorttable: Rename 'sortextable' to 'sorttable'
  - scripts/sortextable: Refactor the do_func() function
  - scripts/sortextable: Remove dead code
  - scripts/sortextable: Clean up the code to meet the kernel coding style better
  - scripts/sortextable: Rewrite error/success handling
  - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 378
  - ext4: Fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed
  - Revert "ext4: Fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed"
  - nfs4.0: Refetch lease_time after clientid update
  - nfs4: Rename nfs41_setup_state_renewal
  - nfs4: Make nfs4_proc_get_lease_time available for nfs4.0
  - nfs: Fix copy-and-paste error in debug message
  - ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle
  - bluetooth: eliminate the potential race condition when removing the HCI controller
  - mm: enhance variables check and sync for pin mem
  - perf jit: Fix inaccurate DWARF line table
  - perf jvmti: Remove redundant jitdump line table entries
  - perf jvmti: Fix demangling Java symbols
  - perf tests: Add test for the java demangler
  - perf jvmti: Do not report error when missing debug information
  - perf jvmti: Fix jitdump for methods without debug info
  - bpf: Fix leakage of uninitialized bpf stack under speculation
  - bpf: Fix masking negation logic upon negative dst register
  - bcache: add readahead cache policy options via sysfs interface
  - mm/page_alloc: fix managed_pages of zone is incorrect and out of bounds
  - freezer: Add unsafe version of freezable_schedule_timeout_interruptible() for NFS
  - NFS: Allow signal interruption of NFS4ERR_DELAYed operations
  - SUNRPC: Make "no retrans timeout" soft tasks behave like softconn for timeouts
  - SUNRPC: Don't let RPC_SOFTCONN tasks time out if the transport is connected
  - ext4: fix check to prevent false positive report of incorrect used inodes
  - livepatch/x86_64: Fix the deadlock when insmoding livepatch kernel module
  - tools/testing/selftests: add self-test for verifying load alignment
  - fs/binfmt_elf: use PT_LOAD p_align values for suitable start address
  - ext4: introduce ext4_sb_bread_unmovable() to replace sb_bread_unmovable()
  - ext4: use ext4_sb_bread() instead of sb_bread()
  - ext4: introduce ext4_sb_breadahead_unmovable() to replace sb_breadahead_unmovable()
  - ext4: use ext4_buffer_uptodate() in __ext4_get_inode_loc()
  - ext4: use common helpers in all places reading metadata buffers
  - ext4: introduce new metadata buffer read helpers
  - ext4: treat buffers contining write errors as valid in ext4_sb_bread()
  - bpf: Fix truncation handling for mod32 dst reg wrt zero
  - bpf: Fix 32 bit src register truncation on div/mod
  - arm64: bpf: implement jitting of JMP32
  - x86_64: bpf: implement jitting of JMP32
  - bpf: JIT blinds support JMP32
  - bpf: interpreter support for JMP32
  - tools: bpftool: teach cfg code about JMP32
  - bpf: disassembler support JMP32
  - bpf: verifier support JMP32
  - bpf: refactor verifier min/max code for condition jump
  - bpf: allocate 0x06 to new eBPF instruction class JMP32


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.4.0.0088
changelog:
  - tools arch x86: Sync asm/cpufeatures.h with the with the kernel
  - cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency
  - ACPI / CPPC: Fix guaranteed performance handling
  - perf vendor events: Add JSON metrics for Cascadelake server
  - perf vendor events: Add stepping in CPUID string for x86
  - cpufreq: intel_pstate: Fix compilation for !CONFIG_ACPI
  - cpufreq: intel_pstate: Add base_frequency attribute
  - ACPI / CPPC: Add support for guaranteed performance
  - EDAC, skx: Fix randconfig builds in a better way
  - EDAC, skx: Fix randconfig builds
  - EDAC, skx_edac: Add address translation for non-volatile DIMMs
  - ACPI/ADXL: Add address translation interface using an ACPI DSM
  - x86/mce: Add macros for the corrected error count bit field
  - x86/mce: Use BIT_ULL(x) for bit mask definitions
  - x86/cpufeatures: Enumerate the new AVX512 BFLOAT16 instructions
  - tools/testing/selftests/exec: fix link error
  - NFSv4.1: Don't rebind to the same source port when reconnecting to the server
  - genirq: Sanitize state handling in check_irq_resend()
  - genirq: Add return value to check_irq_resend()
  - irqchip/gic-v2, v3: Prevent SW resends entirely
  - irqchip/git-v3-its: Implement irq_retrigger callback for device-triggered LPIs
  - irqchip/gic-v2, v3: Implement irq_chip->irq_retrigger()
  - genirq: Walk the irq_data hierarchy when resending an interrupt
  - genirq: Add protection against unsafe usage of generic_handle_irq()


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.5.0.0089
changelog:
  - ata: ahci: Disable SXS for Hisilicon Kunpeng920
  - fuse: don't ignore errors from fuse_writepages_fill()
  - NFS: finish_automount() requires us to hold 2 refs to the mount record
  - NFS: If nfs_mountpoint_expiry_timeout < 0, do not expire submounts
  - NFS: remove unused check for negative dentry
  - NFSv3: use nfs_add_or_obtain() to create and reference inodes
  - NFS: Refactor nfs_instantiate() for dentry referencing callers
  - sysfs: Remove address alignment constraint in sysfs_emit{_at}
  - Revert "mm, sl[aou]b: guarantee natural alignment for kmalloc(power-of-two)"
  - Revert "mm, sl[ou]b: improve memory accounting"
  - Revert "mm: memcontrol: fix slub memory accounting"
  - io_uring: truncate lengths larger than MAX_RW_COUNT on provide buffers
  - arm/ras: Report ARM processor information to userspace
  - fuse: update attr_version counter on fuse_notify_inval_inode()
  - alinux: random: speed up the initialization of module
  - net: mac802154: Fix general protection fault
  - cipso,calipso: resolve a number of problems with the DOI refcounts
  - Bluetooth: verify AMP hci_chan before amp_destroy
  - net/nfc: fix use-after-free llcp_sock_bind/connect
  - x86: Select HARDIRQS_SW_RESEND on x86
  - x86/apic/vector: Force interupt handler invocation to irq context


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.6.0.0090
changelog:
  - cpuidle: fix kabi broken in cpuidle_device and cpuidle_driver
  - config: set default value of haltpoll
  - ARM: cpuidle: Add support for cpuidle-haltpoll driver for ARM
  - arm64: Add some definitions of kvm_para*
  - cpuidle-haltpoll: Use arch_cpu_idle() to replace default_idle()
  - arm64: Optimize ttwu IPI
  - config: enable CONFIG_CPU_IDLE_GOV_HALTPOLL and CONFIG_HALTPOLL_CPUIDLE default
  - KVM: polling: add architecture backend to disable polling
  - cpuidle-haltpoll: Fix small typo
  - cpuidle: haltpoll: allow force loading on hosts without the REALTIME hint
  - cpuidle-haltpoll: Enable kvm guest polling when dedicated physical CPUs are available
  - cpuidle-haltpoll: do not set an owner to allow modunload
  - cpuidle-haltpoll: return -ENODEV on modinit failure
  - cpuidle-haltpoll: vcpu hotplug support
  - cpuidle-haltpoll: set haltpoll as preferred governor
  - cpuidle: allow governor switch on cpuidle_register_driver()
  - cpuidle: governor: Add new governors to cpuidle_governors again
  - cpuidle: Add cpuidle.governor= command line parameter
  - cpuidle-haltpoll: disable host side polling when kvm virtualized
  - kvm: x86: add host poll control msrs
  - cpuidle: add haltpoll governor
  - governors: unify last_state_idx
  - cpuidle: use first valid target residency as poll time
  - cpuidle: header file stubs must be "static inline"
  - cpuidle: add poll_limit_ns to cpuidle_device structure
  - add cpuidle-haltpoll driver
  - cpuidle: poll_state: Fix default time limit
  - cpuidle: poll_state: Disregard disable idle states
  - cpuidle: poll_state: Revise loop termination condition
  - cpuidle: menu: Do not update last_state_idx in menu_select()
  - bpf: No need to simulate speculative domain for immediates
  - bpf: Fix mask direction swap upon off reg sign change
  - bpf: Wrap aux data inside bpf_sanitize_info container


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.8.0.0091
changelog:
  - tools: libbpf: fix compiler error
  - bpf: fix kabi for struct bpf_prog_aux and struct bpf_raw_event_map
  - tools: bpftool: add raw_tracepoint_writable prog type to header
  - tools: sync bpf.h
  - bpf: add writable context for raw tracepoints
  - x86/tsc: Respect tsc command line paraemeter for clocksource_tsc_early


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2105.9.0.0092
changelog:
  - selftests/bpf: add test_xfs_file.c and test_set_xfs_file.c
  - bpf: add bpf_probe_read_str into bpf_helpers.h
  - xfs: add writable tracepoint for xfs file buffer read
  - readahead: introduce FMODE_WILLNEED to read first 2MB of file


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2106.1.0.0093
changelog:
  - fs/buffer.c: add checking buffer head stat before clear
  - Bluetooth: SMP: Fail if remote and local public keys are identical
  - Bluetooth: use correct lock to prevent UAF of hdev object
  - Bluetooth: fix the erroneous flush_work() order
  - iomap: Make sure iomap_end is called after iomap_begin
  - x86/kvm: Add "nopvspin" parameter to disable PV spinlocks
  - scsi: libsas: add lun number check in .slave_alloc callback
  - nfc: fix NULL ptr dereference in llcp_sock_getname() after failed connect
  - USB:ehci:fix Kunpeng920 ehci hardware problem
  - nvme: don't warn on block content change effects
  - block: recalculate segment count for multi-segment discards correctly
  - nbd: Fix NULL pointer in flush_workqueue
  - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt()
  - HID: make arrays usage and value to be the same
  - ath10k: Validate first subframe of A-MSDU before processing the list
  - mac80211: extend protection against mixed key and fragment cache attacks
  - mac80211: do not accept/forward invalid EAPOL frames
  - mac80211: prevent attacks on TKIP/WEP as well
  - mac80211: check defrag PN against current frame
  - mac80211: add fragment cache to sta_info
  - mac80211: drop A-MSDUs on old ciphers
  - cfg80211: mitigate A-MSDU aggregation attacks
  - mac80211: properly handle A-MSDUs that start with an RFC 1042 header
  - mac80211: prevent mixed key and fragment cache attacks
  - mac80211: assure all fragments are encrypted
  - mac80211: mark station unauthorized before key removal
  - block: avoid creating invalid symlink file for patitions
  - block: take bd_mutex around delete_partitions in del_gendisk
  - NFSv4: Fix second deadlock in nfs4_evict_inode()
  - NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode()
  - NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION
  - NFS: Don't gratuitously clear the inode cache when lookup failed
  - NFS: Don't revalidate the directory permissions on a lookup failure
  - NFS: nfs_delegation_find_inode_server must first reference the superblock
  - nfs4: strengthen error check to avoid unexpected result
  - NFS: Fix interrupted slots by sending a solo SEQUENCE operation
  - NFS: Ensure we time out if a delegreturn does not complete
  - NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals
  - NFS: Use kmemdup_nul() in nfs_readdir_make_qstr()
  - NFSv3: FIx bug when using chacl and chmod to change acl
  - NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process()
  - NFSv4.1: Only reap expired delegations
  - NFSv4.1: Fix open stateid recovery
  - NFSv4.1: Don't process the sequence op more than once.
  - NFS: Ensure NFS writeback allocations don't recurse back into NFS.
  - nfs_remount(): don't leak, don't ignore LSM options quietly
  - UACCE backport from mainline
  - crypto: hisilicon-Cap block size at 2^31
  - crypto: hisilicon-hpre add req check when callback
  - crypto: hisilicon- count send_ref when sending bd
  - crypto: hisilicon-enhancement of qm DFX
  - crypto: hisilicon-memory management optimization
  - net: hns3: update hns3 version to 1.9.38.12
  - net: hns3: add match_id to check mailbox response from PF to VF
  - net: hns3: fix possible mismatches resp of mailbox
  - net: hns3: fix the logic for clearing resp_msg
  - net: hns3: fix queue id check error when configure flow director rule by ethtool
  - net: hns3: add check for HNS3_NIC_STATE_INITED before net open
  - net: hns3: add waiting time before cmdq memory is released
  - net: hns3: disable firmware compatible features when uninstall PF
  - net: hns3: fix change RSS 'hfunc' ineffective issue
  - net: hns3: fix inconsistent vf id print
  - net: hns3: remove redundant variable initialization
  - net: hns3: replace the tab before the left brace with one space
  - net: hns3: fix hns3_cae_pfc_storm.h missing header guard problem
  - net: hns3: modify an error type configuration
  - net: hns3: put off calling register_netdev() until client initialize complete
  - net: hns3: replace disable_irq by IRQ_NOAUTOEN flag
  - net: hns3: update rss indirection table after setup tc
  - net: hns3: don't change tc mqprio configuration when client is unregistered
  - net: hns3: remove redundant client_setup_tc handle
  - arm64/mpam: Fix use-after-free in mkdir_resctrl_prepare()


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2106.2.0.0094
changelog:
  - sched/membarrier: fix NULL poiner in membarrier_global_expedited
  - writeback: don't warn on an unregistered BDI in __mark_inode_dirty


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2107.4.0.0097
changelog:
  - Revert "smp: Fix smp_call_function_single_async prototype"
  - Revert "vt: Fix character height handling with VT_RESIZEX"
  - block: only call sched requeue_request() for scheduled requests
  - KVM: arm: replace WARN_ON with pr_warn for UNKNOWN type
  - net/packet: annotate accesses to po->ifindex
  - net/packet: annotate accesses to po->bind
  - inet: annotate date races around sk->sk_txhash
  - ping: Check return value of function 'ping_queue_rcv_skb'
  - net: ethtool: clear heap allocations for ethtool function
  - x86/fpu: Reset state for all signal restore failures
  - inet: use bigger hash table for IP ID generation
  - net: bridge: fix vlan tunnel dst refcnt when egressing
  - net: bridge: fix vlan tunnel dst null pointer dereference
  - tracing: Do no increment trace_clock_global() by one
  - tracing: Do not stop recording comms if the trace file is being read
  - tracing: Do not stop recording cmdlines when tracing is off
  - icmp: don't send out ICMP messages with a source address of 0.0.0.0
  - net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock
  - net: ipv4: fix memory leak in ip_mc_add1_src
  - net: make get_net_ns return error if NET_NS is disabled
  - net: add documentation to socket.c
  - sch_cake: Fix out of bounds when parsing TCP options and header
  - netfilter: synproxy: Fix out of bounds when parsing TCP options
  - rtnetlink: Fix regression in bridge VLAN configuration
  - udp: fix race between close() and udp_abort()
  - net: ipv4: fix memory leak in netlbl_cipsov4_add_std
  - fib: Return the correct errno code
  - net: Return the correct errno code
  - rtnetlink: Fix missing error code in rtnl_bridge_notify()
  - net: ipconfig: Don't override command-line hostnames or domains
  - nvme-loop: check for NVME_LOOP_Q_LIVE in nvme_loop_destroy_admin_queue()
  - nvme-loop: clear NVME_LOOP_Q_LIVE when nvme_loop_configure_admin_queue() fails
  - nvme-loop: reset queue count to 1 in nvme_loop_destroy_io_queues()
  - scsi: target: core: Fix warning on realtime kernels
  - proc: only require mm_struct for writing
  - tracing: Correct the length check which causes memory corruption
  - ftrace: Do not blindly read the ip address in ftrace_bug()
  - scsi: core: Only put parent device if host state differs from SHOST_CREATED
  - scsi: core: Put .shost_dev in failure path if host state changes to RUNNING
  - scsi: core: Fix error handling of scsi_host_alloc()
  - NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error.
  - NFS: Fix use-after-free in nfs4_init_client()
  - NFS: Fix a potential NULL dereference in nfs_get_client()
  - sched/fair: Make sure to update tg contrib for blocked load
  - perf: Fix data race between pin_count increment/decrement
  - cgroup1: don't allow '
  - wq: handle VM suspension in stall detection
  - cgroup: disable controllers at parse time
  - net: mdiobus: get rid of a BUG_ON()
  - netlink: disable IRQs for netlink_lock_table()
  - bonding: init notify_work earlier to avoid uninitialized use
  - proc: Track /proc/$pid/attr/ opener mm_struct
  - ACPI: EC: Look for ECDT EC after calling acpi_load_tables()
  - ACPI: probe ECDT before loading AML tables regardless of module-level code flag
  - mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY
  - x86/apic: Mark _all_ legacy interrupts when IO/APIC is missing
  - pid: take a reference when initializing `cad_pid`
  - netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches
  - ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service
  - vfio/platform: fix module_put call in error flow
  - vfio/pci: zap_vma_ptes() needs MMU
  - vfio/pci: Fix error return code in vfio_ecap_init()
  - efi: cper: fix snprintf() use in cper_dimm_err_location()
  - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared
  - lib/clear_user: ensure loop in __arch_clear_user cache-aligned
  - scsi: core: Treat device offline as a failure
  - Revert "scsi: check the whole result for reading write protect flag"
  - ext4: fix WARN_ON_ONCE(!buffer_uptodate) after an error writing the superblock
  - arm64/config: Set CONFIG_TXGBE=m by default
  - make bch_btree_check() to be multiple threads
  - Make compile successful when CONFIG_BCACHE is not set.
  - Move only dirty data when gc runnning, in order to reducing write amplification.
  - Add traffic policy for low cache available.
  - igmp: Add ip_mc_list lock in ip_check_mc_rcu
  - memcg: fix unsuitable null check after alloc memory
  - cpuidle: fix a build error when compiling haltpoll into module
  - config: enable KASAN and UBSAN by default
  - KVM: x86: expose AVX512_BF16 feature to guest
  - KVM: cpuid: remove has_leaf_count from struct kvm_cpuid_param
  - KVM: cpuid: rename do_cpuid_1_ent
  - KVM: cpuid: set struct kvm_cpuid_entry2 flags in do_cpuid_1_ent
  - KVM: cpuid: extract do_cpuid_7_mask and support multiple subleafs
  - KVM: cpuid: do_cpuid_ent works on a whole CPUID function
  - ext4: fix possible UAF when remounting r/o a mmp-protected file system
  - locks: Fix UBSAN undefined behaviour in flock64_to_posix_lock
  - iomap: Mark read blocks uptodate in write_begin
  - iomap: Clear page error before beginning a write
  - iomap: move the zeroing case out of iomap_read_page_sync
  - nbd: handle device refs for DESTROY_ON_DISCONNECT properly
  - cifs: Fix leak when handling lease break for cached root fid
  - mm/memcontrol.c: fix kasan slab-out-of-bounds in mem_cgroup_css_alloc
  - module: limit enabling module.sig_enforce
  - selftests/bpf: add test_spec_readahead_xfs_file to support specail async readahead
  - mm: support special async readahead
  - selftests/bpf: test_xfs_file support to clear FMODE_RANDOM
  - xfs: let writable tracepoint enable to clear flag of f_mode
  - jbd2: fix kabi broken in struct journal_s
  - btrfs: allow btrfs_truncate_block() to fallback to nocow for data space reservation
  - NFSv4.1: fix kabi for struct rpc_xprt
  - usb: gadget: rndis: Fix info leak of rndis
  - once: Fix panic when module unload
  - SUNRPC: Should wake up the privileged task firstly.
  - SUNRPC: Fix the batch tasks count wraparound.
  - bpf: Fix leakage under speculation on mispredicted branches
  - bpf: Do not mark insn as seen under speculative path verification
  - bpf: Inherit expanded/patched seen count from old aux data
  - bpf: Update selftests to reflect new error states
  - bpf, test_verifier: switch bpf_get_stack's 0 s> r8 test
  - bpf: Test_verifier, bpf_get_stack return value add <0
  - bpf: extend is_branch_taken to registers
  - selftests/bpf: add selftest part of "bpf: improve verifier branch analysis"
  - selftests/bpf: Test narrow loads with off > 0 in test_verifier
  - bpf, selftests: Fix up some test_verifier cases for unprivileged
  - bpf: fix up selftests after backports were fixed
  - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout
  - binfmt: Move install_exec_creds after setup_new_exec to match binfmt_elf
  - ext4: fix memory leak in ext4_fill_super
  - RDMA/hns: Add support for addressing when hopnum is 0
  - RDMA/hns: Optimize hns buffer allocation flow
  - RDMA/hns: Check if depth of qp is 0 before configure
  - RDMA/hns: Optimize qp param setup flow
  - RDMA/hns: Optimize qp buffer allocation flow
  - RDMA/hns: Optimize qp destroy flow
  - RDMA/hns: Remove asynchronic QP destroy
  - RDMA/hns: Bugfix for posting a wqe with sge
  - RDMA/hns: Delete unnecessary variable max_post
  - RDMA/hns: optimize the duplicated code for qpc setting flow
  - RDMA/hns: Prevent undefined behavior in hns_roce_set_user_sq_size()
  - RDMA/umem: Add rdma_umem_for_each_dma_block()
  - RDMA/verbs: Add a DMA iterator to return aligned contiguous memory blocks
  - can: bcm: delay release of struct bcm_op after synchronize_rcu()
  - etmem_scan: fix memleak in vm_idle_read
  - x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes
  - Revert "arm64: capabilities: Merge entries for ARM64_WORKAROUND_CLEAN_CACHE"
  - Revert "arm64: capabilities: Merge duplicate Cavium erratum entries"
  - Revert "arm64: capabilities: Merge duplicate entries for Qualcomm erratum 1003"
  - net: hns3: update hns3 version to 1.9.40.24
  - net: hns3: remove redundant assignment to rx_index
  - net: hns3: Fix potential null pointer defererence of null ae_dev
  - net: hns3: not reset TQP in the DOWN while VF resetting
  - net: hns3: remove redundant enum type HNAE3_RESTORE_CLIENT
  - net: hns3: add stats logging when skb padding fails
  - net: hns3: add tx send size handling for tso skb
  - net: hns3: add handling for xmit skb with recursive fraglist
  - net: hns3: use napi_consume_skb() when cleaning tx desc
  - net: hns3: use writel() to optimize the barrier operation
  - net: hns3: optimize the rx clean process
  - net: hns3: optimize the tx clean process
  - net: hns3: batch tx doorbell operation
  - net: hns3: batch the page reference count updates
  - net: hns3: streaming dma buffer sync between cpu and device
  - net: hns3: rename buffer-related functions
  - net: hns3: pointer type of buffer should be void
  - net: hns3: remove unnecessary devm_kfree
  - net: hns3: add suspend and resume pm_ops
  - Revert "net: hns3: add suspend/resume function for hns3 driver"
  - net: hns3: change flr_prepare/flr_done function names
  - net: hns3: change hclge_reset_done function name
  - net: hns3: configure promisc mode for VF asynchronously
  - kabi: add kabi list for x86_64
  - kabi: update kabi list for arm64
  - hugetlbfs: hugetlb_fault_mutex_hash() cleanup
  - ipv6: record frag_max_size in atomic fragments in input path
  - scsi: libsas: Use _safe() loop in sas_resume_port()
  - SMB3: incorrect file id in requests compounded with open
  - NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config
  - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce()
  - NFS: fix an incorrect limit in filelayout_decode_layout()
  - dm snapshot: properly fix a crash when an origin has no snapshots
  - proc: Check /proc/$pid/attr/ writes against file opener
  - iommu/vt-d: Fix sysfs leak in alloc_iommu()
  - NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return()
  - cifs: set server->cipher_type to AES-128-CCM for SMB3.0
  - tty: vt: always invoke vc->vc_sw->con_resize callback
  - vt: Fix character height handling with VT_RESIZEX
  - vgacon: Record video mode changes with VT_RESIZEX
  - Revert "niu: fix missing checks of niu_pci_eeprom_read"
  - Revert "qlcnic: Avoid potential NULL pointer dereference"
  - Revert "rtlwifi: fix a potential NULL pointer dereference"
  - Revert "media: rcar_drif: fix a memory disclosure"
  - Revert "gdrom: fix a memory leak bug"
  - Revert "scsi: ufs: fix a missing check of devm_reset_control_get"
  - Revert "video: imsttfb: fix potential NULL pointer dereferences"
  - Revert "hwmon: (lm80) fix a missing check of bus read in lm80 probe"
  - Revert "leds: lp5523: fix a missing check of return value of lp55xx_read"
  - Revert "net: stmicro: fix a missing check of clk_prepare"
  - Revert "video: hgafb: fix potential NULL pointer dereference"
  - dm snapshot: fix crash with transient storage and zero chunk size
  - Revert "serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference"
  - Revert "rapidio: fix a NULL pointer dereference when create_workqueue() fails"
  - Revert "ALSA: sb8: add a check for request_region"
  - cifs: fix memory leak in smb2_copychunk_range
  - locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal
  - nvmet: seset ns->file when open fails
  - ptrace: make ptrace() fail if the tracee changed its pid unexpectedly
  - firmware: arm_scpi: Prevent the ternary sign expansion bug
  - ipv6: remove extra dev_hold() for fallback tunnels
  - ip6_tunnel: sit: proper dev_{hold|put} in ndo_[un]init methods
  - sit: proper dev_{hold|put} in ndo_[un]init methods
  - ip6_gre: proper dev_{hold|put} in ndo_[un]init methods
  - block: reexpand iov_iter after read/write
  - scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found
  - ACPI / hotplug / PCI: Fix reference count leak in enable_slot()
  - nvme: do not try to reconfigure APST when the controller is not live
  - netfilter: conntrack: Make global sysctls readonly in non-init netns
  - kobject_uevent: remove warning in init_uevent_argv()
  - blk-mq: Swap two calls in blk_mq_exit_queue()
  - userfaultfd: release page in error path to avoid BUG_ON
  - netfilter: nftables: avoid overflows in nft_hash_buckets()
  - kernel: kexec_file: fix error return code of kexec_calculate_store_digests()
  - sched/fair: Fix unfairness caused by missing load decay
  - netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check
  - net: fix nla_strcmp to handle more then one trailing null character
  - ksm: fix potential missing rmap_item for stable_node
  - mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts()
  - khugepaged: fix wrong result value for trace_mm_collapse_huge_page_isolate()
  - netfilter: xt_SECMARK: add new revision to fix structure layout
  - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b
  - sctp: do asoc update earlier in sctp_sf_do_dupcook_a
  - NFSv4.2 fix handling of sr_eof in SEEK's reply
  - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh()
  - NFS: Deal correctly with attribute generation counter overflow
  - NFSv4.2: Always flush out writes in nfs42_proc_fallocate()
  - PCI: Release OF node in pci_scan_device()'s error path
  - ethtool: ioctl: Fix out-of-bounds warning in store_link_ksettings_for_user()
  - sctp: Fix out-of-bounds warning in sctp_process_asconf_param()
  - cuse: prevent clone
  - ip6_vti: proper dev_{hold|put} in ndo_[un]init methods
  - tpm: fix error return code in tpm2_get_cc_attrs_tbl()
  - sctp: delay auto_asconf init until binding the first addr
  - Revert "net/sctp: fix race condition in sctp_destroy_sock"
  - smp: Fix smp_call_function_single_async prototype
  - net: Only allow init netns to set default tcp cong to a restricted algo
  - mm/memory-failure: unnecessary amount of unmapping
  - mm/sparse: add the missing sparse_buffer_fini() in error branch
  - drivers/block/null_blk/main: Fix a double free in null_init.
  - sched/debug: Fix cgroup_path[] serialization
  - x86/events/amd/iommu: Fix sysfs type mismatch
  - vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer
  - ata: libahci_platform: fix IRQ check
  - x86/kprobes: Fix to check non boostable prefixes correctly
  - ACPI: CPPC: Replace cppc_attr with kobj_attribute
  - irqchip/gic-v3: Fix OF_BAD_ADDR error handling
  - x86/microcode: Check for offline CPUs before requesting new microcode
  - ovl: fix missing revert_creds() on error path
  - x86/cpu: Initialize MSR_TSC_AUX if RDTSCP *or* RDPID is supported
  - md: Fix missing unused status line of /proc/mdstat
  - md: md_open returns -EBUSY when entering racing area
  - md: factor out a mddev_find_locked helper from mddev_find
  - md: split mddev_find
  - md-cluster: fix use-after-free issue when removing rdev
  - md/bitmap: wait for external bitmap writes to complete during tear down
  - dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails
  - dm space map common: fix division bug in sm_ll_find_free_block()
  - dm persistent data: packed struct should have an aligned() attribute too
  - tracing: Restructure trace_clock_global() to never block
  - tracing: Map all PIDs to command lines
  - tty: fix memory leak in vc_deallocate
  - ext4: fix error code in ext4_commit_super
  - posix-timers: Preserve return value in clock_adjtime32()
  - Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op")
  - dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences
  - md/raid1: properly indicate failure when ending a failed write request
  - NFSv4: Don't discard segments marked for return in _pnfs_return_layout()
  - NFS: Don't discard pNFS layout segments that are marked for return
  - ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure
  - arm64/vdso: Discard .note.gnu.property sections in vDSO
  - perf/arm_pmu_platform: Fix error handling
  - genirq/matrix: Prevent allocation counter corruption
  - crypto: api - check for ERR pointers in crypto_destroy_tfm()
  - cifs: Return correct error code from smb2_get_enc_key
  - ftrace: Handle commands when closing set_ftrace_filter file
  - ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map()
  - ext4: do not use extent after put_bh
  - modpost: explain why we can't use strsep
  - modpost: remove use of non-standard strsep() in HOSTCC code
  - modpost: use read_text_file() and get_line() for reading text files
  - modpost: add read_text_file() and get_line() helpers
  - arm64: capabilities: Merge duplicate entries for Qualcomm erratum 1003
  - arm64: capabilities: Merge duplicate Cavium erratum entries
  - arm64: capabilities: Merge entries for ARM64_WORKAROUND_CLEAN_CACHE
  - net: phy: ensure phylib state machine is stopped after calling phy_stop
  - net: linkwatch: add check for netdevice being present to linkwatch_do_dev
  - net: phy: call state machine synchronously in phy_stop
  - of: fix kmemleak crash caused by imbalance in early memory reservation
  - random: fix soft lockup when trying to read from an uninitialized blocking pool
  - random: only read from /dev/random after its pool has received 128 bits
  - block: check queue's limits.discard_granularity in __blkdev_issue_discard()
  - block: loop: set discard granularity and alignment for block device backed loop
  - posix-cpu-timers: Stop disabling timers on mt-exec
  - kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE
  - perf top: Fix stdio interface input handling with glibc 2.28+
  - iommu/vt-d: Fix mm reference leak
  - iommu/dma: Fix for dereferencing before null checking
  - srcu: Apply *_ONCE() to ->srcu_last_gp_end
  - arm64: Kconfig: select HAVE_FUTEX_CMPXCHG
  - kill kernfs_pin_sb()
  - mm, thp: fix defrag setting if newline is not used
  - nfsd: Clone should commit src file metadata too
  - nfsd: Ensure CLONE persists data and metadata changes to the target file
  - x86/sysfb: Fix check for bad VRAM size
  - x86/timer: Force PIT initialization when !X86_FEATURE_ARAT
  - x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode
  - x86/timer: Skip PIT initialization on modern chipsets
  - x86/apic: Rename 'lapic_timer_frequency' to 'lapic_timer_period'
  - iommu/vt-d: Handle PCI bridge RMRR device scopes in intel_iommu_get_resv_regions
  - iommu/vt-d: Handle RMRR with PCI bridge device scopes
  - iommu/vt-d: Introduce is_downstream_to_pci_bridge helper
  - crypto: x86 - remove SHA multibuffer routines and mcryptd
  - iommu/vt-d: Duplicate iommu_resv_region objects per device list
  - memcg: fix kabi broken when memory cgroup enhance
  - mm: memcontrol: fix NULL-ptr deref in percpu stats flush
  - mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size
  - mm: memcontrol: fix percpu vmstats and vmevents flush
  - mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones"
  - mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones
  - mm: memcontrol: flush percpu vmevents before releasing memcg
  - mm: memcontrol: flush percpu vmstats before releasing memcg
  - mm/memcontrol: fix wrong statistics in memory.stat
  - mm: memcontrol: don't batch updates of local VM stats and events
  - mm: memcontrol: fix NUMA round-robin reclaim at intermediate level
  - mm: memcontrol: fix recursive statistics correctness & scalabilty
  - mm: memcontrol: move stat/event counting functions out-of-line
  - mm: memcontrol: make cgroup stats and events query API explicitly local
  - mm: memcontrol: quarantine the mem_cgroup_[node_]nr_lru_pages() API
  - mm, memcg: rename ambiguously named memory.stat counters and functions
  - mm/memcontrol.c: fix memory.stat item ordering
  - mm: memcontrol: expose THP events on a per-memcg basis
  - mm: memcontrol: track LRU counts in the vmstats array
  - mm: memcontrol: push down mem_cgroup_nr_lru_pages()
  - mm: memcontrol: push down mem_cgroup_node_nr_lru_pages()
  - mm: workingset: don't drop refault information prematurely
  - mm: memcontrol: replace zone summing with lruvec_page_state()
  - mm: memcontrol: replace node summing with memcg_page_state()
  - mm, oom: add oom victim's memcg to the oom context information
  - mm/oom_kill.c: fix uninitialized oc->constraint
  - mm, oom: reorganize the oom report in dump_header
  - memcg: update the child's qos_level synchronously in memcg_qos_write()
  - memcg: Add static key for memcg priority
  - memcg: fix kabi broken when enable CONFIG_MEMCG_QOS
  - memcg: enable CONFIG_MEMCG_QOS by default
  - memcg: support priority for oom
  - scsi: core: Fix failure handling of scsi_add_host_with_dma()
  - fuse: fix the ->direct_IO() treatment of iov_iter
  - bdev: Do not return EBUSY if bdev discard races with write
  - block: mark flush request as IDLE when it is really finished
  - blk-mq: mark flush request as IDLE in flush_end_io()
  - vhost_net: avoid tx queue stuck when sendmsg fails
  - iommu/vt-d: Add support for ACPI device use physical, node as pci device to establish identity mapping
  - io_uring: NULL files dereference by SQPOLL
  - vgacon: remove software scrollback support
  - block: dio: ensure the memory order between bi_private and bi_css
  - ext4: fix memory leak in ext4_fill_super
  - RDMA/ucma: Rework ucma_migrate_id() to avoid races with destroy
  - RDMA/ucma: Add missing locking around rdma_leave_multicast()
  - RDMA/ucma: Fix locking for ctx->events_reported
  - RDMA/ucma: Put a lock around every call to the rdma_cm layer
  - mm/memory-failure: make sure wait for page writeback in memory_failure
  - can: bcm: fix infoleak in struct bcm_msg_head
  - blk-wbt: make sure throttle is enabled properly
  - blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled()
  - ext4: stop return ENOSPC from ext4_issue_zeroout
  - dm btree remove: assign new_root only when removal succeeds
  - block: call bdput() to avoid memleak
  - scsi: remove unused kobj map for sd devie to avoid memleak
  - tools build: Check if gettid() is available before providing helper
  - tools build feature: Check if eventfd() is available
  - tools build feature: Check if get_current_dir_name() is available
  - perf tools: Use - bpf: move new add member to the end of the struct bpf_prog_aux


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2107.5.0.0098
changelog:
  - mm: vmalloc: prevent use after free in _vm_unmap_aliases
  - PCI/sysfs: Take reference on device to be removed
  - seq_file: disallow extremely large seq buffer allocations
  - ARM: footbridge: remove personal server platform
  - mm: slab: fix kmem_cache_create failed when sysfs node not destroyed
  - ARM: ensure the signal page contains defined contents
  - nvme-pci: use atomic bitops to mark a queue enabled
  - nvme: check the PRINFO bit before deciding the host buffer length
  - nvme: fix compat address handling in several ioctls
  - nvme-core: make implicit seed truncation explicit
  - nvme-core: don't use NVME_NSID_ALL for command effects and supported log
  - nvme-pci: fix NULL req in completion handler
  - nvme-pci: cancel nvme device request before disabling
  - nvme: copy MTFA field from identify controller
  - nvme-pci: Unblock reset_work on IO failure
  - nvme-pci: Don't disable on timeout in reset state
  - nvme-pci: Fix controller freeze wait disabling
  - block: error out if blk_get_queue() failed in blk_init_rl()


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2108.1.0.0099
changelog:
  - bcache: always record start time of a sample
  - bcache: do not collect data insert info created by write_moving
  - tcp_comp: open configs for tcp compression
  - tcp_comp: implement recvmsg for tcp compression
  - tcp_comp: implement sendmsg for tcp compression
  - tcp_comp: add stub proto ops for tcp compression socket
  - tcp_comp: allow ignore local tcp connections
  - tcp_comp: only enable compression for give server ports
  - tcp_comp: add sysctl for enable/disable compression
  - tcp_comp: add init and cleanup hook for compression
  - tcp_comp: add tcp comp option to SYN and SYN-ACK
  - tcp_comp: add Kconfig for tcp payload compression
  - tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop.
  - proc: Avoid mixing integer types in mem_rw()
  - net: sched: cls_api: Fix the the wrong parameter
  - sctp: update active_key for asoc when old key is being replaced
  - nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING
  - net/sched: act_skbmod: Skip non-Ethernet packets
  - net/tcp_fastopen: fix data races around tfo_active_disable_stamp
  - scsi: target: Fix protect handling in WRITE SAME(32)
  - scsi: iscsi: Fix iface sysfs attr detection
  - nvme-pci: do not call nvme_dev_remove_admin from nvme_remove
  - ipv6: fix 'disable_policy' for fwd packets
  - net: ip_tunnel: fix mtu calculation for ETHER tunnel devices
  - udp: annotate data races around unix_sk(sk)->gso_size
  - ipv6: tcp: drop silly ICMPv6 packet too big messages
  - tcp: annotate data races around tp->mtu_info
  - dma-buf/sync_file: Don't leak fences on merge failure
  - net: validate lwtstate->data before returning from skb_tunnel_info()
  - net: send SYNACK packet with accepted fwmark
  - net: bridge: sync fdb to new unicast-filtering ports
  - netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo
  - dm writecache: fix writing beyond end of underlying device when shrinking
  - dm writecache: return the exact table values that were set
  - dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath
  - dm writecache: fix data corruption when reloading the target
  - dm verity fec: fix hash block number in verity_fec_decode
  - sched/fair: Fix CFS bandwidth hrtimer expiry type
  - scsi: libfc: Fix array index out of bound exception
  - scsi: scsi_dh_alua: Fix signedness bug in alua_rtpg()
  - net: bridge: multicast: fix PIM hello router port marking race
  - NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times
  - virtio_net: move tx vq operation under tx queue lock
  - x86/fpu: Limit xstate copy size in xstateregs_set()
  - nfs: fix acl memory leak of posix_acl_create()
  - NFSv4: Initialise connection to the server in nfs4_alloc_client()
  - PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun
  - virtio_console: Assure used length from device is limited
  - virtio_net: Fix error handling in virtnet_restore()
  - virtio-blk: Fix memory leak among suspend/resume procedure
  - NFS: nfs_find_open_context() may only select open files
  - lib/decompress_unlz4.c: correctly handle zero-padding around initrds.
  - i2c: core: Disable client irq on reboot/shutdown
  - scsi: qedi: Fix null ref during abort handling
  - scsi: iscsi: Fix shost->max_id use
  - scsi: iscsi: Add iscsi_cls_conn refcount helpers
  - scsi: scsi_dh_alua: Check for negative result value
  - tracing: Do not reference char * as a string in histograms
  - scsi: core: Fix bad pointer dereference when ehandler kthread is invalid
  - seq_buf: Fix overflow in seq_buf_putmem_hex()
  - ipmi/watchdog: Stop watchdog timer when the current action is 'none'
  - net: ip: avoid OOM kills with large UDP sends over loopback
  - vsock: notify server to shutdown when client has pending signal
  - xfrm: Fix error reporting in xfrm_state_construct.
  - virtio_net: Remove BUG() to avoid machine dead
  - dm space maps: don't reset space map allocation cursor when committing
  - ipv6: use prandom_u32() for ID generation
  - mm/huge_memory.c: don't discard hugepage if other processes are mapping it
  - vfio/pci: Handle concurrent vma faults
  - vfio-pci: Use io_remap_pfn_range() for PCI IO memory
  - writeback: fix obtain a reference to a freeing memcg css
  - ipv6: fix out-of-bound access in ip6_parse_tlv()
  - bpf: Do not change gso_size during bpf_skb_change_proto()
  - ipv6: exthdrs: do not blindly use init_net
  - net/ipv4: swap flow ports when validating source
  - vxlan: add missing rcu_read_lock() in neigh_reduce()
  - pkt_sched: sch_qfq: fix qfq_change_class() error path
  - netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols
  - netfilter: nft_osf: check for TCP packet before further processing
  - netfilter: nft_exthdr: check for IPv6 packet before further processing
  - netlabel: Fix memory leak in netlbl_mgmt_add_common
  - ACPI: sysfs: Fix a buffer overrun problem with description_show()
  - evm: fix writing <securityfs>/evm overflow
  - lib: vsprintf: Fix handling of number field widths in vsscanf
  - ACPI: processor idle: Fix up C-state latency if not ordered
  - fuse: check connected before queueing on fpq->io
  - evm: Refuse EVM_ALLOW_METADATA_WRITES only if an HMAC key is loaded
  - evm: Execute evm_inode_init_security() only when an HMAC key is loaded
  - seq_buf: Make trace_seq_putmem_hex() support data longer than 8
  - ext4: use ext4_grp_locked_error in mb_find_extent
  - ext4: fix avefreec in find_group_orlov
  - ext4: remove check for zero nr_to_scan in ext4_es_scan()
  - ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit
  - ext4: return error code when ext4_fill_flex_info() fails
  - ext4: fix kernel infoleak via ext4_extent_header
  - iov_iter_fault_in_readable() should do nothing in xarray case
  - scsi: core: Retry I/O for Notify (Enable Spinup) Required error
  - kthread: prevent deadlock when kthread_mod_delayed_work() races with kthread_cancel_delayed_work_sync()
  - kthread_worker: split code for canceling the delayed work timer
  - scsi: sr: Return appropriate error code when disk is ejected
  - mm, futex: fix shared futex pgoff on shmem huge page
  - mm/thp: another PVMW_SYNC fix in page_vma_mapped_walk()
  - mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes
  - mm: page_vma_mapped_walk(): get vma_address_end() earlier
  - mm: page_vma_mapped_walk(): use goto instead of while (1)
  - mm: page_vma_mapped_walk(): add a level of indentation
  - mm: page_vma_mapped_walk(): crossing page table boundary
  - mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block
  - mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd
  - mm: page_vma_mapped_walk(): settle PageHuge on entry
  - mm: page_vma_mapped_walk(): use page for pvmw->page
  - mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split
  - mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page()
  - mm/thp: fix page_address_in_vma() on file THP tails
  - mm/thp: fix vma_address() if virtual address below file offset
  - mm/thp: try_to_unmap() use TTU_SYNC for safe splitting
  - mm/thp: make is_huge_zero_pmd() safe and quicker
  - mm/thp: fix __split_huge_pmd_locked() on shmem migration entry
  - mm/rmap: use page_not_mapped in try_to_unmap()
  - mm/rmap: remove unneeded semicolon in page_not_mapped()
  - mm: add VM_WARN_ON_ONCE_PAGE() macro
  - sctp: add param size validation for SCTP_PARAM_SET_PRIMARY
  - sctp: validate chunk size in __rcv_asconf_lookup
  - stop_machine: Avoid potential race behaviour
  - KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow
  - can: raw: fix raw_rcv panic for sock UAF
  - mm/page_isolation: do not isolate the max order page
  - mm/zswap: fix passing zero to 'PTR_ERR' warning
  - mm/page_alloc: speed up the iteration of max_order
  - mm: hugetlb: fix type of delta parameter and related local variables in gather_surplus_pages()
  - mm/vmalloc.c:__vmalloc_area_node(): avoid 32-bit overflow
  - sctp: add size validation when walking chunks
  - sctp: validate from_addr_param return
  - jbd2: fix kabi broken in struct journal_s
  - ext4: inline jbd2_journal_[un]register_shrinker()
  - jbd2: export jbd2_journal_[un]register_shrinker()
  - fs: remove bdev_try_to_free_page callback
  - ext4: remove bdev_try_to_free_page() callback
  - jbd2: simplify journal_clean_one_cp_list()
  - jbd2,ext4: add a shrinker to release checkpointed buffers
  - jbd2: remove redundant buffer io error checks
  - jbd2: don't abort the journal when freeing buffers
  - jbd2: ensure abort the journal if detect IO error when writing original buffer back
  - jbd2: remove the out label in __jbd2_journal_remove_checkpoint()
  - mm: vmscan: use a new flag to indicate shrinker is registered
  - Revert "jbd2: remove the out label in __jbd2_journal_remove_checkpoint()"
  - Revert "jbd2: ensure abort the journal if detect IO error when writing original buffer back"
  - Revert "jbd2: fix kabi broken in struct journal_s"
  - Revert "jbd2: don't abort the journal when freeing buffers"
  - mm/vmscan: add drop_caches_loop_limit to break loop in drop_slab_node
  - mm/vmscan: fix infinite loop in drop_slab_node
  - userswap: add a kernel parameter to enable userswap
  - userfaultfd: fix BUG_ON() in userfaultfd_release()
  - kprobes: Warn if the kprobe is reregistered
  - Revert "kretprobe: check re-registration of the same kretprobe earlier"


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2108.4.0.0100
changelog:
  - openeuler_defconfig: Enable ARCH_PHYTIUM and ARM_GIC_PHYTIUM_2500
  - config: Enable Phytium FT-2500 support configs for hulk_defconfig
  - irqchip: phytium-2500: Add interrupt controller driver
  - mm/vmscan: setup drop_caches_loop_limit in cmdline
  - mm/memcg: optimize memory.numa_stat like memory.stat
  - livepatch: Fix crash when access the global variable in hook
  - timer: Use hlist_unhashed_lockless() in timer_pending()
  - list: Add hlist_unhashed_lockless()
  - config: Enable CONFIG_GPIO_HISI by default
  - gpio: gpio-hisi: Add HiSilicon GPIO support
  - config: Enable CONFIG_I2C_HISI by default
  - i2c: add support for HiSilicon I2C controller
  - i2c: core: add api to provide frequency mode strings
  - i2c: core: add managed function for adding i2c adapters
  - blk: reuse lookup_sem to serialize partition operations
  - Revert "block: take bd_mutex around delete_partitions in del_gendisk"
  - Revert "block: avoid creating invalid symlink file for patitions"
  - Revert "block: call bdput() to avoid memleak"
  - sctp: fix return value check in __sctp_rcv_asconf_lookup
  - workqueue: fix UAF in pwq_unbound_release_workfn()
  - exit: Move preemption fixup up, move blocking operations down
  - Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl
  - Input: joydev - prevent potential read overflow in ioctl
  - srcu: Take early exit on memory-allocation failure
  - Revert "modpost: add read_text_file() and get_line() helpers"
  - Revert "modpost: use read_text_file() and get_line() for reading text files"
  - Revert "modpost: remove use of non-standard strsep() in HOSTCC code"
  - Revert "modpost: explain why we can't use strsep"
  - cpuidle: fix return type err in haltpoll_switch_governor
  - mm/slab: add naive detection of double free
  - mm/mempool: fix a data race in mempool_free()
  - mm/list_lru: fix a data race in list_lru_count_one
  - mm/cma.c: fix NULL pointer dereference when cma could not be activated
  - iommu/amd: Prevent NULL pointer dereference


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2108.5.0.0103
changelog:
  - iscsi: Fix KABI change for 'Fix conn use after free during resets'
  - iscsi: alloc iscsi_cls_session with iscsi_cls_session_warpper
  - iscsi: introduce iscsi_cls_session_warapper and helper
  - scsi: iscsi: Fix conn use after free during resets
  - scsi: sr: Return correct event when media event code is 3
  - net: xilinx_emaclite: Do not print real IOMEM pointer
  - sctp: move the active_key update after sh_keys is added
  - usb: max-3421: Prevent corruption of freed memory
  - net: ll_temac: Fix bug causing buffer descriptor overrun
  - tcp_comp: Avoiding the null pointer problem of ctx in comp_stream_read
  - nbd: add the check to prevent overflow in __nbd_ioctl()
  - ext4: fix potential uninitialized access to retval in kmmpd
  - blk-mq: fix kabi broken by "blk-mq: fix hang caused by freeze/unfreeze sequence"
  - blk-mq: fix hang caused by freeze/unfreeze sequence
  - config: Enable CONFIG_UCE_KERNEL_RECOVERY by default
  - EDAC/ghes: Remove intermediate buffer pvt->detail_location
  - USB: fix some clerical mistakes
  - uce: pagecache reading scenario support kernel recovery
  - uce: cow scenario support kernel recovery
  - selinux: fix NULL dereference in policydb_destroy()
  - livepatch/x86: Ignore return code of save_stack_trace_tsk_reliable()
  - mm,hwpoison: return -EHWPOISON to denote that the page has already been poisoned
  - mm/memory-failure: use a mutex to avoid memory_failure() races
  - arm64: mm: account for hotplug memory when randomizing the linear region


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2108.7.0.0105
changelog:
  - scsi: hisi_sas: Flush workqueue in hisi_sas_v3_remove()
  - nvme: force complete cancelled requests
  - blk-mq: blk-mq: provide forced completion method
  - ext4: flush s_error_work before journal destroy in ext4_fill_super
  - Revert "net: make get_net_ns return error if NET_NS is disabled"
  - kthread: Fix PF_KTHREAD vs to_kthread() race
  - sched/debug: Fix 'sched_debug_lock' undeclared error
  - Remove MODULE_ALIAS() calls that take undefined macro
  - scripts/dtc: Remove redundant YYLOC global declaration
  - x86/boot/compressed: Don't declare __force_order in kaslr_64.c
  - usb: hso: fix error handling code of hso_create_net_device
  - hso: fix bailout in error case of probe


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2108.8.0.0106
changelog:
  - bpf: Fix leakage due to insufficient speculative store bypass mitigation
  - bpf: Introduce BPF nospec instruction for mitigating Spectre v4
  - bpf: track spill/fill of constants
  - bpf/verifier: per-register parent pointers
  - blk-mq: clear active_queues before clearing BLK_MQ_F_TAG_QUEUE_SHARED


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2108.9.0.0107
changelog:
  - tcp_comp: Fix comp_read_size return value
  - virtio-blk: Add validation for block size in config space
  - blk-mq: fix divide by zero crash in tg_may_dispatch()
  - mm, vmscan: guarantee drop_slab_node() termination
  - jump_label: skip resource release if jump label is not relocated
  - ext4: prevent getting empty inode buffer
  - ext4: move ext4_fill_raw_inode() related functions before __ext4_get_inode_loc()
  - ext4: factor out ext4_fill_raw_inode()
  - ext4: make the updating inode data procedure atomic
  - KVM: X86: MMU: Use the correct inherited permissions to get shadow page
  - x86/config: Enable CONFIG_USERSWAP for openeuler_defconfig
  - ext4: fix panic when mount failed with parallel flush_stashed_error_work
  - device core: Consolidate locking and unlocking of parent and device
  - Revert "ext4: flush s_error_work before journal destroy in ext4_fill_super"
  - ext2: Strengthen xattr block checks
  - ext2: Merge loops in ext2_xattr_set()
  - ext2: introduce helper for xattr entry validation
  - mm: rmap: explicitly reset vma->anon_vma in unlink_anon_vmas()


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2109.1.0.0108
changelog:
  - iommu: smmuv2: Using the SMMU_BYPASS_DEV to bypass SMMU for some SoCs
  - iommu: dev_bypass: cleanup dev bypass code
  - arm64: phytium: using MIDR_PHYTIUM_FT2000PLUS instead of ARM_CPU_IMP_PHYTIUM
  - arm64: Add MIDR encoding for PHYTIUM CPUs
  - arm64: Add MIDR encoding for HiSilicon Taishan CPUs
  - sched: Fix sched_fork() access an invalid sched_task_group
  - KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (CVE-2021-3653)
  - KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656)
  - Bluetooth: switch to lock_sock in SCO
  - Bluetooth: avoid circular locks in sco_sock_connect
  - Bluetooth: schedule SCO timeouts with delayed_work
  - Bluetooth: defer cleanup of resources in hci_unregister_dev()


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2109.2.0.0109
changelog:
  - cpuidle: menu: Avoid computations when result will be discarded
  - virtio_blk: fix handling single range discard request
  - virtio_blk: add discard and write zeroes support
  - iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK
  - page_alloc: consider highatomic reserve in watermark fast
  - mm/filemap.c: fix a data race in filemap_fault()
  - scsi/hifc: Fix memory leakage bug
  - RDMA/hns: Fix wrong timer context buffer page size
  - RDMA/hns: Bugfix for posting multiple srq work request
  - RDMA/hns: Fix 0-length sge calculation error
  - RDMA/hns: Fix configuration of ack_req_freq in QPC
  - RDMA/hns: Add check for the validity of sl configuration
  - RDMA/hns: Fix bug during CMDQ initialization
  - RDMA/hns: Fixed wrong judgments in the goto branch
  - RDMA/hns: Bugfix for checking whether the srq is full when post wr
  - RDMA/hns: Fix wrong parameters when initial mtt of srq->idx_que
  - RDMA/hns: Force rewrite inline flag of WQE
  - RDMA/hns: Fix missing assignment of max_inline_data
  - RDMA/hns: Avoid enabling RQ inline on UD
  - RDMA/hns: Support to query firmware version
  - RDMA/hns: Force srq_limit to 0 when creating SRQ
  - RDMA/hns: Add interception for resizing SRQs
  - RDMA/hns: Fix an cmd queue issue when resetting


author: Cheng Jian <cj.chengjian@huawei.com> - 4.19.90-2109.5.0.0110
changelog:
  - nvme-pci: Use u32 for nvme_dev.q_depth and nvme_queue.q_depth
  - nvme-pci: use unsigned for io queue depth
  - net: hns3: update hns3 version to 21.9.2
  - net: hns3: the pointer is cast to another pointer in a different type, which is incompatible.
  - net: hns3: cleanup for some print type miss match and blank lines
  - net: hns3: remove tc enable checking
  - net: hns3: Constify static structs
  - net: hns3: fix kernel crash when unload VF while it is being reset
  - net: hns3: fix memory override when bd_num is bigger than the ring size
  - net: hns3: pad the short tunnel frame before sending to hardware
  - net: hns3: check the return of skb_checksum_help()
  - net: hns3: add 'QoS' support for port based VLAN configuration
  - net: hns3: remove unused parameter from hclge_set_vf_vlan_common()
  - net: hns3: disable port VLAN filter when support function level VLAN filter control
  - net: hns3: remove redundant param mbx_event_pending
  - net: hns3: remove the useless debugfs file node cmd
  - net: hns3: fix get wrong pfc_en when query PFC configuration
  - net: hns3: fix mixed flag HCLGE_FLAG_MQPRIO_ENABLE and HCLGE_FLAG_DCB_ENABLE
  - net: hns3: add support for tc mqprio offload
  - net: hns3: add debugfs support for vlan configuration
  - net: hns3: add support for VF modify VLAN filter state
  - net: hns3: add query basic info support for VF
  - net: hns3: add support for modify VLAN filter state
  - Revert: net: hns3: adds support for extended VLAN mode and 'QOS' in vlan 802.1Q protocol.
  - net: hns3: change the method of getting cmd index in debugfs
  - net: hns3: refactor dump mac tbl of debugfs
  - net: hns3: add support for dumping MAC umv counter in debugfs
  - net: hns3: refactor dump serv info of debugfs
  - net: hns3: refactor dump mac tnl status of debugfs
  - net: hns3: refactor dump qs shaper of debugfs
  - net: hns3: refactor dump qos buf cfg of debugfs
  - net: hns3: split out hclge_dbg_dump_qos_buf_cfg()
  - net: hns3: refactor dump qos pri map of debugfs
  - net: hns3: refactor dump qos pause cfg of debugfs
  - net: hns3: refactor dump tc of debugfs
  - net: hns3: refactor dump tm of debugfs
  - net: hns3: refactor dump tm map of debugfs
  - net: hns3: refactor dump fd tcam of debugfs
  - net: hns3: refactor queue info of debugfs
  - net: hns3: refactor queue map of debugfs
  - net: hns3: refactor dump reg dcb info of debugfs
  - net: hns3: refactor dump reg of debugfs
  - net: hns3: Constify static structs
  - net: hns3: refactor dump ncl config of debugfs
  - net: hns3: refactor dump m7 info of debugfs
  - net: hns3: refactor dump reset info of debugfs
  - net: hns3: refactor dump intr of debugfs
  - net: hns3: refactor dump loopback of debugfs
  - net: hns3: refactor dump mng tbl of debugfs
  - net: hns3: refactor dump mac list of debugfs
  - net: hns3: refactor dump bd info of debugfs
  - net: hns3: refactor the debugfs process
  - net: hns3: add debugfs support for tm priority and qset info
  - net: hns3: add interfaces to query information of tm priority/qset
  - net: hns3: change the value of the SEPARATOR_VALUE macro in hclgevf_main.c
  - net: hns3: fix for vxlan gpe tx checksum bug
  - net: hns3: Fix for geneve tx checksum bug
  - net: hns3: refine the struct hane3_tc_info
  - net: hns3: VF not request link status when PF support push link status feature
  - net: hns3: remove a duplicate pf reset counting
  - net: hns3: remediate a potential overflow risk of bd_num_list
  - net: hns3: fix query vlan mask value error for flow director
  - net: hns3: fix error mask definition of flow director
  - net: hns3: cleanup for endian issue for VF RSS
  - net: hns3: fix incorrect handling of sctp6 rss tuple
  - net: hns3: refine function hclge_set_vf_vlan_cfg()
  - net: hns3: dump tqp enable status in debugfs
  - hisilicon/hns3: convert comma to semicolon
  - net: hns3: remove a misused pragma packed
  - net: hns3: add debugfs of dumping pf interrupt resources
  - net: hns3: Supply missing hclge_dcb.h include file
  - net: hns3: print out speed info when parsing speed fails
  - net: hns3: add a missing mutex destroy in hclge_init_ad_dev()
  - net: hns3: add a print for initializing CMDQ when reset pending
  - net: hns3: replace snprintf with scnprintf in hns3_update_strings
  - net: hns3: change affinity_mask to numa node range
  - net: hns3: change hclge/hclgevf workqueue to WQ_UNBOUND mode
  - tcp_comp: Del compressed_data and remaining_data from tcp_comp_context_rx
  - tcp_comp: Add dpkt to save decompressed skb
  - tcp_comp: Fix ZSTD_decompressStream failed
  - mm: downgrade the print level in do_shrink_slab
  - uio: introduce UIO_MEM_IOVA
  - mm/mempolicy.c: fix checking unmapped holes for mbind
  - mm/mempolicy.c: check range first in queue_pages_test_walk
  - net: qrtr: fix another OOB Read in qrtr_endpoint_post
  - net: qrtr: fix OOB Read in qrtr_endpoint_post
  - mm, slab, slub: stop taking cpu hotplug lock
  - mm, slab, slub: stop taking memory hotplug lock
  - mm, slub: stop freeing kmem_cache_node structures on node offline
  - kernel/hung_task.c: introduce sysctl to print all traces when a hung task is detected
  - vt_kdsetmode: extend console locking


author: liuzekun<liuzekun@huawei.com> - 18.09.0-102
changelog:
  - Type:bugfix
  - ID:NA
  - CVE:NA
  - SUG:restart
  - DESC:
  1.delete stale containerd object on start failure
  2.remove redundant word item
  3.delete event is not need to process
  4.stat process exit file when kill process dire
  5.sync cli vendor
  6.fix CVE-2020-13401
  7.do not add w to LDFLAGS
  8.add files in proc for mask
  9.fix docker load files leak
  10.do not sync if BYPAAS_SYNC is false
  11.fix panic on single character volumes
  12.fix stats memory usage display error
  13.add more messages for ops when device not found
  14.mask proc pin_memory


author: jingrui<jingrui@huawei.com> - 18.09.0-105
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:sync bugfix include
    1. fix image cleanup failed.
    2. cleanup load tmp files.
    3. kill residual container process.
    4. resume suspend dm device.
    5. dont kill containerd during dockerd starting.
    6. handle exit event for restore failed container.
    7. wait io with timeout when start failed.
    8. support hostname mirror registry.
    9. mask unused proc files.


author: xiadanni<xiadanni1@huawei.com> - 18.09.0-200
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:sync bugfix and bump version to 200, bugfix include
         1. fix execCommands leak in health-check.
         2. check containerd pid before kill it.


author: xiadanni<xiadanni1@huawei.com> - 18.09.0-201
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:Fix Access to remapped root allows privilege escalation to real root (CVE-2021-21284)


author: xiadanni<xiadanni1@huawei.com> - 18.09.0-202
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:prevent an invalid image from crashing docker daemon(CVE-2021-21285)


author: openEuler Buildteam <buildteam@openeuler.org> - 2.23.0-9
changelog:
  - fix CVE-2019-1348 CVE-2019-1349 CVE-2019-1350 CVE-2019-1351 CVE-2019-1352 
    CVE-2019-1353 CVE-2019-1354 CVE-2019-1387 CVE-2019-19604
    fix test error


author: gaihuiying <gaihuiying1@huawei.com> - 2.23.0-16
changelog:
  - Type:cves
  - ID:CVE-2020-11008
  - SUG:NA
  - DESC:fix CVE-2020-11008
         credential: detect unrepresentable values when parsin urls
         fsck: detect gitmodules URLs with embedded newlines


author: yangzhuangzhuang <yangzhuangzhuang1@huawei.com> - 2.27.0-2
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:Resolved the problem that a failure message is displayed when the git-daemon package is uninstalled


author: panxiaohe <panxiaohe@huawei.com> - 2.27.0-4
changelog:
  - Fix CVE-2021-29468
  - Add gcc and gettext to BuildRequires
    - necessary for building and msgfmt command


author: openEuler Buildteam <buildteam@openeuler.org> - 243-10
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:fix capsh drop but ping success and udev ignore error caused by device disconnection


author: openEuler Buildteam <buildteam@openeuler.org> - 243-13
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:modify kvm authority 0660 and fix dbus daemon restart need 90s after killed


author: openEuler Buildteam <buildteam@openeuler.org> - 243-16
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:add 0010-1603-udev-add-actions-while-rename-netif-failed.patch


author: openEuler Buildteam <buildteam@openeuler.org> - 243-17
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:fix CVE-2020-1712 and close journal files that were deleted by journald
         before we've setup inotify watch and bump pim_max to 80%


author: openEuler Buildteam <buildteam@openeuler.org> - 243-22
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:solve the build failure caused by the upgrade of libseccomp


author: openEuler Buildteam <buildteam@openeuler.org> - 243-24
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:fix double free in macsec_receive_channel_free() and 
         fix crash in network L2TP


author: openEuler Buildteam <buildteam@openeuler.org> - 243-27
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:add elevator= kernel command line parameter and don't enable bfq
         by default


author: shenyangyang <shenyangyang4@huawei.com> - 243-29
changelog:
  - Type:enhancement
  - ID:NA
  - SUG:NA
  - DESC:revert don't enable systemd-journald-audit.socket by default
         that may cause reboot problem if update systemd with out dracut -f
         from LTS-20.03


author: fangxiuning <fangxiuning@huawei.com> - 243-33
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC: journald: enforce longer line length limit during "setup" phase of stream protocol


author: shenyangyang <shenyangyang4@huawei.com> - 243-35
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:change requires to openssl-libs as post scripts systemctl requires libssl.so.1.1


author: fangxiuning <fangxiuning@huawei.com> - 243-39
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:udevd: don't kill worker in manager_kill_worker when it's running


author: yangmingtai <yangmingtai@huawei.com> - 243-41
changelog:
  - Type:bugfix
  - ID:NA
  - SUG:NA
  - DESC:udevd: fix broken symbolic links when same link for different devices


