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>,
Roberto Sassu <roberto.sassu@huawei.com>
Subject: [PATCH 5.15 062/144] ima: Avoid blocking in RCU read-side critical section
Date: Tue, 16 Jul 2024 17:32:11 +0200 [thread overview]
Message-ID: <20240716152754.931696070@linuxfoundation.org> (raw)
In-Reply-To: <20240716152752.524497140@linuxfoundation.org>
5.15-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: Roberto Sassu <roberto.sassu@huawei.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
@@ -379,7 +379,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
@@ -1896,7 +1896,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);
@@ -1904,7 +1905,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
@@ -521,7 +521,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) {
@@ -790,7 +791,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
@@ -173,7 +173,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;
@@ -186,14 +186,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
@@ -186,7 +186,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
@@ -428,7 +428,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
@@ -370,7 +370,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;
@@ -379,7 +380,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;
@@ -394,7 +395,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);
@@ -407,7 +409,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;
@@ -618,7 +620,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;
@@ -1080,7 +1082,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
@@ -2587,9 +2587,11 @@ int security_key_getsecurity(struct key
#ifdef CONFIG_AUDIT
-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);
}
int security_audit_rule_known(struct audit_krule *krule)
--- a/security/selinux/include/audit.h
+++ b/security/selinux/include/audit.h
@@ -18,12 +18,14 @@
* @op: the operater 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
@@ -3560,7 +3560,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;
@@ -3601,7 +3602,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;
--- a/security/smack/smack_lsm.c
+++ b/security/smack/smack_lsm.c
@@ -4487,11 +4487,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;
next prev parent reply other threads:[~2024-07-16 16:10 UTC|newest]
Thread overview: 154+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-16 15:31 [PATCH 5.15 000/144] 5.15.163-rc1 review Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 001/144] locking/mutex: Introduce devm_mutex_init() Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 002/144] drm/lima: fix shared irq handling on driver remove Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 003/144] media: dvb: as102-fe: Fix as10x_register_addr packing Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 004/144] media: dvb-usb: dib0700_devices: Add missing release_firmware() Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 005/144] IB/core: Implement a limit on UMAD receive List Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 006/144] scsi: qedf: Make qedf_execute_tmf() non-preemptible Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 007/144] crypto: aead,cipher - zeroize key buffer after use Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 008/144] drm/amdgpu: Initialize timestamp for some legacy SOCs Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 009/144] drm/amd/display: Check index msg_id before read or write Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 010/144] drm/amd/display: Check pipe offset before setting vblank Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 011/144] drm/amd/display: Skip finding free audio for unknown engine_id Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 012/144] media: dw2102: Dont translate i2c read into write Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 013/144] sctp: prefer struct_size over open coded arithmetic Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 014/144] firmware: dmi: Stop decoding on broken entry Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 015/144] Input: ff-core - prefer struct_size over open coded arithmetic Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 016/144] wifi: mt76: replace skb_put with skb_put_zero Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 017/144] net: dsa: mv88e6xxx: Correct check for empty list Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 018/144] media: dvb-frontends: tda18271c2dd: Remove casting during div Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 019/144] media: s2255: Use refcount_t instead of atomic_t for num_channels Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 020/144] media: dvb-frontends: tda10048: Fix integer overflow Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 021/144] i2c: i801: Annotate apanel_addr as __ro_after_init Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 022/144] powerpc/64: Set _IO_BASE to POISON_POINTER_DELTA not 0 for CONFIG_PCI=n Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 023/144] orangefs: fix out-of-bounds fsid access Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 024/144] kunit: Fix timeout message Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 025/144] powerpc/xmon: Check cpu id in commands "c#", "dp#" and "dx#" Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 026/144] igc: fix a log entry using uninitialized netdev Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 027/144] bpf: Avoid uninitialized value in BPF_CORE_READ_BITFIELD Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 028/144] jffs2: Fix potential illegal address access in jffs2_free_inode Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 029/144] s390/pkey: Wipe sensitive data on failure Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 030/144] tools/power turbostat: Remember global max_die_id Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 031/144] UPSTREAM: tcp: fix DSACK undo in fast recovery to call tcp_try_to_open() Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 032/144] tcp_metrics: validate source addr length Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 033/144] KVM: s390: fix LPSWEY handling Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 034/144] e1000e: Fix S0ix residency on corporate systems Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 035/144] net: allow skb_datagram_iter to be called from any context Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 036/144] wifi: wilc1000: fix ies_len type in connect path Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 037/144] riscv: kexec: Avoid deadlock in kexec crash path Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 038/144] netfilter: nf_tables: unconditionally flush pending work before notifier Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 039/144] bonding: Fix out-of-bounds read in bond_option_arp_ip_targets_set() Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 040/144] selftests: fix OOM in msg_zerocopy selftest Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 041/144] selftests: make order checking verbose " Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 042/144] inet_diag: Initialize pad field in struct inet_diag_req_v2 Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 043/144] gpiolib: of: factor out code overriding gpio line polarity Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 044/144] gpiolib: of: add a quirk for reset line polarity for Himax LCDs Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 045/144] gpiolib: of: add polarity quirk for TSC2005 Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 046/144] Revert "igc: fix a log entry using uninitialized netdev" Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 047/144] nilfs2: fix inode number range checks Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 048/144] nilfs2: add missing check for inode numbers on directory entries Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 049/144] mm: optimize the redundant loop of mm_update_owner_next() Greg Kroah-Hartman
2024-07-16 15:31 ` [PATCH 5.15 050/144] mm: avoid overflows in dirty throttling logic Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 051/144] btrfs: fix adding block group to a reclaim list and the unused list during reclaim Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 052/144] Bluetooth: qca: Fix BT enable failure again for QCA6390 after warm reboot Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 053/144] can: kvaser_usb: Explicitly initialize family in leafimx driver_info struct Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 054/144] fsnotify: Do not generate events for O_PATH file descriptors Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 055/144] Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again" Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 056/144] drm/nouveau: fix null pointer dereference in nouveau_connector_get_modes Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 057/144] drm/amdgpu/atomfirmware: silence UBSAN warning Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 058/144] mtd: rawnand: Ensure ECC configuration is propagated to upper layers Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 059/144] mtd: rawnand: Bypass a couple of sanity checks during NAND identification Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 060/144] mtd: rawnand: rockchip: ensure NVDDR timings are rejected Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 061/144] bnx2x: Fix multiple UBSAN array-index-out-of-bounds Greg Kroah-Hartman
2024-07-16 15:32 ` Greg Kroah-Hartman [this message]
2024-07-16 15:32 ` [PATCH 5.15 063/144] media: dw2102: fix a potential buffer overflow Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 064/144] clk: qcom: gcc-sm6350: Fix gpll6* & gpll7 parents Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 065/144] i2c: pnx: Fix potential deadlock warning from del_timer_sync() call in isr Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 066/144] fs/ntfs3: Mark volume as dirty if xattr is broken Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 067/144] ALSA: hda/realtek: Enable headset mic of JP-IK LEAP W502 with ALC897 Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 068/144] nvme-multipath: find NUMA path only for online numa-node Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 069/144] dma-mapping: benchmark: avoid needless copy_to_user if benchmark fails Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 070/144] nvme: adjust multiples of NVME_CTRL_PAGE_SIZE in offset Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 071/144] regmap-i2c: Subtract reg size from max_write Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 072/144] platform/x86: touchscreen_dmi: Add info for GlobalSpace SolT IVW 11.6" tablet Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 073/144] platform/x86: touchscreen_dmi: Add info for the EZpad 6s Pro Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 074/144] nvmet: fix a possible leak when destroy a ctrl during qp establishment Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 075/144] kbuild: fix short log for AS in link-vmlinux.sh Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 076/144] nfc/nci: Add the inconsistency check between the input data length and count Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 077/144] null_blk: Do not allow runt zone with zone capacity smaller then zone size Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 078/144] nilfs2: fix incorrect inode allocation from reserved inodes Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 079/144] mm: prevent derefencing NULL ptr in pfn_section_valid() Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 080/144] filelock: fix potential use-after-free in posix_lock_inode Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 081/144] fs/dcache: Re-use value stored to dentry->d_flags instead of re-reading Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 082/144] vfs: dont mod negative dentry count when on shrinker list Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 083/144] tcp: fix incorrect undo caused by DSACK of TLP retransmit Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 084/144] skmsg: Skip zero length skb in sk_msg_recvmsg Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 085/144] octeontx2-af: Fix incorrect value output on error path in rvu_check_rsrc_availability() Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 086/144] net: fix rc7s __skb_datagram_iter() Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 087/144] i40e: Fix XDP program unloading while removing the driver Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 088/144] net: lantiq_etop: add blank line after declaration Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 089/144] net: ethernet: lantiq_etop: fix double free in detach Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 090/144] net: ethernet: mtk-star-emac: set mac_managed_pm when probing Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 091/144] ppp: reject claimed-as-LCP but actually malformed packets Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 092/144] ethtool: netlink: do not return SQI value if link is down Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 093/144] udp: Set SOCK_RCU_FREE earlier in udp_lib_get_port() Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 094/144] net/sched: Fix UAF when resolving a clash Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 095/144] s390: Mark psw in __load_psw_mask() as __unitialized Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 096/144] ARM: davinci: Convert comma to semicolon Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 097/144] octeontx2-af: replace cpt slot with lf id on reg write Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 098/144] octeontx2-af: update cpt lf alloc mailbox Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 099/144] octeontx2-af: fix a issue with cpt_lf_alloc mailbox Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 100/144] octeontx2-af: fix detection of IP layer Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 101/144] octeontx2-af: extend RSS supported offload types Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 102/144] octeontx2-af: fix issue with IPv6 ext match for RSS Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 103/144] octeontx2-af: fix issue with IPv4 " Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 104/144] tcp: use signed arithmetic in tcp_rtx_probe0_timed_out() Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 105/144] tcp: avoid too many retransmit packets Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 106/144] net: ks8851: Fix potential TX stall after interface reopen Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 107/144] USB: serial: option: add Telit generic core-dump composition Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 108/144] USB: serial: option: add Telit FN912 rmnet compositions Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 109/144] USB: serial: option: add Fibocom FM350-GL Greg Kroah-Hartman
2024-07-16 15:32 ` [PATCH 5.15 110/144] USB: serial: option: add support for Foxconn T99W651 Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 111/144] USB: serial: option: add Netprisma LCUK54 series modules Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 112/144] USB: serial: option: add Rolling RW350-GL variants Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 113/144] USB: serial: mos7840: fix crash on resume Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 114/144] USB: Add USB_QUIRK_NO_SET_INTF quirk for START BP-850k Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 115/144] usb: gadget: configfs: Prevent OOB read/write in usb_string_copy() Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 116/144] USB: core: Fix duplicate endpoint bug by clearing reserved bits in the descriptor Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 117/144] hpet: Support 32-bit userspace Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 118/144] nvmem: rmem: Fix return value of rmem_read() Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 119/144] nvmem: meson-efuse: Fix return value of nvmem callbacks Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 120/144] nvmem: core: only change name to fram for current attribute Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 121/144] ALSA: hda/realtek: add quirk for Clevo V5[46]0TU Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 122/144] ALSA: hda/realtek: Enable Mute LED on HP 250 G7 Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 123/144] ALSA: hda/realtek: Limit mic boost on VAIO PRO PX Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 124/144] Fix userfaultfd_api to return EINVAL as expected Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 125/144] libceph: fix race between delayed_work() and ceph_monc_stop() Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 126/144] wireguard: allowedips: avoid unaligned 64-bit memory accesses Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 127/144] wireguard: queueing: annotate intentional data race in cpu round robin Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 128/144] wireguard: send: annotate intentional data race in checking empty queue Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 129/144] ipv6: annotate data-races around cnf.disable_ipv6 Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 130/144] ipv6: prevent NULL dereference in ip6_output() Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 131/144] bpf: Allow reads from uninit stack Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 132/144] nilfs2: fix kernel bug on rename operation of broken directory Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 133/144] i2c: rcar: bring hardware to known state when probing Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 134/144] i2c: mark HostNotify target address as used Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 135/144] i2c: rcar: Add R-Car Gen4 support Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 136/144] i2c: rcar: reset controller is mandatory for Gen3+ Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 137/144] i2c: rcar: introduce Gen4 devices Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 138/144] i2c: rcar: ensure Gen3+ reset does not disturb local targets Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 139/144] i2c: testunit: avoid re-issued work after read message Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 140/144] i2c: rcar: clear NO_RXDMA flag after resetting Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 141/144] x86/entry/64: Remove obsolete comment on tracing vs. SYSRET Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 142/144] x86/bhi: Avoid warning in #DB handler due to BHI mitigation Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 143/144] kbuild: Make ld-version.sh more robust against version string changes Greg Kroah-Hartman
2024-07-16 15:33 ` [PATCH 5.15 144/144] i2c: rcar: fix error code in probe() Greg Kroah-Hartman
2024-07-16 18:23 ` [PATCH 5.15 000/144] 5.15.163-rc1 review Florian Fainelli
2024-07-16 18:39 ` SeongJae Park
2024-07-16 19:43 ` Mark Brown
2024-07-16 20:19 ` Naresh Kamboju
2024-07-16 20:45 ` Dan Carpenter
2024-07-17 6:15 ` Greg Kroah-Hartman
2024-07-17 6:21 ` Greg Kroah-Hartman
2024-07-17 15:53 ` Shuah Khan
2024-07-17 16:56 ` Allen
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=20240716152754.931696070@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=roberto.sassu@huawei.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox