Re: it seems Evolution remove the Tabs

2007-05-25 Thread coly
Andrew, Thanks for your information :-) Coly 在 2007-05-25五的 16:33 +1000,andrew hendry写道: select your whole mail and use pre-format in evolution. or change it to pre-format and do insert-text file. this should send it with tabs intact, the confusing bit i think is if your testing it by

Re: [PATCH] AFS: Implement file locking

2007-05-25 Thread Jiri Slaby
David Howells napsal(a): Implement file locking for AFS. Signed-off-by: David Howells [EMAIL PROTECTED] --- fs/afs/Makefile|1 fs/afs/afs.h |8 + fs/afs/afs_fs.h|3 fs/afs/callback.c |3 fs/afs/dir.c |1 fs/afs/file.c |2

[RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread Neil Brown
This mail is about an issue that has been of concern to me for quite a while and I think it is (well past) time to air it more widely and try to come to a resolution. This issue is how write barriers (the block-device kind, not the memory-barrier kind) should be handled by the various layers.

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Toshiharu Harada
Hi, 2007/5/24, James Morris [EMAIL PROTECTED]: I can restate my question and ask why you'd want a security policy like: Subject 'sysadmin' has: read access to /etc/shadow read/write access to /views/sysadmin/etc/shadow where the objects referenced by the paths are identical and

Re: [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread David Chinner
On Fri, May 25, 2007 at 05:58:25PM +1000, Neil Brown wrote: We can think of there being three types of devices: 1/ SAFE. With a SAFE device, there is no write-behind cache, or if there is it is non-volatile. Once a write completes it is completely safe. Such a device

Re: [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread Jens Axboe
On Fri, May 25 2007, David Chinner wrote: The second, while much easier, can fail. So we do a test I/O to see if the device supports them before enabling that mode. But, as we've recently discovered, this is not sufficient to detect *correctly functioning* barrier support. Right, those

[EMAIL PROTECTED]: Re: [patch 00/41] Buffered write deadlock fix and new aops for 2.6.21-mm2]

2007-05-25 Thread Nick Piggin
I actually forgot to cc linux-fsdevel on this one. Vladimir found a corner case bug in the case of faulting source address, which is since fixed, but might be interesting to anyone else following development... - Forwarded message from Nick Piggin [EMAIL PROTECTED] - Date: Wed, 16 May

[patch 00/41] Buffered write deadlock fix and new aops for 2.6.22-rc2-mm1

2007-05-25 Thread npiggin
Hi, This is a resync of the new aops patches to 2.6.22-rc2-mm1 Only one more conversion broken this time, so we're doing OK. AFFS compile is broken due to cont_prepare_write disappearing, and me not bringing the conversion patch uptodate (which I won't do again until something happens with this

[patch 01/41] mm: revert KERNEL_DS buffered write optimisation

2007-05-25 Thread npiggin
Revert the patch from Neil Brown to optimise NFSD writev handling. Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Cc: Neil Brown [EMAIL PROTECTED] Signed-off-by: Nick Piggin [EMAIL PROTECTED] mm/filemap.c | 32

[patch 13/41] mm: restore KERNEL_DS optimisations

2007-05-25 Thread npiggin
Restore the KERNEL_DS optimisation, especially helpful to the 2copy write path. This may be a pretty questionable gain in most cases, especially after the legacy 2copy write path is removed, but it doesn't cost much. Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux Filesystems

[patch 19/41] xfs convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/xfs/linux-2.6/xfs_aops.c | 19 --- fs/xfs/linux-2.6/xfs_lrw.c | 35 --- 2 files changed, 24 insertions(+), 30

[patch 16/41] ext2 convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/ext2/dir.c | 56 ++-- fs/ext2/ext2.h |3 +++ fs/ext2/inode.c | 24 +--- 3 files changed, 54

[patch 30/41] reiserfs use generic_cont_expand_simple

2007-05-25 Thread npiggin
From: Vladimir Saveliev [EMAIL PROTECTED] This patch makes reiserfs to use AOP_FLAG_CONT_EXPAND in order to get rid of the special generic_cont_expand routine Signed-off-by: Vladimir Saveliev [EMAIL PROTECTED] Signed-off-by: Nick Piggin [EMAIL PROTECTED] --- --- fs/reiserfs/inode.c | 13

[patch 34/41] fuse convert to new aops.

2007-05-25 Thread npiggin
[mszeredi] - don't send zero length write requests - it is not legal for the filesystem to return with zero written bytes Signed-off-by: Nick Piggin [EMAIL PROTECTED] Signed-off-by: Miklos Szeredi [EMAIL PROTECTED] fs/fuse/file.c | 48 +--- 1 file

[patch 14/41] implement simple fs aops

2007-05-25 Thread npiggin
Implement new aops for some of the simpler filesystems. Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/configfs/inode.c |4 ++-- fs/hugetlbfs/inode.c | 16 ++-- fs/ramfs/file-mmu.c |4 ++-- fs/ramfs/file-nommu.c |

[patch 32/41] nfs convert to new aops.

2007-05-25 Thread npiggin
Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Acked-by: Trond Myklebust [EMAIL PROTECTED] Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/nfs/file.c | 49 - 1 file changed, 36 insertions(+), 13 deletions(-) Index: linux-2.6/fs/nfs/file.c

[patch 15/41] block_dev convert to new aops.

2007-05-25 Thread npiggin
Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/block_dev.c | 26 +++--- 1 file changed, 19 insertions(+), 7 deletions(-) Index: linux-2.6/fs/block_dev.c ===

[patch 17/41] ext3 convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] Various fixes and improvements Signed-off-by: Badari Pulavarty [EMAIL PROTECTED] fs/ext3/inode.c | 136 1 file

[patch 26/41] bfs convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/bfs/file.c | 12 1 file changed, 8 insertions(+), 4 deletions(-) Index: linux-2.6/fs/bfs/file.c

[patch 38/41] udf convert to new aops.

2007-05-25 Thread npiggin
Convert udf to new aops. Also seem to have fixed pagecache corruption in udf_adinicb_commit_write -- page was marked uptodate when it is not. Also, fixed the silly setup where prepare_write was doing a kmap to be used in commit_write: just do kmap_atomic in write_end. Use libfs helpers to make

[patch 37/41] ufs convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/ufs/dir.c | 56 +--- fs/ufs/inode.c | 23 +++ 2 files changed, 56 insertions(+), 23 deletions(-)

[patch 18/41] ext4 convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Convert ext4 to use write_begin()/write_end() methods. Signed-off-by: Badari Pulavarty [EMAIL PROTECTED] fs/ext4/inode.c | 147 +++- 1 file changed, 93 insertions(+),

[patch 04/41] mm: clean up buffered write code

2007-05-25 Thread npiggin
From: Andrew Morton [EMAIL PROTECTED] Rename some variables and fix some types. Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Nick Piggin [EMAIL PROTECTED] mm/filemap.c | 35

[patch 29/41] reiserfs convert to new aops.

2007-05-25 Thread npiggin
From: Vladimir Saveliev [EMAIL PROTECTED] Convert reiserfs to new aops Signed-off-by: Vladimir Saveliev [EMAIL PROTECTED] Signed-off-by: Nick Piggin [EMAIL PROTECTED] --- --- fs/reiserfs/inode.c | 177 +--- fs/reiserfs/ioctl.c | 10 +-

[patch 33/41] smb convert to new aops.

2007-05-25 Thread npiggin
Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/smbfs/file.c | 34 +- 1 file changed, 25 insertions(+), 9 deletions(-) Index: linux-2.6/fs/smbfs/file.c

[patch 10/41] mm: buffered write iterator

2007-05-25 Thread npiggin
Add an iterator data structure to operate over an iovec. Add usercopy operators needed by generic_file_buffered_write, and convert that function over. Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED]

[patch 31/41] With reiserfs no longer using the weird generic_cont_expand, remove it completely.

2007-05-25 Thread npiggin
Signed-off-by: Nick Piggin [EMAIL PROTECTED] --- fs/buffer.c | 20 include/linux/buffer_head.h |1 - 2 files changed, 21 deletions(-) Index: linux-2.6/fs/buffer.c === ---

[patch 09/41] mm: fix pagecache write deadlocks

2007-05-25 Thread npiggin
Modify the core write() code so that it won't take a pagefault while holding a lock on the pagecache page. There are a number of different deadlocks possible if we try to do such a thing: 1. generic_buffered_write 2. lock_page 3.prepare_write 4. unlock_page+vmtruncate 5.

[patch 07/41] mm: buffered write cleanup

2007-05-25 Thread npiggin
Quite a bit of code is used in maintaining these cached pages that are probably pretty unlikely to get used. It would require a narrow race where the page is inserted concurrently while this process is allocating a page in order to create the spare page. Then a multi-page write into an uncached

[patch 28/41] reiserfs use generic write.

2007-05-25 Thread npiggin
From: Vladimir Saveliev [EMAIL PROTECTED] Make reiserfs to write via generic routines. Original reiserfs write optimized for big writes is deadlock rone Signed-off-by: Vladimir Saveliev [EMAIL PROTECTED] Signed-off-by: Nick Piggin [EMAIL PROTECTED] --- --- fs/reiserfs/file.c | 1240

[patch 12/41] fs: introduce write_begin, write_end, and perform_write aops

2007-05-25 Thread npiggin
These are intended to replace prepare_write and commit_write with more flexible alternatives that are also able to avoid the buffered write deadlock problems efficiently (which prepare_write is unable to do). Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux Filesystems

[patch 02/41] Revert 81b0c8713385ce1b1b9058e916edcf9561ad76d6

2007-05-25 Thread npiggin
From: Andrew Morton [EMAIL PROTECTED] This was a bugfix against 6527c2bdf1f833cc18e8f42bd97973d583e4aa83, which we also revert. Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Nick

[patch 11/41] fs: fix data-loss on error

2007-05-25 Thread npiggin
New buffers against uptodate pages are simply be marked uptodate, while the buffer_new bit remains set. This causes error-case code to zero out parts of those buffers because it thinks they contain stale data: wrong, they are actually uptodate so this is a data loss situation. Fix this by

[patch 27/41] qnx4 convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/qnx4/inode.c | 21 + 1 file changed, 13 insertions(+), 8 deletions(-) Index: linux-2.6/fs/qnx4/inode.c

[patch 06/41] mm: trim more holes

2007-05-25 Thread npiggin
If prepare_write fails with AOP_TRUNCATED_PAGE, or if commit_write fails, then we may have failed the write operation despite prepare_write having instantiated blocks past i_size. Fix this, and consolidate the trimming into one place. Cc: Linux Memory Management [EMAIL PROTECTED] Cc: Linux

[patch 05/41] mm: debug write deadlocks

2007-05-25 Thread npiggin
Allow CONFIG_DEBUG_VM to switch off the prefaulting logic, to simulate the difficult race where the page may be unmapped before calling copy_from_user. Makes the race much easier to hit. This is useful for demonstration and testing purposes, but is removed in a subsequent patch. Cc: Linux

[patch 24/41] hfsplus convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/hfsplus/extents.c | 21 + fs/hfsplus/inode.c | 20 2 files changed, 21 insertions(+), 20 deletions(-) Index:

[patch 03/41] Revert 6527c2bdf1f833cc18e8f42bd97973d583e4aa83

2007-05-25 Thread npiggin
From: Andrew Morton [EMAIL PROTECTED] This patch fixed the following bug: When prefaulting in the pages in generic_file_buffered_write(), we only faulted in the pages for the firts segment of the iovec. If the second of successive segment described a mmapping of the page into which we're

[patch 23/41] hfs convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/hfs/extent.c | 19 --- fs/hfs/inode.c | 20 2 files changed, 20 insertions(+), 19 deletions(-) Index: linux-2.6/fs/hfs/inode.c

[patch 35/41] hostfs convert to new aops.

2007-05-25 Thread npiggin
This also gets rid of a lot of useless read_file stuff. And also optimises the full page write case by marking a !uptodate page uptodate. Cc: Jeff Dike [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/hostfs/hostfs_kern.c |

[patch 22/41] adfs convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/adfs/inode.c | 14 +- 1 file changed, 9 insertions(+), 5 deletions(-) Index: linux-2.6/fs/adfs/inode.c

[patch 39/41] sysv convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/sysv/dir.c | 51 +++ fs/sysv/itree.c | 23 +++ 2 files changed, 50 insertions(+), 24 deletions(-)

[patch 36/41] jffs2 convert to new aops.

2007-05-25 Thread npiggin
Cc: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Cc: Linux Filesystems linux-fsdevel@vger.kernel.org Signed-off-by: Nick Piggin [EMAIL PROTECTED] fs/jffs2/file.c | 105 +++- 1 file changed, 66 insertions(+), 39 deletions(-) Index:

Re: [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread Stefan Bader
2007/5/25, Neil Brown [EMAIL PROTECTED]: HOW DO MD or DM USE THIS 1/ striping devices. This includes md/raid0 md/linear dm-linear dm-stripe and probably others. These devices can easily support blkdev_issue_flush by simply calling blkdev_issue_flush on

Re: [patch 27/41] qnx4 convert to new aops.

2007-05-25 Thread Anders Larsen
On 2007-05-25 14:22:11, [EMAIL PROTECTED] wrote: Signed-off-by: Nick Piggin [EMAIL PROTECTED] Acked-by: Anders Larsen [EMAIL PROTECTED] (although we might just as well do away with the 'write' methods completely, since write-support is BROKEN anyway) Cheers Anders fs/qnx4/inode.c |

Re: [dm-devel] Re: [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread Phillip Susi
Jens Axboe wrote: A barrier write will include a flush, but it may also use the FUA bit to ensure data is on platter. So the only situation where a fallback from a barrier to flush would be valid, is if the device lied and told you it could do FUA but it could not and that is the reason why the

Re: [dm-devel] [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread Phillip Susi
Neil Brown wrote: There is no guarantee that a device can support BIO_RW_BARRIER - it is always possible that a request will fail with EOPNOTSUPP. Why is it not the job of the block layer to translate for broken devices and send them a flush/write/flush? These devices would find it very

[patch 1/2] i_version update - vfs part

2007-05-25 Thread Jean noel Cordenner
Concerning the first part of the set, the i_version field of the inode structure has been reused. The field has been redefined as the counter has to be 64-bits. The patch modifies the i_version field of the inode on the VFS layer. The i_version field become a 64bit counter that is set on inode

[patch 2/2] i_version update - ext4 part

2007-05-25 Thread Jean noel Cordenner
The patch is on top of the ext4 tree: http://repo.or.cz/w/ext4-patch-queue.git In this part, the i_version counter is stored into 2 32bit fields of the ext4_inode structure osd1.linux1.l_i_version and i_version_hi. I included the ext4_expand_inode_extra_isize patch, which does part of the job,

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Casey Schaufler
--- Jeremy Maitin-Shepard [EMAIL PROTECTED] wrote: Casey Schaufler [EMAIL PROTECTED] writes: On Fedora zcat, gzip and gunzip are all links to the same file. I can imagine (although it is a bit of a stretch) allowing a set of users access to gunzip but not gzip (or the other way around).

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Jeremy Maitin-Shepard
Casey Schaufler [EMAIL PROTECTED] writes: --- Jeremy Maitin-Shepard [EMAIL PROTECTED] wrote: Casey Schaufler [EMAIL PROTECTED] writes: On Fedora zcat, gzip and gunzip are all links to the same file. I can imagine (although it is a bit of a stretch) allowing a set of users access to

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Casey Schaufler
--- Jeremy Maitin-Shepard [EMAIL PROTECTED] wrote: ... Well, my point was exactly that App Armor doesn't (as far as I know) do anything to enforce the argv[0] convention, Sounds like an opportunity for improvement then. nor would it in general prevent a confined program from making a

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Andreas Gruenbacher
On Friday 25 May 2007 19:43, Casey Schaufler wrote: [...] but the AppArmor code could certainly check for that in exec by enforcing the argv[0] convention. It would be perfectly reasonable for a system that is so dependent on pathnames to require that. Hmm ... that's a strange idea. AppArmor

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Casey Schaufler
--- Andreas Gruenbacher [EMAIL PROTECTED] wrote: On Friday 25 May 2007 19:43, Casey Schaufler wrote: [...] but the AppArmor code could certainly check for that in exec by enforcing the argv[0] convention. It would be perfectly reasonable for a system that is so dependent on pathnames to

Re: [patch 00/41] Buffered write deadlock fix and new aops for 2.6.22-rc2-mm1

2007-05-25 Thread Mark Fasheh
On Fri, May 25, 2007 at 10:21:44PM +1000, [EMAIL PROTECTED] wrote: Still unfortunately missing the OCFS2 and GFS2 conversions, which allowed us to remove a lot of code -- I won't ask the maintainers to redo them either until the patchset gets somewhere. Nonetheless, I'll give this a go and try

Re: [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.

2007-05-25 Thread Andreas Dilger
On May 25, 2007 17:58 +1000, Neil Brown wrote: These devices would find it very hard to support BIO_RW_BARRIER. Doing this would require keeping track of all in-flight requests (which some, possibly all, of the above don't) and then: When a BIO_RW_BARRIER request arrives:

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Tetsuo Handa
Hello. Casey Schaufler wrote: Sorry, but I don't understand your objection. If AppArmor is configured to allow everyone access to /bin/gzip but only some people access to /bin/gunzip and (important detail) the single binary uses argv[0] as documented and (another important detail) there

Re: [PATCH] AFS: Implement file locking

2007-05-25 Thread J. Bruce Fields
On Thu, May 24, 2007 at 05:55:54PM +0100, David Howells wrote: +/* + * initialise the lock manager thread if it isn't already running + */ +static int afs_init_lock_manager(void) +{ + if (!afs_lock_manager) { + afs_lock_manager = create_singlethread_workqueue(kafs_lockd); +

Re: [PATCH] AFS: Implement file locking

2007-05-25 Thread Kyle Moffett
On May 25, 2007, at 22:23:42, J. Bruce Fields wrote: On Thu, May 24, 2007 at 05:55:54PM +0100, David Howells wrote: + /* only whole-file locks are supported */ + if (fl-fl_start != 0 || fl-fl_end != OFFSET_MAX) + return -EINVAL; Do you allow upgrades and downgrades?

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Kyle Moffett
On May 24, 2007, at 14:58:41, Casey Schaufler wrote: On Fedora zcat, gzip and gunzip are all links to the same file. I can imagine (although it is a bit of a stretch) allowing a set of users access to gunzip but not gzip (or the other way around). That is a COMPLETE straw-man argument. I

Re: [AppArmor 01/41] Pass struct vfsmount to the inode_create LSM hook

2007-05-25 Thread Crispin Cowan
Casey Schaufler wrote: --- Andreas Gruenbacher [EMAIL PROTECTED] wrote: AppArmor cannot assume anything about argv[0], and it would be a really bad idea to change the well-established semantics of argv[0]. There is no actual need for looking at argv[0], though: AppArmor decides based