projects
/
yaffs2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change direct handle management to use an inode layer to make it consistent with...
[yaffs2.git]
/
yaffs_guts.h
diff --git
a/yaffs_guts.h
b/yaffs_guts.h
index f47c65edda47f8362c2569b4de74e8a7782438da..48e55339bc047ed80c23d14df9c4ebef06535e59 100644
(file)
--- a/
yaffs_guts.h
+++ b/
yaffs_guts.h
@@
-455,10
+455,6
@@
struct yaffs_ObjectStruct {
YCHAR shortName[YAFFS_SHORT_NAME_LENGTH + 1];
#endif
YCHAR shortName[YAFFS_SHORT_NAME_LENGTH + 1];
#endif
-#ifndef __KERNEL__
- __u32 inUse;
-#endif
-
#ifdef CONFIG_YAFFS_WINCE
__u32 win_ctime[2];
__u32 win_mtime[2];
#ifdef CONFIG_YAFFS_WINCE
__u32 win_ctime[2];
__u32 win_mtime[2];
@@
-473,10
+469,7
@@
struct yaffs_ObjectStruct {
__u32 yst_rdev;
__u32 yst_rdev;
-#ifdef __KERNEL__
- struct inode *myInode;
-
-#endif
+ void *myInode;
yaffs_ObjectType variantType;
yaffs_ObjectType variantType;
@@
-599,8
+592,9
@@
struct yaffs_DeviceStruct {
int isYaffs2;
/* The removeObjectCallback function must be supplied by OS flavours that
int isYaffs2;
/* The removeObjectCallback function must be supplied by OS flavours that
- * need it. The Linux kernel does not use this, but yaffs direct does use
- * it to implement the faster readdir
+ * need it.
+ * yaffs direct uses it to implement the faster readdir.
+ * Linux uses it to protect the directory during unlocking.
*/
void (*removeObjectCallback)(struct yaffs_ObjectStruct *obj);
*/
void (*removeObjectCallback)(struct yaffs_ObjectStruct *obj);
@@
-640,10
+634,14
@@
struct yaffs_DeviceStruct {
struct semaphore sem; /* Semaphore for waiting on erasure.*/
struct semaphore grossLock; /* Gross locking semaphore */
struct semaphore sem; /* Semaphore for waiting on erasure.*/
struct semaphore grossLock; /* Gross locking semaphore */
+ struct rw_semaphore dirLock; /* Lock the directory structure */
__u8 *spareBuffer; /* For mtdif2 use. Don't know the size of the buffer
* at compile time so we have to allocate it.
__u8 *spareBuffer; /* For mtdif2 use. Don't know the size of the buffer
* at compile time so we have to allocate it.
+
*/
void (*putSuperFunc) (struct super_block *sb);
*/
void (*putSuperFunc) (struct super_block *sb);
+ struct ylist_head searchContexts;
+
#endif
int isMounted;
#endif
int isMounted;