[MTD] Fix error checking after get_mtd_device() in get_sb_mtd functions
It returns ERR_PTR(foo) on error, not just NULL.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
diff --git a/drivers/mtd/mtdsuper.c b/drivers/mtd/mtdsuper.c
index a279540..aca3319 100644
--- a/drivers/mtd/mtdsuper.c
+++ b/drivers/mtd/mtdsuper.c
@@ -106,9 +106,9 @@
struct mtd_info *mtd;
mtd = get_mtd_device(NULL, mtdnr);
- if (!mtd) {
+ if (IS_ERR(mtd)) {
DEBUG(0, "MTDSB: Device #%u doesn't appear to exist\n", mtdnr);
- return -EINVAL;
+ return PTR_ERR(mtd);
}
return get_sb_mtd_aux(fs_type, flags, dev_name, data, mtd, fill_super,
@@ -145,7 +145,7 @@
for (mtdnr = 0; mtdnr < MAX_MTD_DEVICES; mtdnr++) {
mtd = get_mtd_device(NULL, mtdnr);
- if (mtd) {
+ if (!IS_ERR(mtd)) {
if (!strcmp(mtd->name, dev_name + 4))
return get_sb_mtd_aux(
fs_type, flags,