1. 01 Dec, 2007 3 commits
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus · 1811534a
      Linus Torvalds authored
      * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
        [MIPS] Fix build.
        [MIPS] Fix use of smp_processor_id() in preemptible code.
      1811534a
    • Ralf Baechle's avatar
      [MIPS] Fix build. · e6a1bb72
      Ralf Baechle authored
      Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
      e6a1bb72
    • Pavel Kiryukhin's avatar
      [MIPS] Fix use of smp_processor_id() in preemptible code. · 54fd6441
      Pavel Kiryukhin authored
      Freeing prom memory: 956kb freed
      Freeing firmware memory: 978944k freed
      Freeing unused kernel memory: 180k freed
      BUG: using smp_processor_id() in preemptible [00000000] code: swapper/1
      caller is r4k_dma_cache_wback_inv+0x144/0x2a0
      Call Trace:
       [<80117af8>] r4k_dma_cache_wback_inv+0x144/0x2a0
       [<802e4b84>] debug_smp_processor_id+0xd4/0xf0
       [<802e4b7c>] debug_smp_processor_id+0xcc/0xf0
      ...
      CONFIG_DEBUG_PREEMPT is enabled.
      --
      Bug cause is blast_dcache_range() in preemptible code [in
      r4k_dma_cache_wback_inv()].
      blast_dcache_range() is constructed via __BUILD_BLAST_CACHE_RANGE that
      uses cpu_dcache_line_size(). It uses current_cpu_data that use
      smp_processor_id() in turn. In case of CONFIG_DEBUG_PREEMPT
      smp_processor_id emits BUG if we are executing with preemption
      enabled.
      
      Cpu options of cpu0 are assumed to be the superset of all processors.
      
      Can I make the same assumptions for cache line size  and fix this
      issue the following way:
      Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
      54fd6441
  2. 30 Nov, 2007 3 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm · b62c8559
      Linus Torvalds authored
      * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm:
        [ARM] 4680/1: parentheses around NR_IRQS definition
        [ARM] 4679/1: AT91: Change maintainer email address
        [ARM] 4675/1: pxa: fix mfp address definition error for pxa320
        [ARM] 4674/1: pxa: increase LCD PCLK drive strength to fast 2mA for PXA300/PXA310
        [ARM] 4673/1: pxa: add missing IRQ_SSP4 definitions for PXA3xx
        [ARM] 4672/1: pxa: fix DRCMR(n) to support PXA27x and later processors
        [ARM] 4665/1: fix __und_usr wrt accessing the undefined insn in user space
        [ARM] 4659/1: remove possibilities for spurious false negative with __kuser_cmpxchg
        [ARM] 4661/1: fix do_undefinstr wrt the enabling of IRQs
        [ARM] uengine: fix memset size error
        [ARM] 4648/1: i.MX/MX1 ensure more complete AITC initialization
        [ARM] 4611/2: AT91: Fix GPIO buttons pins on SAM9261-EK.
        [ARM] 4650/1: AT91: New-style init of I2C, support for i2c-gpio
        [ARM] 4604/2: AT91: Master clock divistor on SAM9
        [ARM] 4662/1: Fix PXA serial driver compilation if SERIAL_PXA_CONSOLE is disabled
        [ARM] PXA ssp: unlock when ssp tries to close an invalid port
        [ARM] 4654/1: pxa: update default MFP register value
        [ARM] 4653/1: pxa: fix a gpio typo in mfp-pxa320.h
        [ARM] 4652/1: pxa: fix a typo of pxa27x usb host clk definition
        [ARM] 4651/1: pxa: add PXA3xx specific IRQ definitions
      b62c8559
    • Matthew Wilcox's avatar
      Fix kmem_cache_free performance regression in slab · 80cbd911
      Matthew Wilcox authored
      The database performance group have found that half the cycles spent
      in kmem_cache_free are spent in this one call to BUG_ON.  Moving it
      into the CONFIG_SLAB_DEBUG-only function cache_free_debugcheck() is a
      performance win of almost 0.5% on their particular benchmark.
      
      The call was added as part of commit ddc2e812
      with the comment that "overhead should be minimal".  It may have been
      minimal at the time, but it isn't now.
      
      [ Quoth Pekka Enberg: "I don't think the BUG_ON per se caused the
        performance regression but rather the virt_to_head_page() changes to
        virt_to_cache() that were added later." ]
      Signed-off-by: default avatarMatthew Wilcox <willy@linux.intel.com>
      Acked-by: default avatarPekka J Enberg <penberg@cs.helsinki.fi>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      80cbd911
    • Linus Torvalds's avatar
      e1cca7e8
  3. 29 Nov, 2007 34 commits