[Yaffs] Patch for special devices

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Alexis POLTI
Date:  
To: yaffs
Old-Topics: [Yaffs] An observation about "useHeaderFileSize" !
New-Topics: [Yaffs] Patches for special devices
Subject: [Yaffs] Patch for special devices
Hello Yaffs ers !

I had some problems with a YAFFS root fs : unable to open any special files (/dev/*), especially /dev/console.
mkyaffsimage from i386 2.6.8, target : superH 2.6.10 (same behaviour with 2.6.8).

After some head scratching, I made the following quick patch ("quick" = "it works for me, but dunno if this is the
correct way to do it or not"). Comments welcome !

Btw, thanx for this wonderful work Charles ! :)

Alexis

diff -pruN ../../../downloads/yaffs/yaffs_fs.c yaffs_fs.c
--- ../../../downloads/yaffs/yaffs_fs.c 2005-02-03 16:08:47.000000000 +0000
+++ yaffs_fs.c  2005-02-03 16:20:38.000000000 +0000
@@ -640,7 +640,12 @@ static void yaffs_FillInodeFromObject(st
                 switch (obj->st_mode & S_IFMT)
                 {
                         default: // fifo, device or socket
+                               inode->i_op = &yaffs_file_inode_operations;
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0))
+                               init_special_inode(inode, obj->st_mode,old_decode_dev(obj->st_rdev));
+#else
                                 init_special_inode(inode, obj->st_mode,(dev_t)(obj->st_rdev));
+#endif
                                 break;
                         case S_IFREG:   // file
                                 inode->i_op = &yaffs_file_inode_operations;