Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
> Nevermind. round_up instead of DIV_ROUND_UP. > > Bas Vermeulen > > > > On 01-03-18 11:22, Bas Vermeulen wrote: >> >> >> >> On 28-02-18 15:26, Lorenzo Bianconi wrote: >>> >>> Fix the following sparse warning in mt7601u_efuse_physical_size_check: >>> - drivers/net/wireless/mediatek/mt7601u/eeprom.c:77:27: warning: >>>Variable length array is used >>> >>> Signed-off-by: Lorenzo Bianconi>>> --- >>> drivers/net/wireless/mediatek/mt7601u/eeprom.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/drivers/net/wireless/mediatek/mt7601u/eeprom.c >>> b/drivers/net/wireless/mediatek/mt7601u/eeprom.c >>> index da6faea092d6..a462064b5c91 100644 >>> --- a/drivers/net/wireless/mediatek/mt7601u/eeprom.c >>> +++ b/drivers/net/wireless/mediatek/mt7601u/eeprom.c >>> @@ -74,7 +74,7 @@ static int >>> mt7601u_efuse_physical_size_check(struct mt7601u_dev *dev) >>> { >>> const int map_reads = DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16); >>> -u8 data[map_reads * 16]; >>> +u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE, 16)]; >> >> Shouldn't this be u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE,16)*16]; to get >> the >> same array size as before? >> >> Bas Vermeulen >> round_up(MT_EFUSE_USAGE_MAP_SIZE, 16) = (DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16) * 16) = 32 Regards, Lorenzo > > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. >
Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
Nevermind. round_up instead of DIV_ROUND_UP. Bas Vermeulen On 01-03-18 11:22, Bas Vermeulen wrote: On 28-02-18 15:26, Lorenzo Bianconi wrote: Fix the following sparse warning in mt7601u_efuse_physical_size_check: - drivers/net/wireless/mediatek/mt7601u/eeprom.c:77:27: warning: Variable length array is used Signed-off-by: Lorenzo Bianconi--- drivers/net/wireless/mediatek/mt7601u/eeprom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/wireless/mediatek/mt7601u/eeprom.c b/drivers/net/wireless/mediatek/mt7601u/eeprom.c index da6faea092d6..a462064b5c91 100644 --- a/drivers/net/wireless/mediatek/mt7601u/eeprom.c +++ b/drivers/net/wireless/mediatek/mt7601u/eeprom.c @@ -74,7 +74,7 @@ static int mt7601u_efuse_physical_size_check(struct mt7601u_dev *dev) { const int map_reads = DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16); - u8 data[map_reads * 16]; + u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE, 16)]; Shouldn't this be u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE,16)*16]; to get the same array size as before? Bas Vermeulen -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.
Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
On 28-02-18 15:26, Lorenzo Bianconi wrote: Fix the following sparse warning in mt7601u_efuse_physical_size_check: - drivers/net/wireless/mediatek/mt7601u/eeprom.c:77:27: warning: Variable length array is used Signed-off-by: Lorenzo Bianconi--- drivers/net/wireless/mediatek/mt7601u/eeprom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/wireless/mediatek/mt7601u/eeprom.c b/drivers/net/wireless/mediatek/mt7601u/eeprom.c index da6faea092d6..a462064b5c91 100644 --- a/drivers/net/wireless/mediatek/mt7601u/eeprom.c +++ b/drivers/net/wireless/mediatek/mt7601u/eeprom.c @@ -74,7 +74,7 @@ static int mt7601u_efuse_physical_size_check(struct mt7601u_dev *dev) { const int map_reads = DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16); - u8 data[map_reads * 16]; + u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE, 16)]; Shouldn't this be u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE,16)*16]; to get the same array size as before? Bas Vermeulen -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.
Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
On Wed, 28 Feb 2018 15:26:57 +0100, Lorenzo Bianconi wrote: > Fix the following sparse warning in mt7601u_efuse_physical_size_check: > - drivers/net/wireless/mediatek/mt7601u/eeprom.c:77:27: warning: > Variable length array is used > > Signed-off-by: Lorenzo BianconiAcked-by: Jakub Kicinski Thanks Lorenzo!
Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
On Wed, 2018-02-28 at 17:01 +0100, Lorenzo Bianconi wrote: > > On Wed, 2018-02-28 at 15:26 +0100, Lorenzo Bianconi wrote: > > > > > > const int map_reads = DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16); > > > - u8 data[map_reads * 16]; > > > + u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE, 16)]; > > > > > > > You could turn it upside down and make > > > > const int map_reads = ARRAY_SIZE(data); > > map_reads is actually 2 since MT_EFUSE_USAGE_MAP_SIZE is 29. Using > ARRAY_SIZE(data) map_reads will be set to 32 Oh yeah, good point, sorry. johannes
Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
> On Wed, 2018-02-28 at 15:26 +0100, Lorenzo Bianconi wrote: >> >> const int map_reads = DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16); >> - u8 data[map_reads * 16]; >> + u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE, 16)]; >> > You could turn it upside down and make > > const int map_reads = ARRAY_SIZE(data); map_reads is actually 2 since MT_EFUSE_USAGE_MAP_SIZE is 29. Using ARRAY_SIZE(data) map_reads will be set to 32 Regards, Lorenzo > > johannes
Re: [PATCH] mt7601u: remove a warning in mt7601u_efuse_physical_size_check()
On Wed, 2018-02-28 at 15:26 +0100, Lorenzo Bianconi wrote: > > const int map_reads = DIV_ROUND_UP(MT_EFUSE_USAGE_MAP_SIZE, 16); > - u8 data[map_reads * 16]; > + u8 data[round_up(MT_EFUSE_USAGE_MAP_SIZE, 16)]; > You could turn it upside down and make const int map_reads = ARRAY_SIZE(data); johannes