24 Nov, 2005

3 commits

  • Commit 7d24f0b8a53261709938ffabe3e00f88f6498df9 fixed bugs in the ppc64 SLB
    miss handler with respect to hugepage handling, and in the process tweaked
    the semantics of the hugepage address masks in mm_context_t.

    Unfortunately, it left out a couple of necessary changes to go with that
    change. First, the in_hugepage_area() macro was not updated to match,
    second prepare_hugepage_range() was not updated to correctly handle
    hugepages regions which straddled the 4GB point.

    The latter appears only to cause process-hangs when attempting to map such
    a region, but the former can cause oopses if a get_user_pages() is
    triggered at the wrong point. This patch addresses both bugs.

    Signed-off-by: David Gibson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Gibson
     
  • alpha, sparc64, x86_64 are each missing some primitives from their atomic64
    support: fill in the gaps I've noticed by extrapolating asm, follow the
    groupings in each file. But powerpc and parisc still lack atomic64.

    Signed-off-by: Hugh Dickins
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: "David S. Miller"
    Cc: Andi Kleen
    Cc: Nick Piggin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hugh Dickins
     
  • This reverts commit af2b4079ab154bd12e8c12b02db5f31b31babe63

    Changing the #define to an inline function breaks on non-SMP builds,
    since wuite a few places in the kernel do not implement the ipi handler
    when compiling for UP.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

23 Nov, 2005

7 commits

  • The ext3 compat-ioctl translation wants to translate data structures
    that only declared when CONFIG_JBD was enabled.

    So make play nicely even when we don't actually end up
    using it.

    Acked-by: Andrew Morton
    Acked-by: Jeffrey Hundstad
    Acked-by: Zan Lynx
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • There was some confusion about the different zone usage, this should fix
    up the resulting mess in the GFP zonemask handling.

    The different zone usage is still confusing (it's very easy to mix up
    the individual zone numbers with the GFP zone _list_ numbers), so we
    might want to clean up some of this in the future, but in the meantime
    this should fix the actual problems.

    Acked-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • This patch fixes the problem with promoting aliases when:
    a) a single primary and > 1 secondary addresses
    b) multiple primary addresses each with at least one secondary address

    Based on earlier efforts from Brian Pomerantz ,
    Patrick McHardy and Thomas Graf

    Signed-off-by: Jamal Hadi Salim
    Signed-off-by: David S. Miller

    Jamal Hadi Salim
     
  • Not really a network problem, more a !SMP issue.

    net/core/flow.c:295: warning: statement with no effect

    flow.c:295: smp_call_function(flow_cache_flush_per_cpu, &info, 1, 0);

    Fix this by converting the macro to an inline function, which
    also increases the typechecking for !SMP builds.

    Signed-off-by: Russell King
    Signed-off-by: David S. Miller

    Russell King
     
  • Although we tend to associate VM_RESERVED with remap_pfn_range, quite a few
    drivers set VM_RESERVED on areas which are then populated by nopage. The
    PageReserved removal in 2.6.15-rc1 changed VM_RESERVED not to free pages in
    zap_pte_range, without changing those drivers not to set it: so their pages
    just leak away.

    Let's not change miscellaneous drivers now: introduce VM_UNPAGED at the core,
    to flag the special areas where the ptes may have no struct page, or if they
    have then it's not to be touched. Replace most instances of VM_RESERVED in
    core mm by VM_UNPAGED. Force it on in remap_pfn_range, and the sparc and
    sparc64 io_remap_pfn_range.

    Revert addition of VM_RESERVED to powerpc vdso, it's not needed there. Is it
    needed anywhere? It still governs the mm->reserved_vm statistic, and special
    vmas not to be merged, and areas not to be core dumped; but could probably be
    eliminated later (the drivers are probably specifying it because in 2.4 it
    kept swapout off the vma, but in 2.6 we work from the LRU, which these pages
    don't get on).

    Use the VM_SHM slot for VM_UNPAGED, and define VM_SHM to 0: it serves no
    purpose whatsoever, and should be removed from drivers when we clean up.

    Signed-off-by: Hugh Dickins
    Acked-by: William Irwin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hugh Dickins
     
  • It looks like snd_xxx is not the only nopage to be using PageReserved as a way
    of holding a high-order page together: which no longer works, but is masked by
    our failure to free from VM_RESERVED areas. We cannot fix that bug without
    first substituting another way to hold the high-order page together, while
    farming out the 0-order pages from within it.

    That's just what PageCompound is designed for, but it's been kept under
    CONFIG_HUGETLB_PAGE. Remove the #ifdefs: which saves some space (out- of-line
    put_page), doesn't slow down what most needs to be fast (already using
    hugetlb), and unifies the way we handle high-order pages.

    Signed-off-by: Hugh Dickins
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hugh Dickins
     
  • This gives a name to the anonymous union introduced in skas-hold-own-ldt,
    allowing to build on a wider range of gccs.

    It also removes ldt.h, which somehow became real, and replaces it with a
    symlink, and creates ldt-x86_64.h as a copy of ldt-i386.h for now.

    Signed-off-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

22 Nov, 2005

5 commits


21 Nov, 2005

10 commits


20 Nov, 2005

11 commits


19 Nov, 2005

4 commits