X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs%2F.git;a=blobdiff_plain;f=yaffs_fs.c;h=52f668dd1eb2f6b10b9b801540cfef202ef75d64;hp=86a2559a41f8127b72acaae48c635d6705310412;hb=HEAD;hpb=5a41b9c9c1a7068f579cce83c757af27999249e8 diff --git a/yaffs_fs.c b/yaffs_fs.c index 86a2559..52f668d 100644 --- a/yaffs_fs.c +++ b/yaffs_fs.c @@ -29,7 +29,7 @@ */ -const char *yaffs_fs_c_version = "$Id: yaffs_fs.c,v 1.39 2005-04-24 08:54:36 charles Exp $"; +const char *yaffs_fs_c_version = "$Id: yaffs_fs.c,v 1.41 2005-10-11 23:43:27 charles Exp $"; extern const char *yaffs_guts_c_version; @@ -325,7 +325,7 @@ static struct dentry * yaffs_lookup(struct inode *dir, struct dentry *dentry) { T(YAFFS_TRACE_OS,("yaffs_lookup found %d\n",obj->objectId)); - inode = yaffs_get_inode(dir->i_sb, obj->st_mode,0,obj); + inode = yaffs_get_inode(dir->i_sb, obj->yst_mode,0,obj); if(inode) { @@ -609,25 +609,25 @@ static void yaffs_FillInodeFromObject(struct inode *inode, yaffs_Object *obj) if (inode && obj) { inode->i_ino = obj->objectId; - inode->i_mode = obj->st_mode; - inode->i_uid = obj->st_uid; - inode->i_gid = obj->st_gid; + inode->i_mode = obj->yst_mode; + inode->i_uid = obj->yst_uid; + inode->i_gid = obj->yst_gid; inode->i_blksize = inode->i_sb->s_blocksize; //#if defined(CONFIG_KERNEL_2_5) #if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)) - inode->i_rdev = old_decode_dev(obj->st_rdev); - inode->i_atime.tv_sec = (time_t)(obj->st_atime); + inode->i_rdev = old_decode_dev(obj->yst_rdev); + inode->i_atime.tv_sec = (time_t)(obj->yst_atime); inode->i_atime.tv_nsec = 0; - inode->i_mtime.tv_sec = (time_t)obj->st_mtime; + inode->i_mtime.tv_sec = (time_t)obj->yst_mtime; inode->i_mtime.tv_nsec =0; - inode->i_ctime.tv_sec = (time_t)obj->st_ctime; + inode->i_ctime.tv_sec = (time_t)obj->yst_ctime; inode->i_ctime.tv_nsec = 0; #else - inode->i_rdev = obj->st_rdev; - inode->i_atime = obj->st_atime; - inode->i_mtime = obj->st_mtime; - inode->i_ctime = obj->st_ctime; + inode->i_rdev = obj->yst_rdev; + inode->i_atime = obj->yst_atime; + inode->i_mtime = obj->yst_mtime; + inode->i_ctime = obj->yst_ctime; #endif inode->i_size = yaffs_GetObjectFileLength(obj); inode->i_blocks = (inode->i_size + 511) >> 9; @@ -637,13 +637,13 @@ static void yaffs_FillInodeFromObject(struct inode *inode, yaffs_Object *obj) T(YAFFS_TRACE_OS,("yaffs_FillInode mode %x uid %d gid %d size %d count %d\n", inode->i_mode, inode->i_uid, inode->i_gid, (int)inode->i_size, atomic_read(&inode->i_count))); - switch (obj->st_mode & S_IFMT) + switch (obj->yst_mode & S_IFMT) { default: // fifo, device or socket #if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)) - init_special_inode(inode, obj->st_mode,old_decode_dev(obj->st_rdev)); + init_special_inode(inode, obj->yst_mode,old_decode_dev(obj->yst_rdev)); #else - init_special_inode(inode, obj->st_mode,(dev_t)(obj->st_rdev)); + init_special_inode(inode, obj->yst_mode,(dev_t)(obj->yst_rdev)); #endif break; case S_IFREG: // file @@ -1071,7 +1071,7 @@ static int yaffs_symlink(struct inode * dir, struct dentry *dentry, const char * struct inode* inode; - inode = yaffs_get_inode(dir->i_sb, obj->st_mode, 0, obj); + inode = yaffs_get_inode(dir->i_sb, obj->yst_mode, 0, obj); d_instantiate(dentry, inode); T(YAFFS_TRACE_OS,("symlink created OK\n")); return 0; @@ -1180,7 +1180,7 @@ static int yaffs_setattr(struct dentry *dentry, struct iattr *attr) error = -EPERM; } yaffs_GrossUnlock(dev); - inode_setattr(inode,attr); + error = inode_setattr(inode,attr); } return error; } @@ -1326,7 +1326,7 @@ static struct super_block *yaffs_internal_read_super(int useRam, struct super_bl dev->genericDevice = NULL; // Not used for RAM emulation. nBlocks = YAFFS_RAM_EMULATION_SIZE / (YAFFS_CHUNKS_PER_BLOCK * YAFFS_BYTES_PER_CHUNK); - dev->startBlock = 1; // Don't use block 0 + dev->startBlock = 0; dev->endBlock = nBlocks - 1; dev->nChunksPerBlock = YAFFS_CHUNKS_PER_BLOCK; dev->nBytesPerChunk = YAFFS_BYTES_PER_CHUNK; @@ -1426,7 +1426,7 @@ static struct super_block *yaffs_internal_read_super(int useRam, struct super_bl // Set up the memory size parameters.... nBlocks = mtd->size / (YAFFS_CHUNKS_PER_BLOCK * YAFFS_BYTES_PER_CHUNK); - dev->startBlock = 1; // Don't use block 0 + dev->startBlock = 0; dev->endBlock = nBlocks - 1; dev->nChunksPerBlock = YAFFS_CHUNKS_PER_BLOCK; dev->nBytesPerChunk = YAFFS_BYTES_PER_CHUNK;