Re: [RFC 4/8] Enhance fallback functions in libs to support higher order pages

2007-04-19 Thread Adam Litke
!= page_cache_size(file-f_mapping)) { Where do you introduce page_cache_size()? Is this added by a different set of patches I should have applied first? -- Adam Litke ( agl at us.ibm.com ) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body

[PATCH 0/7] [RFC] hugetlb: pagetable_operations API

2007-02-19 Thread Adam Litke
The page tables for hugetlb mappings are handled differently than page tables for normal pages. Rather than integrating multiple page size support into the main VM (which would tremendously complicate the code) some hooks were created. This allows hugetlb special cases to be handled out of line

[PATCH 1/7] Introduce the pagetable_operations and associated helper macros.

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include/linux/mm.h | 25 + 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 2d2c08d..a2fa66d 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -98,6

[PATCH 2/7] copy_vma for hugetlbfs

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |6 ++ mm/memory.c |4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 4f4cd13..c0a7984 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 3/7] pin_pages for hugetlb

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/memory.c |6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index c0a7984..2d1dd84 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 4/7] unmap_page_range for hugetlb

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c|3 ++- include/linux/hugetlb.h |4 ++-- mm/hugetlb.c| 12 mm/memory.c | 10 -- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/fs/hugetlbfs/inode.c

[PATCH 7/7] hugetlbfs fault handler

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/hugetlb.c |4 +++- mm/memory.c |4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 3461f9b..1de73c1 100644 --- a/fs

[PATCH 5/7] change_protection for hugetlb

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/mprotect.c|5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 146a4b7..1016694 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 6/7] free_pgtable_range for hugetlb

2007-02-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/memory.c |6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 1016694..3461f9b 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

Re: [PATCH 1/7] Introduce the pagetable_operations and associated helper macros.

2007-02-19 Thread Adam Litke
On Mon, 2007-02-19 at 19:41 +0100, Arjan van de Ven wrote: On Mon, 2007-02-19 at 10:31 -0800, Adam Litke wrote: Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include/linux/mm.h | 25 + 1 files changed, 25 insertions(+), 0 deletions(-) diff --git

Re: [PATCH 0/7] [RFC] hugetlb: pagetable_operations API

2007-02-19 Thread Adam Litke
On Mon, 2007-02-19 at 19:43 +0100, Arjan van de Ven wrote: On Mon, 2007-02-19 at 10:31 -0800, Adam Litke wrote: The page tables for hugetlb mappings are handled differently than page tables for normal pages. Rather than integrating multiple page size support into the main VM (which

[PATCH 0/7] [RFC] hugetlb: pagetable_operations API (V2)

2007-03-19 Thread Adam Litke
Andrew, given the favorable review of these patches the last time around, would you consider them for the -mm tree? Does anyone else have any objections? The page tables for hugetlb mappings are handled differently than page tables for normal pages. Rather than integrating multiple page size

[PATCH 1/7] Introduce the pagetable_operations and associated helper macros.

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include/linux/mm.h | 25 + 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 60e0e4a..7089323 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -98,6

[PATCH 2/7] copy_vma for hugetlbfs

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |6 ++ mm/memory.c |4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 8c718a3..2452dde 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 3/7] pin_pages for hugetlb

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/memory.c |6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 2452dde..d0b4b46 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 5/7] change_protection for hugetlb

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/mprotect.c|5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 198efa7..3de5d93 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 4/7] unmap_page_range for hugetlb

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c|3 ++- include/linux/hugetlb.h |4 ++-- mm/hugetlb.c| 12 mm/memory.c | 10 -- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/fs/hugetlbfs/inode.c

[PATCH 6/7] free_pgtable_range for hugetlb

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/memory.c |6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 3de5d93..823a9e3 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs

[PATCH 7/7] hugetlbfs fault handler

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c |1 + mm/hugetlb.c |4 +++- mm/memory.c |4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 823a9e3..29e65c2 100644 --- a/fs

Re: [PATCH 1/7] Introduce the pagetable_operations and associated helper macros.

2007-03-21 Thread Adam Litke
On Tue, 2007-03-20 at 16:24 -0700, Dave Hansen wrote: On Mon, 2007-03-19 at 13:05 -0700, Adam Litke wrote: +#define has_pt_op(vma, op) \ + ((vma)-pagetable_ops (vma)-pagetable_ops-op) +#define pt_op(vma, call) \ + ((vma)-pagetable_ops-call) Can you get rid

Re: [PATCH 1/7] Introduce the pagetable_operations and associated helper macros.

2007-03-21 Thread Adam Litke
On Wed, 2007-03-21 at 15:18 +1100, Nick Piggin wrote: Adam Litke wrote: Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include/linux/mm.h | 25 + 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h

Re: [PATCH] NOMMU: Supply get_unmapped_area() to fix NOMMU SYSV SHM

2007-03-21 Thread Adam Litke
complete. Acked-by: Adam Litke [EMAIL PROTECTED] -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please

pagetable_ops: Hugetlb character device example

2007-03-21 Thread Adam Litke
separation, etc). So it is unlikely to apply to any trees you may have. I do think it makes a useful illustration of what legitimate things can be done with a pagetable_operations interface. commit be72df1c616fb662693a8d4410ce3058f20c71f3 Author: Adam Litke [EMAIL PROTECTED] Date: Tue Feb 13 14

Re: pagetable_ops: Hugetlb character device example

2007-03-21 Thread Adam Litke
On Wed, 2007-03-21 at 15:51 -0400, [EMAIL PROTECTED] wrote: On Wed, 21 Mar 2007 14:43:48 CDT, Adam Litke said: The main reason I am advocating a set of pagetable_operations is to enable the development of a new hugetlb interface. Do you have an exit strategy for the *old* interface

Re: [patch 1/2] hugetlb: add resv argument to hugetlb_file_setup

2007-03-26 Thread Adam Litke
to stacking them. Keeping them separate removes the need for if ((vm_flags VM_HUGETLB) (is_hugetlbfs_chardev())) checking. -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL

Kernel Oops with shm namespace cleanups

2007-02-28 Thread Adam Litke
] [C0014A20] .compat_sys_ipc+0x18c/0x1e8 [C00779BB3E30] [C000872C] syscall_exit+0x0/0x40 -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo

[PATCH] Fix get_unmapped_area and fsync for hugetlb shm segments

2007-03-01 Thread Adam Litke
. Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include/linux/hugetlb.h |8 +++- include/linux/shm.h |5 + ipc/shm.c | 32 ++-- 3 files changed, 38 insertions(+), 7 deletions(-) diff --git a/include/linux/hugetlb.h b/include/linux

Re: Kernel Oops with shm namespace cleanups

2007-03-02 Thread Adam Litke
On Thu, 2007-03-01 at 16:08 -0800, Bill Irwin wrote: On Wed, Feb 28, 2007 at 02:13:29PM -0600, Adam Litke wrote: Hey. While testing 2.6.21-rc2 with libhugetlbfs, the shm-fork test case causes the kernel to oops. To reproduce: Execute 'make check' in the latest libhugetlbfs source

Re: [PATCH] Fix get_unmapped_area and fsync for hugetlb shm segments

2007-03-07 Thread Adam Litke
On Wed, 2007-03-07 at 16:03 -0700, Eric W. Biederman wrote: Bill Irwin [EMAIL PROTECTED] writes: On Thu, Mar 01, 2007 at 03:46:08PM -0800, Adam Litke wrote: static inline int is_file_hugepages(struct file *file) { - return file-f_op == hugetlbfs_file_operations; + if (file-f_op

[PATCH] hugetlb: handle write-protection faults in follow_hugetlb_page

2007-12-06 Thread Adam Litke
to make the pte writable, it notes the presence of the pte and continues. This simple one-liner makes sure we also fault on the pte for this case. Please apply. Signed-off-by: Adam Litke [EMAIL PROTECTED] Acked-by: Dave Kleikamp [EMAIL PROTECTED] --- mm/hugetlb.c |2 +- 1 files changed, 1

Re: [2.6 patch] mm/hugetlb.c: make a function static

2007-10-24 Thread Adam Litke
On Wed, 2007-10-24 at 18:23 +0200, Adrian Bunk wrote: return_unused_surplus_pages() can become static. Signed-off-by: Adrian Bunk [EMAIL PROTECTED] Acked-by: Adam Litke [EMAIL PROTECTED] --- 8932fe99341629d50863643229d25666e9f44e03 diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 8b809ec

[PATCH] hugetlb: Fix pool resizing corner case

2007-10-03 Thread Adam Litke
latest dynamic pool resizing patchset which I will send out soon. Signed-off-by: Adam Litke [EMAIL PROTECTED] --- mm/hugetlb.c |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 84c795e..7af3908 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c

Re: [PATCH] hugetlb: Fix pool resizing corner case

2007-10-03 Thread Adam Litke
we've already handed out (total - free). Does that make sense? -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org

[PATCH] hugetlb: Fix pool resizing corner case V2

2007-10-03 Thread Adam Litke
, this is a standalone fix suitable for mainline. It is also now corrected in my latest dynamic pool resizing patchset which I will send out soon. Signed-off-by: Adam Litke [EMAIL PROTECTED] Acked-by: Ken Chen [EMAIL PROTECTED] --- mm/hugetlb.c |8 +++- 1 files changed, 3 insertions(+), 5 deletions

Re: [PATCH] spinlock in function hugetlb_fault could be deleted

2007-07-23 Thread Adam Litke
impossible for other threads/processes to change the page table now. -- Adam Litke ( agl at us.ibm.com ) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo

Re: [PATCH] remove hugetlb_instantiation_mutex

2007-07-27 Thread Adam Litke
logic? -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http

Re: [PATCH] Fix find_next_best_node (Re: [BUG] 2.6.23-rc3-mm1 Kernel panic - not syncing: DMA: Memory would be corrupted)

2007-08-28 Thread Adam Litke
On Fri, 2007-08-24 at 15:53 +0900, Yasunori Goto wrote: I found find_next_best_node() was wrong. I confirmed boot up by the following patch. Mel-san, Kamalesh-san, could you try this? FYI: This patch also allows the alloc-instantiate-race testcase in libhugetlbfs to pass again :) -- Adam

[PATCH] Fix VM_FAULT flags conversion for hugetlb

2007-08-14 Thread Adam Litke
follow_hugetlb_page is involved in a failed fault. Signed-off-by: Adam Litke [EMAIL PROTECTED] diff --git a/mm/hugetlb.c b/mm/hugetlb.c index d7ca59d..de4cf45 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -643,7 +643,7 @@ int follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma

[Documentation] Page Table Layout diagrams

2007-08-08 Thread Adam Litke
misinformation, could a few of you experts take a quick look at the three diagrams I've got finished so far and point out any errors I have made? Thanks. -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel

Re: [PATCH] remove hugetlb_instantiation_mutex

2007-08-03 Thread Adam Litke
On Mon, 2007-07-30 at 15:15 +0800, Zhang, Yanmin wrote: On Fri, 2007-07-27 at 11:37 -0500, Adam Litke wrote: Hey... I am amazed at how quickly you came back with a patch for this :) Thanks for looking at it. Unfortunately there is one show-stopper and I have some reservations (pun

Re: Memory pressure handling with iSCSI

2005-07-26 Thread Adam Litke
) dirty_file(fd, chunk_size, i); exit(0); } -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http

[Resend] [Hugetlb x86] 3/3 Check p?d_present in huge_pte_offset()

2005-08-26 Thread Adam Litke
Initial Post (Wed, 17 Aug 2005) For demand faulting, we cannot assume that the page tables will be populated. Do what the rest of the architectures do and test p?d_present() while walking down the page table. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke [EMAIL PROTECTED

[Resend] [Hugetlb x86] 2/3 Move stale pte check into huge_pte_alloc()

2005-08-26 Thread Adam Litke
in the series. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- arch/i386/mm/hugetlbpage.c | 13 +++-- mm/hugetlb.c |2 -- 2 files changed, 11 insertions(+), 4 deletions(-) diff -upN reference/arch/i386/mm/hugetlbpage.c current/arch/i386/mm

[Resend] [Hugetlb x86] 1/3 Add pte_huge() macro

2005-08-26 Thread Adam Litke
2.6.13-rc6-git7 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- asm-i386/pgtable.h |4 +++- asm-x86_64/pgtable.h |3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff -upN reference/include/asm-i386/pgtable.h current/include/asm-i386/pgtable.h --- reference/include/asm-i386

[RFC] Cleanup line-wrapping in pgtable.h

2005-08-17 Thread Adam Litke
a consensus. Signed-off-by: Adam Litke [EMAIL PROTECTED] pgtable.h | 51 ++- 1 files changed, 34 insertions(+), 17 deletions(-) diff -upN reference/include/asm-i386/pgtable.h current/include/asm-i386/pgtable.h --- reference/include/asm-i386/pgtable.h

[Hugetlb x86] Small hugetlb arch updates for i386 and x86_64

2005-08-23 Thread Adam Litke
Hi Andrew. The following 3 patches update the i386 and x86_64 hugetlb arch code to bring it closer to the other architectures. The first patch adds a pte_huge() macro. The second patch moves the stale pte check into huge_pte_alloc() which seems more appropriate to me. The third patch checks

Re: [Hugetlb x86] 1/3 Add pte_huge() macro

2005-08-23 Thread Adam Litke
2.6.13-rc6-git7 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- asm-i386/pgtable.h |4 +++- asm-x86_64/pgtable.h |3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff -upN reference/include/asm-i386/pgtable.h current/include/asm-i386/pgtable.h --- reference/include/asm-i386

Re: [Hugetlb x86] 3/3 Check p?d_present in huge_pte_offset()

2005-08-23 Thread Adam Litke
Initial Post (Wed, 17 Aug 2005) For demand faulting, we cannot assume that the page tables will be populated. Do what the rest of the architectures do and test p?d_present() while walking down the page table. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke [EMAIL PROTECTED

Re: [Hugetlb x86] 2/3 Move stale pte check into huge_pte_alloc()

2005-08-23 Thread Adam Litke
in the series. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- arch/i386/mm/hugetlbpage.c | 13 +++-- mm/hugetlb.c |2 -- 2 files changed, 11 insertions(+), 4 deletions(-) diff -upN reference/arch/i386/mm/hugetlbpage.c current/arch/i386/mm

[PATCH] Don't allow the stack to grow into hugetlb reserved regions

2007-01-25 Thread Adam Litke
When expanding the stack, we don't currently check if the VMA will cross into an area of the address space that is reserved for hugetlb pages. Subsequent faults on the expanded portion of such a VMA will confuse the low-level MMU code, resulting in an OOPS. Check for this. Signed-off-by: Adam

[PATCH] Don't allow the stack to grow into hugetlb reserved regions

2007-01-29 Thread Adam Litke
When expanding the stack, we don't currently check if the VMA will cross into an area of the address space that is reserved for hugetlb pages. Subsequent faults on the expanded portion of such a VMA will confuse the low-level MMU code, resulting in an OOPS. Check for this. Signed-off-by: Adam

[RFC] Demand faulting for large pages

2005-08-05 Thread Adam Litke
() to hugetlb_pte_fault(). Diffed against 2.6.13-rc4-git4 Signed-off-by: Adam Litke [EMAIL PROTECTED] fs/hugetlbfs/inode.c|5 - include/linux/hugetlb.h |2 mm/hugetlb.c| 140 +++- mm/memory.c |7 -- 4 files changed

Re: [RFC] Demand faulting for large pages

2005-08-05 Thread Adam Litke
On Fri, 2005-08-05 at 10:53, Andi Kleen wrote: On Fri, Aug 05, 2005 at 10:21:38AM -0500, Adam Litke wrote: Below is a patch to implement demand faulting for huge pages. The main motivation for changing from prefaulting to demand faulting is so that huge page allocations can follow the NUMA

Re: [RFC] Demand faulting for large pages

2005-08-05 Thread Adam Litke
On Fri, 2005-08-05 at 11:47, Andi Kleen wrote: On Fri, Aug 05, 2005 at 11:37:27AM -0500, Adam Litke wrote: On Fri, 2005-08-05 at 10:53, Andi Kleen wrote: On Fri, Aug 05, 2005 at 10:21:38AM -0500, Adam Litke wrote: Below is a patch to implement demand faulting for huge pages. The main

RE: [RFC] Demand faulting for large pages

2005-08-08 Thread Adam Litke
On Fri, 2005-08-05 at 17:05, Chen, Kenneth W wrote: Adam Litke wrote on Friday, August 05, 2005 8:22 AM Below is a patch to implement demand faulting for huge pages. The main motivation for changing from prefaulting to demand faulting is so that huge page allocations can follow the NUMA

[PATCH 0/3] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
I am sending out the latest set of patches for hugetlb demand faulting. I've incorporated all the feedback I've received from previous discussions and I think this is ready for some more widespread testing. Is anyone opposed to spinning this in -mm as it stands? The three patches: 1) Remove a

[PATCH 1/3 htlb-get_user_pages] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
, which contains more opinions about the correctness of this approach. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- memory.c |5 - 1 files changed, 5 deletions(-) diff -upN reference/mm/memory.c current/mm/memory.c --- reference/mm/memory.c +++ current/mm

Re: [PATCH 3/3 htlb-acct] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
and builds on what this patch starts. Huge page shared memory segments are simpler and still maintain their commit on shmget semantics. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- inode.c | 47 +++ 1 files changed, 47

Re: [PATCH 2/3 htlb-fault] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
fault handler. The bulk of the patch just moves the logic from hugelb_prefault() to hugetlb_pte_fault(). Diffed against 2.6.13-git6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c|6 -- include/linux/hugetlb.h |2 mm/hugetlb.c| 137

RE: [PATCH 2/3 htlb-fault] Demand faulting for hugetlb

2005-09-07 Thread Adam Litke
On Wed, 2005-09-07 at 10:33 +0800, Zhang, Yanmin wrote: -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Adam Litke Sent: Wednesday, September 07, 2005 5:59 AM To: linux-kernel@vger.kernel.org Cc: ADAM G. LITKE [imap] Subject: Re: [PATCH 2/3 htlb

[UPDATE] [PATCH 0/3] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
that is no longer valid for demand faulting 2) Move fault logic from hugetlb_prefault() to hugetlb_pte_fault() 3) Apply a simple overcommit check so demand fault accounting behaves in a manner in line with how prefault worked Diffed against 2.6.13-git6 -- Adam Litke - (agl at us.ibm.com) IBM

Re: [PATCH 1/3 htlb-get_user_pages] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
, which contains more opinions about the correctness of this approach. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- memory.c |5 - 1 files changed, 5 deletions(-) diff -upN reference/mm/memory.c current/mm/memory.c --- reference/mm/memory.c +++ current/mm

Re: [PATCH 3/3 htlb-acct] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
and builds on what this patch starts. Huge page shared memory segments are simpler and still maintain their commit on shmget semantics. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- inode.c | 47 +++ 1 files changed, 47

Re: [PATCH 2/3 htlb-fault] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
the logic from hugelb_prefault() to hugetlb_pte_fault(). Diffed against 2.6.13-git6 Signed-off-by: Adam Litke [EMAIL PROTECTED] --- fs/hugetlbfs/inode.c|6 - include/linux/hugetlb.h |2 mm/hugetlb.c| 154 +--- mm/memory.c

Re: [PATCH] hugetlb: ensure we do not reference a surplus page after handing it to buddy

2008-02-19 Thread Adam Litke
. Signed-off-by: Andy Whitcroft [EMAIL PROTECTED] Acked-by: Adam Litke [EMAIL PROTECTED] -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info

Re: [PATCH] hugetlb: ensure we do not reference a surplus page after handing it to buddy

2008-02-20 Thread Adam Litke
On Tue, 2008-02-19 at 15:30 -0800, Andrew Morton wrote: On Tue, 19 Feb 2008 12:41:51 -0600 Adam Litke [EMAIL PROTECTED] wrote: Indeed. I'll take credit for this thinko... On Tue, 2008-02-19 at 18:28 +, Andy Whitcroft wrote: When we free a page via free_huge_page and we detect

[PATCH] Define the shmem_inode_info flags directly

2007-02-07 Thread Adam Litke
for the introduction of a SHMEM_HUGETLB flag. Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include/linux/shmem_fs.h |4 mm/shmem.c |4 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/linux/shmem_fs.h b/include/linux/shmem_fs.h index f3c5189..3ea0b6e 100644

[PATCH] hugetlb: follow_hugetlb_page for write access

2007-11-07 Thread Adam Litke
that calls get_user_pages() with write set will not expect COW faults to occur on the returned pages. This patch passes the write flag down to follow_hugetlb_page() and makes sure hugetlb_fault() is called with the right write_access parameter. Signed-off-by: Adam Litke [EMAIL PROTECTED] --- include

Re: 2.6.21 numa policy and huge pages not working

2007-06-11 Thread Adam Litke
to be only affecting SHM_HUGETLB allocations. (i haven't tested hugetlbfs yet.) run with numactl --interleave=all ./shmtest This was not intentional. I'll search for where it broke. ok i've narrowed it some... maybe. Thanks a lot for the detailed information. I am on it. -- Adam

Re: [PATCH] shm: Fix the filename of hugetlb sysv shared memory

2007-06-11 Thread Adam Litke
On 6/8/07, Eric W. Biederman [EMAIL PROTECTED] wrote: -struct file *hugetlb_zero_setup(size_t size) +struct file *hugetlb_file_setup(const char *name, size_t size) The bulk of this patch seems to handle renaming this function. Is that really necessary? -- Adam Litke ( agl at us.ibm.com ) IBM

[shm][hugetlb] Fix get_policy for stacked shared memory files

2007-06-11 Thread Adam Litke
() wrapper to maintain steps 1-3 for the wrapped vm_ops. Andi and Christoph, does this look right to you? Signed-off-by: Adam Litke [EMAIL PROTECTED] diff --git a/ipc/shm.c b/ipc/shm.c index 4fefbad..8d2672d 100644 --- a/ipc/shm.c +++ b/ipc/shm.c @@ -254,8 +254,10 @@ struct mempolicy *shm_get_policy

Re: [shm][hugetlb] Fix get_policy for stacked shared memory files

2007-06-12 Thread Adam Litke
On 6/12/07, Eric W. Biederman [EMAIL PROTECTED] wrote: Adam Litke [EMAIL PROTECTED] writes: Here's another breakage as a result of shared memory stacked files :( The NUMA policy for a VMA is determined by checking the following (in the order given): 1) vma-vm_ops-get_policy() (if defined

Re: [PATCH] hugetlb: use set_compound_page_dtor

2007-07-16 Thread Adam Litke
On 7/13/07, Akinobu Mita [EMAIL PROTECTED] wrote: Use appropriate accessor function to set compound page destructor function. Cc: William Irwin [EMAIL PROTECTED] Signed-off-by: Akinobu Mita [EMAIL PROTECTED] Acked-by: Adam Litke [EMAIL PROTECTED] -- Adam Litke ( agl at us.ibm.com ) IBM

[RFC] Demand faulting for large pages

2005-08-05 Thread Adam Litke
() to hugetlb_pte_fault(). Diffed against 2.6.13-rc4-git4 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> fs/hugetlbfs/inode.c|5 - include/linux/hugetlb.h |2 mm/hugetlb.c| 140 +++- mm/memory.c |7 -- 4 files c

Re: [RFC] Demand faulting for large pages

2005-08-05 Thread Adam Litke
On Fri, 2005-08-05 at 10:53, Andi Kleen wrote: > On Fri, Aug 05, 2005 at 10:21:38AM -0500, Adam Litke wrote: > > Below is a patch to implement demand faulting for huge pages. The main > > motivation for changing from prefaulting to demand faulting is so that > > huge page a

Re: [RFC] Demand faulting for large pages

2005-08-05 Thread Adam Litke
On Fri, 2005-08-05 at 11:47, Andi Kleen wrote: > On Fri, Aug 05, 2005 at 11:37:27AM -0500, Adam Litke wrote: > > On Fri, 2005-08-05 at 10:53, Andi Kleen wrote: > > > On Fri, Aug 05, 2005 at 10:21:38AM -0500, Adam Litke wrote: > > > > Below is a patch to implement

RE: [RFC] Demand faulting for large pages

2005-08-08 Thread Adam Litke
On Fri, 2005-08-05 at 17:05, Chen, Kenneth W wrote: > Adam Litke wrote on Friday, August 05, 2005 8:22 AM > > Below is a patch to implement demand faulting for huge pages. The main > > motivation for changing from prefaulting to demand faulting is so that > > huge page a

[RFC] Cleanup line-wrapping in pgtable.h

2005-08-17 Thread Adam Litke
f we reach a consensus. Signed-off-by: Adam Litke <[EMAIL PROTECTED]> pgtable.h | 51 ++- 1 files changed, 34 insertions(+), 17 deletions(-) diff -upN reference/include/asm-i386/pgtable.h current/include/asm-i386/pgtable.h --- reference/include/as

[Hugetlb x86] Small hugetlb arch updates for i386 and x86_64

2005-08-23 Thread Adam Litke
Hi Andrew. The following 3 patches update the i386 and x86_64 hugetlb arch code to bring it closer to the other architectures. The first patch adds a pte_huge() macro. The second patch moves the "stale pte" check into huge_pte_alloc() which seems more appropriate to me. The third patch checks

Re: [Hugetlb x86] 1/3 Add pte_huge() macro

2005-08-23 Thread Adam Litke
2.6.13-rc6-git7 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- asm-i386/pgtable.h |4 +++- asm-x86_64/pgtable.h |3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff -upN reference/include/asm-i386/pgtable.h current/include/asm-i386/pgtable.h --- reference/include/as

Re: [Hugetlb x86] 3/3 Check p?d_present in huge_pte_offset()

2005-08-23 Thread Adam Litke
Initial Post (Wed, 17 Aug 2005) For demand faulting, we cannot assume that the page tables will be populated. Do what the rest of the architectures do and test p?d_present() while walking down the page table. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke <[EMAIL PROTEC

Re: [Hugetlb x86] 2/3 Move stale pte check into huge_pte_alloc()

2005-08-23 Thread Adam Litke
g huge pages later in the series. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- arch/i386/mm/hugetlbpage.c | 13 +++-- mm/hugetlb.c |2 -- 2 files changed, 11 insertions(+), 4 deletions(-) diff -upN reference/arch/i386/mm/hugetlbpage

[Resend] [Hugetlb x86] 3/3 Check p?d_present in huge_pte_offset()

2005-08-26 Thread Adam Litke
Initial Post (Wed, 17 Aug 2005) For demand faulting, we cannot assume that the page tables will be populated. Do what the rest of the architectures do and test p?d_present() while walking down the page table. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke <[EMAIL PROTEC

[Resend] [Hugetlb x86] 2/3 Move stale pte check into huge_pte_alloc()

2005-08-26 Thread Adam Litke
g huge pages later in the series. Diffed against 2.6.13-rc6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- arch/i386/mm/hugetlbpage.c | 13 +++-- mm/hugetlb.c |2 -- 2 files changed, 11 insertions(+), 4 deletions(-) diff -upN reference/arch/i386/mm/hugetlbpage

[Resend] [Hugetlb x86] 1/3 Add pte_huge() macro

2005-08-26 Thread Adam Litke
2.6.13-rc6-git7 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- asm-i386/pgtable.h |4 +++- asm-x86_64/pgtable.h |3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff -upN reference/include/asm-i386/pgtable.h current/include/asm-i386/pgtable.h --- reference/include/as

Re: Memory pressure handling with iSCSI

2005-07-26 Thread Adam Litke
printf("Chunk size = %i\n", chunk_size); for (i = 0; i < bytes; i+=chunk_size) dirty_file(fd, chunk_size, i); exit(0); } -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center - To unsubscribe from this list: send the line "unsubscribe l

[PATCH 0/3] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
I am sending out the latest set of patches for hugetlb demand faulting. I've incorporated all the feedback I've received from previous discussions and I think this is ready for some more widespread testing. Is anyone opposed to spinning this in -mm as it stands? The three patches: 1) Remove a

[PATCH 1/3 htlb-get_user_pages] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
4/4/13/176 , which contains more opinions about the correctness of this approach. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- memory.c |5 - 1 files changed, 5 deletions(-) diff -upN reference/mm/memory.c current/mm/memory.c --- reference/mm/memory.

Re: [PATCH 3/3 htlb-acct] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
and builds on what this patch starts. Huge page shared memory segments are simpler and still maintain their commit on shmget semantics. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- inode.c | 47 +++ 1 files chang

Re: [PATCH 2/3 htlb-fault] Demand faulting for hugetlb

2005-09-06 Thread Adam Litke
fault handler. The bulk of the patch just moves the logic from hugelb_prefault() to hugetlb_pte_fault(). Diffed against 2.6.13-git6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- fs/hugetlbfs/inode.c|6 -- include/linux/hugetlb.h |2 mm/hugetlb.c

RE: [PATCH 2/3 htlb-fault] Demand faulting for hugetlb

2005-09-07 Thread Adam Litke
On Wed, 2005-09-07 at 10:33 +0800, Zhang, Yanmin wrote: > >>-Original Message- > >>From: [EMAIL PROTECTED] > >>[mailto:[EMAIL PROTECTED] On Behalf Of Adam Litke > >>Sent: Wednesday, September 07, 2005 5:59 AM > >>To: linux-kernel@vger.kernel.org

[UPDATE] [PATCH 0/3] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
that is no longer valid for demand faulting 2) Move fault logic from hugetlb_prefault() to hugetlb_pte_fault() 3) Apply a simple overcommit check so demand fault accounting behaves in a manner in line with how prefault worked Diffed against 2.6.13-git6 -- Adam Litke - (agl at us.ibm.com) IBM

Re: [PATCH 1/3 htlb-get_user_pages] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
4/4/13/176 , which contains more opinions about the correctness of this approach. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- memory.c |5 - 1 files changed, 5 deletions(-) diff -upN reference/mm/memory.c current/mm/memory.c --- reference/mm/memory.

Re: [PATCH 3/3 htlb-acct] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
and builds on what this patch starts. Huge page shared memory segments are simpler and still maintain their commit on shmget semantics. Diffed against 2.6.13-git6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- inode.c | 47 +++ 1 files chang

Re: [PATCH 2/3 htlb-fault] Demand faulting for hugetlb

2005-09-08 Thread Adam Litke
moves the logic from hugelb_prefault() to hugetlb_pte_fault(). Diffed against 2.6.13-git6 Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- fs/hugetlbfs/inode.c|6 - include/linux/hugetlb.h |2 mm/hugetlb.c| 154 +---

[PATCH 0/7] [RFC] hugetlb: pagetable_operations API (V2)

2007-03-19 Thread Adam Litke
Andrew, given the favorable review of these patches the last time around, would you consider them for the -mm tree? Does anyone else have any objections? The page tables for hugetlb mappings are handled differently than page tables for normal pages. Rather than integrating multiple page size

[PATCH 1/7] Introduce the pagetable_operations and associated helper macros.

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- include/linux/mm.h | 25 + 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 60e0e4a..7089323 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@

[PATCH 2/7] copy_vma for hugetlbfs

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- fs/hugetlbfs/inode.c |6 ++ mm/memory.c |4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 8c718a3..2452dde 100644 --- a/fs/hugetlbfs/inode.c ++

[PATCH 3/7] pin_pages for hugetlb

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- fs/hugetlbfs/inode.c |1 + mm/memory.c |6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 2452dde..d0b4b46 100644 --- a/fs/hugetlbfs/inode.c ++

[PATCH 5/7] change_protection for hugetlb

2007-03-19 Thread Adam Litke
Signed-off-by: Adam Litke <[EMAIL PROTECTED]> --- fs/hugetlbfs/inode.c |1 + mm/mprotect.c|5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 198efa7..3de5d93 100644 --- a/fs/hugetlbfs/inode.c ++

  1   2   >