wifi: mt76: mt7996: fix potential memory leakage when reading chip temperature
BugLink: https://bugs.launchpad.net/bugs/2071621
[ Upstream commit 474b9412f33be87076b40a49756662594598a85e ]
Without this commit, reading chip temperature will cause memory leakage.
Fixes: 6879b2e941 ("wifi: mt76: mt7996: add thermal sensor device support")
Reported-by: Ryder Lee <ryder.lee@mediatek.com>
Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Manuel Diewald <manuel.diewald@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
This commit is contained in:
@@ -3733,6 +3733,7 @@ int mt7996_mcu_get_temperature(struct mt7996_phy *phy)
|
||||
} __packed * res;
|
||||
struct sk_buff *skb;
|
||||
int ret;
|
||||
u32 temp;
|
||||
|
||||
ret = mt76_mcu_send_and_get_msg(&phy->dev->mt76, MCU_WM_UNI_CMD(THERMAL),
|
||||
&req, sizeof(req), true, &skb);
|
||||
@@ -3740,8 +3741,10 @@ int mt7996_mcu_get_temperature(struct mt7996_phy *phy)
|
||||
return ret;
|
||||
|
||||
res = (void *)skb->data;
|
||||
temp = le32_to_cpu(res->temperature);
|
||||
dev_kfree_skb(skb);
|
||||
|
||||
return le32_to_cpu(res->temperature);
|
||||
return temp;
|
||||
}
|
||||
|
||||
int mt7996_mcu_set_thermal_throttling(struct mt7996_phy *phy, u8 state)
|
||||
|
||||
Reference in New Issue
Block a user