projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e4d2b8b
)
wifi: mt76: handle failure of vzalloc in mt7615_coredump_work
author
Kang Chen
<void0red@gmail.com>
Mon, 27 Feb 2023 14:48:23 +0000
(22:48 +0800)
committer
Felix Fietkau
<nbd@nbd.name>
Mon, 17 Apr 2023 13:34:34 +0000
(15:34 +0200)
vzalloc may fails, dump might be null and will cause
illegal address access later.
Link:
https://lore.kernel.org/all/Y%2Fy5Asxw3T3m4jCw@lore-desk
Fixes:
d2bf7959d9c0
("mt76: mt7663: introduce coredump support")
Signed-off-by: Kang Chen <void0red@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7615/mac.c
patch
|
blob
|
history
diff --git
a/drivers/net/wireless/mediatek/mt76/mt7615/mac.c
b/drivers/net/wireless/mediatek/mt76/mt7615/mac.c
index
a956024
..
6d6b46d
100644
(file)
--- a/
drivers/net/wireless/mediatek/mt76/mt7615/mac.c
+++ b/
drivers/net/wireless/mediatek/mt76/mt7615/mac.c
@@
-2380,7
+2380,7
@@
void mt7615_coredump_work(struct work_struct *work)
break;
skb_pull(skb, sizeof(struct mt7615_mcu_rxd));
- if (data + skb->len - dump > MT76_CONNAC_COREDUMP_SZ) {
+ if (
!dump ||
data + skb->len - dump > MT76_CONNAC_COREDUMP_SZ) {
dev_kfree_skb(skb);
continue;
}
@@
-2390,6
+2390,8
@@
void mt7615_coredump_work(struct work_struct *work)
dev_kfree_skb(skb);
}
- dev_coredumpv(dev->mt76.dev, dump, MT76_CONNAC_COREDUMP_SZ,
- GFP_KERNEL);
+
+ if (dump)
+ dev_coredumpv(dev->mt76.dev, dump, MT76_CONNAC_COREDUMP_SZ,
+ GFP_KERNEL);
}