mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 18:13:41 +02:00
mt76: mt7615: fix compiler warning on frame size
The following error is see from the compiler:
mt7615/debugfs.c: In function ‘mt7615_ext_mac_addr_read’:
mt7615/debugfs.c:465:1: warning: the frame size of 1072 bytes is
larger than 1024 bytes [-Wframe-larger-than=]
The issue is due to allocating a buffer as string storage.
Fix by converting to a dynamical allocation of the buffer.
Reviewed-by: Ryder Lee <ryder.lee@mediatek.com>
Signed-off-by: Deren Wu <deren.wu@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
b0740f0a52
commit
e83a6fef8a
|
|
@ -443,11 +443,16 @@ mt7615_ext_mac_addr_read(struct file *file, char __user *userbuf,
|
|||
size_t count, loff_t *ppos)
|
||||
{
|
||||
struct mt7615_dev *dev = file->private_data;
|
||||
char buf[32 * ((ETH_ALEN * 3) + 4) + 1];
|
||||
u32 len = 32 * ((ETH_ALEN * 3) + 4) + 1;
|
||||
u8 addr[ETH_ALEN];
|
||||
char *buf;
|
||||
int ofs = 0;
|
||||
int i;
|
||||
|
||||
buf = kzalloc(len, GFP_KERNEL);
|
||||
if (!buf)
|
||||
return -ENOMEM;
|
||||
|
||||
for (i = 0; i < 32; i++) {
|
||||
if (!(dev->muar_mask & BIT(i)))
|
||||
continue;
|
||||
|
|
@ -458,10 +463,13 @@ mt7615_ext_mac_addr_read(struct file *file, char __user *userbuf,
|
|||
put_unaligned_le32(mt76_rr(dev, MT_WF_RMAC_MAR0), addr);
|
||||
put_unaligned_le16((mt76_rr(dev, MT_WF_RMAC_MAR1) &
|
||||
MT_WF_RMAC_MAR1_ADDR), addr + 4);
|
||||
ofs += snprintf(buf + ofs, sizeof(buf) - ofs, "%d=%pM\n", i, addr);
|
||||
ofs += snprintf(buf + ofs, len - ofs, "%d=%pM\n", i, addr);
|
||||
}
|
||||
|
||||
return simple_read_from_buffer(userbuf, count, ppos, buf, ofs);
|
||||
ofs = simple_read_from_buffer(userbuf, count, ppos, buf, ofs);
|
||||
|
||||
kfree(buf);
|
||||
return ofs;
|
||||
}
|
||||
|
||||
static ssize_t
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user