diff mbox series

iwlwifi: pcie: fix a warning / build failure

Message ID 20211124011754.22397-1-kilobyte@angband.pl (mailing list archive)
State Awaiting Upstream
Delegated to: Netdev Maintainers
Headers show
Series iwlwifi: pcie: fix a warning / build failure | expand

Checks

Context Check Description
netdev/tree_selection success Not a local patch

Commit Message

Adam Borowski Nov. 24, 2021, 1:17 a.m. UTC
drivers/net/wireless/intel/iwlwifi/pcie/drv.c:
        In function ‘iwl_pci_find_dev_info’:
./include/linux/kernel.h:46:25: error: overflow in conversion from
        ‘long unsigned int’ to ‘int’ changes value from
        ‘18446744073709551615’ to ‘-1’ [-Werror=overflow]

Signed-off-by: Adam Borowski <kilobyte@angband.pl>
---
Another option would be to #ifdef away iwl_pci_find_dev_info().

 drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Kalle Valo Nov. 24, 2021, 8:12 a.m. UTC | #1
Adam Borowski <kilobyte@angband.pl> writes:

> drivers/net/wireless/intel/iwlwifi/pcie/drv.c:
>         In function ‘iwl_pci_find_dev_info’:
> ./include/linux/kernel.h:46:25: error: overflow in conversion from
>         ‘long unsigned int’ to ‘int’ changes value from
>         ‘18446744073709551615’ to ‘-1’ [-Werror=overflow]
>
> Signed-off-by: Adam Borowski <kilobyte@angband.pl>
> ---
> Another option would be to #ifdef away iwl_pci_find_dev_info().
>
>  drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> index c574f041f096..81e8f2fc4982 100644
> --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> @@ -1341,7 +1341,7 @@ iwl_pci_find_dev_info(u16 device, u16 subsystem_device,
>  {
>  	int i;
>  
> -	for (i = ARRAY_SIZE(iwl_dev_info_table) - 1; i >= 0; i--) {
> +	for (i = (int)ARRAY_SIZE(iwl_dev_info_table) - 1; i >= 0; i--) {
>  		const struct iwl_dev_info *dev_info = &iwl_dev_info_table[i];
>  
>  		if (dev_info->device != (u16)IWL_CFG_ANY &&

There's already fix for this:

https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers.git/commit/?id=fe785f56ad5886c08d1cadd9e8b4e1ff6a1866f6
diff mbox series

Patch

diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index c574f041f096..81e8f2fc4982 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -1341,7 +1341,7 @@  iwl_pci_find_dev_info(u16 device, u16 subsystem_device,
 {
 	int i;
 
-	for (i = ARRAY_SIZE(iwl_dev_info_table) - 1; i >= 0; i--) {
+	for (i = (int)ARRAY_SIZE(iwl_dev_info_table) - 1; i >= 0; i--) {
 		const struct iwl_dev_info *dev_info = &iwl_dev_info_table[i];
 
 		if (dev_info->device != (u16)IWL_CFG_ANY &&