linux-fsdevel mailing list

FromSubjectsort iconDate
Karel Zak
[ANNOUNCE] util-linux-ng 2.13.1-rc1
The first util-linux-ng 2.13.1 release candidate is available at ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/ (Note, 2.13.1 is stable maintenance release.) Feedback and bug reports, as always, are welcomed. Karel Util-linux-ng 2.13.1 Release Notes ================================== Fixed security issues: --------------------- CVE-2007-5191 - mount(8) doesn't drop privileges properly when calling helpers Changelog: --------- For more deta...
Nov 13, 7:24 am 2007
Erez Zadok
[GIT PULL -mm] 0/9 Unionfs updates/cleanups/fixes
The following is a series of patches related to Unionfs. The main changes here are bug fixes and improved cache-coherency methods. These patches were tested (where appropriate) on Linus's 2.6.24 latest code (as of v2.6.24-rc2-330-g325d22d), for the first time on MM (mmotm-2007-11-10-19-05), as well as the backports to 2.6.{23,22,21,20,19,18,9} on ext2/3/4, xfs, reiserfs, nfs2/3/4, jffs2, ramfs, tmpfs, cramfs, and squashfs (where available). See http://unionfs.filesystems.org/ to download backpo...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 6/9] Unionfs: debugging updates
Don't perform dentry+inode checks unless both are valid. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/debug.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/fs/unionfs/debug.c b/fs/unionfs/debug.c index 0066ccd..8464fbb 100644 --- a/fs/unionfs/debug.c +++ b/fs/unionfs/debug.c @@ -299,7 +299,7 @@ check_inode: * be NULL. But, check that all three are NULL: lower dentry, mnt, * and inode. */ - if (S_ISDIR(inode->i_mode)) + if (dsta...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 4/9] Unionfs: writepage updates
Don't set/reset the PageUptodate flag on our page. Call flush_dcache_page on the lower page after copy_highpage, and set it uptodate. Call set_page_dirty right before clear_page_dirty_for_io. CC: Hugh Dickins <hugh@veritas.com> Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/mmap.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/fs/unionfs/mmap.c b/fs/unionfs/mmap.c index 4b00b98..468dc61 100644 --- a/fs/unionfs/mmap.c +++ b/fs/unio...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 5/9] Unionfs: clear partial read in readpage
Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/mmap.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/fs/unionfs/mmap.c b/fs/unionfs/mmap.c index 468dc61..bb00fd5 100644 --- a/fs/unionfs/mmap.c +++ b/fs/unionfs/mmap.c @@ -178,7 +178,8 @@ static int unionfs_do_readpage(struct file *file, struct page *page) err = vfs_read(lower_file, page_data, PAGE_CACHE_SIZE, &lower_file->f_pos...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 9/9] Unionfs: move debugging checks inside locks
This is to ensure that the objects we want to check aren't being destroyed or changed by another thread. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/commonfops.c | 7 ++++--- fs/unionfs/dentry.c | 2 +- fs/unionfs/file.c | 10 +++++----- fs/unionfs/inode.c | 25 +++++++++++++------------ fs/unionfs/mmap.c | 2 +- fs/unionfs/super.c | 4 ++-- fs/unionfs/xattr.c | 8 ++++---- 7 files changed, 30 insertions(+), 28 deletions(...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 7/9] Unionfs: remove unnecessary lower atime updates
No need for this because our readpage calls vfs_read on the lower objects, which would update the atime as/if needed. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/file.c | 8 -------- fs/unionfs/mmap.c | 6 ------ 2 files changed, 0 insertions(+), 14 deletions(-) diff --git a/fs/unionfs/file.c b/fs/unionfs/file.c index 126df5e..809e0f1 100644 --- a/fs/unionfs/file.c +++ b/fs/unionfs/file.c @@ -31,10 +31,6 @@ static ssize_t unionfs_read(struct file *file, char __us...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 8/9] Unionfs: fold do_readpage into unionfs_readpage
Simplify the code and reduce stack pressure a bit. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/mmap.c | 44 ++++++++++++++------------------------------ 1 files changed, 14 insertions(+), 30 deletions(-) diff --git a/fs/unionfs/mmap.c b/fs/unionfs/mmap.c index 34fd8aa..ef8822f 100644 --- a/fs/unionfs/mmap.c +++ b/fs/unionfs/mmap.c @@ -136,22 +136,22 @@ out: return err; } -/* - * readpage is called from generic_page_read and the fault handler. - * If your fil...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 3/9] Unionfs: update cache-coherency detection heuris...
Use a small delay to reduce the number of times unionfs has to detect changed mtime's/ctime's, and also reduce the potential for false positives. See Documentation/filesystems/unionfs/concepts.txt for a detailed discussion. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- Documentation/filesystems/unionfs/concepts.txt | 18 ++++++++++++++ fs/unionfs/dentry.c | 29 ++++++++++++++--------- fs/unionfs/union.h | 3 ++ 3 files chang...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 1/9] Unionfs: flush and release updates
Remove the totalopens counter which was intended to reduce unnecessary processing of d_deleted dentries. Move that processing from file_release to flush. Cc: Hugh Dickins <hugh@veritas.com> Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/commonfops.c | 30 +++++++++++------------------- fs/unionfs/union.h | 2 -- 2 files changed, 11 insertions(+), 21 deletions(-) diff --git a/fs/unionfs/commonfops.c b/fs/unionfs/commonfops.c index 50e5775..ba84529 100644 ...
Nov 13, 6:10 am 2007
Erez Zadok
[PATCH 2/9] Unionfs: use i_size wrappers
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> --- fs/unionfs/commonfops.c | 10 +++++----- fs/unionfs/inode.c | 4 ++-- fs/unionfs/rdstate.c | 4 ++-- fs/unionfs/rename.c | 4 ++-- fs/unionfs/super.c | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/fs/unionfs/commonfops.c b/fs/unionfs/commonfops.c index ba84529..624f920 100644 --- a/fs/unionfs/commonfops.c +++ b/fs/unionfs/commonfops.c @@ -72,7 +72,8 @@ retry: dput(tmp_dentry); ...
Nov 13, 6:10 am 2007
Sage Weil
[ANNOUNCE] Ceph distributed file system
Hi everyone, Ceph is a distributed network file system designed to provide excellent performance, reliability, and scalability with POSIX semantics. I periodically see frustration on this list with the lack of a scalable GPL distributed file system with sufficiently robust replication and failure recovery to run on commodity hardware, and would like to think that--with a little love--Ceph could fill that gap. Basic features include: * POSIX semantics. * Seamless scaling from a few nodes...
Nov 12, 9:51 pm 2007
Bryan Henderson
Re: [ANNOUNCE] Ceph distributed file system
>Ceph is a distributed network file system ... What's distributed about it? As described, it sounds highly centralized. Do you mean it is distributed across the nodes of the central server clusters? Or just that it's a shared filesystem (multiple clients can use it at the same time)? -- Bryan Henderson IBM Almaden Research Center San Jose CA Filesystems -
Nov 13, 1:44 pm 2007
Sage Weil
Re: [ANNOUNCE] Ceph distributed file system
Both, actually, although there isn't necessarily a strong distinction between the 'central server cluster' and client nodes. For example, storage nodes can double as client nodes (as in a cluster doing distributed computation or some such thing). The system is distributed in the sense that there is no central server limiting scalability. Data storage is distributed across a large cluster of storage nodes (bricks or OSDs), and the metadata (namespace) is managed by a smaller cluster of met...
Nov 13, 2:50 pm 2007
David Chinner
Re: [PATCH 2/2] FIEMAP ioctl for ext4
Please make this common - we dont want a new ioctl for every Most of this function will be common to all IOC_FIEMAP struct address_space *mapping = filp->f_mapping; if (!mapping->a_ops->fiemap) The common form is: if (fiemap_s->fm_flags & FIEMAP_FLAG_SYNC) This becomes: error = mapping->a_ops->fiemap(inode, ....); and the lock, extent walk, etc becomes ext4_fiemap() which is set up in the a_ops for the filesystem. Any filesystems specific checks go ...
Nov 12, 11:54 pm 2007
Nick Piggin
Re: [rfc][patch 3/5] afs: new aops
It is supposed to bring the page uptodate first. So, no need to clear No rush, it won't get into 2.6.24 obviously. But that would be nice, thanks. -
Nov 12, 8:15 pm 2007
David Howells
Re: [rfc][patch 3/5] afs: new aops
Perhaps, but the function being called from there takes pages not page cache slots. If I have to allow for PAGE_CACHE_SIZE > PAGE_SIZE then I need to Hmmm... I suppose. However, it is wasteful in the common case as it is then bringing the page up to date by filling/clearing the whole of it and not just the bits that are not going to be written. David -
Nov 12, 8:30 pm 2007
Nick Piggin
Re: [rfc][patch 3/5] afs: new aops
It takes a pagecache page, yes. If you follow convention, you use PAGE_CACHE_SIZE for that guy. You don't have to allow PAGE_CACHE_SIZE != PAGE_SIZE, and if all the rest of your code is in units of PAGE_SIZE, then obviously my changing of just the one unit is even more confusing than Yes, that's where you come in. You are free (and encouraged) to optimise this. Let's see, for a network filesystem this is what you could do: - if the page is not uptodate at write_begin time, do not bring it uptod...
Nov 12, 8:44 pm 2007
David Howells
Re: [rfc][patch 3/5] afs: new aops
The problem is that the code called assumes that the struct page * argument points to a single page, not an array of pages as would presumably be the case if PAGE_CACHE_SIZE > PAGE_SIZE. If I should allow for an array of pages then the lower functions (specifically afs_deliver_fs_fetch_data()) need to change, and until that time occurs, the assertion *must* remain as it is now. It defends the lower functions against being asked to do something they weren't designed to do. So: you may not cha...
Nov 13, 6:56 am 2007
Erez Zadok
Re: msync(2) bug(?), returns AOP_WRITEPAGE_ACTIVATE to userl...
Hehe. Funny, you mention this... A few days ago, while I was doing your other recommended pageuptodate cleanups, I also added the same call to SetPageUptodate(lower_page) as you suggested. I tested that change along w/ the other changes you suggested, and they all seem to work great all the way from my 2.6.9 backport to 2.6.24-rc2 and -mm (modulo the fact that I had to work around or fix more non-unionfs bugs in -mm than unionfs ones to get it to work :-) I posted all of these patches just now...
Nov 13, 6:18 am 2007
previous daytodaynext day
November 12, 2007November 13, 2007November 14, 2007