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, GUO Zihua <guozihua@huawei.com>,
	John Johansen <john.johansen@canonical.com>,
	Mimi Zohar <zohar@linux.ibm.com>,
	Casey Schaufler <casey@schaufler-ca.com>,
	Paul Moore <paul@paul-moore.com>
Subject: [PATCH 6.6 116/139] ima: Avoid blocking in RCU read-side critical section
Date: Tue,  9 Jul 2024 13:10:16 +0200	[thread overview]
Message-ID: <20240709110702.656504280@linuxfoundation.org> (raw)
In-Reply-To: <20240709110658.146853929@linuxfoundation.org>

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

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

From: GUO Zihua <guozihua@huawei.com>

commit 9a95c5bfbf02a0a7f5983280fe284a0ff0836c34 upstream.

A panic happens in ima_match_policy:

BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
PGD 42f873067 P4D 0
Oops: 0000 [#1] SMP NOPTI
CPU: 5 PID: 1286325 Comm: kubeletmonit.sh
Kdump: loaded Tainted: P
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
               BIOS 0.0.0 02/06/2015
RIP: 0010:ima_match_policy+0x84/0x450
Code: 49 89 fc 41 89 cf 31 ed 89 44 24 14 eb 1c 44 39
      7b 18 74 26 41 83 ff 05 74 20 48 8b 1b 48 3b 1d
      f2 b9 f4 00 0f 84 9c 01 00 00 <44> 85 73 10 74 ea
      44 8b 6b 14 41 f6 c5 01 75 d4 41 f6 c5 02 74 0f
RSP: 0018:ff71570009e07a80 EFLAGS: 00010207
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000200
RDX: ffffffffad8dc7c0 RSI: 0000000024924925 RDI: ff3e27850dea2000
RBP: 0000000000000000 R08: 0000000000000000 R09: ffffffffabfce739
R10: ff3e27810cc42400 R11: 0000000000000000 R12: ff3e2781825ef970
R13: 00000000ff3e2785 R14: 000000000000000c R15: 0000000000000001
FS:  00007f5195b51740(0000)
GS:ff3e278b12d40000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000010 CR3: 0000000626d24002 CR4: 0000000000361ee0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 ima_get_action+0x22/0x30
 process_measurement+0xb0/0x830
 ? page_add_file_rmap+0x15/0x170
 ? alloc_set_pte+0x269/0x4c0
 ? prep_new_page+0x81/0x140
 ? simple_xattr_get+0x75/0xa0
 ? selinux_file_open+0x9d/0xf0
 ima_file_check+0x64/0x90
 path_openat+0x571/0x1720
 do_filp_open+0x9b/0x110
 ? page_counter_try_charge+0x57/0xc0
 ? files_cgroup_alloc_fd+0x38/0x60
 ? __alloc_fd+0xd4/0x250
 ? do_sys_open+0x1bd/0x250
 do_sys_open+0x1bd/0x250
 do_syscall_64+0x5d/0x1d0
 entry_SYSCALL_64_after_hwframe+0x65/0xca

Commit c7423dbdbc9e ("ima: Handle -ESTALE returned by
ima_filter_rule_match()") introduced call to ima_lsm_copy_rule within a
RCU read-side critical section which contains kmalloc with GFP_KERNEL.
This implies a possible sleep and violates limitations of RCU read-side
critical sections on non-PREEMPT systems.

Sleeping within RCU read-side critical section might cause
synchronize_rcu() returning early and break RCU protection, allowing a
UAF to happen.

The root cause of this issue could be described as follows:
|	Thread A	|	Thread B	|
|			|ima_match_policy	|
|			|  rcu_read_lock	|
|ima_lsm_update_rule	|			|
|  synchronize_rcu	|			|
|			|    kmalloc(GFP_KERNEL)|
|			|      sleep		|
==> synchronize_rcu returns early
|  kfree(entry)		|			|
|			|    entry = entry->next|
==> UAF happens and entry now becomes NULL (or could be anything).
|			|    entry->action	|
==> Accessing entry might cause panic.

To fix this issue, we are converting all kmalloc that is called within
RCU read-side critical section to use GFP_ATOMIC.

Fixes: c7423dbdbc9e ("ima: Handle -ESTALE returned by ima_filter_rule_match()")
Cc: stable@vger.kernel.org
Signed-off-by: GUO Zihua <guozihua@huawei.com>
Acked-by: John Johansen <john.johansen@canonical.com>
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
Reviewed-by: Casey Schaufler <casey@schaufler-ca.com>
[PM: fixed missing comment, long lines, !CONFIG_IMA_LSM_RULES case]
Signed-off-by: Paul Moore <paul@paul-moore.com>
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 include/linux/lsm_hook_defs.h       |    2 +-
 include/linux/security.h            |    5 +++--
 kernel/auditfilter.c                |    5 +++--
 security/apparmor/audit.c           |    6 +++---
 security/apparmor/include/audit.h   |    2 +-
 security/integrity/ima/ima.h        |    2 +-
 security/integrity/ima/ima_policy.c |   15 +++++++++------
 security/security.c                 |    6 ++++--
 security/selinux/include/audit.h    |    4 +++-
 security/selinux/ss/services.c      |    5 +++--
 security/smack/smack_lsm.c          |    4 +++-
 11 files changed, 34 insertions(+), 22 deletions(-)

--- a/include/linux/lsm_hook_defs.h
+++ b/include/linux/lsm_hook_defs.h
@@ -390,7 +390,7 @@ LSM_HOOK(int, 0, key_getsecurity, struct
 
 #ifdef CONFIG_AUDIT
 LSM_HOOK(int, 0, audit_rule_init, u32 field, u32 op, char *rulestr,
-	 void **lsmrule)
+	 void **lsmrule, gfp_t gfp)
 LSM_HOOK(int, 0, audit_rule_known, struct audit_krule *krule)
 LSM_HOOK(int, 0, audit_rule_match, u32 secid, u32 field, u32 op, void *lsmrule)
 LSM_HOOK(void, LSM_RET_VOID, audit_rule_free, void *lsmrule)
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -1953,7 +1953,8 @@ static inline int security_key_getsecuri
 
 #ifdef CONFIG_AUDIT
 #ifdef CONFIG_SECURITY
-int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule);
+int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule,
+			     gfp_t gfp);
 int security_audit_rule_known(struct audit_krule *krule);
 int security_audit_rule_match(u32 secid, u32 field, u32 op, void *lsmrule);
 void security_audit_rule_free(void *lsmrule);
@@ -1961,7 +1962,7 @@ void security_audit_rule_free(void *lsmr
 #else
 
 static inline int security_audit_rule_init(u32 field, u32 op, char *rulestr,
-					   void **lsmrule)
+					   void **lsmrule, gfp_t gfp)
 {
 	return 0;
 }
--- a/kernel/auditfilter.c
+++ b/kernel/auditfilter.c
@@ -529,7 +529,8 @@ static struct audit_entry *audit_data_to
 			entry->rule.buflen += f_val;
 			f->lsm_str = str;
 			err = security_audit_rule_init(f->type, f->op, str,
-						       (void **)&f->lsm_rule);
+						       (void **)&f->lsm_rule,
+						       GFP_KERNEL);
 			/* Keep currently invalid fields around in case they
 			 * become valid after a policy reload. */
 			if (err == -EINVAL) {
@@ -799,7 +800,7 @@ static inline int audit_dupe_lsm_field(s
 
 	/* our own (refreshed) copy of lsm_rule */
 	ret = security_audit_rule_init(df->type, df->op, df->lsm_str,
-				       (void **)&df->lsm_rule);
+				       (void **)&df->lsm_rule, GFP_KERNEL);
 	/* Keep currently invalid fields around in case they
 	 * become valid after a policy reload. */
 	if (ret == -EINVAL) {
--- a/security/apparmor/audit.c
+++ b/security/apparmor/audit.c
@@ -217,7 +217,7 @@ void aa_audit_rule_free(void *vrule)
 	}
 }
 
-int aa_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule)
+int aa_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule, gfp_t gfp)
 {
 	struct aa_audit_rule *rule;
 
@@ -230,14 +230,14 @@ int aa_audit_rule_init(u32 field, u32 op
 		return -EINVAL;
 	}
 
-	rule = kzalloc(sizeof(struct aa_audit_rule), GFP_KERNEL);
+	rule = kzalloc(sizeof(struct aa_audit_rule), gfp);
 
 	if (!rule)
 		return -ENOMEM;
 
 	/* Currently rules are treated as coming from the root ns */
 	rule->label = aa_label_parse(&root_ns->unconfined->label, rulestr,
-				     GFP_KERNEL, true, false);
+				     gfp, true, false);
 	if (IS_ERR(rule->label)) {
 		int err = PTR_ERR(rule->label);
 		aa_audit_rule_free(rule);
--- a/security/apparmor/include/audit.h
+++ b/security/apparmor/include/audit.h
@@ -193,7 +193,7 @@ static inline int complain_error(int err
 }
 
 void aa_audit_rule_free(void *vrule);
-int aa_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule);
+int aa_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule, gfp_t gfp);
 int aa_audit_rule_known(struct audit_krule *rule);
 int aa_audit_rule_match(u32 sid, u32 field, u32 op, void *vrule);
 
--- a/security/integrity/ima/ima.h
+++ b/security/integrity/ima/ima.h
@@ -430,7 +430,7 @@ static inline void ima_free_modsig(struc
 #else
 
 static inline int ima_filter_rule_init(u32 field, u32 op, char *rulestr,
-				       void **lsmrule)
+				       void **lsmrule, gfp_t gfp)
 {
 	return -EINVAL;
 }
--- a/security/integrity/ima/ima_policy.c
+++ b/security/integrity/ima/ima_policy.c
@@ -401,7 +401,8 @@ static void ima_free_rule(struct ima_rul
 	kfree(entry);
 }
 
-static struct ima_rule_entry *ima_lsm_copy_rule(struct ima_rule_entry *entry)
+static struct ima_rule_entry *ima_lsm_copy_rule(struct ima_rule_entry *entry,
+						gfp_t gfp)
 {
 	struct ima_rule_entry *nentry;
 	int i;
@@ -410,7 +411,7 @@ static struct ima_rule_entry *ima_lsm_co
 	 * Immutable elements are copied over as pointers and data; only
 	 * lsm rules can change
 	 */
-	nentry = kmemdup(entry, sizeof(*nentry), GFP_KERNEL);
+	nentry = kmemdup(entry, sizeof(*nentry), gfp);
 	if (!nentry)
 		return NULL;
 
@@ -425,7 +426,8 @@ static struct ima_rule_entry *ima_lsm_co
 
 		ima_filter_rule_init(nentry->lsm[i].type, Audit_equal,
 				     nentry->lsm[i].args_p,
-				     &nentry->lsm[i].rule);
+				     &nentry->lsm[i].rule,
+				     gfp);
 		if (!nentry->lsm[i].rule)
 			pr_warn("rule for LSM \'%s\' is undefined\n",
 				nentry->lsm[i].args_p);
@@ -438,7 +440,7 @@ static int ima_lsm_update_rule(struct im
 	int i;
 	struct ima_rule_entry *nentry;
 
-	nentry = ima_lsm_copy_rule(entry);
+	nentry = ima_lsm_copy_rule(entry, GFP_KERNEL);
 	if (!nentry)
 		return -ENOMEM;
 
@@ -664,7 +666,7 @@ retry:
 		}
 
 		if (rc == -ESTALE && !rule_reinitialized) {
-			lsm_rule = ima_lsm_copy_rule(rule);
+			lsm_rule = ima_lsm_copy_rule(rule, GFP_ATOMIC);
 			if (lsm_rule) {
 				rule_reinitialized = true;
 				goto retry;
@@ -1140,7 +1142,8 @@ static int ima_lsm_rule_init(struct ima_
 	entry->lsm[lsm_rule].type = audit_type;
 	result = ima_filter_rule_init(entry->lsm[lsm_rule].type, Audit_equal,
 				      entry->lsm[lsm_rule].args_p,
-				      &entry->lsm[lsm_rule].rule);
+				      &entry->lsm[lsm_rule].rule,
+				      GFP_KERNEL);
 	if (!entry->lsm[lsm_rule].rule) {
 		pr_warn("rule for LSM \'%s\' is undefined\n",
 			entry->lsm[lsm_rule].args_p);
--- a/security/security.c
+++ b/security/security.c
@@ -5116,15 +5116,17 @@ int security_key_getsecurity(struct key
  * @op: rule operator
  * @rulestr: rule context
  * @lsmrule: receive buffer for audit rule struct
+ * @gfp: GFP flag used for kmalloc
  *
  * Allocate and initialize an LSM audit rule structure.
  *
  * Return: Return 0 if @lsmrule has been successfully set, -EINVAL in case of
  *         an invalid rule.
  */
-int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule)
+int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule,
+			     gfp_t gfp)
 {
-	return call_int_hook(audit_rule_init, 0, field, op, rulestr, lsmrule);
+	return call_int_hook(audit_rule_init, 0, field, op, rulestr, lsmrule, gfp);
 }
 
 /**
--- a/security/selinux/include/audit.h
+++ b/security/selinux/include/audit.h
@@ -21,12 +21,14 @@
  *	@op: the operator the rule uses
  *	@rulestr: the text "target" of the rule
  *	@rule: pointer to the new rule structure returned via this
+ *	@gfp: GFP flag used for kmalloc
  *
  *	Returns 0 if successful, -errno if not.  On success, the rule structure
  *	will be allocated internally.  The caller must free this structure with
  *	selinux_audit_rule_free() after use.
  */
-int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **rule);
+int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **rule,
+			    gfp_t gfp);
 
 /**
  *	selinux_audit_rule_free - free an selinux audit rule structure.
--- a/security/selinux/ss/services.c
+++ b/security/selinux/ss/services.c
@@ -3497,7 +3497,8 @@ void selinux_audit_rule_free(void *vrule
 	}
 }
 
-int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule)
+int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule,
+			    gfp_t gfp)
 {
 	struct selinux_state *state = &selinux_state;
 	struct selinux_policy *policy;
@@ -3538,7 +3539,7 @@ int selinux_audit_rule_init(u32 field, u
 		return -EINVAL;
 	}
 
-	tmprule = kzalloc(sizeof(struct selinux_audit_rule), GFP_KERNEL);
+	tmprule = kzalloc(sizeof(struct selinux_audit_rule), gfp);
 	if (!tmprule)
 		return -ENOMEM;
 	context_init(&tmprule->au_ctxt);
--- a/security/smack/smack_lsm.c
+++ b/security/smack/smack_lsm.c
@@ -4616,11 +4616,13 @@ static int smack_post_notification(const
  * @op: required testing operator (=, !=, >, <, ...)
  * @rulestr: smack label to be audited
  * @vrule: pointer to save our own audit rule representation
+ * @gfp: type of the memory for the allocation
  *
  * Prepare to audit cases where (@field @op @rulestr) is true.
  * The label to be audited is created if necessay.
  */
-static int smack_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule)
+static int smack_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule,
+				 gfp_t gfp)
 {
 	struct smack_known *skp;
 	char **rule = (char **)vrule;



  parent reply	other threads:[~2024-07-09 11:18 UTC|newest]

Thread overview: 161+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-09 11:08 [PATCH 6.6 000/139] 6.6.39-rc1 review Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 001/139] locking/mutex: Introduce devm_mutex_init() Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 002/139] leds: an30259a: Use devm_mutex_init() for mutex initialization Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 003/139] crypto: hisilicon/debugfs - Fix debugfs uninit process issue Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 004/139] drm/lima: fix shared irq handling on driver remove Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 005/139] powerpc: Avoid nmi_enter/nmi_exit in real mode interrupt Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 006/139] media: dvb: as102-fe: Fix as10x_register_addr packing Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 007/139] media: dvb-usb: dib0700_devices: Add missing release_firmware() Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 008/139] IB/core: Implement a limit on UMAD receive List Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 009/139] scsi: qedf: Make qedf_execute_tmf() non-preemptible Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 010/139] irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 011/139] selftests/bpf: adjust dummy_st_ops_success to detect additional error Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 012/139] selftests/bpf: do not pass NULL for non-nullable params in dummy_st_ops Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 013/139] selftests/bpf: dummy_st_ops should reject 0 for non-nullable params Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 014/139] RISC-V: KVM: Fix the initial sample period value Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 015/139] crypto: aead,cipher - zeroize key buffer after use Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 016/139] media: mediatek: vcodec: Only free buffer VA that is not NULL Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 017/139] drm/amdgpu: Fix uninitialized variable warnings Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 018/139] drm/amdgpu: Using uninitialized value *size when calling amdgpu_vce_cs_reloc Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 019/139] drm/amdgpu: Initialize timestamp for some legacy SOCs Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 020/139] drm/amd/display: Check index msg_id before read or write Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 021/139] drm/amd/display: Check pipe offset before setting vblank Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 022/139] drm/amd/display: Skip finding free audio for unknown engine_id Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 023/139] drm/amd/display: Fix uninitialized variables in DM Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 024/139] drm/amdgpu: fix uninitialized scalar variable warning Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 025/139] drm/amdgpu: fix the warning about the expression (int)size - len Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 026/139] media: dw2102: Dont translate i2c read into write Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 027/139] riscv: Apply SiFive CIP-1200 workaround to single-ASID sfence.vma Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 028/139] sctp: prefer struct_size over open coded arithmetic Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 029/139] firmware: dmi: Stop decoding on broken entry Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 030/139] Input: ff-core - prefer struct_size over open coded arithmetic Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 031/139] usb: xhci: prevent potential failure in handle_tx_event() for Transfer events without TRB Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 032/139] wifi: mt76: replace skb_put with skb_put_zero Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 033/139] wifi: mt76: mt7996: add sanity checks for background radar trigger Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 034/139] thermal/drivers/mediatek/lvts_thermal: Check NULL ptr on lvts_data Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 035/139] net: dsa: mv88e6xxx: Correct check for empty list Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 036/139] media: dvb-frontends: tda18271c2dd: Remove casting during div Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 037/139] media: s2255: Use refcount_t instead of atomic_t for num_channels Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 038/139] media: dvb-frontends: tda10048: Fix integer overflow Greg Kroah-Hartman
2024-07-09 11:08 ` [PATCH 6.6 039/139] powerpc/dexcr: Track the DEXCR per-process Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 040/139] i2c: i801: Annotate apanel_addr as __ro_after_init Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 041/139] powerpc/64: Set _IO_BASE to POISON_POINTER_DELTA not 0 for CONFIG_PCI=n Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 042/139] orangefs: fix out-of-bounds fsid access Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 043/139] kunit: Fix timeout message Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 044/139] kunit: Handle test faults Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 045/139] powerpc/xmon: Check cpu id in commands "c#", "dp#" and "dx#" Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 046/139] selftests/net: fix uninitialized variables Greg Kroah-Hartman
2024-07-11 15:31   ` Ignat Korchagin
2024-07-11 19:15     ` John Hubbard
2024-07-11 21:18       ` Ignat Korchagin
2024-07-11 23:47         ` John Hubbard
2024-08-30 11:06     ` Greg Kroah-Hartman
2024-08-30 23:40       ` John Hubbard
2024-08-31  5:15         ` Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 047/139] igc: fix a log entry using uninitialized netdev Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 048/139] bpf: Avoid uninitialized value in BPF_CORE_READ_BITFIELD Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 049/139] f2fs: check validation of fault attrs in f2fs_build_fault_attr() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 050/139] scsi: mpi3mr: Sanitise num_phys Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 051/139] serial: imx: Raise TX trigger level to 8 Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 052/139] jffs2: Fix potential illegal address access in jffs2_free_inode Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 053/139] s390: Mark psw in __load_psw_mask() as __unitialized Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 054/139] s390/pkey: Wipe sensitive data on failure Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 055/139] btrfs: scrub: initialize ret in scrub_simple_mirror() to fix compilation warning Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 056/139] cdrom: rearrange last_media_change check to avoid unintentional overflow Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 057/139] tools/power turbostat: Remember global max_die_id Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 058/139] vhost: Use virtqueue mutex for swapping worker Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 059/139] vhost: Release worker mutex during flushes Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 060/139] vhost_task: Handle SIGKILL by flushing work and exiting Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 061/139] mac802154: fix time calculation in ieee802154_configure_durations() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 062/139] net: phy: phy_device: Fix PHY LED blinking code comment Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 063/139] UPSTREAM: tcp: fix DSACK undo in fast recovery to call tcp_try_to_open() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 064/139] net/mlx5: E-switch, Create ingress ACL when needed Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 065/139] net/mlx5e: Add mqprio_rl cleanup and free in mlx5e_priv_cleanup() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 066/139] Bluetooth: hci_event: Fix setting of unicast qos interval Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 067/139] Bluetooth: Ignore too large handle values in BIG Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 068/139] Bluetooth: ISO: Check socket flag instead of hcon Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 069/139] bluetooth/hci: disallow setting handle bigger than HCI_CONN_HANDLE_MAX Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 070/139] tcp_metrics: validate source addr length Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 071/139] KVM: s390: fix LPSWEY handling Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 072/139] e1000e: Fix S0ix residency on corporate systems Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 073/139] gpiolib: of: fix lookup quirk for MIPS Lantiq Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 074/139] net: allow skb_datagram_iter to be called from any context Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 075/139] net: txgbe: initialize num_q_vectors for MSI/INTx interrupts Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 076/139] net: ntb_netdev: Move ntb_netdev_rx_handler() to call netif_rx() from __netif_rx() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 077/139] gpio: mmio: do not calculate bgpio_bits via "ngpios" Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 078/139] wifi: wilc1000: fix ies_len type in connect path Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 079/139] riscv: kexec: Avoid deadlock in kexec crash path Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 080/139] netfilter: nf_tables: unconditionally flush pending work before notifier Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 081/139] bonding: Fix out-of-bounds read in bond_option_arp_ip_targets_set() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 082/139] selftests: fix OOM in msg_zerocopy selftest Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 083/139] selftests: make order checking verbose " Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 084/139] inet_diag: Initialize pad field in struct inet_diag_req_v2 Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 085/139] mlxsw: core_linecards: Fix double memory deallocation in case of invalid INI file Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 086/139] gpiolib: of: add polarity quirk for TSC2005 Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 087/139] cpu: Fix broken cmdline "nosmp" and "maxcpus=0" Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 088/139] platform/x86: toshiba_acpi: Fix quickstart quirk handling Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 089/139] Revert "igc: fix a log entry using uninitialized netdev" Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 090/139] nilfs2: fix inode number range checks Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 091/139] nilfs2: add missing check for inode numbers on directory entries Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 092/139] mm: optimize the redundant loop of mm_update_owner_next() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 093/139] mm: avoid overflows in dirty throttling logic Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 094/139] btrfs: fix adding block group to a reclaim list and the unused list during reclaim Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 095/139] f2fs: Add inline to f2fs_build_fault_attr() stub Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 096/139] scsi: mpi3mr: Use proper format specifier in mpi3mr_sas_port_add() Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 097/139] Bluetooth: hci_bcm4377: Fix msgid release Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 098/139] Bluetooth: qca: Fix BT enable failure again for QCA6390 after warm reboot Greg Kroah-Hartman
2024-07-09 11:09 ` [PATCH 6.6 099/139] can: kvaser_usb: Explicitly initialize family in leafimx driver_info struct Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 100/139] fsnotify: Do not generate events for O_PATH file descriptors Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 101/139] Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again" Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 102/139] drm/nouveau: fix null pointer dereference in nouveau_connector_get_modes Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 103/139] drm/amdgpu/atomfirmware: silence UBSAN warning Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 104/139] drm: panel-orientation-quirks: Add quirk for Valve Galileo Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 105/139] clk: qcom: gcc-ipq9574: Add BRANCH_HALT_VOTED flag Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 106/139] clk: sunxi-ng: common: Dont call hw_to_ccu_common on hw without common Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 107/139] powerpc/pseries: Fix scv instruction crash with kexec Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 108/139] powerpc/64s: Fix unnecessary copy to 0 when kernel is booted at address 0 Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 109/139] mtd: rawnand: Ensure ECC configuration is propagated to upper layers Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 110/139] mtd: rawnand: Fix the nand_read_data_op() early check Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 111/139] mtd: rawnand: Bypass a couple of sanity checks during NAND identification Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 112/139] mtd: rawnand: rockchip: ensure NVDDR timings are rejected Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 113/139] net: stmmac: dwmac-qcom-ethqos: fix error array size Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 114/139] bnx2x: Fix multiple UBSAN array-index-out-of-bounds Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 115/139] arm64: dts: rockchip: Fix the DCDC_REG2 minimum voltage on Quartz64 Model B Greg Kroah-Hartman
2024-07-09 11:10 ` Greg Kroah-Hartman [this message]
2024-07-09 11:10 ` [PATCH 6.6 117/139] media: dw2102: fix a potential buffer overflow Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 118/139] clk: qcom: gcc-sm6350: Fix gpll6* & gpll7 parents Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 119/139] clk: qcom: clk-alpha-pll: set ALPHA_EN bit for Stromer Plus PLLs Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 120/139] clk: mediatek: mt8183: Only enable runtime PM on mt8183-mfgcfg Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 121/139] i2c: pnx: Fix potential deadlock warning from del_timer_sync() call in isr Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 122/139] fs/ntfs3: Mark volume as dirty if xattr is broken Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 123/139] ALSA: hda/realtek: Enable headset mic of JP-IK LEAP W502 with ALC897 Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 124/139] vhost-scsi: Handle vhost_vq_work_queue failures for events Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 125/139] nvme-multipath: find NUMA path only for online numa-node Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 126/139] dma-mapping: benchmark: avoid needless copy_to_user if benchmark fails Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 127/139] connector: Fix invalid conversion in cn_proc.h Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 128/139] nvme: adjust multiples of NVME_CTRL_PAGE_SIZE in offset Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 129/139] regmap-i2c: Subtract reg size from max_write Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 130/139] platform/x86: touchscreen_dmi: Add info for GlobalSpace SolT IVW 11.6" tablet Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 131/139] platform/x86: touchscreen_dmi: Add info for the EZpad 6s Pro Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 132/139] nvmet: fix a possible leak when destroy a ctrl during qp establishment Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 133/139] kbuild: fix short log for AS in link-vmlinux.sh Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 134/139] nfc/nci: Add the inconsistency check between the input data length and count Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 135/139] spi: cadence: Ensure data lines set to low during dummy-cycle period Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 136/139] ALSA: ump: Set default protocol when not given explicitly Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 137/139] drm/amdgpu: silence UBSAN warning Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 138/139] null_blk: Do not allow runt zone with zone capacity smaller then zone size Greg Kroah-Hartman
2024-07-09 11:10 ` [PATCH 6.6 139/139] nilfs2: fix incorrect inode allocation from reserved inodes Greg Kroah-Hartman
2024-07-09 18:42 ` [PATCH 6.6 000/139] 6.6.39-rc1 review SeongJae Park
2024-07-09 19:58 ` Kelsey Steele
2024-07-09 21:35 ` Peter Schneider
2024-07-09 21:37 ` Mark Brown
2024-07-09 23:23 ` Shuah Khan
2024-07-10  8:34 ` Jon Hunter
2024-07-10  9:21 ` Shreeya Patel
2024-07-10 11:06 ` Pascal Ernster
2024-07-10 11:28 ` Harshit Mogalapalli
2024-07-10 12:30 ` Naresh Kamboju
2024-07-10 13:03 ` Ron Economos
2024-07-10 13:36 ` Takeshi Ogasawara
2024-07-10 14:11 ` Naresh Kamboju
2024-07-12 17:26 ` Florian Fainelli

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=20240709110702.656504280@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=casey@schaufler-ca.com \
    --cc=guozihua@huawei.com \
    --cc=john.johansen@canonical.com \
    --cc=patches@lists.linux.dev \
    --cc=paul@paul-moore.com \
    --cc=stable@vger.kernel.org \
    --cc=zohar@linux.ibm.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.