Patchwork pmc551: fix signedness bug in init_pmc551()

login
register
mail settings
Submitter Xi Wang
Date Jan. 9, 2012, 9:58 p.m.
Message ID <4F0B6301.3020405@gmail.com>
Download mbox | patch
Permalink /patch/135116/
State Accepted
Commit 2ff5e1532dd37e1bd8ac72da3f7f0e2b310102fb
Headers show

Comments

Xi Wang - Jan. 9, 2012, 9:58 p.m.
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.

Suggested-by: Artem Bityutskiy <dedekind1@gmail.com>
Signed-off-by: Xi Wang <xi.wang@gmail.com>
---
 drivers/mtd/devices/pmc551.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Artem Bityutskiy - Jan. 14, 2012, 2:29 p.m.
On Mon, 2012-01-09 at 16:58 -0500, Xi Wang wrote:
> 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.

Pushed to l2-mtd.git, thanks!

Patch

diff --git a/drivers/mtd/devices/pmc551.c b/drivers/mtd/devices/pmc551.c
index ecff765..cfccf65 100644
--- a/drivers/mtd/devices/pmc551.c
+++ b/drivers/mtd/devices/pmc551.c
@@ -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;