From 45172fe9a1f7fcee9a79d2543221292b83bec6f6 Mon Sep 17 00:00:00 2001 From: charles Date: Wed, 20 Aug 2003 03:53:39 +0000 Subject: [PATCH] *** empty log message *** --- Makefile | 2 +- yaffs_fs.c | 5 +++-- yaffs_guts.c | 18 ++++++++++++++---- yaffsdev.proj | Bin 53248 -> 53248 bytes 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 69ca817..e748baa 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ # 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 diff --git a/yaffs_fs.c b/yaffs_fs.c index db59c23..637f7fd 100644 --- a/yaffs_fs.c +++ b/yaffs_fs.c @@ -28,7 +28,7 @@ */ -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; @@ -523,7 +523,6 @@ static void yaffs_FillInodeFromObject(struct inode *inode, yaffs_Object *obj) 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); @@ -539,6 +538,8 @@ static void yaffs_FillInodeFromObject(struct inode *inode, yaffs_Object *obj) 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", diff --git a/yaffs_guts.c b/yaffs_guts.c index 5cbd371..7afb140 100644 --- a/yaffs_guts.c +++ b/yaffs_guts.c @@ -14,7 +14,7 @@ */ //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" @@ -782,11 +782,16 @@ static void yaffs_FreeTnode(yaffs_Device*dev, yaffs_Tnode *tn) 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; @@ -1452,10 +1457,15 @@ static void yaffs_DeinitialiseObjects(yaffs_Device *dev) { // 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; diff --git a/yaffsdev.proj b/yaffsdev.proj index 28f3ae79b47f467b880b09d2e24900fb10805d8c..d93143da855a717b2eb41d9bb2ebc15985cd930c 100644 GIT binary patch delta 609 zcmZozz}&Ead4d(w%ikMqUf8oSG2LKfV%n_baD#EOSe+@8vEk(XuHuuce0W%E6^u;` zCf{=vo2*mEJ$YK4&gQ?4_qjLs`W+T@ieU9(UBEJhWim@6OASi_OCC!SO8|=#ixrDL zi!O^iiv$Zh3k%CT<~PiDm~SzkWIoQklX(mC8s=5Zj1mkC5)6qCWGDJ16PSVq^5-A<)@_jWEPjyPAWH2dJ@4R<9GBq#*;O1SUIZDKMr? zR;ZJJ3NUM=r2suByICczlVx*e&RsngGYeD8$zHQn7)>VU&lY1e+1xgJ9*dRCt!o;4J&rp<_m@+v( zSaLF3kj&%{izIX--GW?Q5ka63lvF=3Ma|Y* delta 606 zcmZozz}&Ead4d(wE7^@UFYMV~Gah7o&A3_1;RfU6*Uqk+e>hF$o;<-cDEk zYQ(C>D#FUf`j6!^%SV>SEO%H=vz%br#Ik{90n0p=UY2f_T9yiy0+u`$MhOOnJIr}3 zn;KCVS0RVKkVWKU<8^U~}8-c`RDK ztX8aotjw&8tUp-3vbI zBs2NmB8ka)L2R2f7q4ctR!C1RiOm_8dJz4`t+MMVHdLD*yf -- 2.30.2