Update of /cvsroot/linux-vax/kernel-2.4/Documentation/filesystems
In directory sc8-pr-cvs1:/tmp/cvs-serv7538/Documentation/filesystems
Modified Files:
Locking ntfs.txt
Log Message:
DA: sync with Marcelo 2.4.17
Index: Locking
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/filesystems/Locking,v
retrieving revision 1.1.1.2
retrieving revision 1.2
diff -u -r1.1.1.2 -r1.2
--- Locking 25 Feb 2001 23:15:24 -0000 1.1.1.2
+++ Locking 10 Jun 2003 01:13:12 -0000 1.2
@@ -123,6 +123,10 @@
int (*prepare_write)(struct file *, struct page *, unsigned, unsigned);
int (*commit_write)(struct file *, struct page *, unsigned, unsigned);
int (*bmap)(struct address_space *, long);
+ int (*flushpage) (struct page *, unsigned long);
+ int (*releasepage) (struct page *, int);
+ int (*direct_IO)(int, struct inode *, struct kiobuf *, unsigned long, int);
+
locking rules:
All may block
BKL PageLocked(page)
@@ -132,6 +136,8 @@
prepare_write: no yes
commit_write: no yes
bmap: yes
+flushpage: no yes
+releasepage: no yes
->prepare_write(), ->commit_write(), ->sync_page() and ->readpage()
may be called from the request handler (/dev/loop).
@@ -144,6 +150,15 @@
filesystems and by the swapper. The latter will eventually go away. All
instances do not actually need the BKL. Please, keep it that way and don't
breed new callers.
+ ->flushpage() is called when the filesystem must attempt to drop
+some or all of the buffers from the page when it is being truncated. It
+returns zero on success. If ->flushpage is zero, the kernel uses
+block_flushpage() instead.
+ ->releasepage() is called when the kernel is about to try to drop the
+buffers from the page in preparation for freeing it. It returns zero to
+indicate that the buffers are (or may be) freeable. If ->flushpage is zero,
+the kernel assumes that the fs has no private interest in the buffers.
+
Note: currently almost all instances of address_space methods are
using BKL for internal serialization and that's one of the worst sources
of contention. Normally they are calling library functions (in fs/buffer.c)
Index: ntfs.txt
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/filesystems/ntfs.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ntfs.txt 9 Apr 2002 16:55:41 -0000 1.2
+++ ntfs.txt 10 Jun 2003 01:13:12 -0000 1.3
@@ -98,6 +98,16 @@
ChangeLog
=========
+NTFS 1.1.21:
+ - Fixed bug with reading $MFT where we try to read higher mft records
+ before having read the $DATA attribute of $MFT. (Note this is only a
+ partial solution which will only work in the case that the attribute
+ list is resident or non-resident but $DATA is in the first 1024
+ bytes. But this should be enough in the majority of cases. I am not
+ going to bother fixing the general case until someone finds this to
+ be a problem for them, which I doubt very much will ever happen...)
+ - Fixed bogus BUG() call in readdir().
+
NTFS 1.1.20:
- Fixed two bugs in ntfs_readwrite_attr(). Thanks to Jan Kara for
spotting the out of bounds one.
|