Re: [Ecryptfs-devel] [PATCH 3/11] eCryptfs: read_write.c routines

2007-09-25 Thread Michael Halcrow
On Fri, Sep 21, 2007 at 03:05:40PM -0700, Andrew Morton wrote: btw, I'm not really a great admirer of the whole patchset: it does some pretty nasty-looking things: allocating dynamic memory, grabbing the underlying pageframes with virt_to_page(), passing them back into kernel APIs which are

[patch 0/4] 64k pagesize/blocksize fixes

2007-09-25 Thread Christoph Lameter
Attached the fixes necessary to support 64k pagesize/blocksize. I think these are useful independent of the large blocksize patchset since there are architectures that support 64k page size and that could use these large buffer sizes without the large buffersize patchset. Are these patches in

[patch 1/4] Increase limits for 64k page size support for Ext2/3/4

2007-09-25 Thread Christoph Lameter
[This patch allows architectures that use 64k blocksizes--like IA64 and PPC64--to use 64k blocks on ext filesystems] The patches to support blocksizes up to PAGESIZE, max 64KB for ext2/3/4,\ were originally from Takashi Sato. http://marc.info/?l=linux-ext4m=115768873518400w=2 It's quite simple

[patch 3/4] ext3: fix rec_len overflow with 64KB block size

2007-09-25 Thread Christoph Lameter
Prevent rec_len from overflow with 64KB blocksize Signed-off-by: Takashi Sato [EMAIL PROTECTED] Signed-off-by: Mingming Cao [EMAIL PROTECTED] Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- fs/ext3/dir.c | 13 --- fs/ext3/namei.c | 88

[patch 2/4] ext2: fix rec_len overflow for 64KB block size

2007-09-25 Thread Christoph Lameter
[2/4] ext2: fix rec_len overflow - prevent rec_len from overflow with 64KB blocksize Signed-off-by: Takashi Sato [EMAIL PROTECTED] Signed-off-by: Mingming Cao [EMAIL PROTECTED] Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- fs/ext2/dir.c | 46

[00/17] Virtual Compound Page Support V1

2007-09-25 Thread Christoph Lameter
RFC-V1 - Support for all compound functions for virtual compound pages (including the compound_nth_page() necessary for LBS mmap support) - Fix various bugs - Fix i386 build Currently there is a strong tendency to avoid larger page allocations in the kernel because of past fragmentation issues

[03/17] i386: Resolve dependency of asm-i386/pgtable.h on highmem.h

2007-09-25 Thread Christoph Lameter
pgtable.h does not include highmem.h but uses various constants from highmem.h. We cannot include highmem.h because highmem.h will in turn include many other include files that also depend on pgtable.h So move the definitions from highmem.h into pgtable.h. Signed-off-by: Christoph Lameter [EMAIL

[01/17] Vmalloc: Move vmalloc_to_page to mm/vmalloc.

2007-09-25 Thread Christoph Lameter
We already have page table manipulation for vmalloc in vmalloc.c. Move the vmalloc_to_page() function there as well. Move the definitions for vmalloc related functions in mm.h to before the functions dealing with compound pages because they will soon need to use them. Signed-off-by: Christoph

[05/17] vmalloc: clean up page array indexing

2007-09-25 Thread Christoph Lameter
The page array is repeatedly indexed both in vunmap and vmalloc_area_node(). Add a temporary variable to make it easier to read (and easier to patch later). Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- mm/vmalloc.c | 16 +++- 1 file changed, 11 insertions(+), 5

[06/17] vunmap: return page array passed on vmap()

2007-09-25 Thread Christoph Lameter
Make vunmap return the page array that was used at vmap. This is useful if one has no structures to track the page array but simply stores the virtual address somewhere. The disposition of the page array can be decided upon after vunmap. vfree() may now also be used instead of vunmap which will

[04/17] is_vmalloc_addr(): Check if an address is within the vmalloc boundaries

2007-09-25 Thread Christoph Lameter
is_vmalloc_addr() is used in a couple of places. Add a version to vmalloc.h and replace the other checks. Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- drivers/net/cxgb3/cxgb3_offload.c |4 +--- fs/ntfs/malloc.h |3 +-- fs/proc/kcore.c |2

[07/17] vmalloc_address(): Determine vmalloc address from page struct

2007-09-25 Thread Christoph Lameter
Sometimes we need to figure out which vmalloc address is in use for a certain page struct. There is no easy way to figure out the vmalloc address from the page struct. So simply search through the kernel page tables to find the address. This is a fairly expensive process. Use sparingly (or provide

[11/17] GFP_VFALLBACK for zone wait table.

2007-09-25 Thread Christoph Lameter
Currently vmalloc is used for the zone wait table possibly generating the need to generate lots of TLBs to access the tables. We can now use GFP_VFALLBACK to attempt the use of a physically contiguous page that can then use the large kernel TLBs. Signed-off-by: Christoph Lameter [EMAIL PROTECTED]

[14/17] Allow bit_waitqueue to wait on a bit in a vmalloc area

2007-09-25 Thread Christoph Lameter
If bit waitqueue is passed a virtual address then it must use vmalloc_to_page instead of virt_to_page to get to the page struct. Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- kernel/wait.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-2.6/kernel/wait.c

[16/17] Allow virtual fallback for buffer_heads

2007-09-25 Thread Christoph Lameter
This is in particular useful for large I/Os because it will allow 100 allocs from the SLUB fast path without having to go to the page allocator. Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- fs/buffer.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Index:

[17/17] Allow virtual fallback for dentries

2007-09-25 Thread Christoph Lameter
Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- fs/dcache.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Index: linux-2.6/fs/dcache.c === --- linux-2.6.orig/fs/dcache.c 2007-09-24 16:47:43.0 -0700 +++

[15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK

2007-09-25 Thread Christoph Lameter
SLAB_VFALLBACK can be specified for selected slab caches. If fallback is available then the conservative settings for higher order allocations are overridden. We then request an order that can accomodate at mininum 100 objects. The size of an individual slab allocation is allowed to reach up to

[13/17] Virtual compound page freeing in interrupt context

2007-09-25 Thread Christoph Lameter
If we are in an interrupt context then simply defer the free via a workqueue. Removing a virtual mappping *must* be done with interrupts enabled since tlb_xx functions are called that rely on interrupts for processor to processor communications. Signed-off-by: Christoph Lameter [EMAIL PROTECTED]

[10/17] Use GFP_VFALLBACK for sparsemem.

2007-09-25 Thread Christoph Lameter
Sparsemem currently attempts first to do a physically contiguous mapping and then falls back to vmalloc. The same thing can now be accomplished using GFP_VFALLBACK. Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- mm/sparse.c | 23 +++ 1 file changed, 3

[09/17] VFALLBACK: Debugging aid

2007-09-25 Thread Christoph Lameter
Virtual fallbacks are rare and thus subtle bugs may creep in if we do not test the fallbacks. CONFIG_VFALLBACK_ALWAYS makes all GFP_VFALLBACK allocations fall back to virtual mapping. Signed-off-by: Christoph Lameter [EMAIL PROTECTED] --- lib/Kconfig.debug | 11 +++ mm/page_alloc.c

[12/17] Virtual Compound page allocation from interrupt context.

2007-09-25 Thread Christoph Lameter
In an interrupt context we cannot wait for the vmlist_lock in __get_vm_area_node(). So use a trylock instead. If the trylock fails then the atomic allocation will fail and subsequently be retried. This only works because the flush_cache_vunmap in use for allocation is never performing any IPIs in

[08/17] GFP_VFALLBACK: Allow fallback of compound pages to virtual mappings

2007-09-25 Thread Christoph Lameter
Add a new gfp flag __GFP_VFALLBACK If specified during a higher order allocation then the system will fall back to vmap and attempt to create a virtually contiguous area instead of a physically contiguous area. In many cases the virtually contiguous area can stand in for the physically

Re: [patch 2/4] ext2: fix rec_len overflow for 64KB block size

2007-09-25 Thread Andreas Dilger
On Sep 25, 2007 16:30 -0700, Christoph Lameter wrote: [2/4] ext2: fix rec_len overflow - prevent rec_len from overflow with 64KB blocksize Signed-off-by: Takashi Sato [EMAIL PROTECTED] Signed-off-by: Mingming Cao [EMAIL PROTECTED] Signed-off-by: Christoph Lameter [EMAIL

[GIT PULL -mm] 00/25 Unionfs updates/cleanups/fixes

2007-09-25 Thread Erez Zadok
The following is a series of patches related to Unionfs. Aside from a few minor cleanups/fixes, the two main changes are (1) lower nameidata support so we can stack on nfsv4, and (2) un/likely optimizations. These patches were tested (where appropriate) on our 2.6.23-rc8 latest code, as well as

[PATCH 05/25] Unionfs: cast page-index loff_t before shifting

2007-09-25 Thread Erez Zadok
Fixes bugs in number promotion/demotion computation, as per http://lkml.org/lkml/2007/9/20/17 Signed-off-by: Erez Zadok [EMAIL PROTECTED] Acked-by: Josef 'Jeff' Sipek [EMAIL PROTECTED] --- fs/unionfs/mmap.c |5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git

[PATCH 24/25] Unionfs: add un/likely conditionals on xattr ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/xattr.c | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/fs/unionfs/xattr.c b/fs/unionfs/xattr.c index 7f77d7d..bd2de06 100644 --- a/fs/unionfs/xattr.c +++ b/fs/unionfs/xattr.c @@ -23,14 +23,14 @@ void

[PATCH 14/25] Unionfs: add un/likely conditionals on headers

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/fanout.h | 13 - fs/unionfs/union.h |4 ++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/fs/unionfs/fanout.h b/fs/unionfs/fanout.h index 51aa0de..6405399 100644 --- a/fs/unionfs/fanout.h +++

[PATCH 03/25] Unionfs: display informational messages only if debug is on

2007-09-25 Thread Erez Zadok
This is to avoid filling the console/logs with messages that are primarily of debugging use. Signed-off-by: Erez Zadok [EMAIL PROTECTED] Acked-by: Josef 'Jeff' Sipek [EMAIL PROTECTED] --- fs/unionfs/commonfops.c |4 ++-- fs/unionfs/dentry.c |6 +++--- fs/unionfs/union.h |4

[PATCH 21/25] Unionfs: add un/likely conditionals on readdir ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/rdstate.c | 15 --- 1 files changed, 8 insertions(+), 7 deletions(-) diff --git a/fs/unionfs/rdstate.c b/fs/unionfs/rdstate.c index 0a18d5c..7ec7f95 100644 --- a/fs/unionfs/rdstate.c +++ b/fs/unionfs/rdstate.c @@ -45,7

[PATCH 19/25] Unionfs: add un/likely conditionals on mmap ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/mmap.c | 28 ++-- 1 files changed, 14 insertions(+), 14 deletions(-) diff --git a/fs/unionfs/mmap.c b/fs/unionfs/mmap.c index 37af979..1cea075 100644 --- a/fs/unionfs/mmap.c +++ b/fs/unionfs/mmap.c @@ -84,7

[PATCH 08/25] Unionfs: lower nameidata support for nfsv4

2007-09-25 Thread Erez Zadok
Pass nameidata structures as needed to the lower file system, support LOOKUP_ACCESS/OPEN intents. This makes unionfs work on top of nfsv4. Signed-off-by: Erez Zadok [EMAIL PROTECTED] Acked-by: Josef 'Jeff' Sipek [EMAIL PROTECTED] --- fs/unionfs/dentry.c | 11 +-- fs/unionfs/inode.c |

[PATCH 07/25] Unionfs: add lower nameidata debugging support

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/debug.c | 20 fs/unionfs/dentry.c |4 +++- fs/unionfs/inode.c |8 +++- fs/unionfs/union.h |4 4 files changed, 34 insertions(+), 2 deletions(-) diff --git a/fs/unionfs/debug.c

[PATCH 22/25] Unionfs: add un/likely conditionals on common subr

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/sioq.c |4 ++-- fs/unionfs/subr.c | 26 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/fs/unionfs/sioq.c b/fs/unionfs/sioq.c index 2a8c88e..35d9fc3 100644 --- a/fs/unionfs/sioq.c +++

[PATCH 06/25] Unionfs: minor coding style updates

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/debug.c |6 -- fs/unionfs/dentry.c |2 +- fs/unionfs/inode.c | 14 -- fs/unionfs/main.c |4 ++-- fs/unionfs/union.h |2 +- 5 files changed, 16 insertions(+), 12 deletions(-) diff --git

[PATCH 23/25] Unionfs: add un/likely conditionals on unlink ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/unlink.c | 32 1 files changed, 16 insertions(+), 16 deletions(-) diff --git a/fs/unionfs/unlink.c b/fs/unionfs/unlink.c index 3924f7f..33d08d9 100644 --- a/fs/unionfs/unlink.c +++ b/fs/unionfs/unlink.c

[PATCH 15/25] Unionfs: add un/likely conditionals on fileops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/file.c | 38 +++--- 1 files changed, 19 insertions(+), 19 deletions(-) diff --git a/fs/unionfs/file.c b/fs/unionfs/file.c index d8eaaa5..06ca1fa 100644 --- a/fs/unionfs/file.c +++ b/fs/unionfs/file.c @@

[PATCH 17/25] Unionfs: add un/likely conditionals on lookup ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/lookup.c | 44 ++-- 1 files changed, 22 insertions(+), 22 deletions(-) diff --git a/fs/unionfs/lookup.c b/fs/unionfs/lookup.c index 2109714..92b5e0a 100644 --- a/fs/unionfs/lookup.c +++

[PATCH 13/25] Unionfs: add un/likely conditionals on dir ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/dirfops.c | 22 +++--- fs/unionfs/dirhelper.c | 30 +++--- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/fs/unionfs/dirfops.c b/fs/unionfs/dirfops.c index c923e58..fa2df88

[PATCH 12/25] Unionfs: add un/likely conditionals on dentry ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/dentry.c | 68 ++ 1 files changed, 35 insertions(+), 33 deletions(-) diff --git a/fs/unionfs/dentry.c b/fs/unionfs/dentry.c index 52bcb18..3f3a18d 100644 --- a/fs/unionfs/dentry.c +++

[PATCH 20/25] Unionfs: add un/likely conditionals on rename ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/rename.c | 96 +- 1 files changed, 48 insertions(+), 48 deletions(-) diff --git a/fs/unionfs/rename.c b/fs/unionfs/rename.c index 7b8fe39..92c4515 100644 --- a/fs/unionfs/rename.c +++

[PATCH 09/25] Unionfs: add un/likely conditionals on common fileops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/commonfops.c | 94 +++--- 1 files changed, 47 insertions(+), 47 deletions(-) diff --git a/fs/unionfs/commonfops.c b/fs/unionfs/commonfops.c index e69ccf6..db8f064 100644 ---

[PATCH 10/25] Unionfs: add un/likely conditionals on copyup ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/copyup.c | 102 +- 1 files changed, 51 insertions(+), 51 deletions(-) diff --git a/fs/unionfs/copyup.c b/fs/unionfs/copyup.c index 23ac4c8..e3c5f15 100644 --- a/fs/unionfs/copyup.c +++

[PATCH 16/25] Unionfs: add un/likely conditionals on inode ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/inode.c | 160 ++-- 1 files changed, 80 insertions(+), 80 deletions(-) diff --git a/fs/unionfs/inode.c b/fs/unionfs/inode.c index 7ee4760..7ae4a25 100644 --- a/fs/unionfs/inode.c +++

[PATCH 18/25] Unionfs: add un/likely conditionals on super ops

2007-09-25 Thread Erez Zadok
Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/main.c | 98 ++- fs/unionfs/super.c | 90 2 files changed, 95 insertions(+), 93 deletions(-) diff --git a/fs/unionfs/main.c

[PATCH 02/25] Unionfs: Remove unused #defines

2007-09-25 Thread Erez Zadok
From: Josef 'Jeff' Sipek [EMAIL PROTECTED] Signed-off-by: Josef 'Jeff' Sipek [EMAIL PROTECTED] Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/union.h |4 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/fs/unionfs/union.h b/fs/unionfs/union.h index

[PATCH 04/25] Unionfs: cache-coherency fixes

2007-09-25 Thread Erez Zadok
From: Olivier Blin [EMAIL PROTECTED] Do not update mtime if there is no upper branch for the inode. This prevents from calling unionfs_lower_inode_idx() with a negative index, which triggers a bug. Signed-off-by: Olivier Blin [EMAIL PROTECTED] Signed-off-by: Erez Zadok [EMAIL PROTECTED] ---

[PATCH 01/25] Unionfs: Simplify unionfs_get_nlinks

2007-09-25 Thread Erez Zadok
From: Josef 'Jeff' Sipek [EMAIL PROTECTED] Since we set the right value for d_type in readdir, there's really no point in having to calculate the number of directory links. Some on-disk filesystems don't even store the number of links for directories. Signed-off-by: Josef 'Jeff' Sipek [EMAIL

[PATCH 25/25] Unionfs: use poison.h for safe poison pointers

2007-09-25 Thread Erez Zadok
This also fixes a compile warning on 64-bit systems. Signed-off-by: Josef 'Jeff' Sipek [EMAIL PROTECTED] Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/debug.c | 16 ++-- fs/unionfs/union.h |1 + 2 files changed, 7 insertions(+), 10 deletions(-) diff --git

Re: [PATCH 10/25] Unionfs: add un/likely conditionals on copyup ops

2007-09-25 Thread Kok, Auke
Erez Zadok wrote: Signed-off-by: Erez Zadok [EMAIL PROTECTED] --- fs/unionfs/copyup.c | 102 +- 1 files changed, 51 insertions(+), 51 deletions(-) diff --git a/fs/unionfs/copyup.c b/fs/unionfs/copyup.c index 23ac4c8..e3c5f15 100644 ---

Re: Upgrading datastructures between different filesystem versions

2007-09-25 Thread Jim Cromie
kernel learner wrote: Hi, ext3 filesystem has 32-bit block address and ext4 filesystem has 48-bit block address. If a user installs ext4, how will the file system handle already existing block with 32 bit values? Why should it ? thats what ext3 is for. your kernel can have both FS's