All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Amir Goldstein <amir73il@gmail.com>,
	Namjae Jeon <linkinjeon@kernel.org>,
	Steve French <stfrench@microsoft.com>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.3 094/199] ksmbd: add mnt_want_write to ksmbd vfs functions
Date: Mon, 26 Jun 2023 20:10:00 +0200	[thread overview]
Message-ID: <20230626180809.739741283@linuxfoundation.org> (raw)
In-Reply-To: <20230626180805.643662628@linuxfoundation.org>

From: Namjae Jeon <linkinjeon@kernel.org>

[ Upstream commit 40b268d384a22276dca1450549f53eed60e21deb ]

ksmbd is doing write access using vfs helpers. There are the cases that
mnt_want_write() is not called in vfs helper. This patch add missing
mnt_want_write() to ksmbd vfs functions.

Cc: stable@vger.kernel.org
Cc: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 fs/ksmbd/smb2pdu.c   |  26 ++++------
 fs/ksmbd/smbacl.c    |  10 ++--
 fs/ksmbd/vfs.c       | 117 ++++++++++++++++++++++++++++++++++---------
 fs/ksmbd/vfs.h       |  17 +++----
 fs/ksmbd/vfs_cache.c |   2 +-
 5 files changed, 117 insertions(+), 55 deletions(-)

diff --git a/fs/ksmbd/smb2pdu.c b/fs/ksmbd/smb2pdu.c
index 06a335356e373..1d365eb79c3ef 100644
--- a/fs/ksmbd/smb2pdu.c
+++ b/fs/ksmbd/smb2pdu.c
@@ -2311,7 +2311,7 @@ static int smb2_set_ea(struct smb2_ea_info *eabuf, unsigned int buf_len,
 			/* delete the EA only when it exits */
 			if (rc > 0) {
 				rc = ksmbd_vfs_remove_xattr(idmap,
-							    path->dentry,
+							    path,
 							    attr_name);
 
 				if (rc < 0) {
@@ -2325,8 +2325,7 @@ static int smb2_set_ea(struct smb2_ea_info *eabuf, unsigned int buf_len,
 			/* if the EA doesn't exist, just do nothing. */
 			rc = 0;
 		} else {
-			rc = ksmbd_vfs_setxattr(idmap,
-						path->dentry, attr_name, value,
+			rc = ksmbd_vfs_setxattr(idmap, path, attr_name, value,
 						le16_to_cpu(eabuf->EaValueLength), 0);
 			if (rc < 0) {
 				ksmbd_debug(SMB,
@@ -2383,8 +2382,7 @@ static noinline int smb2_set_stream_name_xattr(const struct path *path,
 		return -EBADF;
 	}
 
-	rc = ksmbd_vfs_setxattr(idmap, path->dentry,
-				xattr_stream_name, NULL, 0, 0);
+	rc = ksmbd_vfs_setxattr(idmap, path, xattr_stream_name, NULL, 0, 0);
 	if (rc < 0)
 		pr_err("Failed to store XATTR stream name :%d\n", rc);
 	return 0;
@@ -2412,7 +2410,7 @@ static int smb2_remove_smb_xattrs(const struct path *path)
 		if (!strncmp(name, XATTR_USER_PREFIX, XATTR_USER_PREFIX_LEN) &&
 		    !strncmp(&name[XATTR_USER_PREFIX_LEN], STREAM_PREFIX,
 			     STREAM_PREFIX_LEN)) {
-			err = ksmbd_vfs_remove_xattr(idmap, path->dentry,
+			err = ksmbd_vfs_remove_xattr(idmap, path,
 						     name);
 			if (err)
 				ksmbd_debug(SMB, "remove xattr failed : %s\n",
@@ -2459,8 +2457,7 @@ static void smb2_new_xattrs(struct ksmbd_tree_connect *tcon, const struct path *
 	da.flags = XATTR_DOSINFO_ATTRIB | XATTR_DOSINFO_CREATE_TIME |
 		XATTR_DOSINFO_ITIME;
 
-	rc = ksmbd_vfs_set_dos_attrib_xattr(mnt_idmap(path->mnt),
-					    path->dentry, &da);
+	rc = ksmbd_vfs_set_dos_attrib_xattr(mnt_idmap(path->mnt), path, &da);
 	if (rc)
 		ksmbd_debug(SMB, "failed to store file attribute into xattr\n");
 }
@@ -3034,7 +3031,7 @@ int smb2_open(struct ksmbd_work *work)
 		struct inode *inode = d_inode(path.dentry);
 
 		posix_acl_rc = ksmbd_vfs_inherit_posix_acl(idmap,
-							   path.dentry,
+							   &path,
 							   d_inode(path.dentry->d_parent));
 		if (posix_acl_rc)
 			ksmbd_debug(SMB, "inherit posix acl failed : %d\n", posix_acl_rc);
@@ -3050,7 +3047,7 @@ int smb2_open(struct ksmbd_work *work)
 			if (rc) {
 				if (posix_acl_rc)
 					ksmbd_vfs_set_init_posix_acl(idmap,
-								     path.dentry);
+								     &path);
 
 				if (test_share_config_flag(work->tcon->share_conf,
 							   KSMBD_SHARE_FLAG_ACL_XATTR)) {
@@ -3090,7 +3087,7 @@ int smb2_open(struct ksmbd_work *work)
 
 					rc = ksmbd_vfs_set_sd_xattr(conn,
 								    idmap,
-								    path.dentry,
+								    &path,
 								    pntsd,
 								    pntsd_size);
 					kfree(pntsd);
@@ -5526,7 +5523,7 @@ static int smb2_rename(struct ksmbd_work *work,
 			goto out;
 
 		rc = ksmbd_vfs_setxattr(file_mnt_idmap(fp->filp),
-					fp->filp->f_path.dentry,
+					&fp->filp->f_path,
 					xattr_stream_name,
 					NULL, 0, 0);
 		if (rc < 0) {
@@ -5691,8 +5688,7 @@ static int set_file_basic_info(struct ksmbd_file *fp,
 		da.flags = XATTR_DOSINFO_ATTRIB | XATTR_DOSINFO_CREATE_TIME |
 			XATTR_DOSINFO_ITIME;
 
-		rc = ksmbd_vfs_set_dos_attrib_xattr(idmap,
-						    filp->f_path.dentry, &da);
+		rc = ksmbd_vfs_set_dos_attrib_xattr(idmap, &filp->f_path, &da);
 		if (rc)
 			ksmbd_debug(SMB,
 				    "failed to restore file attribute in EA\n");
@@ -7547,7 +7543,7 @@ static inline int fsctl_set_sparse(struct ksmbd_work *work, u64 id,
 
 		da.attr = le32_to_cpu(fp->f_ci->m_fattr);
 		ret = ksmbd_vfs_set_dos_attrib_xattr(idmap,
-						     fp->filp->f_path.dentry, &da);
+						     &fp->filp->f_path, &da);
 		if (ret)
 			fp->f_ci->m_fattr = old_fattr;
 	}
diff --git a/fs/ksmbd/smbacl.c b/fs/ksmbd/smbacl.c
index 0a5862a61c773..ad919a4239d0a 100644
--- a/fs/ksmbd/smbacl.c
+++ b/fs/ksmbd/smbacl.c
@@ -1162,8 +1162,7 @@ int smb_inherit_dacl(struct ksmbd_conn *conn,
 			pntsd_size += sizeof(struct smb_acl) + nt_size;
 		}
 
-		ksmbd_vfs_set_sd_xattr(conn, idmap,
-				       path->dentry, pntsd, pntsd_size);
+		ksmbd_vfs_set_sd_xattr(conn, idmap, path, pntsd, pntsd_size);
 		kfree(pntsd);
 	}
 
@@ -1383,7 +1382,7 @@ int set_info_sec(struct ksmbd_conn *conn, struct ksmbd_tree_connect *tcon,
 	newattrs.ia_valid |= ATTR_MODE;
 	newattrs.ia_mode = (inode->i_mode & ~0777) | (fattr.cf_mode & 0777);
 
-	ksmbd_vfs_remove_acl_xattrs(idmap, path->dentry);
+	ksmbd_vfs_remove_acl_xattrs(idmap, path);
 	/* Update posix acls */
 	if (IS_ENABLED(CONFIG_FS_POSIX_ACL) && fattr.cf_dacls) {
 		rc = set_posix_acl(idmap, path->dentry,
@@ -1414,9 +1413,8 @@ int set_info_sec(struct ksmbd_conn *conn, struct ksmbd_tree_connect *tcon,
 
 	if (test_share_config_flag(tcon->share_conf, KSMBD_SHARE_FLAG_ACL_XATTR)) {
 		/* Update WinACL in xattr */
-		ksmbd_vfs_remove_sd_xattrs(idmap, path->dentry);
-		ksmbd_vfs_set_sd_xattr(conn, idmap,
-				       path->dentry, pntsd, ntsd_len);
+		ksmbd_vfs_remove_sd_xattrs(idmap, path);
+		ksmbd_vfs_set_sd_xattr(conn, idmap, path, pntsd, ntsd_len);
 	}
 
 out:
diff --git a/fs/ksmbd/vfs.c b/fs/ksmbd/vfs.c
index 448c442ad3f49..fb19deba58cd9 100644
--- a/fs/ksmbd/vfs.c
+++ b/fs/ksmbd/vfs.c
@@ -166,6 +166,10 @@ int ksmbd_vfs_create(struct ksmbd_work *work, const char *name, umode_t mode)
 		return err;
 	}
 
+	err = mnt_want_write(path.mnt);
+	if (err)
+		goto out_err;
+
 	mode |= S_IFREG;
 	err = vfs_create(mnt_idmap(path.mnt), d_inode(path.dentry),
 			 dentry, mode, true);
@@ -175,6 +179,9 @@ int ksmbd_vfs_create(struct ksmbd_work *work, const char *name, umode_t mode)
 	} else {
 		pr_err("File(%s): creation failed (err:%d)\n", name, err);
 	}
+	mnt_drop_write(path.mnt);
+
+out_err:
 	done_path_create(&path, dentry);
 	return err;
 }
@@ -205,30 +212,35 @@ int ksmbd_vfs_mkdir(struct ksmbd_work *work, const char *name, umode_t mode)
 		return err;
 	}
 
+	err = mnt_want_write(path.mnt);
+	if (err)
+		goto out_err2;
+
 	idmap = mnt_idmap(path.mnt);
 	mode |= S_IFDIR;
 	err = vfs_mkdir(idmap, d_inode(path.dentry), dentry, mode);
-	if (err) {
-		goto out;
-	} else if (d_unhashed(dentry)) {
+	if (!err && d_unhashed(dentry)) {
 		struct dentry *d;
 
 		d = lookup_one(idmap, dentry->d_name.name, dentry->d_parent,
 			       dentry->d_name.len);
 		if (IS_ERR(d)) {
 			err = PTR_ERR(d);
-			goto out;
+			goto out_err1;
 		}
 		if (unlikely(d_is_negative(d))) {
 			dput(d);
 			err = -ENOENT;
-			goto out;
+			goto out_err1;
 		}
 
 		ksmbd_vfs_inherit_owner(work, d_inode(path.dentry), d_inode(d));
 		dput(d);
 	}
-out:
+
+out_err1:
+	mnt_drop_write(path.mnt);
+out_err2:
 	done_path_create(&path, dentry);
 	if (err)
 		pr_err("mkdir(%s): creation failed (err:%d)\n", name, err);
@@ -439,7 +451,7 @@ static int ksmbd_vfs_stream_write(struct ksmbd_file *fp, char *buf, loff_t *pos,
 	memcpy(&stream_buf[*pos], buf, count);
 
 	err = ksmbd_vfs_setxattr(idmap,
-				 fp->filp->f_path.dentry,
+				 &fp->filp->f_path,
 				 fp->stream.name,
 				 (void *)stream_buf,
 				 size,
@@ -585,6 +597,10 @@ int ksmbd_vfs_remove_file(struct ksmbd_work *work, const struct path *path)
 		goto out_err;
 	}
 
+	err = mnt_want_write(path->mnt);
+	if (err)
+		goto out_err;
+
 	idmap = mnt_idmap(path->mnt);
 	if (S_ISDIR(d_inode(path->dentry)->i_mode)) {
 		err = vfs_rmdir(idmap, d_inode(parent), path->dentry);
@@ -595,6 +611,7 @@ int ksmbd_vfs_remove_file(struct ksmbd_work *work, const struct path *path)
 		if (err)
 			ksmbd_debug(VFS, "unlink failed, err %d\n", err);
 	}
+	mnt_drop_write(path->mnt);
 
 out_err:
 	ksmbd_revert_fsids(work);
@@ -640,11 +657,16 @@ int ksmbd_vfs_link(struct ksmbd_work *work, const char *oldname,
 		goto out3;
 	}
 
+	err = mnt_want_write(newpath.mnt);
+	if (err)
+		goto out3;
+
 	err = vfs_link(oldpath.dentry, mnt_idmap(newpath.mnt),
 		       d_inode(newpath.dentry),
 		       dentry, NULL);
 	if (err)
 		ksmbd_debug(VFS, "vfs_link failed err %d\n", err);
+	mnt_drop_write(newpath.mnt);
 
 out3:
 	done_path_create(&newpath, dentry);
@@ -690,6 +712,10 @@ int ksmbd_vfs_rename(struct ksmbd_work *work, const struct path *old_path,
 		goto out2;
 	}
 
+	err = mnt_want_write(old_path->mnt);
+	if (err)
+		goto out2;
+
 	trap = lock_rename_child(old_child, new_path.dentry);
 
 	old_parent = dget(old_child->d_parent);
@@ -752,6 +778,7 @@ int ksmbd_vfs_rename(struct ksmbd_work *work, const struct path *old_path,
 out3:
 	dput(old_parent);
 	unlock_rename(old_parent, new_path.dentry);
+	mnt_drop_write(old_path->mnt);
 out2:
 	path_put(&new_path);
 
@@ -892,19 +919,24 @@ ssize_t ksmbd_vfs_getxattr(struct mnt_idmap *idmap,
  * Return:	0 on success, otherwise error
  */
 int ksmbd_vfs_setxattr(struct mnt_idmap *idmap,
-		       struct dentry *dentry, const char *attr_name,
+		       const struct path *path, const char *attr_name,
 		       void *attr_value, size_t attr_size, int flags)
 {
 	int err;
 
+	err = mnt_want_write(path->mnt);
+	if (err)
+		return err;
+
 	err = vfs_setxattr(idmap,
-			   dentry,
+			   path->dentry,
 			   attr_name,
 			   attr_value,
 			   attr_size,
 			   flags);
 	if (err)
 		ksmbd_debug(VFS, "setxattr failed, err %d\n", err);
+	mnt_drop_write(path->mnt);
 	return err;
 }
 
@@ -1008,9 +1040,18 @@ int ksmbd_vfs_fqar_lseek(struct ksmbd_file *fp, loff_t start, loff_t length,
 }
 
 int ksmbd_vfs_remove_xattr(struct mnt_idmap *idmap,
-			   struct dentry *dentry, char *attr_name)
+			   const struct path *path, char *attr_name)
 {
-	return vfs_removexattr(idmap, dentry, attr_name);
+	int err;
+
+	err = mnt_want_write(path->mnt);
+	if (err)
+		return err;
+
+	err = vfs_removexattr(idmap, path->dentry, attr_name);
+	mnt_drop_write(path->mnt);
+
+	return err;
 }
 
 int ksmbd_vfs_unlink(struct file *filp)
@@ -1019,6 +1060,10 @@ int ksmbd_vfs_unlink(struct file *filp)
 	struct dentry *dir, *dentry = filp->f_path.dentry;
 	struct mnt_idmap *idmap = file_mnt_idmap(filp);
 
+	err = mnt_want_write(filp->f_path.mnt);
+	if (err)
+		return err;
+
 	dir = dget_parent(dentry);
 	err = ksmbd_vfs_lock_parent(dir, dentry);
 	if (err)
@@ -1036,6 +1081,7 @@ int ksmbd_vfs_unlink(struct file *filp)
 		ksmbd_debug(VFS, "failed to delete, err %d\n", err);
 out:
 	dput(dir);
+	mnt_drop_write(filp->f_path.mnt);
 
 	return err;
 }
@@ -1239,13 +1285,13 @@ struct dentry *ksmbd_vfs_kern_path_create(struct ksmbd_work *work,
 }
 
 int ksmbd_vfs_remove_acl_xattrs(struct mnt_idmap *idmap,
-				struct dentry *dentry)
+				const struct path *path)
 {
 	char *name, *xattr_list = NULL;
 	ssize_t xattr_list_len;
 	int err = 0;
 
-	xattr_list_len = ksmbd_vfs_listxattr(dentry, &xattr_list);
+	xattr_list_len = ksmbd_vfs_listxattr(path->dentry, &xattr_list);
 	if (xattr_list_len < 0) {
 		goto out;
 	} else if (!xattr_list_len) {
@@ -1253,6 +1299,10 @@ int ksmbd_vfs_remove_acl_xattrs(struct mnt_idmap *idmap,
 		goto out;
 	}
 
+	err = mnt_want_write(path->mnt);
+	if (err)
+		goto out;
+
 	for (name = xattr_list; name - xattr_list < xattr_list_len;
 	     name += strlen(name) + 1) {
 		ksmbd_debug(SMB, "%s, len %zd\n", name, strlen(name));
@@ -1261,25 +1311,26 @@ int ksmbd_vfs_remove_acl_xattrs(struct mnt_idmap *idmap,
 			     sizeof(XATTR_NAME_POSIX_ACL_ACCESS) - 1) ||
 		    !strncmp(name, XATTR_NAME_POSIX_ACL_DEFAULT,
 			     sizeof(XATTR_NAME_POSIX_ACL_DEFAULT) - 1)) {
-			err = vfs_remove_acl(idmap, dentry, name);
+			err = vfs_remove_acl(idmap, path->dentry, name);
 			if (err)
 				ksmbd_debug(SMB,
 					    "remove acl xattr failed : %s\n", name);
 		}
 	}
+	mnt_drop_write(path->mnt);
+
 out:
 	kvfree(xattr_list);
 	return err;
 }
 
-int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap,
-			       struct dentry *dentry)
+int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap, const struct path *path)
 {
 	char *name, *xattr_list = NULL;
 	ssize_t xattr_list_len;
 	int err = 0;
 
-	xattr_list_len = ksmbd_vfs_listxattr(dentry, &xattr_list);
+	xattr_list_len = ksmbd_vfs_listxattr(path->dentry, &xattr_list);
 	if (xattr_list_len < 0) {
 		goto out;
 	} else if (!xattr_list_len) {
@@ -1292,7 +1343,7 @@ int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap,
 		ksmbd_debug(SMB, "%s, len %zd\n", name, strlen(name));
 
 		if (!strncmp(name, XATTR_NAME_SD, XATTR_NAME_SD_LEN)) {
-			err = ksmbd_vfs_remove_xattr(idmap, dentry, name);
+			err = ksmbd_vfs_remove_xattr(idmap, path, name);
 			if (err)
 				ksmbd_debug(SMB, "remove xattr failed : %s\n", name);
 		}
@@ -1369,13 +1420,14 @@ static struct xattr_smb_acl *ksmbd_vfs_make_xattr_posix_acl(struct mnt_idmap *id
 
 int ksmbd_vfs_set_sd_xattr(struct ksmbd_conn *conn,
 			   struct mnt_idmap *idmap,
-			   struct dentry *dentry,
+			   const struct path *path,
 			   struct smb_ntsd *pntsd, int len)
 {
 	int rc;
 	struct ndr sd_ndr = {0}, acl_ndr = {0};
 	struct xattr_ntacl acl = {0};
 	struct xattr_smb_acl *smb_acl, *def_smb_acl = NULL;
+	struct dentry *dentry = path->dentry;
 	struct inode *inode = d_inode(dentry);
 
 	acl.version = 4;
@@ -1427,7 +1479,7 @@ int ksmbd_vfs_set_sd_xattr(struct ksmbd_conn *conn,
 		goto out;
 	}
 
-	rc = ksmbd_vfs_setxattr(idmap, dentry,
+	rc = ksmbd_vfs_setxattr(idmap, path,
 				XATTR_NAME_SD, sd_ndr.data,
 				sd_ndr.offset, 0);
 	if (rc < 0)
@@ -1517,7 +1569,7 @@ int ksmbd_vfs_get_sd_xattr(struct ksmbd_conn *conn,
 }
 
 int ksmbd_vfs_set_dos_attrib_xattr(struct mnt_idmap *idmap,
-				   struct dentry *dentry,
+				   const struct path *path,
 				   struct xattr_dos_attrib *da)
 {
 	struct ndr n;
@@ -1527,7 +1579,7 @@ int ksmbd_vfs_set_dos_attrib_xattr(struct mnt_idmap *idmap,
 	if (err)
 		return err;
 
-	err = ksmbd_vfs_setxattr(idmap, dentry, XATTR_NAME_DOS_ATTRIBUTE,
+	err = ksmbd_vfs_setxattr(idmap, path, XATTR_NAME_DOS_ATTRIBUTE,
 				 (void *)n.data, n.offset, 0);
 	if (err)
 		ksmbd_debug(SMB, "failed to store dos attribute in xattr\n");
@@ -1764,10 +1816,11 @@ void ksmbd_vfs_posix_lock_unblock(struct file_lock *flock)
 }
 
 int ksmbd_vfs_set_init_posix_acl(struct mnt_idmap *idmap,
-				 struct dentry *dentry)
+				 struct path *path)
 {
 	struct posix_acl_state acl_state;
 	struct posix_acl *acls;
+	struct dentry *dentry = path->dentry;
 	struct inode *inode = d_inode(dentry);
 	int rc;
 
@@ -1797,6 +1850,11 @@ int ksmbd_vfs_set_init_posix_acl(struct mnt_idmap *idmap,
 		return -ENOMEM;
 	}
 	posix_state_to_acl(&acl_state, acls->a_entries);
+
+	rc = mnt_want_write(path->mnt);
+	if (rc)
+		goto out_err;
+
 	rc = set_posix_acl(idmap, dentry, ACL_TYPE_ACCESS, acls);
 	if (rc < 0)
 		ksmbd_debug(SMB, "Set posix acl(ACL_TYPE_ACCESS) failed, rc : %d\n",
@@ -1808,16 +1866,20 @@ int ksmbd_vfs_set_init_posix_acl(struct mnt_idmap *idmap,
 			ksmbd_debug(SMB, "Set posix acl(ACL_TYPE_DEFAULT) failed, rc : %d\n",
 				    rc);
 	}
+	mnt_drop_write(path->mnt);
+
+out_err:
 	free_acl_state(&acl_state);
 	posix_acl_release(acls);
 	return rc;
 }
 
 int ksmbd_vfs_inherit_posix_acl(struct mnt_idmap *idmap,
-				struct dentry *dentry, struct inode *parent_inode)
+				struct path *path, struct inode *parent_inode)
 {
 	struct posix_acl *acls;
 	struct posix_acl_entry *pace;
+	struct dentry *dentry = path->dentry;
 	struct inode *inode = d_inode(dentry);
 	int rc, i;
 
@@ -1836,6 +1898,10 @@ int ksmbd_vfs_inherit_posix_acl(struct mnt_idmap *idmap,
 		}
 	}
 
+	rc = mnt_want_write(path->mnt);
+	if (rc)
+		goto out_err;
+
 	rc = set_posix_acl(idmap, dentry, ACL_TYPE_ACCESS, acls);
 	if (rc < 0)
 		ksmbd_debug(SMB, "Set posix acl(ACL_TYPE_ACCESS) failed, rc : %d\n",
@@ -1847,6 +1913,9 @@ int ksmbd_vfs_inherit_posix_acl(struct mnt_idmap *idmap,
 			ksmbd_debug(SMB, "Set posix acl(ACL_TYPE_DEFAULT) failed, rc : %d\n",
 				    rc);
 	}
+	mnt_drop_write(path->mnt);
+
+out_err:
 	posix_acl_release(acls);
 	return rc;
 }
diff --git a/fs/ksmbd/vfs.h b/fs/ksmbd/vfs.h
index a4ae89f3230de..8c0931d4d5310 100644
--- a/fs/ksmbd/vfs.h
+++ b/fs/ksmbd/vfs.h
@@ -108,12 +108,12 @@ ssize_t ksmbd_vfs_casexattr_len(struct mnt_idmap *idmap,
 				struct dentry *dentry, char *attr_name,
 				int attr_name_len);
 int ksmbd_vfs_setxattr(struct mnt_idmap *idmap,
-		       struct dentry *dentry, const char *attr_name,
+		       const struct path *path, const char *attr_name,
 		       void *attr_value, size_t attr_size, int flags);
 int ksmbd_vfs_xattr_stream_name(char *stream_name, char **xattr_stream_name,
 				size_t *xattr_stream_name_size, int s_type);
 int ksmbd_vfs_remove_xattr(struct mnt_idmap *idmap,
-			   struct dentry *dentry, char *attr_name);
+			   const struct path *path, char *attr_name);
 int ksmbd_vfs_kern_path_locked(struct ksmbd_work *work, char *name,
 			       unsigned int flags, struct path *path,
 			       bool caseless);
@@ -139,26 +139,25 @@ void ksmbd_vfs_posix_lock_wait(struct file_lock *flock);
 int ksmbd_vfs_posix_lock_wait_timeout(struct file_lock *flock, long timeout);
 void ksmbd_vfs_posix_lock_unblock(struct file_lock *flock);
 int ksmbd_vfs_remove_acl_xattrs(struct mnt_idmap *idmap,
-				struct dentry *dentry);
-int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap,
-			       struct dentry *dentry);
+				const struct path *path);
+int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap, const struct path *path);
 int ksmbd_vfs_set_sd_xattr(struct ksmbd_conn *conn,
 			   struct mnt_idmap *idmap,
-			   struct dentry *dentry,
+			   const struct path *path,
 			   struct smb_ntsd *pntsd, int len);
 int ksmbd_vfs_get_sd_xattr(struct ksmbd_conn *conn,
 			   struct mnt_idmap *idmap,
 			   struct dentry *dentry,
 			   struct smb_ntsd **pntsd);
 int ksmbd_vfs_set_dos_attrib_xattr(struct mnt_idmap *idmap,
-				   struct dentry *dentry,
+				   const struct path *path,
 				   struct xattr_dos_attrib *da);
 int ksmbd_vfs_get_dos_attrib_xattr(struct mnt_idmap *idmap,
 				   struct dentry *dentry,
 				   struct xattr_dos_attrib *da);
 int ksmbd_vfs_set_init_posix_acl(struct mnt_idmap *idmap,
-				 struct dentry *dentry);
+				 struct path *path);
 int ksmbd_vfs_inherit_posix_acl(struct mnt_idmap *idmap,
-				struct dentry *dentry,
+				struct path *path,
 				struct inode *parent_inode);
 #endif /* __KSMBD_VFS_H__ */
diff --git a/fs/ksmbd/vfs_cache.c b/fs/ksmbd/vfs_cache.c
index 2d0138e72d783..f41f8d6108ce9 100644
--- a/fs/ksmbd/vfs_cache.c
+++ b/fs/ksmbd/vfs_cache.c
@@ -252,7 +252,7 @@ static void __ksmbd_inode_close(struct ksmbd_file *fp)
 	if (ksmbd_stream_fd(fp) && (ci->m_flags & S_DEL_ON_CLS_STREAM)) {
 		ci->m_flags &= ~S_DEL_ON_CLS_STREAM;
 		err = ksmbd_vfs_remove_xattr(file_mnt_idmap(filp),
-					     filp->f_path.dentry,
+					     &filp->f_path,
 					     fp->stream.name);
 		if (err)
 			pr_err("remove xattr failed : %s\n",
-- 
2.39.2




  parent reply	other threads:[~2023-06-26 18:20 UTC|newest]

Thread overview: 209+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-26 18:08 [PATCH 6.3 000/199] 6.3.10-rc1 review Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 001/199] cifs: fix status checks in cifs_tree_connect Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 002/199] drm/amd/display: Use dc_update_planes_and_stream Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 003/199] drm/amd/display: Add wrapper to call planes and stream update Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 004/199] drm/amd/display: fix the system hang while disable PSR Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 005/199] ata: libata-scsi: Avoid deadlock on rescan after device resume Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 006/199] mm: Fix copy_from_user_nofault() Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 007/199] tpm, tpm_tis: Claim locality in interrupt handler Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 008/199] ksmbd: validate command payload size Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 009/199] ksmbd: fix out-of-bound read in smb2_write Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 010/199] ksmbd: validate session id and tree id in the compound request Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 011/199] udmabuf: revert Add support for mapping hugepages (v4) Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 012/199] Revert "efi: random: refresh non-volatile random seed when RNG is initialized" Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 013/199] afs: Fix dangling folio ref counts in writeback Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 014/199] afs: Fix waiting for writeback then skipping folio Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 015/199] tick/common: Align tick period during sched_timer setup Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 016/199] Revert "virtio-blk: support completion batching for the IRQ path" Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 017/199] riscv: Link with -z norelro Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 018/199] selftests: mptcp: remove duplicated entries in usage Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 019/199] selftests: mptcp: join: fix ShellCheck warnings Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 020/199] selftests: mptcp: lib: skip if missing symbol Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 021/199] selftests: mptcp: connect: skip transp tests if not supported Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 022/199] selftests: mptcp: connect: skip disconnect " Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 023/199] selftests: mptcp: connect: skip TFO " Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 024/199] selftests: mptcp: diag: skip listen " Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 025/199] selftests: mptcp: diag: skip inuse " Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 026/199] selftests: mptcp: pm nl: remove hardcoded default limits Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 027/199] selftests: mptcp: pm nl: skip fullmesh flag checks if not supported Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 028/199] selftests: mptcp: sockopt: relax expected returned size Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 029/199] selftests: mptcp: sockopt: skip getsockopt checks if not supported Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 030/199] selftests: mptcp: sockopt: skip TCP_INQ " Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 031/199] selftests: mptcp: userspace pm: skip if ip tool is unavailable Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 032/199] selftests: mptcp: userspace pm: skip if not supported Greg Kroah-Hartman
2023-06-26 18:08 ` [PATCH 6.3 033/199] selftests: mptcp: userspace pm: skip PM listener events tests if unavailable Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 034/199] selftests: mptcp: lib: skip if not below kernel version Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 035/199] selftests: mptcp: join: use iptables-legacy if available Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 036/199] selftests: mptcp: join: helpers to skip tests Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 037/199] selftests: mptcp: join: skip check if MIB counter not supported Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 038/199] selftests: mptcp: join: skip test if iptables/tc cmds fail Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 039/199] selftests: mptcp: join: support local endpoint being tracked or not Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 040/199] selftests: mptcp: join: skip Fastclose tests if not supported Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 041/199] selftests: mptcp: join: support RM_ADDR for used endpoints or not Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 042/199] selftests: mptcp: join: skip implicit tests if not supported Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 043/199] selftests: mptcp: join: skip backup if set flag on ID " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 044/199] selftests: mptcp: join: skip fullmesh flag tests if " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 045/199] selftests: mptcp: join: skip userspace PM " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 046/199] selftests: mptcp: join: skip fail " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 047/199] selftests: mptcp: join: skip MPC backups " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 048/199] selftests: mptcp: join: skip PM listener " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 049/199] selftests: mptcp: join: uniform listener tests Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 050/199] selftests: mptcp: join: skip mixed tests if not supported Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 051/199] memfd: check for non-NULL file_seals in memfd_create() syscall Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 052/199] writeback: fix dereferencing NULL mapping->host on writeback_page_template Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 053/199] scripts: fix the gfp flags header path in gfp-translate Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 054/199] nilfs2: fix buffer corruption due to concurrent device reads Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 055/199] nilfs2: prevent general protection fault in nilfs_clear_dirty_page() Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 056/199] ACPI: sleep: Avoid breaking S3 wakeup due to might_sleep() Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 057/199] thermal/intel/intel_soc_dts_iosf: Fix reporting wrong temperatures Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 058/199] KVM: Avoid illegal stage2 mapping on invalid memory slot Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 059/199] mm/vmalloc: do not output a spurious warning when huge vmalloc() fails Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 060/199] mm/mprotect: fix do_mprotect_pkey() limit check Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 061/199] Drivers: hv: vmbus: Call hv_synic_free() if hv_synic_alloc() fails Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 062/199] Drivers: hv: vmbus: Fix vmbus_wait_for_unload() to scan present CPUs Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 063/199] PCI: hv: Fix a race condition bug in hv_pci_query_relations() Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 064/199] Revert "PCI: hv: Fix a timing issue which causes kdump to fail occasionally" Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 065/199] PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 066/199] PCI: hv: Fix a race condition in hv_irq_unmask() that can cause panic Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 067/199] PCI: hv: Add a per-bus mutex state_lock Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 068/199] io_uring/net: clear msg_controllen on partial sendmsg retry Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 069/199] io_uring/net: disable partial retries for recvmsg with cmsg Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 070/199] mptcp: handle correctly disconnect() failures Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 071/199] mptcp: fix possible divide by zero in recvmsg() Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 072/199] mptcp: fix possible list corruption on passive MPJ Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 073/199] mptcp: consolidate fallback and non fallback state machine Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 074/199] mptcp: ensure listener is unhashed before updating the sk status Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 075/199] cgroup: Do not corrupt task iteration when rebinding subsystem Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 076/199] cgroup,freezer: hold cpu_hotplug_lock before freezer_mutex in freezer_css_{online,offline}() Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 077/199] net: mdio: fix the wrong parameters Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 078/199] mmc: litex_mmc: set PROBE_PREFER_ASYNCHRONOUS Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 079/199] mmc: sdhci-msm: Disable broken 64-bit DMA on MSM8916 Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 080/199] mmc: meson-gx: remove redundant mmc_request_done() call from irq context Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 081/199] mmc: mmci: stm32: fix max busy timeout calculation Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 082/199] mmc: sdhci-spear: fix deferred probing Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 083/199] mmc: bcm2835: " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 084/199] mmc: sunxi: " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 085/199] mmc: meson-gx: " Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 086/199] bpf: ensure main program has an extable Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 087/199] wifi: iwlwifi: pcie: Handle SO-F device for PCI id 0x7AF0 Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 088/199] spi: spi-geni-qcom: correctly handle -EPROBE_DEFER from dma_request_chan() Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 089/199] regulator: pca9450: Fix LDO3OUT and LDO4OUT MASK Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 090/199] regmap: spi-avmm: Fix regmap_bus max_raw_write Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 091/199] ksmbd: remove internal.h include Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 092/199] fs: introduce lock_rename_child() helper Greg Kroah-Hartman
2023-06-26 18:09 ` [PATCH 6.3 093/199] ksmbd: fix racy issue from using ->d_parent and ->d_name Greg Kroah-Hartman
2023-06-26 18:10 ` Greg Kroah-Hartman [this message]
2023-06-26 18:10 ` [PATCH 6.3 095/199] arm64: dts: rockchip: Fix rk356x PCIe register and range mappings Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 096/199] block: make sure local irq is disabled when calling __blkcg_rstat_flush Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 097/199] io_uring/poll: serialize poll linked timer start with poll removal Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 098/199] x86/mm: Avoid using set_pgd() outside of real PGD pages Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 099/199] ieee802154: hwsim: Fix possible memory leaks Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 100/199] xfrm: Treat already-verified secpath entries as optional Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 101/199] xfrm: Ensure policies always checked on XFRM-I input path Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 102/199] KVM: arm64: PMU: Restore the hosts PMUSERENR_EL0 Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 103/199] xfrm: add missed call to delete offloaded policies Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 104/199] bpf: Fix verifier id tracking of scalars on spill Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 105/199] xfrm: fix inbound ipv4/udp/esp packets to UDPv6 dualstack sockets Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 106/199] bpf: Fix a bpf_jit_dump issue for x86_64 with sysctl bpf_jit_enable Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 107/199] selftests: net: tls: check if FIPS mode is enabled Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 108/199] selftests: net: vrf-xfrm-tests: change authentication and encryption algos Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 109/199] selftests: net: fcnal-test: check if FIPS mode is enabled Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 110/199] xfrm: Linearize the skb after offloading if needed Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 111/199] net/mlx5: DR, Fix wrong action data allocation in decap action Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 112/199] sfc: use budget for TX completions Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 113/199] net: qca_spi: Avoid high load if QCA7000 is not available Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 114/199] mmc: mtk-sd: fix deferred probing Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 115/199] mmc: mvsdio: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 116/199] mmc: omap: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 117/199] mmc: omap_hsmmc: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 118/199] mmc: owl: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 119/199] mmc: sdhci-acpi: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 120/199] mmc: sh_mmcif: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 121/199] mmc: usdhi60rol0: " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 122/199] ipvs: align inner_mac_header for encapsulation Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 123/199] net: dsa: mt7530: fix trapping frames on non-MT7621 SoC MT7530 switch Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 124/199] net: dsa: mt7530: fix handling of BPDUs on " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 125/199] net: dsa: mt7530: fix handling of LLDP frames Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 126/199] net: dsa: introduce preferred_default_local_cpu_port and use on MT7530 Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 127/199] be2net: Extend xmit workaround to BE3 chip Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 128/199] netfilter: nf_tables: fix chain binding transaction logic Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 129/199] netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 130/199] netfilter: nf_tables: drop map element references from preparation phase Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 131/199] netfilter: nft_set_pipapo: .walk does not deal with generations Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 132/199] netfilter: nf_tables: disallow element updates of bound anonymous sets Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 133/199] netfilter: nf_tables: reject unbound anonymous set before commit phase Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 134/199] netfilter: nf_tables: reject unbound chain " Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 135/199] netfilter: nf_tables: disallow updates of anonymous sets Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 136/199] netfilter: nfnetlink_osf: fix module autoload Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 137/199] Revert "net: phy: dp83867: perform soft reset and retain established link" Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 138/199] bpf/btf: Accept function names that contain dots Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 139/199] bpf: Force kprobe multi expected_attach_type for kprobe_multi link Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 140/199] io_uring/net: use the correct msghdr union member in io_sendmsg_copy_hdr Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 141/199] selftests: forwarding: Fix race condition in mirror installation Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 142/199] platform/x86/amd/pmf: Register notify handler only if SPS is enabled Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 143/199] sch_netem: acquire qdisc lock in netem_change() Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 144/199] revert "net: align SO_RCVMARK required privileges with SO_MARK" Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 145/199] arm64: dts: rockchip: fix nEXTRST on SOQuartz Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 146/199] gpiolib: Fix GPIO chip IRQ initialization restriction Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 147/199] gpio: sifive: add missing check for platform_get_irq Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 148/199] iommu/amd: Fix possible memory leak of domain Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 149/199] gpiolib: Fix irq_domain resource tracking for gpiochip_irqchip_add_domain() Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 150/199] scsi: target: iscsi: Fix hang in the iSCSI login code Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 151/199] scsi: target: iscsi: Remove unused transport_timer Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 152/199] scsi: target: iscsi: Prevent login threads from racing between each other Greg Kroah-Hartman
2023-06-26 18:10 ` [PATCH 6.3 153/199] HID: wacom: Add error check to wacom_parse_and_register() Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 154/199] arm64: Add missing Set/Way CMO encodings Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 155/199] smb3: missing null check in SMB2_change_notify Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 156/199] media: cec: core: disable adapter in cec_devnode_unregister Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 157/199] media: cec: core: dont set last_initiator if tx in progress Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 158/199] nfcsim.c: Fix error checking for debugfs_create_dir Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 159/199] btrfs: fix an uninitialized variable warning in btrfs_log_inode Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 160/199] usb: gadget: udc: fix NULL dereference in remove() Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 161/199] nvme: fix miss command type check Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 162/199] nvme: double KA polling frequency to avoid KATO with TBKAS on Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 163/199] nvme: check IO start time when deciding to defer KA Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 164/199] nvme: improve handling of long keep alives Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 165/199] Input: soc_button_array - add invalid acpi_index DMI quirk handling Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 166/199] arm64: dts: qcom: sc7280-idp: drop incorrect dai-cells from WCD938x SDW Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 167/199] arm64: dts: qcom: sc7280-qcard: " Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 168/199] s390/cio: unregister device when the only path is gone Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 169/199] spi: lpspi: disable lpspi module irq in DMA mode Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 170/199] ASoC: codecs: wcd938x-sdw: do not set can_multi_write flag Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 171/199] ASoC: simple-card: Add missing of_node_put() in case of error Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 172/199] soundwire: dmi-quirks: add new mapping for HP Spectre x360 Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 173/199] soundwire: qcom: add proper error paths in qcom_swrm_startup() Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 174/199] platform/x86: int3472: Avoid crash in unregistering regulator gpio Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 175/199] ASoC: nau8824: Add quirk to active-high jack-detect Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 176/199] ASoC: amd: yc: Add Thinkpad Neo14 to quirks list for acp6x Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 177/199] gfs2: Dont get stuck writing page onto itself under direct I/O Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 178/199] s390/purgatory: disable branch profiling Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 179/199] ASoC: fsl_sai: Enable BCI bit if SAI works on synchronous mode with BYP asserted Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 180/199] net: sched: wrap tc_skip_wrapper with CONFIG_RETPOLINE Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 181/199] ALSA: hda/realtek: Add "Intel Reference board" and "NUC 13" SSID in the ALC256 Greg Kroah-Hartman
2023-06-26 18:11   ` Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 182/199] i2c: mchp-pci1xxxx: Avoid cast to incompatible function type Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 183/199] i2c: designware: fix idx_write_cnt in read loop Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 184/199] ARM: dts: Fix erroneous ADS touchscreen polarities Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 185/199] null_blk: Fix: memory release when memory_backed=1 Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 186/199] drm/exynos: vidi: fix a wrong error return Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 187/199] drm/exynos: fix race condition UAF in exynos_g2d_exec_ioctl Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 188/199] drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 189/199] tools/virtio: Fix arm64 ringtest compilation error Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 190/199] vhost_vdpa: tell vqs about the negotiated Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 191/199] vhost_net: revert upend_idx only on retriable error Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 192/199] x86/unwind/orc: Add ELF section with ORC version identifier Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 193/199] x86/apic: Fix kernel panic when booting with intremap=off and x2apic_phys Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 194/199] i2c: imx-lpi2c: fix type char overflow issue when calculating the clock cycle Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 195/199] netfilter: nf_tables: drop module reference after updating chain Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 196/199] KVM: arm64: Restore GICv2-on-GICv3 functionality Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 197/199] ksmbd: fix uninitialized pointer read in ksmbd_vfs_rename() Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 198/199] ksmbd: fix uninitialized pointer read in smb2_create_link() Greg Kroah-Hartman
2023-06-26 18:11 ` [PATCH 6.3 199/199] ksmbd: call putname after using the last component Greg Kroah-Hartman
2023-06-27  9:04 ` [PATCH 6.3 000/199] 6.3.10-rc1 review Jon Hunter
2023-06-27  9:10 ` Ron Economos
2023-06-27 14:51 ` Markus Reichelt
2023-06-27 20:11 ` Chris Paterson
2023-06-27 21:33 ` Guenter Roeck
2023-06-28  6:37 ` Naresh Kamboju
2023-06-28  7:05 ` Conor Dooley
2023-06-28 17:38 ` Allen Pais

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=20230626180809.739741283@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=amir73il@gmail.com \
    --cc=linkinjeon@kernel.org \
    --cc=patches@lists.linux.dev \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.