mtd: pmc551: fix signedness bug in init_pmc551()
authorXi Wang <xi.wang@gmail.com>
Mon, 9 Jan 2012 21:58:25 +0000 (16:58 -0500)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Mon, 26 Mar 2012 23:11:07 +0000 (00:11 +0100)
Since "length" is a u32, the error handling below didn't work when
fixup_pmc551() returns -ENODEV.

if ((length = fixup_pmc551(PCI_Device)) <= 0)

This patch changes both the type of "length" and the return type of
fixup_pmc551() to int.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/devices/pmc551.c

index ecff765579dd395bbb73bacecd8b54bf375c7ee6..cfccf65104116141a7fa67ae153ddb7e2706ab74 100644 (file)
@@ -359,7 +359,7 @@ static int pmc551_write(struct mtd_info *mtd, loff_t to, size_t len,
  * mechanism
  * returns the size of the memory region found.
  */
-static u32 fixup_pmc551(struct pci_dev *dev)
+static int fixup_pmc551(struct pci_dev *dev)
 {
 #ifdef CONFIG_MTD_PMC551_BUGFIX
        u32 dram_data;
@@ -669,7 +669,7 @@ static int __init init_pmc551(void)
        struct mypriv *priv;
        int found = 0;
        struct mtd_info *mtd;
-       u32 length = 0;
+       int length = 0;
 
        if (msize) {
                msize = (1 << (ffs(msize) - 1)) << 20;