lkml.org 
[lkml]   [1999]   [Jan]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: dcache problems with vfat
Andries.Brouwer@cwi.nl writes:
> # mount /dev/foo /mnt -t vfat
> # cd /mnt; touch file; mkdir dir; cd dir; mv ../file .
> # cd /mnt/dir/file
> bash: /mnt/dir/file: Not a directory
> # rm file; cd ..; rmdir dir
>
> rmdir: Device or resource busy
> What happens? The "cd /mnt/dir/file" needs the dcache
> entry of dir, but the revalidate fails because dir was
> timestamped with the version of /mnt, but that changed
> when mv ../file . was done. So, the old entry for dir
> is dropped and a new lookup is done.
> However, the old entry pointed at the same inode as the
> new one, so that now i_count=2 and the rmdir fails.
>
> The abovementioned bug is easily reproduced, and still present
> in 2.2.0pre4. It is also easy to give patches that make this
> particular bug go away, but before doing so I would like to
> convince myself that vfat+patches satisfies the obligations.
> But what are these precisely (say, for revalidate)?

Its been awhile since I've made any changes to the code and so I am
still running 2.1.121 with some of my own modifications. Then, the
problem did not exist and everything worked fine. I saw that some
significant changes were made around 2.1.130 to some of the dcache
code that had a significant impact on vfat, but I haven't been working
with any of these. It took me quite awhile to get all (or at least most)
of the problems dealt with so that my test suite was happy again before
the latest set of changes was made, and I was happy with where things
were given the code freeze. However, it seems that whatever changes
were made once again made the vfat code unstable, and I haven't had
time to look for all the problems again. I've been busy with a startup,
so I haven't been keeping on top of things.

- Gordon

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:49    [W:0.058 / U:0.576 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site