1. 05 Feb, 2008 31 commits
  2. 04 Feb, 2008 9 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm · 9ef9dc69
      Linus Torvalds authored
      * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (44 commits)
        [ARM] 4822/1: RealView: Change the REALVIEW_MPCORE configuration option
        [ARM] 4821/1: RealView: Remove the platform dependencies from localtimer.c
        [ARM] 4820/1: RealView: Select the timer IRQ at run-time
        [ARM] 4819/1: RealView: Fix entry-macro.S to work with multiple platforms
        [ARM] 4818/1: RealView: Add core-tile detection
        [ARM] 4817/1: RealView: Move the AMBA resource definitions to realview_eb.c
        [ARM] 4816/1: RealView: Move the platform-specific definitions into board-eb.h
        [ARM] 4815/1: RealView: Add clockevents suport for the local timers
        [ARM] 4814/1: RealView: Add broadcasting clockevents support for ARM11MPCore
        [ARM] 4813/1: Add SMP helper functions for clockevents support
        [ARM] 4812/1: RealView: clockevents support for the RealView platforms
        [ARM] 4811/1: RealView: clocksource support for the RealView platforms
        [ARM] 4736/1: Export atags to userspace and allow kexec to use customised atags
        [ARM] 4798/1: pcm027: fix missing header file
        [ARM] 4803/1: pxa: fix building issue of poodle.c caused by patch 4737/1
        [ARM] 4801/1: pxa: fix building issues of missing pxa2xx-regs.h
        [ARM] pxa: introduce sysdev for pxa3xx static memory controller
        [ARM] pxa: add preliminary suspend/resume code for pxa3xx
        [ARM] pxa: introduce sysdev for GPIO register saving/restoring
        [ARM] pxa: introduce sysdev for IRQ register saving/restoring
        ...
      9ef9dc69
    • Linus Torvalds's avatar
      Merge branch 'slub-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/christoph/vm · 2c8296f8
      Linus Torvalds authored
      * 'slub-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/christoph/vm:
        Explain kmem_cache_cpu fields
        SLUB: Do not upset lockdep
        SLUB: Fix coding style violations
        Add parameter to add_partial to avoid having two functions
        SLUB: rename defrag to remote_node_defrag_ratio
        Move count_partial before kmem_cache_shrink
        SLUB: Fix sysfs refcounting
        slub: fix shadowed variable sparse warnings
      2c8296f8
    • Christoph Lameter's avatar
      Explain kmem_cache_cpu fields · da89b79e
      Christoph Lameter authored
      Add some comments explaining the fields of the kmem_cache_cpu structure.
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      da89b79e
    • root's avatar
      SLUB: Do not upset lockdep · ba84c73c
      root authored
      inconsistent {softirq-on-W} -> {in-softirq-W} usage.
      swapper/0 [HC0[0]:SC1[1]:HE0:SE0] takes:
       (&n->list_lock){-+..}, at: [<ffffffff802935c1>] add_partial+0x31/0xa0
      {softirq-on-W} state was registered at:
        [<ffffffff80259fb8>] __lock_acquire+0x3e8/0x1140
        [<ffffffff80259838>] debug_check_no_locks_freed+0x188/0x1a0
        [<ffffffff8025ad65>] lock_acquire+0x55/0x70
        [<ffffffff802935c1>] add_partial+0x31/0xa0
        [<ffffffff805c76de>] _spin_lock+0x1e/0x30
        [<ffffffff802935c1>] add_partial+0x31/0xa0
        [<ffffffff80296f9c>] kmem_cache_open+0x1cc/0x330
        [<ffffffff805c7984>] _spin_unlock_irq+0x24/0x30
        [<ffffffff802974f4>] create_kmalloc_cache+0x64/0xf0
        [<ffffffff80295640>] init_alloc_cpu_cpu+0x70/0x90
        [<ffffffff8080ada5>] kmem_cache_init+0x65/0x1d0
        [<ffffffff807f1b4e>] start_kernel+0x23e/0x350
        [<ffffffff807f112d>] _sinittext+0x12d/0x140
        [<ffffffffffffffff>] 0xffffffffffffffff
      
      This change isn't really necessary for correctness, but it prevents lockdep
      from getting upset and then disabling itself.
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Christoph Lameter <clameter@sgi.com>
      Cc: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      ba84c73c
    • Pekka Enberg's avatar
      SLUB: Fix coding style violations · 06428780
      Pekka Enberg authored
      This fixes most of the obvious coding style violations in mm/slub.c as
      reported by checkpatch.
      Acked-by: default avatarChristoph Lameter <clameter@sgi.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      06428780
    • Christoph Lameter's avatar
      Add parameter to add_partial to avoid having two functions · 7c2e132c
      Christoph Lameter authored
      Add a parameter to add_partial instead of having separate functions.  The
      parameter allows a more detailed control of where the slab pages is placed in
      the partial queues.
      
      If we put slabs back to the front then they are likely immediately used for
      allocations.  If they are put at the end then we can maximize the time that
      the partial slabs spent without being subject to allocations.
      
      When deactivating slab we can put the slabs that had remote objects freed (we
      can see that because objects were put on the freelist that requires locks) to
      them at the end of the list so that the cachelines of remote processors can
      cool down.  Slabs that had objects from the local cpu freed to them (objects
      exist in the lockless freelist) are put in the front of the list to be reused
      ASAP in order to exploit the cache hot state of the local cpu.
      
      Patch seems to slightly improve tbench speed (1-2%).
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      Reviewed-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      7c2e132c
    • Christoph Lameter's avatar
      SLUB: rename defrag to remote_node_defrag_ratio · 9824601e
      Christoph Lameter authored
      The NUMA defrag works by allocating objects from partial slabs on remote
      nodes.  Rename it to
      
      	remote_node_defrag_ratio
      
      to be clear about this.
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      9824601e
    • Christoph Lameter's avatar
      Move count_partial before kmem_cache_shrink · f61396ae
      Christoph Lameter authored
      Move the counting function for objects in partial slabs so that it is placed
      before kmem_cache_shrink.
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      f61396ae
    • Christoph Lameter's avatar
      SLUB: Fix sysfs refcounting · 151c602f
      Christoph Lameter authored
      If CONFIG_SYSFS is set then free the kmem_cache structure when
      sysfs tells us its okay.
      
      Otherwise there is the danger (as pointed out by
      Al Viro) that sysfs thinks the kobject still exists after
      kmem_cache_destroy() removed it.
      Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
      Reviewed-by: default avatarPekka J Enberg <penberg@cs.helsinki.fi>
      151c602f