*** empty log message ***
authorcharles <charles>
Sat, 20 Sep 2003 01:13:48 +0000 (01:13 +0000)
committercharles <charles>
Sat, 20 Sep 2003 01:13:48 +0000 (01:13 +0000)
yaffs_fs.c

index 080d875d1d52c2ef3df44f66c4b86c15569d15a1..418f378bf2487a69abac6037c52e419e83a4891d 100644 (file)
@@ -28,7 +28,7 @@
  */
 
 
  */
 
 
-const char *yaffs_fs_c_version = "$Id: yaffs_fs.c,v 1.29 2003-08-30 05:15:49 charles Exp $";
+const char *yaffs_fs_c_version = "$Id: yaffs_fs.c,v 1.30 2003-09-20 01:13:48 charles Exp $";
 extern const char *yaffs_guts_c_version;
 
 
 extern const char *yaffs_guts_c_version;
 
 
@@ -1247,7 +1247,13 @@ static struct super_block *yaffs_internal_read_super(int useRam, struct super_bl
                printk(KERN_DEBUG "yaffs: Attempting MTD mount on %u.%u, \"%s\"\n",
                 MAJOR(sb->s_dev),MINOR(sb->s_dev),kdevname(sb->s_dev));
                        
                printk(KERN_DEBUG "yaffs: Attempting MTD mount on %u.%u, \"%s\"\n",
                 MAJOR(sb->s_dev),MINOR(sb->s_dev),kdevname(sb->s_dev));
                        
-               // Hope it's a NAND mtd
+               // Check it's an mtd device.....
+               if(MAJOR(sb->s_dev) != MTD_BLOCK_MAJOR)
+               {
+                       return NULL; // This isn't an mtd device
+               } 
+               
+               // Get the device
                mtd = get_mtd_device(NULL, MINOR(sb->s_dev));
                if (!mtd) 
                {
                mtd = get_mtd_device(NULL, MINOR(sb->s_dev));
                if (!mtd) 
                {
@@ -1255,6 +1261,7 @@ static struct super_block *yaffs_internal_read_super(int useRam, struct super_bl
                        return NULL;
                }
                
                        return NULL;
                }
                
+               // Check it's NAND
                if(mtd->type != MTD_NANDFLASH)
                {
                        printk(KERN_DEBUG "yaffs: MTD device is not NAND it's type %d\n", mtd->type);
                if(mtd->type != MTD_NANDFLASH)
                {
                        printk(KERN_DEBUG "yaffs: MTD device is not NAND it's type %d\n", mtd->type);