Messages in this thread Patch in this message | | | Subject | Re: vfat for 2.1.45 | From | Michael Harnois <> | Date | 20 Jul 1997 15:43:02 -0500 |
| |
I was reminded that I failed to post the necessary diff to msdos_fs.h. It follows below.
AFAIK the status of this driver currently is as follows:
Copying from vfat to another drive works. Copying over an existing file on the vfat drive works. Creating a new file on the vfat drive does not.
Deleting a file causes it to no longer appear in a directory listing. However it does not go away; i.e. if I do less <filename> the file displays. Also, copying another file to the file of that name works, i.e. the file is copied, but the previously deleted directory entry does not reappear.
I have hacked on this for three days, but I just don't know enough about it to fix it. Help would be *greatly* appreciated.
--- msdos_fs.h.orig Sat Jul 19 13:57:43 1997 +++ msdos_fs.h Sun Jul 20 02:24:52 1997 @@ -266,19 +266,17 @@ extern int init_fat_fs(void); /* vfat/namei.c - these are for dmsdos */ -extern int vfat_create(struct inode *dir,const char *name,int len,int mode, - struct inode **result); -extern int vfat_unlink(struct inode *dir,const char *name,int len); -extern int vfat_mkdir(struct inode *dir,const char *name,int len,int mode); -extern int vfat_rmdir(struct inode *dir,const char *name,int len); -extern int vfat_rename(struct inode *old_dir,const char *old_name,int old_len, - struct inode *new_dir,const char *new_name,int new_len); +extern int vfat_create(struct inode *dir,struct dentry *dentry, int mode); +extern int vfat_unlink(struct inode *dir,struct dentry *dentry); +extern int vfat_mkdir(struct inode *dir,struct dentry *dentry, int mode); +extern int vfat_rmdir(struct inode *dir, struct dentry *dentry); +extern int vfat_rename(struct inode *old_dir,struct dentry *old_dentry, + struct inode *new_dir,struct dentry *new_dentry); extern void vfat_put_super(struct super_block *sb); extern struct super_block *vfat_read_super(struct super_block *sb,void *data, int silent); extern void vfat_read_inode(struct inode *inode); -extern int vfat_lookup(struct inode *dir,const char *name,int len, - struct inode **result); +extern int vfat_lookup(struct inode *dir,struct dentry *dentry); #endif /* __KERNEL__ */ -- Michael D. Harnois, Redeemer Lutheran Church, Washburn, IA mharnois@sbt.net aa0bt@aa0bt.ampr.org "Few sinners are saved after the first 20 minutes of a sermon." --Mark Twain
| |