1. 07 1月, 2009 3 次提交
    • M
      kprobes: add kprobe_insn_mutex and cleanup arch_remove_kprobe() · 12941560
      Masami Hiramatsu 提交于
      Add kprobe_insn_mutex for protecting kprobe_insn_pages hlist, and remove
      kprobe_mutex from architecture dependent code.
      
      This allows us to call arch_remove_kprobe() (and free_insn_slot) while
      holding kprobe_mutex.
      Signed-off-by: NMasami Hiramatsu <mhiramat@redhat.com>
      Acked-by: NAnanth N Mavinakayanahalli <ananth@in.ibm.com>
      Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      12941560
    • M
      atomic_t: unify all arch definitions · ea435467
      Matthew Wilcox 提交于
      The atomic_t type cannot currently be used in some header files because it
      would create an include loop with asm/atomic.h.  Move the type definition
      to linux/types.h to break the loop.
      Signed-off-by: NMatthew Wilcox <willy@linux.intel.com>
      Cc: Huang Ying <ying.huang@intel.com>
      Cc: <linux-arch@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ea435467
    • G
      mm: show node to memory section relationship with symlinks in sysfs · c04fc586
      Gary Hade 提交于
      Show node to memory section relationship with symlinks in sysfs
      
      Add /sys/devices/system/node/nodeX/memoryY symlinks for all
      the memory sections located on nodeX.  For example:
      /sys/devices/system/node/node1/memory135 -> ../../memory/memory135
      indicates that memory section 135 resides on node1.
      
      Also revises documentation to cover this change as well as updating
      Documentation/ABI/testing/sysfs-devices-memory to include descriptions
      of memory hotremove files 'phys_device', 'phys_index', and 'state'
      that were previously not described there.
      
      In addition to it always being a good policy to provide users with
      the maximum possible amount of physical location information for
      resources that can be hot-added and/or hot-removed, the following
      are some (but likely not all) of the user benefits provided by
      this change.
      Immediate:
        - Provides information needed to determine the specific node
          on which a defective DIMM is located.  This will reduce system
          downtime when the node or defective DIMM is swapped out.
        - Prevents unintended onlining of a memory section that was
          previously offlined due to a defective DIMM.  This could happen
          during node hot-add when the user or node hot-add assist script
          onlines _all_ offlined sections due to user or script inability
          to identify the specific memory sections located on the hot-added
          node.  The consequences of reintroducing the defective memory
          could be ugly.
        - Provides information needed to vary the amount and distribution
          of memory on specific nodes for testing or debugging purposes.
      Future:
        - Will provide information needed to identify the memory
          sections that need to be offlined prior to physical removal
          of a specific node.
      
      Symlink creation during boot was tested on 2-node x86_64, 2-node
      ppc64, and 2-node ia64 systems.  Symlink creation during physical
      memory hot-add tested on a 2-node x86_64 system.
      Signed-off-by: NGary Hade <garyhade@us.ibm.com>
      Signed-off-by: NBadari Pulavarty <pbadari@us.ibm.com>
      Acked-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      c04fc586
  2. 06 1月, 2009 1 次提交
  3. 01 1月, 2009 2 次提交
  4. 31 12月, 2008 9 次提交
    • A
      ca9edaee
    • C
      KVM: s390: Fix memory leak of vcpu->run · 6692cef3
      Christian Borntraeger 提交于
      The s390 backend of kvm never calls kvm_vcpu_uninit. This causes
      a memory leak of vcpu->run pages.
      Lets call kvm_vcpu_uninit in kvm_arch_vcpu_destroy to free
      the vcpu->run.
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Acked-by: NCarsten Otte <cotte@de.ibm.com>
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      6692cef3
    • C
      KVM: s390: Fix refcounting and allow module unload · d329c035
      Christian Borntraeger 提交于
      Currently it is impossible to unload the kvm module on s390.
      This patch fixes kvm_arch_destroy_vm to release all cpus.
      This make it possible to unload the module.
      
      In addition we stop messing with the module refcount in arch code.
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Acked-by: NCarsten Otte <cotte@de.ibm.com>
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      d329c035
    • M
      [PATCH] fast vdso implementation for CLOCK_THREAD_CPUTIME_ID · c742b31c
      Martin Schwidefsky 提交于
      The extract cpu time instruction (ectg) instruction allows the user
      process to get the current thread cputime without calling into the
      kernel. The code that uses the instruction needs to switch to the
      access registers mode to get access to the per-cpu info page that
      contains the two base values that are needed to calculate the current
      cputime from the CPU timer with the ectg instruction.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      c742b31c
    • M
      [PATCH] improve idle cputime accounting · 9cfb9b3c
      Martin Schwidefsky 提交于
      Distinguish the cputime of the idle process where idle is actually using
      cpu cycles from the cputime where idle is sleeping on an enabled wait psw.
      The former is accounted as system time, the later as idle time.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      9cfb9b3c
    • M
      [PATCH] improve precision of idle time detection. · 6f430924
      Martin Schwidefsky 提交于
      Increase the precision of the idle time calculation that is exported
      to user space via /sys/devices/system/cpu/cpu<x>/idle_time_us
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      6f430924
    • M
      [PATCH] improve precision of process accounting. · aa5e97ce
      Martin Schwidefsky 提交于
      The unit of the cputime accouting values that are stored per process is
      currently a microsecond. The CPU timer has a maximum granularity of
      2**-12 microseconds. There is no benefit in storing the per process values
      in the lesser precision and there is the disadvantage that the backend
      has to do the rounding to microseconds. The better solution is to use
      the maximum granularity of the CPU timer as cputime unit.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      aa5e97ce
    • M
      [PATCH] idle cputime accounting · 79741dd3
      Martin Schwidefsky 提交于
      The cpu time spent by the idle process actually doing something is
      currently accounted as idle time. This is plain wrong, the architectures
      that support VIRT_CPU_ACCOUNTING=y can do better: distinguish between the
      time spent doing nothing and the time spent by idle doing work. The first
      is accounted with account_idle_time and the second with account_system_time.
      The architectures that use the account_xxx_time interface directly and not
      the account_xxx_ticks interface now need to do the check for the idle
      process in their arch code. In particular to improve the system vs true
      idle time accounting the arch code needs to measure the true idle time
      instead of just testing for the idle process.
      To improve the tick based accounting as well we would need an architecture
      primitive that can tell us if the pt_regs of the interrupted context
      points to the magic instruction that halts the cpu.
      
      In addition idle time is no more added to the stime of the idle process.
      This field now contains the system time of the idle process as it should
      be. On systems without VIRT_CPU_ACCOUNTING this will always be zero as
      every tick that occurs while idle is running will be accounted as idle
      time.
      
      This patch contains the necessary common code changes to be able to
      distinguish idle system time and true idle time. The architectures with
      support for VIRT_CPU_ACCOUNTING need some changes to exploit this.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      79741dd3
    • M
      [PATCH] fix scaled & unscaled cputime accounting · 457533a7
      Martin Schwidefsky 提交于
      The utimescaled / stimescaled fields in the task structure and the
      global cpustat should be set on all architectures. On s390 the calls
      to account_user_time_scaled and account_system_time_scaled never have
      been added. In addition system time that is accounted as guest time
      to the user time of a process is accounted to the scaled system time
      instead of the scaled user time.
      To fix the bugs and to prevent future forgetfulness this patch merges
      account_system_time_scaled into account_system_time and
      account_user_time_scaled into account_user_time.
      
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Jeremy Fitzhardinge <jeremy@xensource.com>
      Cc: Chris Wright <chrisw@sous-sol.org>
      Cc: Michael Neuling <mikey@neuling.org>
      Acked-by: NPaul Mackerras <paulus@samba.org>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      457533a7
  5. 30 12月, 2008 1 次提交
  6. 29 12月, 2008 1 次提交
    • J
      aio: make the lookup_ioctx() lockless · abf137dd
      Jens Axboe 提交于
      The mm->ioctx_list is currently protected by a reader-writer lock,
      so we always grab that lock on the read side for doing ioctx
      lookups. As the workload is extremely reader biased, turn this into
      an rcu hlist so we can make lookup_ioctx() lockless. Get rid of
      the rwlock and use a spinlock for providing update side exclusion.
      
      There's usually only 1 entry on this list, so it doesn't make sense
      to look into fancier data structures.
      Reviewed-by: NJeff Moyer <jmoyer@redhat.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      abf137dd
  7. 26 12月, 2008 1 次提交
  8. 25 12月, 2008 22 次提交