1. 23 3月, 2011 4 次提交
  2. 17 3月, 2011 1 次提交
  3. 16 3月, 2011 6 次提交
  4. 11 3月, 2011 2 次提交
    • M
      futex: Sanitize futex ops argument types · 8d7718aa
      Michel Lespinasse 提交于
      Change futex_atomic_op_inuser and futex_atomic_cmpxchg_inatomic
      prototypes to use u32 types for the futex as this is the data type the
      futex core code uses all over the place.
      Signed-off-by: NMichel Lespinasse <walken@google.com>
      Cc: Darren Hart <darren@dvhart.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Chris Metcalf <cmetcalf@tilera.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      LKML-Reference: <20110311025058.GD26122@google.com>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      8d7718aa
    • M
      futex: Sanitize cmpxchg_futex_value_locked API · 37a9d912
      Michel Lespinasse 提交于
      The cmpxchg_futex_value_locked API was funny in that it returned either
      the original, user-exposed futex value OR an error code such as -EFAULT.
      This was confusing at best, and could be a source of livelocks in places
      that retry the cmpxchg_futex_value_locked after trying to fix the issue
      by running fault_in_user_writeable().
          
      This change makes the cmpxchg_futex_value_locked API more similar to the
      get_futex_value_locked one, returning an error code and updating the
      original value through a reference argument.
      Signed-off-by: NMichel Lespinasse <walken@google.com>
      Acked-by: Chris Metcalf <cmetcalf@tilera.com>  [tile]
      Acked-by: Tony Luck <tony.luck@intel.com>  [ia64]
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Tested-by: Michal Simek <monstr@monstr.eu>  [microblaze]
      Acked-by: David Howells <dhowells@redhat.com> [frv]
      Cc: Darren Hart <darren@dvhart.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      LKML-Reference: <20110311024851.GC26122@google.com>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      37a9d912
  5. 17 2月, 2011 4 次提交
  6. 15 2月, 2011 5 次提交
    • M
      s390: remove task_show_regs · 261cd298
      Martin Schwidefsky 提交于
      task_show_regs used to be a debugging aid in the early bringup days
      of Linux on s390. /proc/<pid>/status is a world readable file, it
      is not a good idea to show the registers of a process. The only
      correct fix is to remove task_show_regs.
      Reported-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      261cd298
    • R
      oprofile, s390: Fix section mismatch of function hws_cpu_callback() · 7bb2e269
      Robert Richter 提交于
      Fixes the following section mismatch:
      
       Section mismatch in reference from the variable hws_cpu_notifier to the function .cpuinit.text:hws_cpu_callback()
      Acked-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NRobert Richter <robert.richter@amd.com>
      7bb2e269
    • R
      oprofile, s390: Rework hwsampler implementation · a0d76247
      Robert Richter 提交于
      This patch is a rework of the hwsampler oprofile implementation that
      has been applied recently. Now there are less non-architectural
      changes. The only changes are:
      
      * introduction of oprofile_add_ext_hw_sample(), and
      * removal of section attributes of oprofile_timer_init/_exit().
      
      To setup hwsampler for oprofile we need to modify start()/stop()
      callbacks and additional hwsampler control files in oprofilefs. We do
      not reinitialize the timer or hwsampler mode by restarting calling
      init/exit() anymore, instead hwsampler_running is used to switch the
      mode directly in oprofile_hwsampler_start/_stop(). For locking reasons
      there is also hwsampler_file that reflects the value in oprofilefs.
      
      The overall diffstat of the oprofile s390 hwsampler implemenation
      shows the low impact to non-architectural code:
      
       arch/Kconfig                         |    3 +
       arch/s390/Kconfig                    |    1 +
       arch/s390/oprofile/Makefile          |    2 +-
       arch/s390/oprofile/hwsampler.c       | 1256 ++++++++++++++++++++++++++++++++++
       arch/s390/oprofile/hwsampler.h       |  113 +++
       arch/s390/oprofile/hwsampler_files.c |  162 +++++
       arch/s390/oprofile/init.c            |    6 +-
       drivers/oprofile/cpu_buffer.c        |   24 +-
       drivers/oprofile/timer_int.c         |    4 +-
       include/linux/oprofile.h             |    7 +
       10 files changed, 1567 insertions(+), 11 deletions(-)
      Acked-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NRobert Richter <robert.richter@amd.com>
      a0d76247
    • H
      oprofile, s390: Enhance OProfile to support System zs hardware sampling feature · 997dbb49
      Heinz Graalfs 提交于
      OProfile is enhanced to export all files for controlling System z's
      hardware sampling, and to invoke hwsampler exported functions to
      initialize and use System z's hardware sampling.
      
      The patch invokes hwsampler_setup() during oprofile init and exports
      following hwsampler files under oprofilefs if hwsampler's setup
      succeeded:
      
      A new directory for hardware sampling based files
      
       /dev/oprofile/hwsampling/
      
      The userland daemon must explicitly write to the following files
      to disable (or enable) hardware based sampling
      
       /dev/oprofile/hwsampling/hwsampler
      
      to modify the actual sampling rate
      
       /dev/oprofile/hwsampling/hw_interval
      
      to modify the amount of sampling memory (measured in 4K pages)
      
       /dev/oprofile/hwsampling/hw_sdbt_blocks
      
      The following files are read only and show
      the possible minimum sampling rate
      
       /dev/oprofile/hwsampling/hw_min_interval
      
      the possible maximum sampling rate
      
       /dev/oprofile/hwsampling/hw_max_interval
      
      The patch splits the oprofile_timer_[init/exit] function so that it
      can be also called through user context (oprofilefs) to avoid kernel
      oops.
      
      Applied with following changes:
      * whitespace changes in Makefile and timer_int.c
      Signed-off-by: NMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
      Signed-off-by: NMaran Pakkirisamy <maranp@linux.vnet.ibm.com>
      Signed-off-by: NHeinz Graalfs <graalfs@linux.vnet.ibm.com>
      Acked-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NRobert Richter <robert.richter@amd.com>
      997dbb49
    • H
      oprofile, s390: Add support for hardware based sampling on System z processors · ec6a3df1
      Heinz Graalfs 提交于
      This adds support for hardware based sampling on System z processors
      (models z10 and up).
      
      System z's hardware sampling is described in detail in:
      
         SA23-2260-01 "The Load-Program-Parameter and CPU-Measurement Facilities"
      
      The patch introduces
      
       - support for System z's hardware sampler in OProfile's kernel module
       - it adds functions that control all hardware sampling related
         operations as:
         - checking if hardware sampling feature is available, i.e.: on
           System z models z10 and up, in LPAR mode only, and authorised
           during LPAR activation
         - allocating memory for the hardware sampling feature
         - starting/stopping hardware sampling
      
      All functions required to start and stop hardware sampling have to be
      invoked by the oprofile kernel module as provided by the other patches
      of this patch set.
      
      In case hardware based sampling cannot be setup standard timer based
      sampling is used by OProfile.
      
      Applied with following changes:
      * enable compilation in Makefile
      Signed-off-by: NMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
      Signed-off-by: NMaran Pakkirisamy <maranp@linux.vnet.ibm.com>
      Signed-off-by: NHeinz Graalfs <graalfs@linux.vnet.ibm.com>
      Acked-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NRobert Richter <robert.richter@amd.com>
      ec6a3df1
  7. 07 2月, 2011 1 次提交
  8. 31 1月, 2011 5 次提交
  9. 27 1月, 2011 5 次提交
  10. 25 1月, 2011 1 次提交
    • T
      percpu: align percpu readmostly subsection to cacheline · 19df0c2f
      Tejun Heo 提交于
      Currently percpu readmostly subsection may share cachelines with other
      percpu subsections which may result in unnecessary cacheline bounce
      and performance degradation.
      
      This patch adds @cacheline parameter to PERCPU() and PERCPU_VADDR()
      linker macros, makes each arch linker scripts specify its cacheline
      size and use it to align percpu subsections.
      
      This is based on Shaohua's x86 only patch.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: Shaohua Li <shaohua.li@intel.com>
      19df0c2f
  11. 12 1月, 2011 6 次提交