[PATCH 5.15 000/159] 5.15.145-rc1 review

From: Greg Kroah-Hartman
Date: Wed Dec 20 2023 - 11:16:55 EST


This is the start of the stable review cycle for the 5.15.145 release.
There are 159 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.

Responses should be made by Fri, 22 Dec 2023 16:08:59 +0000.
Anything received after that time might be too late.

The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.15.145-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.15.y
and the diffstat can be found below.

thanks,

greg k-h

-------------
Pseudo-Shortlog of commits:

Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Linux 5.15.145-rc1

Arnd Bergmann <arnd@xxxxxxxx>
kasan: disable kasan_non_canonical_hook() for HW tags

Francis Laniel <flaniel@xxxxxxxxxxxxxxxxxxx>
tracing/kprobes: Return EADDRNOTAVAIL when func matches several symbols

Amit Pundir <amit.pundir@xxxxxxxxxx>
Revert "drm/bridge: lt9611uxc: Switch to devm MIPI-DSI helpers"

Amit Pundir <amit.pundir@xxxxxxxxxx>
Revert "drm/bridge: lt9611uxc: Register and attach our DSI device at probe"

Amit Pundir <amit.pundir@xxxxxxxxxx>
Revert "drm/bridge: lt9611uxc: fix the race in the error path"

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: don't update ->op_state as OPLOCK_STATE_NONE on error

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: move setting SMB2_FLAGS_ASYNC_COMMAND and AsyncId

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: release interim response after sending status pending response

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: move oplock handling after unlock parent dir

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: separately allocate ci per dentry

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix possible deadlock in smb2_open

Zongmin Zhou <zhouzongmin@xxxxxxxxxx>
ksmbd: prevent memory leak on error return

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: handle malformed smb1 message

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix kernel-doc comment of ksmbd_vfs_kern_path_locked()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: no need to wait for binded connection termination at logoff

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add support for surrogate pair conversion

Kangjing Huang <huangkangjing@xxxxxxxxx>
ksmbd: fix missing RDMA-capable flag for IPoIB device in ksmbd_rdma_capable_netdev()

Marios Makassikis <mmakassikis@xxxxxxxxxx>
ksmbd: fix recursive locking in vfs helpers

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix kernel-doc comment of ksmbd_vfs_setxattr()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: reorganize ksmbd_iov_pin_rsp()

Cheng-Han Wu <hank20010209@xxxxxxxxx>
ksmbd: Remove unused field in ksmbd_user struct

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix potential double free on smb2_read_pipe() error path

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix Null pointer dereferences in ksmbd_update_fstate()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix wrong error response status by using set_smb2_rsp_status()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix race condition between tree conn lookup and disconnect

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix race condition from parallel smb2 lock requests

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix race condition from parallel smb2 logoff requests

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix race condition with fp

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix race condition between session lookup and expire

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: check iov vector index in ksmbd_conn_write()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: return invalid parameter error response if smb2 request is invalid

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix passing freed memory 'aux_payload_buf'

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove unneeded mark_inode_dirty in set_info_sec()

Steve French <stfrench@xxxxxxxxxxxxx>
ksmbd: remove experimental warning

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add missing calling smb2_set_err_rsp() on error

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix slub overflow in ksmbd_decode_ntlmssp_auth_blob()

Yang Li <yang.lee@xxxxxxxxxxxxxxxxx>
ksmbd: Fix one kernel-doc comment

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: reduce descriptor size if remaining bytes is less than request size

Atte Heikkilä <atteh.mailbox@xxxxxxxxx>
ksmbd: fix `force create mode' and `force directory mode'

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix wrong interim response on compound

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add support for read compound

Yang Yingliang <yangyingliang@xxxxxxxxxx>
ksmbd: switch to use kmemdup_nul() helper

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix out of bounds in init_smb2_rsp_hdr()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: validate session id and tree id in compound request

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: check if a mount point is crossed during path lookup

Wang Ming <machel@xxxxxxxx>
ksmbd: Fix unsigned expression compared with zero

Gustavo A. R. Silva <gustavoars@xxxxxxxxxx>
ksmbd: Replace one-element array with flexible-array member

Gustavo A. R. Silva <gustavoars@xxxxxxxxxx>
ksmbd: Use struct_size() helper in ksmbd_negotiate_smb_dialect()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add missing compound request handing in some commands

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix out of bounds read in smb2_sess_setup

Lu Hongfei <luhongfei@xxxxxxxx>
ksmbd: Replace the ternary conditional operator with min()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: use kvzalloc instead of kvmalloc

Lu Hongfei <luhongfei@xxxxxxxx>
ksmbd: Change the return value of ksmbd_vfs_query_maximal_access to void

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: return a literal instead of 'err' in ksmbd_vfs_kern_path_locked()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: use kzalloc() instead of __GFP_ZERO

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove unused ksmbd_tree_conn_share function

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add mnt_want_write to ksmbd vfs functions

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: validate smb request protocol id

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: check the validation of pdu_size in ksmbd_conn_handler_loop

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix posix_acls and acls dereferencing possible ERR_PTR()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix out-of-bound read in parse_lease_state()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix out-of-bound read in deassemble_neg_contexts()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: call putname after using the last component

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix UAF issue from opinfo->conn

Kuan-Ting Chen <h3xrabbit@xxxxxxxxx>
ksmbd: fix multiple out-of-bounds read during context decoding

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix uninitialized pointer read in smb2_create_link()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix uninitialized pointer read in ksmbd_vfs_rename()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix racy issue under cocurrent smb2 tree disconnect

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix racy issue from smb2 close and logoff with multichannel

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: block asynchronous requests when making a delay on session setup

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: destroy expired sessions

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix racy issue from session setup and logoff

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix racy issue from using ->d_parent and ->d_name

Al Viro <viro@xxxxxxxxxxxxxxxxxx>
fs: introduce lock_rename_child() helper

David Disseldorp <ddiss@xxxxxxx>
ksmbd: remove unused compression negotiate ctx packing

David Disseldorp <ddiss@xxxxxxx>
ksmbd: avoid duplicate negotiate ctx offset increments

David Disseldorp <ddiss@xxxxxxx>
ksmbd: set NegotiateContextCount once instead of every inc

David Disseldorp <ddiss@xxxxxxx>
ksmbd: avoid out of bounds access in decode_preauth_ctxt()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix slab-out-of-bounds in init_smb2_rsp_hdr

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: delete asynchronous work from list

Tom Rix <trix@xxxxxxxxxx>
ksmbd: remove unused is_char_allowed function

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix wrong signingkey creation when encryption is AES256

Hangyu Hua <hbh25y@xxxxxxxxx>
ksmbd: fix possible memory leak in smb2_lock()

Jiapeng Chong <jiapeng.chong@xxxxxxxxxxxxxxxxx>
ksmbd: Fix parameter name and comment mismatch

Colin Ian King <colin.i.king@xxxxxxxxx>
ksmbd: Fix spelling mistake "excceed" -> "exceeded"

Steve French <stfrench@xxxxxxxxxxxxx>
ksmbd: update Kconfig to note Kerberos support and fix indentation

Dawei Li <set_pte_at@xxxxxxxxxxx>
ksmbd: Remove duplicated codes

Dawei Li <set_pte_at@xxxxxxxxxxx>
ksmbd: fix typo, syncronous->synchronous

Dawei Li <set_pte_at@xxxxxxxxxxx>
ksmbd: Implements sess->rpc_handle_list as xarray

Dawei Li <set_pte_at@xxxxxxxxxxx>
ksmbd: Implements sess->ksmbd_chann_list as xarray

Marios Makassikis <mmakassikis@xxxxxxxxxx>
ksmbd: send proper error response in smb2_tree_connect()

ye xingchen <ye.xingchen@xxxxxxxxxx>
ksmbd: Convert to use sysfs_emit()/sysfs_emit_at() APIs

Marios Makassikis <mmakassikis@xxxxxxxxxx>
ksmbd: Fix resource leak in smb2_lock()

Jeff Layton <jlayton@xxxxxxxxxx>
ksmbd: use F_SETLK when unlocking a file

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: set SMB2_SESSION_FLAG_ENCRYPT_DATA when enforcing data encryption for this share

Gustavo A. R. Silva <gustavoars@xxxxxxxxxx>
ksmbd: replace one-element arrays with flexible-array members

Atte Heikkilä <atteh.mailbox@xxxxxxxxx>
ksmbd: validate share name from share config response

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: call ib_drain_qp when disconnected

Atte Heikkilä <atteh.mailbox@xxxxxxxxx>
ksmbd: make utf-8 file name comparison work in __caseless_lookup()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: hide socket error message when ipv6 config is disable

Tom Talpey <tom@xxxxxxxxxx>
ksmbd: reduce server smbdirect max send/receive segment sizes

Tom Talpey <tom@xxxxxxxxxx>
ksmbd: decrease the number of SMB3 smbdirect server SGEs

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: set NTLMSSP_NEGOTIATE_SEAL flag to challenge blob

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix encryption failure issue for session logoff response

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fill sids in SMB_FIND_FILE_POSIX_INFO response

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: set file permission mode to match Samba server posix extension behavior

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: change security id to the one samba used for posix extension

Atte Heikkilä <atteh.mailbox@xxxxxxxxx>
ksmbd: casefold utf-8 share names and fix ascii lowercase conversion

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove generic_fillattr use in smb2_open()

Al Viro <viro@xxxxxxxxxxxxxxxxxx>
ksmbd: constify struct path

Al Viro <viro@xxxxxxxxxxxxxxxxxx>
ksmbd: don't open-code %pD

Al Viro <viro@xxxxxxxxxxxxxxxxxx>
ksmbd: don't open-code file_path()

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: remove unnecessary generic_fillattr in smb2_open

Atte Heikkilä <atteh.mailbox@xxxxxxxxx>
ksmbd: request update to stale share config

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: use wait_event instead of schedule_timeout()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove unused ksmbd_share_configs_cleanup function

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: remove duplicate flag set in smb2_write

Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
ksmbd: smbd: Remove useless license text when SPDX-License-Identifier is already used

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: relax the count of sges required

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: fix connection dropped issue

Yang Li <yang.lee@xxxxxxxxxxxxxxxxx>
ksmbd: Fix some kernel-doc comments

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: fix wrong smbd max read/write size check

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: handle multiple Buffer descriptors

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: change the return value of get_sg_list

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: simplify tracking pending packets

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: introduce read/write credits for RDMA read/write

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: change prototypes of RDMA read/write related functions

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: validate length in smb2_write()

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove filename in ksmbd_file

Steve French <stfrench@xxxxxxxxxxxxx>
smb3: fix ksmbd bigendian bug in oplock break, and move its struct to smbfs_common

Jakob Koschel <jakobkoschel@xxxxxxxxx>
ksmbd: replace usage of found with dedicated list iterator variable

Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
ksmbd: Remove a redundant zeroing of memory

Steve French <stfrench@xxxxxxxxxxxxx>
ksmbd: shorten experimental warning on loading the module

Paulo Alcantara (SUSE) <pc@xxxxxx>
ksmbd: store fids as opaque u64 integers

Tobias Klauser <tklauser@xxxxxxxxxx>
ksmbd: use netif_is_bridge_port

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add support for key exchange

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: validate buffer descriptor structures

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: fix missing client's memory region invalidation

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: add smb-direct shutdown

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: change the default maximum read/write, receive size

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: create MR pool

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: smbd: call rdma_accept() under CM handler

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: set 445 port to smbdirect port by default

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: register ksmbd ib client with ib_register_client()

Yang Li <yang.lee@xxxxxxxxxxxxxxxxx>
ksmbd: Fix smb2_get_name() kernel-doc comment

Yang Li <yang.lee@xxxxxxxxxxxxxxxxx>
ksmbd: Delete an invalid argument description in smb2_populate_readdir_entry()

Yang Li <yang.lee@xxxxxxxxxxxxxxxxx>
ksmbd: Fix smb2_set_info_file() kernel-doc comment

Yang Li <yang.lee@xxxxxxxxxxxxxxxxx>
ksmbd: Fix buffer_check_err() kernel-doc comment

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: set both ipv4 and ipv6 in FSCTL_QUERY_NETWORK_INTERFACE_INFO

Marios Makassikis <mmakassikis@xxxxxxxxxx>
ksmbd: Remove unused fields from ksmbd_file struct definition

Marios Makassikis <mmakassikis@xxxxxxxxxx>
ksmbd: Remove unused parameter from smb2_get_name()

Hyunchul Lee <hyc.lee@xxxxxxxxx>
ksmbd: use oid registry functions to decode OIDs

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: change LeaseKey data type to u8 array

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove smb2_buf_length in smb2_transform_hdr

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove smb2_buf_length in smb2_hdr

Namjae Jeon <linkinjeon@xxxxxxxxxx>
ksmbd: remove md4 leftovers

Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
ksmbd: Remove redundant 'flush_workqueue()' calls

Ralph Boehme <slow@xxxxxxxxx>
ksmdb: use cmd helper variable in smb2_get_ksmbd_tcon()

Ralph Boehme <slow@xxxxxxxxx>
ksmbd: use ksmbd_req_buf_next() in ksmbd_verify_smb_message()


-------------

Diffstat:

Makefile | 4 +-
drivers/gpu/drm/bridge/lontium-lt9611uxc.c | 75 +-
fs/ksmbd/Kconfig | 11 +-
fs/ksmbd/asn1.c | 173 +--
fs/ksmbd/auth.c | 72 +-
fs/ksmbd/auth.h | 3 +-
fs/ksmbd/connection.c | 169 +--
fs/ksmbd/connection.h | 92 +-
fs/ksmbd/ksmbd_netlink.h | 7 +-
fs/ksmbd/ksmbd_work.c | 101 +-
fs/ksmbd/ksmbd_work.h | 40 +-
fs/ksmbd/mgmt/share_config.c | 56 +-
fs/ksmbd/mgmt/share_config.h | 36 +-
fs/ksmbd/mgmt/tree_connect.c | 78 +-
fs/ksmbd/mgmt/tree_connect.h | 15 +-
fs/ksmbd/mgmt/user_config.h | 1 -
fs/ksmbd/mgmt/user_session.c | 180 +--
fs/ksmbd/mgmt/user_session.h | 8 +-
fs/ksmbd/misc.c | 94 +-
fs/ksmbd/misc.h | 6 +-
fs/ksmbd/oplock.c | 256 ++--
fs/ksmbd/oplock.h | 4 -
fs/ksmbd/server.c | 54 +-
fs/ksmbd/smb2misc.c | 4 +-
fs/ksmbd/smb2ops.c | 10 +-
fs/ksmbd/smb2pdu.c | 2047 ++++++++++++++--------------
fs/ksmbd/smb2pdu.h | 83 +-
fs/ksmbd/smb_common.c | 176 ++-
fs/ksmbd/smb_common.h | 20 +-
fs/ksmbd/smbacl.c | 26 +-
fs/ksmbd/smbacl.h | 8 +-
fs/ksmbd/transport_ipc.c | 4 +-
fs/ksmbd/transport_rdma.c | 648 ++++++---
fs/ksmbd/transport_rdma.h | 6 +-
fs/ksmbd/transport_tcp.c | 9 +-
fs/ksmbd/unicode.c | 191 ++-
fs/ksmbd/unicode.h | 3 +-
fs/ksmbd/vfs.c | 677 ++++-----
fs/ksmbd/vfs.h | 56 +-
fs/ksmbd/vfs_cache.c | 72 +-
fs/ksmbd/vfs_cache.h | 26 +-
fs/namei.c | 125 +-
include/linux/kasan.h | 6 +-
include/linux/namei.h | 7 +
kernel/trace/trace_kprobe.c | 74 +
kernel/trace/trace_probe.h | 1 +
mm/kasan/report.c | 4 +-
47 files changed, 3279 insertions(+), 2539 deletions(-)