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, Steve French <sfrench@samba.org>,
	Paulo Alcantara <pc@cjr.nz>,
	Ronnie Sahlberg <lsahlber@redhat.com>,
	Shyam Prasad N <sprasad@microsoft.com>,
	Tom Talpey <tom@talpey.com>, Namjae Jeon <linkinjeon@kernel.org>,
	Sergey Senozhatsky <senozhatsky@chromium.org>,
	linux-cifs@vger.kernel.org, samba-technical@lists.samba.org,
	Kees Cook <keescook@chromium.org>,
	Steve French <stfrench@microsoft.com>
Subject: [PATCH 6.1 149/150] smb3: Replace smb2pdu 1-element arrays with flex-arrays
Date: Mon,  8 Jan 2024 16:36:40 +0100	[thread overview]
Message-ID: <20240108153518.085764838@linuxfoundation.org> (raw)
In-Reply-To: <20240108153511.214254205@linuxfoundation.org>

6.1-stable review patch.  If anyone has any objections, please let me know.

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

From: Kees Cook <keescook@chromium.org>

commit eb3e28c1e89b4984308777231887e41aa8a0151f upstream.

The kernel is globally removing the ambiguous 0-length and 1-element
arrays in favor of flexible arrays, so that we can gain both compile-time
and run-time array bounds checking[1].

Replace the trailing 1-element array with a flexible array in the
following structures:

	struct smb2_err_rsp
	struct smb2_tree_connect_req
	struct smb2_negotiate_rsp
	struct smb2_sess_setup_req
	struct smb2_sess_setup_rsp
	struct smb2_read_req
	struct smb2_read_rsp
	struct smb2_write_req
	struct smb2_write_rsp
	struct smb2_query_directory_req
	struct smb2_query_directory_rsp
	struct smb2_set_info_req
	struct smb2_change_notify_rsp
	struct smb2_create_rsp
	struct smb2_query_info_req
	struct smb2_query_info_rsp

Replace the trailing 1-element array with a flexible array, but leave
the existing structure padding:

	struct smb2_file_all_info
	struct smb2_lock_req

Adjust all related size calculations to match the changes to sizeof().

No machine code output or .data section differences are produced after
these changes.

[1] For lots of details, see both:
    https://docs.kernel.org/process/deprecated.html#zero-length-and-one-element-arrays
    https://people.kernel.org/kees/bounded-flexible-arrays-in-c

Cc: Steve French <sfrench@samba.org>
Cc: Paulo Alcantara <pc@cjr.nz>
Cc: Ronnie Sahlberg <lsahlber@redhat.com>
Cc: Shyam Prasad N <sprasad@microsoft.com>
Cc: Tom Talpey <tom@talpey.com>
Cc: Namjae Jeon <linkinjeon@kernel.org>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: linux-cifs@vger.kernel.org
Cc: samba-technical@lists.samba.org
Reviewed-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 fs/smb/client/smb2file.c |    2 +-
 fs/smb/client/smb2misc.c |    2 +-
 fs/smb/client/smb2ops.c  |   14 +++++++-------
 fs/smb/client/smb2pdu.c  |   16 +++++++---------
 fs/smb/client/smb2pdu.h  |    2 +-
 fs/smb/common/smb2pdu.h  |   42 ++++++++++++++++++++++++------------------
 fs/smb/server/smb2ops.c  |    8 ++++----
 fs/smb/server/smb2pdu.c  |    5 ++---
 8 files changed, 47 insertions(+), 44 deletions(-)

--- a/fs/smb/client/smb2file.c
+++ b/fs/smb/client/smb2file.c
@@ -34,7 +34,7 @@ static struct smb2_symlink_err_rsp *syml
 		len = (u32)err->ErrorContextCount * (offsetof(struct smb2_error_context_rsp,
 							      ErrorContextData) +
 						     sizeof(struct smb2_symlink_err_rsp));
-		if (le32_to_cpu(err->ByteCount) < len || iov->iov_len < len + sizeof(*err))
+		if (le32_to_cpu(err->ByteCount) < len || iov->iov_len < len + sizeof(*err) + 1)
 			return ERR_PTR(-EINVAL);
 
 		p = (struct smb2_error_context_rsp *)err->ErrorData;
--- a/fs/smb/client/smb2misc.c
+++ b/fs/smb/client/smb2misc.c
@@ -113,7 +113,7 @@ static __u32 get_neg_ctxt_len(struct smb
 	} else if (nc_offset + 1 == non_ctxlen) {
 		cifs_dbg(FYI, "no SPNEGO security blob in negprot rsp\n");
 		size_of_pad_before_neg_ctxts = 0;
-	} else if (non_ctxlen == SMB311_NEGPROT_BASE_SIZE)
+	} else if (non_ctxlen == SMB311_NEGPROT_BASE_SIZE + 1)
 		/* has padding, but no SPNEGO blob */
 		size_of_pad_before_neg_ctxts = nc_offset - non_ctxlen + 1;
 	else
--- a/fs/smb/client/smb2ops.c
+++ b/fs/smb/client/smb2ops.c
@@ -5764,7 +5764,7 @@ struct smb_version_values smb20_values =
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -5786,7 +5786,7 @@ struct smb_version_values smb21_values =
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -5807,7 +5807,7 @@ struct smb_version_values smb3any_values
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -5828,7 +5828,7 @@ struct smb_version_values smbdefault_val
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -5849,7 +5849,7 @@ struct smb_version_values smb30_values =
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -5870,7 +5870,7 @@ struct smb_version_values smb302_values
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -5891,7 +5891,7 @@ struct smb_version_values smb311_values
 	.header_size = sizeof(struct smb2_hdr),
 	.header_preamble_size = 0,
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
--- a/fs/smb/client/smb2pdu.c
+++ b/fs/smb/client/smb2pdu.c
@@ -1386,7 +1386,7 @@ SMB2_sess_sendreceive(struct SMB2_sess_d
 
 	/* Testing shows that buffer offset must be at location of Buffer[0] */
 	req->SecurityBufferOffset =
-		cpu_to_le16(sizeof(struct smb2_sess_setup_req) - 1 /* pad */);
+		cpu_to_le16(sizeof(struct smb2_sess_setup_req));
 	req->SecurityBufferLength = cpu_to_le16(sess_data->iov[1].iov_len);
 
 	memset(&rqst, 0, sizeof(struct smb_rqst));
@@ -1905,8 +1905,7 @@ SMB2_tcon(const unsigned int xid, struct
 	iov[0].iov_len = total_len - 1;
 
 	/* Testing shows that buffer offset must be at location of Buffer[0] */
-	req->PathOffset = cpu_to_le16(sizeof(struct smb2_tree_connect_req)
-			- 1 /* pad */);
+	req->PathOffset = cpu_to_le16(sizeof(struct smb2_tree_connect_req));
 	req->PathLength = cpu_to_le16(unc_path_len - 2);
 	iov[1].iov_base = unc_path;
 	iov[1].iov_len = unc_path_len;
@@ -3796,7 +3795,7 @@ SMB2_change_notify(const unsigned int xi
 			ses->Suid, (u8)watch_tree, completion_filter);
 		/* validate that notify information is plausible */
 		if ((rsp_iov.iov_base == NULL) ||
-		    (rsp_iov.iov_len < sizeof(struct smb2_change_notify_rsp)))
+		    (rsp_iov.iov_len < sizeof(struct smb2_change_notify_rsp) + 1))
 			goto cnotify_exit;
 
 		smb_rsp = (struct smb2_change_notify_rsp *)rsp_iov.iov_base;
@@ -5009,7 +5008,7 @@ int SMB2_query_directory_init(const unsi
 	memcpy(bufptr, &asteriks, len);
 
 	req->FileNameOffset =
-		cpu_to_le16(sizeof(struct smb2_query_directory_req) - 1);
+		cpu_to_le16(sizeof(struct smb2_query_directory_req));
 	req->FileNameLength = cpu_to_le16(len);
 	/*
 	 * BB could be 30 bytes or so longer if we used SMB2 specific
@@ -5205,8 +5204,7 @@ SMB2_set_info_init(struct cifs_tcon *tco
 	req->VolatileFileId = volatile_fid;
 	req->AdditionalInformation = cpu_to_le32(additional_info);
 
-	req->BufferOffset =
-			cpu_to_le16(sizeof(struct smb2_set_info_req) - 1);
+	req->BufferOffset = cpu_to_le16(sizeof(struct smb2_set_info_req));
 	req->BufferLength = cpu_to_le32(*size);
 
 	memcpy(req->Buffer, *data, *size);
@@ -5440,9 +5438,9 @@ build_qfs_info_req(struct kvec *iov, str
 	req->VolatileFileId = volatile_fid;
 	/* 1 for pad */
 	req->InputBufferOffset =
-			cpu_to_le16(sizeof(struct smb2_query_info_req) - 1);
+			cpu_to_le16(sizeof(struct smb2_query_info_req));
 	req->OutputBufferLength = cpu_to_le32(
-		outbuf_len + sizeof(struct smb2_query_info_rsp) - 1);
+		outbuf_len + sizeof(struct smb2_query_info_rsp));
 
 	iov->iov_base = (char *)req;
 	iov->iov_len = total_len;
--- a/fs/smb/client/smb2pdu.h
+++ b/fs/smb/client/smb2pdu.h
@@ -57,7 +57,7 @@ struct smb2_rdma_crypto_transform {
 #define COMPOUND_FID 0xFFFFFFFFFFFFFFFFULL
 
 #define SMB2_SYMLINK_STRUCT_SIZE \
-	(sizeof(struct smb2_err_rsp) - 1 + sizeof(struct smb2_symlink_err_rsp))
+	(sizeof(struct smb2_err_rsp) + sizeof(struct smb2_symlink_err_rsp))
 
 #define SYMLINK_ERROR_TAG 0x4c4d5953
 
--- a/fs/smb/common/smb2pdu.h
+++ b/fs/smb/common/smb2pdu.h
@@ -189,7 +189,7 @@ struct smb2_err_rsp {
 	__u8   ErrorContextCount;
 	__u8   Reserved;
 	__le32 ByteCount;  /* even if zero, at least one byte follows */
-	__u8   ErrorData[1];  /* variable length */
+	__u8   ErrorData[];  /* variable length */
 } __packed;
 
 #define SMB3_AES_CCM_NONCE 11
@@ -330,7 +330,7 @@ struct smb2_tree_connect_req {
 	__le16 Flags;		/* Flags in SMB3.1.1 */
 	__le16 PathOffset;
 	__le16 PathLength;
-	__u8   Buffer[1];	/* variable length */
+	__u8   Buffer[];	/* variable length */
 } __packed;
 
 /* Possible ShareType values */
@@ -617,7 +617,7 @@ struct smb2_negotiate_rsp {
 	__le16 SecurityBufferOffset;
 	__le16 SecurityBufferLength;
 	__le32 NegotiateContextOffset;	/* Pre:SMB3.1.1 was reserved/ignored */
-	__u8   Buffer[1];	/* variable length GSS security buffer */
+	__u8   Buffer[];	/* variable length GSS security buffer */
 } __packed;
 
 
@@ -638,7 +638,7 @@ struct smb2_sess_setup_req {
 	__le16 SecurityBufferOffset;
 	__le16 SecurityBufferLength;
 	__le64 PreviousSessionId;
-	__u8   Buffer[1];	/* variable length GSS security buffer */
+	__u8   Buffer[];	/* variable length GSS security buffer */
 } __packed;
 
 /* Currently defined SessionFlags */
@@ -655,7 +655,7 @@ struct smb2_sess_setup_rsp {
 	__le16 SessionFlags;
 	__le16 SecurityBufferOffset;
 	__le16 SecurityBufferLength;
-	__u8   Buffer[1];	/* variable length GSS security buffer */
+	__u8   Buffer[];	/* variable length GSS security buffer */
 } __packed;
 
 
@@ -737,7 +737,7 @@ struct smb2_read_req {
 	__le32 RemainingBytes;
 	__le16 ReadChannelInfoOffset;
 	__le16 ReadChannelInfoLength;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 /* Read flags */
@@ -752,7 +752,7 @@ struct smb2_read_rsp {
 	__le32 DataLength;
 	__le32 DataRemaining;
 	__le32 Flags;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 
@@ -776,7 +776,7 @@ struct smb2_write_req {
 	__le16 WriteChannelInfoOffset;
 	__le16 WriteChannelInfoLength;
 	__le32 Flags;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 struct smb2_write_rsp {
@@ -787,7 +787,7 @@ struct smb2_write_rsp {
 	__le32 DataLength;
 	__le32 DataRemaining;
 	__u32  Reserved2;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 
@@ -834,7 +834,10 @@ struct smb2_lock_req {
 	__u64  PersistentFileId;
 	__u64  VolatileFileId;
 	/* Followed by at least one */
-	struct smb2_lock_element locks[1];
+	union {
+		struct smb2_lock_element lock;
+		DECLARE_FLEX_ARRAY(struct smb2_lock_element, locks);
+	};
 } __packed;
 
 struct smb2_lock_rsp {
@@ -888,7 +891,7 @@ struct smb2_query_directory_req {
 	__le16 FileNameOffset;
 	__le16 FileNameLength;
 	__le32 OutputBufferLength;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 struct smb2_query_directory_rsp {
@@ -896,7 +899,7 @@ struct smb2_query_directory_rsp {
 	__le16 StructureSize; /* Must be 9 */
 	__le16 OutputBufferOffset;
 	__le32 OutputBufferLength;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 /*
@@ -919,7 +922,7 @@ struct smb2_set_info_req {
 	__le32 AdditionalInformation;
 	__u64  PersistentFileId;
 	__u64  VolatileFileId;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 struct smb2_set_info_rsp {
@@ -974,7 +977,7 @@ struct smb2_change_notify_rsp {
 	__le16	StructureSize;  /* Must be 9 */
 	__le16	OutputBufferOffset;
 	__le32	OutputBufferLength;
-	__u8	Buffer[1]; /* array of file notify structs */
+	__u8	Buffer[]; /* array of file notify structs */
 } __packed;
 
 
@@ -1180,7 +1183,7 @@ struct smb2_create_rsp {
 	__u64  VolatileFileId;
 	__le32 CreateContextsOffset;
 	__le32 CreateContextsLength;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 struct create_posix {
@@ -1524,7 +1527,7 @@ struct smb2_query_info_req {
 	__le32 Flags;
 	__u64  PersistentFileId;
 	__u64  VolatileFileId;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 struct smb2_query_info_rsp {
@@ -1532,7 +1535,7 @@ struct smb2_query_info_rsp {
 	__le16 StructureSize; /* Must be 9 */
 	__le16 OutputBufferOffset;
 	__le32 OutputBufferLength;
-	__u8   Buffer[1];
+	__u8   Buffer[];
 } __packed;
 
 /*
@@ -1593,7 +1596,10 @@ struct smb2_file_all_info { /* data bloc
 	__le32 Mode;
 	__le32 AlignmentRequirement;
 	__le32 FileNameLength;
-	char   FileName[1];
+	union {
+		char __pad;	/* Legacy structure padding */
+		DECLARE_FLEX_ARRAY(char, FileName);
+	};
 } __packed; /* level 18 Query */
 
 struct smb2_file_eof_info { /* encoding of request for level 10 */
--- a/fs/smb/server/smb2ops.c
+++ b/fs/smb/server/smb2ops.c
@@ -26,7 +26,7 @@ static struct smb_version_values smb21_s
 	.unlock_lock_type = SMB2_LOCKFLAG_UNLOCK,
 	.header_size = sizeof(struct smb2_hdr),
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -52,7 +52,7 @@ static struct smb_version_values smb30_s
 	.unlock_lock_type = SMB2_LOCKFLAG_UNLOCK,
 	.header_size = sizeof(struct smb2_hdr),
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -79,7 +79,7 @@ static struct smb_version_values smb302_
 	.unlock_lock_type = SMB2_LOCKFLAG_UNLOCK,
 	.header_size = sizeof(struct smb2_hdr),
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
@@ -106,7 +106,7 @@ static struct smb_version_values smb311_
 	.unlock_lock_type = SMB2_LOCKFLAG_UNLOCK,
 	.header_size = sizeof(struct smb2_hdr),
 	.max_header_size = MAX_SMB2_HDR_SIZE,
-	.read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
+	.read_rsp_size = sizeof(struct smb2_read_rsp),
 	.lock_cmd = SMB2_LOCK,
 	.cap_unix = 0,
 	.cap_nt_find = SMB2_NT_FIND,
--- a/fs/smb/server/smb2pdu.c
+++ b/fs/smb/server/smb2pdu.c
@@ -295,7 +295,7 @@ int init_smb2_neg_rsp(struct ksmbd_work
 		rsp->SecurityMode |= SMB2_NEGOTIATE_SIGNING_REQUIRED_LE;
 	err = ksmbd_iov_pin_rsp(work, rsp,
 				sizeof(struct smb2_negotiate_rsp) -
-				sizeof(rsp->Buffer) + AUTH_GSS_LENGTH);
+				sizeof(struct smb2_hdr) + AUTH_GSS_LENGTH);
 	if (err)
 		return err;
 	conn->use_spnego = true;
@@ -1264,8 +1264,7 @@ err_out:
 	if (!rc)
 		rc = ksmbd_iov_pin_rsp(work, rsp,
 				       sizeof(struct smb2_negotiate_rsp) -
-					sizeof(rsp->Buffer) +
-					AUTH_GSS_LENGTH + neg_ctxt_len);
+				       sizeof(struct smb2_hdr) + AUTH_GSS_LENGTH + neg_ctxt_len);
 	if (rc < 0)
 		smb2_set_err_rsp(work);
 	return rc;



  parent reply	other threads:[~2024-01-08 15:44 UTC|newest]

Thread overview: 167+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-08 15:34 [PATCH 6.1 000/150] 6.1.72-rc1 review Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 001/150] keys, dns: Fix missing size check of V1 server-list header Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 002/150] block: Dont invalidate pagecache for invalid falloc modes Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 003/150] ALSA: hda/realtek: enable SND_PCI_QUIRK for hp pavilion 14-ec1xxx series Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 004/150] ALSA: hda/realtek: fix mute/micmute LEDs for a HP ZBook Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 005/150] ALSA: hda/realtek: Fix mute and mic-mute LEDs for HP ProBook 440 G6 Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 006/150] mptcp: prevent tcp diag from closing listener subflows Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 007/150] Revert "PCI/ASPM: Remove pcie_aspm_pm_state_change()" Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 008/150] drm/mgag200: Fix gamma lut not initialized for G200ER, G200EV, G200SE Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 009/150] cifs: cifs_chan_is_iface_active should be called with chan_lock held Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 010/150] cifs: do not depend on release_iface for maintaining iface_list Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 011/150] KVM: x86/pmu: fix masking logic for MSR_CORE_PERF_GLOBAL_CTRL Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 012/150] wifi: iwlwifi: pcie: dont synchronize IRQs from IRQ Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 013/150] drm/bridge: ti-sn65dsi86: Never store more than msg->size bytes in AUX xfer Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 014/150] netfilter: use skb_ip_totlen and iph_totlen Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 015/150] netfilter: nf_tables: set transport offset from mac header for netdev/egress Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 016/150] nfc: llcp_core: Hold a ref to llcp_local->dev when holding a ref to llcp_local Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 017/150] octeontx2-af: Fix marking couple of structure as __packed Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 018/150] drm/i915/dp: Fix passing the correct DPCD_REV for drm_dp_set_phy_test_pattern Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 019/150] ice: Fix link_down_on_close message Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 020/150] ice: Shut down VSI with "link-down-on-close" enabled Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 021/150] i40e: Fix filter input checks to prevent config with invalid values Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 022/150] igc: Report VLAN EtherType matching back to user Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 023/150] igc: Check VLAN TCI mask Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 024/150] igc: Check VLAN EtherType mask Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 025/150] ASoC: fsl_rpmsg: Fix error handler with pm_runtime_enable Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 026/150] ASoC: mediatek: mt8186: fix AUD_PAD_TOP register and offset Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 027/150] mlxbf_gige: fix receive packet race condition Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 028/150] net: sched: em_text: fix possible memory leak in em_text_destroy() Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 029/150] r8169: Fix PCI error on system resume Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 030/150] can: raw: add support for SO_MARK Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 031/150] net-timestamp: extend SOF_TIMESTAMPING_OPT_ID to HW timestamps Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 032/150] net: annotate data-races around sk->sk_tsflags Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 033/150] net: annotate data-races around sk->sk_bind_phc Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 034/150] net: Implement missing getsockopt(SO_TIMESTAMPING_NEW) Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 035/150] selftests: bonding: do not set port down when adding to bond Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 036/150] ARM: sun9i: smp: Fix array-index-out-of-bounds read in sunxi_mc_smp_init Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 037/150] sfc: fix a double-free bug in efx_probe_filters Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 038/150] net: bcmgenet: Fix FCS generation for fragmented skbuffs Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 039/150] netfilter: nft_immediate: drop chain reference counter on error Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 040/150] net: Save and restore msg_namelen in sock_sendmsg Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 041/150] i40e: fix use-after-free in i40e_aqc_add_filters() Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 042/150] ASoC: meson: g12a-toacodec: Validate written enum values Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 043/150] ASoC: meson: g12a-tohdmitx: " Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 044/150] ASoC: meson: g12a-toacodec: Fix event generation Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 045/150] ASoC: meson: g12a-tohdmitx: Fix event generation for S/PDIF mux Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 046/150] i40e: Restore VF MSI-X state during PCI reset Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 047/150] igc: Fix hicredit calculation Greg Kroah-Hartman
2024-01-08 15:34 ` [PATCH 6.1 048/150] net/qla3xxx: fix potential memleak in ql_alloc_buffer_queues Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 049/150] net/smc: fix invalid link access in dumping SMC-R connections Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 050/150] octeontx2-af: Always configure NIX TX link credits based on max frame size Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 051/150] octeontx2-af: Re-enable MAC TX in otx2_stop processing Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 052/150] asix: Add check for usbnet_get_endpoints Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 053/150] net: ravb: Wait for operating mode to be applied Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 054/150] bnxt_en: Remove mis-applied code from bnxt_cfg_ntp_filters() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 055/150] net: Implement missing SO_TIMESTAMPING_NEW cmsg support Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 056/150] selftests: secretmem: floor the memory size to the multiple of page_size Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 057/150] cpu/SMT: Create topology_smt_thread_allowed() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 058/150] cpu/SMT: Make SMT control more robust against enumeration failures Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 059/150] srcu: Fix callbacks acceleration mishandling Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 060/150] bpf, x64: Fix tailcall infinite loop Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 061/150] bpf, x86: Simplify the parsing logic of structure parameters Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 062/150] bpf, x86: save/restore regs with BPF_DW size Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 063/150] net: Declare MSG_SPLICE_PAGES internal sendmsg() flag Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 064/150] udp: Convert udp_sendpage() to use MSG_SPLICE_PAGES Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 065/150] splice, net: Add a splice_eof op to file-ops and socket-ops Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 066/150] ipv4, ipv6: Use splice_eof() to flush Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 067/150] udp: introduce udp->udp_flags Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 068/150] udp: move udp->no_check6_tx to udp->udp_flags Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 069/150] udp: move udp->no_check6_rx " Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 070/150] udp: move udp->gro_enabled " Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 071/150] udp: move udp->accept_udp_{l4|fraglist} " Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 072/150] udp: lockless UDP_ENCAP_L2TPINUDP / UDP_GRO Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 073/150] udp: annotate data-races around udp->encap_type Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 074/150] wifi: iwlwifi: yoyo: swap cdb and jacket bits values Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 075/150] arm64: dts: qcom: sdm845: align RPMh regulator nodes with bindings Greg Kroah-Hartman
2024-01-08 15:42   ` Konrad Dybcio
2024-01-08 15:49     ` Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 076/150] arm64: dts: qcom: sdm845: Fix PSCI power domain names Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 077/150] fbdev: imsttfb: Release framebuffer and dealloc cmap on error path Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 078/150] fbdev: imsttfb: fix double free in probe() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 079/150] bpf: decouple prune and jump points Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 080/150] bpf: remove unnecessary " Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 081/150] bpf: Remove unused insn_cnt argument from visit_[func_call_]insn() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 082/150] bpf: clean up visit_insn()s instruction processing Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 083/150] bpf: Support new 32bit offset jmp instruction Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 084/150] bpf: handle ldimm64 properly in check_cfg() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 085/150] bpf: fix precision backtracking instruction iteration Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 086/150] blk-mq: make sure active queue usage is held for bio_integrity_prep() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 087/150] net/mlx5: Increase size of irq name buffer Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 088/150] s390/mm: add missing arch_set_page_dat() call to vmem_crst_alloc() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 089/150] s390/cpumf: support user space events for counting Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 090/150] f2fs: clean up i_compress_flag and i_compress_level usage Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 091/150] f2fs: convert to use bitmap API Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 092/150] f2fs: assign default compression level Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 093/150] f2fs: set the default compress_level on ioctl Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 094/150] selftests: mptcp: fix fastclose with csum failure Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 095/150] selftests: mptcp: set FAILING_LINKS in run_tests Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 096/150] media: camss: sm8250: Virtual channels for CSID Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 097/150] media: qcom: camss: Fix set CSI2_RX_CFG1_VC_MODE when VC is greater than 3 Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 098/150] ext4: convert move_extent_per_page() to use folios Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 099/150] khugepage: replace try_to_release_page() with filemap_release_folio() Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 100/150] memory-failure: convert truncate_error_page() to use folio Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 101/150] mm: merge folio_has_private()/filemap_release_folio() call pairs Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 102/150] mm, netfs, fscache: stop read optimisation when folio removed from pagecache Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 103/150] filemap: add a per-mapping stable writes flag Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 104/150] block: update the stable_writes flag in bdev_add Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 105/150] smb: client: fix missing mode bits for SMB symlinks Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 106/150] net: dpaa2-eth: rearrange variable in dpaa2_eth_get_ethtool_stats Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 107/150] dpaa2-eth: recycle the RX buffer only after all processing done Greg Kroah-Hartman
2024-01-08 15:35 ` [PATCH 6.1 108/150] ethtool: dont propagate EOPNOTSUPP from dumps Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 109/150] bpf, sockmap: af_unix stream sockets need to hold ref for pair sock Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 110/150] firmware: arm_scmi: Fix frequency truncation by promoting multiplier type Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 111/150] ALSA: hda/realtek: Add quirk for Lenovo Yoga Pro 7 Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 112/150] genirq/affinity: Remove the firstvec parameter from irq_build_affinity_masks Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 113/150] genirq/affinity: Pass affinity managed mask array to irq_build_affinity_masks Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 114/150] genirq/affinity: Dont pass irq_affinity_desc " Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 115/150] genirq/affinity: Rename irq_build_affinity_masks as group_cpus_evenly Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 116/150] genirq/affinity: Move group_cpus_evenly() into lib/ Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 117/150] lib/group_cpus.c: avoid acquiring cpu hotplug lock in group_cpus_evenly Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 118/150] mm/memory_hotplug: add missing mem_hotplug_lock Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 119/150] mm/memory_hotplug: fix error handling in add_memory_resource() Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 120/150] net: sched: call tcf_ct_params_free to free params in tcf_ct_init Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 121/150] netfilter: flowtable: allow unidirectional rules Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 122/150] netfilter: flowtable: cache info of last offload Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 123/150] net/sched: act_ct: offload UDP NEW connections Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 124/150] net/sched: act_ct: Fix promotion of offloaded unreplied tuple Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 125/150] netfilter: flowtable: GC pushes back packets to classic path Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 126/150] net/sched: act_ct: Take per-cb reference to tcf_ct_flow_table Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 127/150] octeontx2-af: Fix pause frame configuration Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 128/150] octeontx2-af: Support variable number of lmacs Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 129/150] btrfs: fix qgroup_free_reserved_data int overflow Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 130/150] btrfs: mark the len field in struct btrfs_ordered_sum as unsigned Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 131/150] ring-buffer: Fix 32-bit rb_time_read() race with rb_time_cmpxchg() Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 132/150] firewire: ohci: suppress unexpected system reboot in AMD Ryzen machines and ASM108x/VT630x PCIe cards Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 133/150] x86/kprobes: fix incorrect return address calculation in kprobe_emulate_call_indirect Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 134/150] i2c: core: Fix atomic xfer check for non-preempt config Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 135/150] mm: fix unmap_mapping_range high bits shift bug Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 136/150] drm/amdgpu: skip gpu_info fw loading on navi12 Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 137/150] drm/amd/display: add nv12 bounding box Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 138/150] mmc: meson-mx-sdhc: Fix initialization frozen issue Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 139/150] mmc: rpmb: fixes pause retune on all RPMB partitions Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 140/150] mmc: core: Cancel delayed work before releasing host Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 141/150] mmc: sdhci-sprd: Fix eMMC init failure after hw reset Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 142/150] genirq/affinity: Only build SMP-only helper functions on SMP kernels Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 143/150] f2fs: compress: fix to assign compress_level for lz4 correctly Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 144/150] net/sched: act_ct: additional checks for outdated flows Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 145/150] net/sched: act_ct: Always fill offloading tuple iifidx Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 146/150] bpf: Fix a verifier bug due to incorrect branch offset comparison with cpu=v4 Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 147/150] bpf: syzkaller found null ptr deref in unix_bpf proto add Greg Kroah-Hartman
2024-01-08 15:36 ` [PATCH 6.1 148/150] media: qcom: camss: Comment CSID dt_id field Greg Kroah-Hartman
2024-01-08 15:36 ` Greg Kroah-Hartman [this message]
2024-01-09  1:54   ` [PATCH 6.1 149/150] smb3: Replace smb2pdu 1-element arrays with flex-arrays Namjae Jeon
2024-01-08 15:36 ` [PATCH 6.1 150/150] Revert "interconnect: qcom: sm8250: Enable sync_state" Greg Kroah-Hartman
2024-01-08 17:57 ` [PATCH 6.1 000/150] 6.1.72-rc1 review SeongJae Park
2024-01-08 18:35 ` Florian Fainelli
2024-01-08 18:48 ` Allen
2024-01-08 20:56 ` Shuah Khan
2024-01-09  9:37 ` Naresh Kamboju
2024-01-09 13:15 ` Conor Dooley
2024-01-09 13:45 ` Jon Hunter
2024-01-09 16:18 ` Sven Joachim
2024-01-09 18:05 ` Ron Economos
2024-01-09 18:58 ` Kelsey Steele
2024-01-09 19:53 ` Pavel Machek
2024-01-10  9:58 ` Yann Sionneau
2024-01-10 10:58 ` 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=20240108153518.085764838@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=keescook@chromium.org \
    --cc=linkinjeon@kernel.org \
    --cc=linux-cifs@vger.kernel.org \
    --cc=lsahlber@redhat.com \
    --cc=patches@lists.linux.dev \
    --cc=pc@cjr.nz \
    --cc=samba-technical@lists.samba.org \
    --cc=senozhatsky@chromium.org \
    --cc=sfrench@samba.org \
    --cc=sprasad@microsoft.com \
    --cc=stable@vger.kernel.org \
    --cc=stfrench@microsoft.com \
    --cc=tom@talpey.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.