From: Christophe JAILLET Date: Sun, 21 Aug 2016 08:28:25 +0000 (+0200) Subject: scsi: megaraid_sas: Fix the search of first memory bar X-Git-Tag: v4.1.12-92~2^2~12 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=b374417369545d63b8b1e3ed46b56d72fadae648;p=users%2Fjedix%2Flinux-maple.git scsi: megaraid_sas: Fix the search of first memory bar Orabug: 25568930 The 2nd parameter of 'find_first_bit' is the number of bits to search. In this case, we are passing 'sizeof(unsigned long)' which is likely to be 4. It is likely that the number of bits in a long was expected here, so use BITS_PER_LONG instead. Signed-off-by: Christophe JAILLET Acked-by: Sumit Saxena Signed-off-by: Martin K. Petersen (cherry picked from commit 51f9039ffd751dee54fe26609df645bfd128b1d0) Signed-off-by: Brian Maly Conflicts: drivers/scsi/megaraid/megaraid_sas_base.c --- diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c index add1bce516e52..43e6245912332 100644 --- a/drivers/scsi/megaraid/megaraid_sas_base.c +++ b/drivers/scsi/megaraid/megaraid_sas_base.c @@ -5037,7 +5037,7 @@ static int megasas_init_fw(struct megasas_instance *instance) /* Find first memory bar */ bar_list = pci_select_bars(instance->pdev, IORESOURCE_MEM); - instance->bar = find_first_bit(&bar_list, sizeof(unsigned long)); + instance->bar = find_first_bit(&bar_list, BITS_PER_LONG); if (pci_request_selected_regions(instance->pdev, 1<bar, "megasas: LSI")) { dev_printk(KERN_DEBUG, &instance->pdev->dev, "IO memory region busy!\n");