From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev, kernel test robot <lkp@intel.com>,
"Paulo Alcantara (Red Hat)" <pc@manguebit.com>,
Steve French <stfrench@microsoft.com>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.6 004/158] smb: client: guarantee refcounted children from parent session
Date: Tue, 23 Apr 2024 14:37:21 -0700 [thread overview]
Message-ID: <20240423213855.833476495@linuxfoundation.org> (raw)
In-Reply-To: <20240423213855.696477232@linuxfoundation.org>
6.6-stable review patch. If anyone has any objections, please let me know.
------------------
From: Paulo Alcantara <pc@manguebit.com>
[ Upstream commit 062a7f0ff46eb57aff526897bd2bebfdb1d3046a ]
Avoid potential use-after-free bugs when walking DFS referrals,
mounting and performing DFS failover by ensuring that all children
from parent @tcon->ses are also refcounted. They're all needed across
the entire DFS mount. Get rid of @tcon->dfs_ses_list while we're at
it, too.
Cc: stable@vger.kernel.org # 6.4+
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202404021527.ZlRkIxgv-lkp@intel.com/
Signed-off-by: Paulo Alcantara (Red Hat) <pc@manguebit.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/smb/client/cifsglob.h | 2 --
fs/smb/client/cifsproto.h | 20 +++++++--------
fs/smb/client/connect.c | 25 +++++++++++++++----
fs/smb/client/dfs.c | 51 ++++++++++++++++++---------------------
fs/smb/client/dfs.h | 33 ++++++++++++++++---------
fs/smb/client/dfs_cache.c | 11 +--------
fs/smb/client/misc.c | 6 -----
7 files changed, 76 insertions(+), 72 deletions(-)
diff --git a/fs/smb/client/cifsglob.h b/fs/smb/client/cifsglob.h
index 01d7031194671..68fd61a564089 100644
--- a/fs/smb/client/cifsglob.h
+++ b/fs/smb/client/cifsglob.h
@@ -1253,7 +1253,6 @@ struct cifs_tcon {
struct cached_fids *cfids;
/* BB add field for back pointer to sb struct(s)? */
#ifdef CONFIG_CIFS_DFS_UPCALL
- struct list_head dfs_ses_list;
struct delayed_work dfs_cache_work;
#endif
struct delayed_work query_interfaces; /* query interfaces workqueue job */
@@ -1775,7 +1774,6 @@ struct cifs_mount_ctx {
struct TCP_Server_Info *server;
struct cifs_ses *ses;
struct cifs_tcon *tcon;
- struct list_head dfs_ses_list;
};
static inline void __free_dfs_info_param(struct dfs_info3_param *param)
diff --git a/fs/smb/client/cifsproto.h b/fs/smb/client/cifsproto.h
index ed257612bf0bc..1bdad33580b57 100644
--- a/fs/smb/client/cifsproto.h
+++ b/fs/smb/client/cifsproto.h
@@ -716,31 +716,31 @@ struct super_block *cifs_get_tcon_super(struct cifs_tcon *tcon);
void cifs_put_tcon_super(struct super_block *sb);
int cifs_wait_for_server_reconnect(struct TCP_Server_Info *server, bool retry);
-/* Put references of @ses and @ses->dfs_root_ses */
+/* Put references of @ses and its children */
static inline void cifs_put_smb_ses(struct cifs_ses *ses)
{
- struct cifs_ses *rses = ses->dfs_root_ses;
+ struct cifs_ses *next;
- __cifs_put_smb_ses(ses);
- if (rses)
- __cifs_put_smb_ses(rses);
+ do {
+ next = ses->dfs_root_ses;
+ __cifs_put_smb_ses(ses);
+ } while ((ses = next));
}
-/* Get an active reference of @ses and @ses->dfs_root_ses.
+/* Get an active reference of @ses and its children.
*
* NOTE: make sure to call this function when incrementing reference count of
* @ses to ensure that any DFS root session attached to it (@ses->dfs_root_ses)
* will also get its reference count incremented.
*
- * cifs_put_smb_ses() will put both references, so call it when you're done.
+ * cifs_put_smb_ses() will put all references, so call it when you're done.
*/
static inline void cifs_smb_ses_inc_refcount(struct cifs_ses *ses)
{
lockdep_assert_held(&cifs_tcp_ses_lock);
- ses->ses_count++;
- if (ses->dfs_root_ses)
- ses->dfs_root_ses->ses_count++;
+ for (; ses; ses = ses->dfs_root_ses)
+ ses->ses_count++;
}
static inline bool dfs_src_pathname_equal(const char *s1, const char *s2)
diff --git a/fs/smb/client/connect.c b/fs/smb/client/connect.c
index ae35855966afd..c5705de7f9de2 100644
--- a/fs/smb/client/connect.c
+++ b/fs/smb/client/connect.c
@@ -1863,6 +1863,9 @@ static int match_session(struct cifs_ses *ses, struct smb3_fs_context *ctx)
ctx->sectype != ses->sectype)
return 0;
+ if (ctx->dfs_root_ses != ses->dfs_root_ses)
+ return 0;
+
/*
* If an existing session is limited to less channels than
* requested, it should not be reused
@@ -2355,9 +2358,9 @@ cifs_get_smb_ses(struct TCP_Server_Info *server, struct smb3_fs_context *ctx)
* need to lock before changing something in the session.
*/
spin_lock(&cifs_tcp_ses_lock);
+ if (ctx->dfs_root_ses)
+ cifs_smb_ses_inc_refcount(ctx->dfs_root_ses);
ses->dfs_root_ses = ctx->dfs_root_ses;
- if (ses->dfs_root_ses)
- ses->dfs_root_ses->ses_count++;
list_add(&ses->smb_ses_list, &server->smb_ses_list);
spin_unlock(&cifs_tcp_ses_lock);
@@ -3301,6 +3304,9 @@ void cifs_mount_put_conns(struct cifs_mount_ctx *mnt_ctx)
cifs_put_smb_ses(mnt_ctx->ses);
else if (mnt_ctx->server)
cifs_put_tcp_session(mnt_ctx->server, 0);
+ mnt_ctx->ses = NULL;
+ mnt_ctx->tcon = NULL;
+ mnt_ctx->server = NULL;
mnt_ctx->cifs_sb->mnt_cifs_flags &= ~CIFS_MOUNT_POSIX_PATHS;
free_xid(mnt_ctx->xid);
}
@@ -3579,8 +3585,6 @@ int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
bool isdfs;
int rc;
- INIT_LIST_HEAD(&mnt_ctx.dfs_ses_list);
-
rc = dfs_mount_share(&mnt_ctx, &isdfs);
if (rc)
goto error;
@@ -3611,7 +3615,6 @@ int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
return rc;
error:
- dfs_put_root_smb_sessions(&mnt_ctx.dfs_ses_list);
cifs_mount_put_conns(&mnt_ctx);
return rc;
}
@@ -3626,6 +3629,18 @@ int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
goto error;
rc = cifs_mount_get_tcon(&mnt_ctx);
+ if (!rc) {
+ /*
+ * Prevent superblock from being created with any missing
+ * connections.
+ */
+ if (WARN_ON(!mnt_ctx.server))
+ rc = -EHOSTDOWN;
+ else if (WARN_ON(!mnt_ctx.ses))
+ rc = -EACCES;
+ else if (WARN_ON(!mnt_ctx.tcon))
+ rc = -ENOENT;
+ }
if (rc)
goto error;
diff --git a/fs/smb/client/dfs.c b/fs/smb/client/dfs.c
index 449c59830039b..3ec965547e3d4 100644
--- a/fs/smb/client/dfs.c
+++ b/fs/smb/client/dfs.c
@@ -66,33 +66,20 @@ static int get_session(struct cifs_mount_ctx *mnt_ctx, const char *full_path)
}
/*
- * Track individual DFS referral servers used by new DFS mount.
- *
- * On success, their lifetime will be shared by final tcon (dfs_ses_list).
- * Otherwise, they will be put by dfs_put_root_smb_sessions() in cifs_mount().
+ * Get an active reference of @ses so that next call to cifs_put_tcon() won't
+ * release it as any new DFS referrals must go through its IPC tcon.
*/
-static int add_root_smb_session(struct cifs_mount_ctx *mnt_ctx)
+static void add_root_smb_session(struct cifs_mount_ctx *mnt_ctx)
{
struct smb3_fs_context *ctx = mnt_ctx->fs_ctx;
- struct dfs_root_ses *root_ses;
struct cifs_ses *ses = mnt_ctx->ses;
if (ses) {
- root_ses = kmalloc(sizeof(*root_ses), GFP_KERNEL);
- if (!root_ses)
- return -ENOMEM;
-
- INIT_LIST_HEAD(&root_ses->list);
-
spin_lock(&cifs_tcp_ses_lock);
cifs_smb_ses_inc_refcount(ses);
spin_unlock(&cifs_tcp_ses_lock);
- root_ses->ses = ses;
- list_add_tail(&root_ses->list, &mnt_ctx->dfs_ses_list);
}
- /* Select new DFS referral server so that new referrals go through it */
ctx->dfs_root_ses = ses;
- return 0;
}
static inline int parse_dfs_target(struct smb3_fs_context *ctx,
@@ -185,11 +172,8 @@ static int __dfs_referral_walk(struct cifs_mount_ctx *mnt_ctx,
continue;
}
- if (is_refsrv) {
- rc = add_root_smb_session(mnt_ctx);
- if (rc)
- goto out;
- }
+ if (is_refsrv)
+ add_root_smb_session(mnt_ctx);
rc = ref_walk_advance(rw);
if (!rc) {
@@ -232,6 +216,7 @@ static int __dfs_mount_share(struct cifs_mount_ctx *mnt_ctx)
struct smb3_fs_context *ctx = mnt_ctx->fs_ctx;
struct cifs_tcon *tcon;
char *origin_fullpath;
+ bool new_tcon = true;
int rc;
origin_fullpath = dfs_get_path(cifs_sb, ctx->source);
@@ -239,6 +224,18 @@ static int __dfs_mount_share(struct cifs_mount_ctx *mnt_ctx)
return PTR_ERR(origin_fullpath);
rc = dfs_referral_walk(mnt_ctx);
+ if (!rc) {
+ /*
+ * Prevent superblock from being created with any missing
+ * connections.
+ */
+ if (WARN_ON(!mnt_ctx->server))
+ rc = -EHOSTDOWN;
+ else if (WARN_ON(!mnt_ctx->ses))
+ rc = -EACCES;
+ else if (WARN_ON(!mnt_ctx->tcon))
+ rc = -ENOENT;
+ }
if (rc)
goto out;
@@ -247,15 +244,14 @@ static int __dfs_mount_share(struct cifs_mount_ctx *mnt_ctx)
if (!tcon->origin_fullpath) {
tcon->origin_fullpath = origin_fullpath;
origin_fullpath = NULL;
+ } else {
+ new_tcon = false;
}
spin_unlock(&tcon->tc_lock);
- if (list_empty(&tcon->dfs_ses_list)) {
- list_replace_init(&mnt_ctx->dfs_ses_list, &tcon->dfs_ses_list);
+ if (new_tcon) {
queue_delayed_work(dfscache_wq, &tcon->dfs_cache_work,
dfs_cache_get_ttl() * HZ);
- } else {
- dfs_put_root_smb_sessions(&mnt_ctx->dfs_ses_list);
}
out:
@@ -298,7 +294,6 @@ int dfs_mount_share(struct cifs_mount_ctx *mnt_ctx, bool *isdfs)
if (rc)
return rc;
- ctx->dfs_root_ses = mnt_ctx->ses;
/*
* If called with 'nodfs' mount option, then skip DFS resolving. Otherwise unconditionally
* try to get an DFS referral (even cached) to determine whether it is an DFS mount.
@@ -324,7 +319,9 @@ int dfs_mount_share(struct cifs_mount_ctx *mnt_ctx, bool *isdfs)
*isdfs = true;
add_root_smb_session(mnt_ctx);
- return __dfs_mount_share(mnt_ctx);
+ rc = __dfs_mount_share(mnt_ctx);
+ dfs_put_root_smb_sessions(mnt_ctx);
+ return rc;
}
/* Update dfs referral path of superblock */
diff --git a/fs/smb/client/dfs.h b/fs/smb/client/dfs.h
index 875ab7ae57fcd..e5c4dcf837503 100644
--- a/fs/smb/client/dfs.h
+++ b/fs/smb/client/dfs.h
@@ -7,7 +7,9 @@
#define _CIFS_DFS_H
#include "cifsglob.h"
+#include "cifsproto.h"
#include "fs_context.h"
+#include "dfs_cache.h"
#include "cifs_unicode.h"
#include <linux/namei.h>
@@ -114,11 +116,6 @@ static inline void ref_walk_set_tgt_hint(struct dfs_ref_walk *rw)
ref_walk_tit(rw));
}
-struct dfs_root_ses {
- struct list_head list;
- struct cifs_ses *ses;
-};
-
int dfs_parse_target_referral(const char *full_path, const struct dfs_info3_param *ref,
struct smb3_fs_context *ctx);
int dfs_mount_share(struct cifs_mount_ctx *mnt_ctx, bool *isdfs);
@@ -133,20 +130,32 @@ static inline int dfs_get_referral(struct cifs_mount_ctx *mnt_ctx, const char *p
{
struct smb3_fs_context *ctx = mnt_ctx->fs_ctx;
struct cifs_sb_info *cifs_sb = mnt_ctx->cifs_sb;
+ struct cifs_ses *rses = ctx->dfs_root_ses ?: mnt_ctx->ses;
- return dfs_cache_find(mnt_ctx->xid, ctx->dfs_root_ses, cifs_sb->local_nls,
+ return dfs_cache_find(mnt_ctx->xid, rses, cifs_sb->local_nls,
cifs_remap(cifs_sb), path, ref, tl);
}
-static inline void dfs_put_root_smb_sessions(struct list_head *head)
+/*
+ * cifs_get_smb_ses() already guarantees an active reference of
+ * @ses->dfs_root_ses when a new session is created, so we need to put extra
+ * references of all DFS root sessions that were used across the mount process
+ * in dfs_mount_share().
+ */
+static inline void dfs_put_root_smb_sessions(struct cifs_mount_ctx *mnt_ctx)
{
- struct dfs_root_ses *root, *tmp;
+ const struct smb3_fs_context *ctx = mnt_ctx->fs_ctx;
+ struct cifs_ses *ses = ctx->dfs_root_ses;
+ struct cifs_ses *cur;
+
+ if (!ses)
+ return;
- list_for_each_entry_safe(root, tmp, head, list) {
- list_del_init(&root->list);
- cifs_put_smb_ses(root->ses);
- kfree(root);
+ for (cur = ses; cur; cur = cur->dfs_root_ses) {
+ if (cur->dfs_root_ses)
+ cifs_put_smb_ses(cur->dfs_root_ses);
}
+ cifs_put_smb_ses(ses);
}
#endif /* _CIFS_DFS_H */
diff --git a/fs/smb/client/dfs_cache.c b/fs/smb/client/dfs_cache.c
index 508d831fabe37..0552a864ff08f 100644
--- a/fs/smb/client/dfs_cache.c
+++ b/fs/smb/client/dfs_cache.c
@@ -1278,21 +1278,12 @@ int dfs_cache_remount_fs(struct cifs_sb_info *cifs_sb)
void dfs_cache_refresh(struct work_struct *work)
{
struct TCP_Server_Info *server;
- struct dfs_root_ses *rses;
struct cifs_tcon *tcon;
struct cifs_ses *ses;
tcon = container_of(work, struct cifs_tcon, dfs_cache_work.work);
- ses = tcon->ses;
- server = ses->server;
- mutex_lock(&server->refpath_lock);
- if (server->leaf_fullpath)
- __refresh_tcon(server->leaf_fullpath + 1, ses, false);
- mutex_unlock(&server->refpath_lock);
-
- list_for_each_entry(rses, &tcon->dfs_ses_list, list) {
- ses = rses->ses;
+ for (ses = tcon->ses; ses; ses = ses->dfs_root_ses) {
server = ses->server;
mutex_lock(&server->refpath_lock);
if (server->leaf_fullpath)
diff --git a/fs/smb/client/misc.c b/fs/smb/client/misc.c
index 51413cb00e199..74627d647818a 100644
--- a/fs/smb/client/misc.c
+++ b/fs/smb/client/misc.c
@@ -141,9 +141,6 @@ tcon_info_alloc(bool dir_leases_enabled)
atomic_set(&ret_buf->num_local_opens, 0);
atomic_set(&ret_buf->num_remote_opens, 0);
ret_buf->stats_from_time = ktime_get_real_seconds();
-#ifdef CONFIG_CIFS_DFS_UPCALL
- INIT_LIST_HEAD(&ret_buf->dfs_ses_list);
-#endif
return ret_buf;
}
@@ -159,9 +156,6 @@ tconInfoFree(struct cifs_tcon *tcon)
atomic_dec(&tconInfoAllocCount);
kfree(tcon->nativeFileSystem);
kfree_sensitive(tcon->password);
-#ifdef CONFIG_CIFS_DFS_UPCALL
- dfs_put_root_smb_sessions(&tcon->dfs_ses_list);
-#endif
kfree(tcon->origin_fullpath);
kfree(tcon);
}
--
2.43.0
next prev parent reply other threads:[~2024-04-23 21:42 UTC|newest]
Thread overview: 171+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-23 21:37 [PATCH 6.6 000/158] 6.6.29-rc1 review Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 001/158] smb: client: remove extra @chan_count check in __cifs_put_smb_ses() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 002/158] smb: client: fix UAF in smb2_reconnect_server() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 003/158] smb3: show beginning time for per share stats Greg Kroah-Hartman
2024-04-23 21:37 ` Greg Kroah-Hartman [this message]
2024-04-23 21:37 ` [PATCH 6.6 005/158] smb: client: refresh referral without acquiring refpath_lock Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 006/158] drm/i915: Fix FEC pipe A vs. DDI A mixup Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 007/158] drm/i915/mst: Reject FEC+MST on ICL Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 008/158] drm/i915/cdclk: Fix voltage_level programming edge case Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 009/158] drm/i915: Change intel_pipe_update_{start,end}() calling convention Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 010/158] drm/i915: Extract intel_crtc_vblank_evade_scanlines() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 011/158] drm/i915: Enable VRR later during fastsets Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 012/158] drm/i915: Adjust seamless_m_n flag behaviour Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 013/158] drm/i915: Disable live M/N updates when using bigjoiner Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 014/158] selftests: timers: Convert posix_timers test to generate KTAP output Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 015/158] selftests/timers/posix_timers: Reimplement check_timer_distribution() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 016/158] drm/amd/display: Do not recursively call manual trigger programming Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 017/158] ceph: pass the mdsc to several helpers Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 018/158] ceph: rename _to_client() to _to_fs_client() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 019/158] ceph: redirty page before returning AOP_WRITEPAGE_ACTIVATE Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 020/158] selftests: timers: Fix posix_timers ksft_print_msg() warning Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 021/158] drm/msm/dpu: populate SSPP scaler block version Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 022/158] media: videobuf2: request more buffers for vb2_read Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 023/158] io_uring: Fix io_cqring_wait() not restoring sigmask on get_timespec64() failure Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 024/158] drm/i915/vma: Fix UAF on destroy against retire race Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 025/158] SUNRPC: Fix rpcgss_context trace event acceptor field Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 026/158] selftests/ftrace: Limit length in subsystem-enable tests Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 027/158] random: handle creditable entropy from atomic process context Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 028/158] scsi: core: Fix handling of SCMD_FAIL_IF_RECOVERING Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 029/158] net: usb: ax88179_178a: avoid writing the mac address before first reading Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 030/158] arm64/mm: Modify range-based tlbi to decrement scale Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 031/158] arm64: tlb: Fix TLBI RANGE operand Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 032/158] scsi: ufs: qcom: Add missing interconnect bandwidth values for Gear 5 Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 033/158] netfilter: nf_tables: Fix potential data-race in __nft_expr_type_get() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 034/158] netfilter: nf_tables: Fix potential data-race in __nft_obj_type_get() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 035/158] netfilter: br_netfilter: skip conntrack input hook for promisc packets Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 036/158] netfilter: nft_set_pipapo: do not free live element Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 037/158] netfilter: flowtable: validate pppoe header Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 038/158] netfilter: flowtable: incorrect pppoe tuple Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 039/158] af_unix: Call manage_oob() for every skb in unix_stream_read_generic() Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 040/158] af_unix: Dont peek OOB data without MSG_OOB Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 041/158] net: sparx5: flower: fix fragment flags handling Greg Kroah-Hartman
2024-04-23 21:37 ` [PATCH 6.6 042/158] net/mlx5: Lag, restore buckets number to default after hash LAG deactivation Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 043/158] net/mlx5e: Prevent deadlock while disabling aRFS Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 044/158] net: change maximum number of UDP segments to 128 Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 045/158] octeontx2-pf: fix FLOW_DIS_IS_FRAGMENT implementation Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 046/158] net: stmmac: Apply half-duplex-less constraint for DW QoS Eth only Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 047/158] net: stmmac: Fix max-speed being ignored on queue re-init Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 048/158] net: stmmac: Fix IP-cores specific MAC capabilities Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 049/158] ice: tc: check src_vsi in case of traffic from VF Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 050/158] ice: tc: allow zero flags in parsing tc flower Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 051/158] ice: Fix checking for unsupported keys on non-tunnel device Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 052/158] tun: limit printing rate when illegal packet received by tun dev Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 053/158] net: dsa: mt7530: fix mirroring frames received on local port Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 054/158] net: dsa: mt7530: fix port mirroring for MT7988 SoC switch Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 055/158] s390/ism: Properly fix receive message buffer allocation Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 056/158] gpiolib: swnode: Remove wrong header inclusion Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 057/158] net: ethernet: mtk_eth_soc: fix WED + wifi reset Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 058/158] net: ethernet: ti: am65-cpsw-nuss: cleanup DMA Channels before using them Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 059/158] drm/i915/mst: Limit MST+DSC to TGL+ Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 060/158] RDMA/rxe: Fix the problem "mutex_destroy missing" Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 061/158] RDMA/cm: Print the old state when cm_destroy_id gets timeout Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 062/158] RDMA/mlx5: Fix port number for counter query in multi-port configuration Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 063/158] perf lock contention: Add a missing NULL check Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 064/158] s390/qdio: handle deferred cc1 Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 065/158] s390/cio: fix race condition during online processing Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 066/158] drm: nv04: Fix out of bounds access Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 067/158] drm/panel: visionox-rm69299: dont unregister DSI device Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 068/158] drm/radeon: make -fstrict-flex-arrays=3 happy Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 069/158] ALSA: scarlett2: Move USB IDs out from device_info struct Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 070/158] ALSA: scarlett2: Add support for Clarett 8Pre USB Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 071/158] ASoC: ti: Convert Pandora ASoC to GPIO descriptors Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 072/158] usb: pci-quirks: group AMD specific quirk code together Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 073/158] usb: pci-quirks: handle HAS_IOPORT dependency for AMD quirk Greg Kroah-Hartman
2024-04-24 6:27 ` Arnd Bergmann
2024-04-27 14:05 ` Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 074/158] usb: pci-quirks: handle HAS_IOPORT dependency for UHCI handoff Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 075/158] thunderbolt: Introduce tb_port_reset() Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 076/158] thunderbolt: Introduce tb_path_deactivate_hop() Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 077/158] thunderbolt: Make tb_switch_reset() support Thunderbolt 2, 3 and USB4 routers Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 078/158] thunderbolt: Reset topology created by the boot firmware Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 079/158] ALSA: scarlett2: Default mixer driver to enabled Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 080/158] ALSA: scarlett2: Add correct product series name to messages Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 081/158] ALSA: scarlett2: Add Focusrite Clarett+ 2Pre and 4Pre support Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 082/158] ALSA: scarlett2: Add Focusrite Clarett 2Pre and 4Pre USB support Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 083/158] PCI/DPC: Use FIELD_GET() Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 084/158] PCI: Simplify pcie_capability_clear_and_set_word() to ..._clear_word() Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 085/158] ALSA: scarlett2: Rename scarlett_gen2 to scarlett2 Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 086/158] drm: panel-orientation-quirks: Add quirk for Lenovo Legion Go Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 087/158] usb: xhci: Add timeout argument in address_device USB HCD callback Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 088/158] usb: new quirk to reduce the SET_ADDRESS request timeout Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 089/158] platform/x86/amd/pmc: Extend Framework 13 quirk to more BIOSes Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 090/158] interconnect: Dont access req_list while its being manipulated Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 091/158] clk: Remove prepare_lock hold assertion in __clk_release() Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 092/158] clk: Initialize struct clk_core kref earlier Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 093/158] clk: Get runtime PM before walking tree during disable_unused Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 094/158] clk: Show active consumers of clocks in debugfs Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 095/158] clk: Get runtime PM before walking tree for clk_summary Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 096/158] clk: mediatek: Do a runtime PM get on controllers during probe Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 097/158] x86/bugs: Fix BHI retpoline check Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 098/158] x86/cpufeatures: Fix dependencies for GFNI, VAES, and VPCLMULQDQ Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 099/158] net/mlx5: E-switch, store eswitch pointer before registering devlink_param Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 100/158] ALSA: seq: ump: Fix conversion from MIDI2 to MIDI1 UMP messages Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 101/158] ALSA: hda/tas2781: correct the register for pow calibrated data Greg Kroah-Hartman
2024-04-23 21:38 ` [PATCH 6.6 102/158] ALSA: hda/tas2781: Add new vendor_id and subsystem_id to support ThinkPad ICE-1 Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 103/158] ALSA: hda/realtek: Add quirks for Huawei Matebook D14 NBLB-WAX9N Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 104/158] ALSA: hda/realtek - Enable audio jacks of Haier Boyue G42 with ALC269VC Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 105/158] binder: check offset alignment in binder_get_object() Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 106/158] thunderbolt: Avoid notify PM core about runtime PM resume Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 107/158] thunderbolt: Fix wake configurations after device unplug Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 108/158] comedi: vmk80xx: fix incomplete endpoint checking Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 109/158] serial: mxs-auart: add spinlock around changing cts state Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 110/158] serial/pmac_zilog: Remove flawed mitigation for rx irq flood Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 111/158] serial: stm32: Return IRQ_NONE in the ISR if no handling happend Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 112/158] serial: stm32: Reset .throttled state in .startup() Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 113/158] serial: core: Clearing the circular buffer before NULLifying it Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 114/158] serial: core: Fix missing shutdown and startup for serial base port Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 115/158] USB: serial: option: add Fibocom FM135-GL variants Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 116/158] USB: serial: option: add support for Fibocom FM650/FG650 Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 117/158] USB: serial: option: add Lonsung U8300/U9300 product Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 118/158] USB: serial: option: support Quectel EM060K sub-models Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 119/158] USB: serial: option: add Rolling RW101-GL and RW135-GL support Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 120/158] USB: serial: option: add Telit FN920C04 rmnet compositions Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 121/158] Revert "usb: cdc-wdm: close race between read and workqueue" Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 122/158] usb: dwc2: host: Fix dereference issue in DDMA completion flow Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 123/158] usb: Disable USB3 LPM at shutdown Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 124/158] usb: gadget: f_ncm: Fix UAF ncm object at re-bind after usb ep transport error Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 125/158] mei: me: disable RPL-S on SPS and IGN firmwares Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 126/158] speakup: Avoid crash on very long word Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 127/158] fs: sysfs: Fix reference leak in sysfs_break_active_protection() Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 128/158] sched: Add missing memory barrier in switch_mm_cid Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 129/158] KVM: x86: Snapshot if a vCPUs vendor model is AMD vs. Intel compatible Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 130/158] KVM: x86/pmu: Disable support for adaptive PEBS Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 131/158] KVM: x86/pmu: Do not mask LVTPC when handling a PMI on AMD platforms Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 132/158] KVM: x86/mmu: Write-protect L2 SPTEs in TDP MMU when clearing dirty status Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 133/158] arm64/head: Disable MMU at EL2 before clearing HCR_EL2.E2H Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 134/158] arm64: hibernate: Fix level3 translation fault in swsusp_save() Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 135/158] init/main.c: Fix potential static_command_line memory overflow Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 136/158] mm/userfaultfd: allow hugetlb change protection upon poison entry Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 137/158] mm,swapops: update check in is_pfn_swap_entry for hwpoison entries Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 138/158] mm/memory-failure: fix deadlock when hugetlb_optimize_vmemmap is enabled Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 139/158] mm/shmem: inline shmem_is_huge() for disabled transparent hugepages Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 140/158] fuse: fix leaked ENOSYS error on first statx call Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 141/158] drm/amdgpu: validate the parameters of bo mapping operations more clearly Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 142/158] drm/amdkfd: Fix memory leak in create_process failure Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 143/158] drm/amdgpu: remove invalid resource->start check v2 Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 144/158] drm/vmwgfx: Fix prime import/export Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 145/158] drm/vmwgfx: Sort primary plane formats by order of preference Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 146/158] drm/vmwgfx: Fix crtcs atomic check conditional Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 147/158] nouveau: fix instmem race condition around ptr stores Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 148/158] bootconfig: use memblock_free_late to free xbc memory to buddy Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 149/158] nilfs2: fix OOB in nilfs_set_de_type Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 150/158] net: dsa: mt7530: fix improper frames on all 25MHz and 40MHz XTAL MT7530 Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 151/158] net: dsa: mt7530: fix enabling EEE on MT7531 switch on all boards Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 152/158] virtio_net: Do not send RSS key if it is not supported Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 153/158] powerpc/ftrace: Ignore ftrace locations in exit text sections Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 154/158] ksmbd: fix slab-out-of-bounds in smb2_allocate_rsp_buf Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 155/158] ksmbd: validate request buffer size in smb2_allocate_rsp_buf() Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 156/158] ksmbd: clear RENAME_NOREPLACE before calling vfs_rename Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 157/158] ksmbd: common: use struct_group_attr instead of struct_group for network_open_info Greg Kroah-Hartman
2024-04-23 21:39 ` [PATCH 6.6 158/158] PCI/ASPM: Fix deadlock when enabling ASPM Greg Kroah-Hartman
2024-04-23 23:25 ` [PATCH 6.6 000/158] 6.6.29-rc1 review SeongJae Park
2024-04-24 8:25 ` Ron Economos
2024-04-24 9:29 ` Harshit Mogalapalli
2024-04-24 11:12 ` Takeshi Ogasawara
2024-04-24 13:48 ` Mark Brown
2024-04-24 21:54 ` Greg Kroah-Hartman
2024-04-24 16:58 ` Florian Fainelli
2024-04-25 8:59 ` Jon Hunter
2024-04-25 9:03 ` Naresh Kamboju
2024-04-25 20:15 ` Shreeya Patel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240423213855.833476495@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=lkp@intel.com \
--cc=patches@lists.linux.dev \
--cc=pc@manguebit.com \
--cc=sashal@kernel.org \
--cc=stable@vger.kernel.org \
--cc=stfrench@microsoft.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox