# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
-# $Id: Makefile,v 1.11 2003-05-20 22:30:35 charles Exp $
+# $Id: Makefile,v 1.12 2003-08-20 03:53:39 charles Exp $
#
## Change or override KERNELDIR to your kernel
*/
-const char *yaffs_fs_c_version = "$Id: yaffs_fs.c,v 1.27 2003-08-16 08:17:32 charles Exp $";
+const char *yaffs_fs_c_version = "$Id: yaffs_fs.c,v 1.28 2003-08-20 03:53:39 charles Exp $";
extern const char *yaffs_guts_c_version;
inode->i_uid = obj->st_uid;
inode->i_gid = obj->st_gid;
inode->i_blksize = inode->i_sb->s_blocksize;
- inode->i_blocks = 0;
#if defined(CONFIG_KERNEL_2_5)
inode->i_rdev = to_kdev_t(obj->st_rdev);
inode->i_atime.tv_sec = (time_t)(obj->st_atime);
inode->i_ctime = obj->st_ctime;
#endif
inode->i_size = yaffs_GetObjectFileLength(obj);
+ inode->i_blocks = (inode->i_size + inode->i_blksize - 1) >> inode->i_sb->s_blocksize_bits;
+
inode->i_nlink = yaffs_GetObjectLinkCount(obj);
T(YAFFS_TRACE_OS,(KERN_DEBUG"yaffs_FillInode mode %x uid %d gid %d size %d count %d\n",
*/
//yaffs_guts.c
-const char *yaffs_guts_c_version="$Id: yaffs_guts.c,v 1.27 2003-08-16 08:17:32 charles Exp $";
+const char *yaffs_guts_c_version="$Id: yaffs_guts.c,v 1.28 2003-08-20 03:53:39 charles Exp $";
#include "yportenv.h"
static void yaffs_DeinitialiseTnodes(yaffs_Device*dev)
{
// Free the list of allocated tnodes
-
+ yaffs_TnodeList *tmp;
+
while(dev->allocatedTnodeList)
{
+ tmp = dev->allocatedTnodeList->next;
+
YFREE(dev->allocatedTnodeList->tnodes);
- dev->allocatedTnodeList = dev->allocatedTnodeList->next;
+ YFREE(dev->allocatedTnodeList);
+ dev->allocatedTnodeList = tmp;
+
}
dev->freeTnodes = NULL;
{
// Free the list of allocated Objects
+ yaffs_ObjectList *tmp;
+
while( dev->allocatedObjectList)
{
+ tmp = dev->allocatedObjectList->next;
YFREE(dev->allocatedObjectList->objects);
- dev->allocatedObjectList = dev->allocatedObjectList->next;
+ YFREE(dev->allocatedObjectList);
+
+ dev->allocatedObjectList = tmp;
}
dev->freeObjects = NULL;