1. 28 9月, 2017 7 次提交
  2. 20 9月, 2017 2 次提交
    • H
      s390/topology: enable / disable topology dynamically · 51dce386
      Heiko Carstens 提交于
      Add a new sysctl file /proc/sys/s390/topology which displays if
      topology is on (1) or off (0) as specified by the "topology=" kernel
      parameter.
      
      This allows to change topology information during runtime and
      configuring it via /etc/sysctl.conf instead of using the kernel line
      parameter.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      51dce386
    • H
      s390/topology: alternative topology for topology-less machines · 1b25fda0
      Heiko Carstens 提交于
      If running on machines that do not provide topology information we
      currently generate a "fake" topology which defines the maximum
      distance between each cpu: each cpu will be put into an own drawer.
      
      Historically this used to be the best option for (virtual) machines in
      overcommited hypervisors.
      
      For some workloads however it is better to generate a different
      topology where all cpus are siblings within a package (all cpus are
      core siblings). This shows performance improvements of up to 10%,
      depending on the workload.
      
      In order to keep the current behaviour, but also allow to switch to
      the different core sibling topology use the existing "topology="
      kernel parameter:
      
      Specifying "topology=on" on machines without topology information will
      generate the core siblings (fake) topology information, instead of the
      default topology information where all cpus have the maximum distance.
      
      On machines which provide topology information specifying
      "topology=on" does not have any effect.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      1b25fda0
  3. 19 9月, 2017 2 次提交
  4. 13 9月, 2017 1 次提交
    • P
      s390/perf: fix bug when creating per-thread event · fc3100d6
      Pu Hou 提交于
      A per-thread event could not be created correctly like below:
      
          perf record --per-thread -e rB0000 -- sleep 1
          Error:
          The sys_perf_event_open() syscall returned with 19 (No such device) for event (rB0000).
          /bin/dmesg may provide additional information.
          No CONFIG_PERF_EVENTS=y kernel support configured?
      
      This bug was introduced by:
      
          commit c311c797
          Author: Alexey Dobriyan <adobriyan@gmail.com>
          Date:   Mon May 8 15:56:15 2017 -0700
      
          cpumask: make "nr_cpumask_bits" unsigned
      
      If a per-thread event is not attached to any CPU, the cpu field
      in struct perf_event is -1. The above commit converts the CPU number
      to unsigned int, which result in an illegal CPU number.
      
      Fixes: c311c797 ("cpumask: make "nr_cpumask_bits" unsigned")
      Cc: <stable@vger.kernel.org> # v4.12+
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      Acked-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NPu Hou <bjhoupu@linux.vnet.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      fc3100d6
  5. 06 9月, 2017 7 次提交
  6. 01 9月, 2017 1 次提交
  7. 31 8月, 2017 5 次提交
  8. 29 8月, 2017 9 次提交
  9. 28 8月, 2017 1 次提交
  10. 26 8月, 2017 1 次提交
    • J
      futex: Remove duplicated code and fix undefined behaviour · 30d6e0a4
      Jiri Slaby 提交于
      There is code duplicated over all architecture's headers for
      futex_atomic_op_inuser. Namely op decoding, access_ok check for uaddr,
      and comparison of the result.
      
      Remove this duplication and leave up to the arches only the needed
      assembly which is now in arch_futex_atomic_op_inuser.
      
      This effectively distributes the Will Deacon's arm64 fix for undefined
      behaviour reported by UBSAN to all architectures. The fix was done in
      commit 5f16a046 (arm64: futex: Fix undefined behaviour with
      FUTEX_OP_OPARG_SHIFT usage). Look there for an example dump.
      
      And as suggested by Thomas, check for negative oparg too, because it was
      also reported to cause undefined behaviour report.
      
      Note that s390 removed access_ok check in d12a2970 ("s390/uaccess:
      remove pointless access_ok() checks") as access_ok there returns true.
      We introduce it back to the helper for the sake of simplicity (it gets
      optimized away anyway).
      Signed-off-by: NJiri Slaby <jslaby@suse.cz>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Acked-by: NRussell King <rmk+kernel@armlinux.org.uk>
      Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
      Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com> [s390]
      Acked-by: Chris Metcalf <cmetcalf@mellanox.com> [for tile]
      Reviewed-by: NDarren Hart (VMware) <dvhart@infradead.org>
      Reviewed-by: Will Deacon <will.deacon@arm.com> [core/arm64]
      Cc: linux-mips@linux-mips.org
      Cc: Rich Felker <dalias@libc.org>
      Cc: linux-ia64@vger.kernel.org
      Cc: linux-sh@vger.kernel.org
      Cc: peterz@infradead.org
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: sparclinux@vger.kernel.org
      Cc: Jonas Bonn <jonas@southpole.se>
      Cc: linux-s390@vger.kernel.org
      Cc: linux-arch@vger.kernel.org
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: linux-hexagon@vger.kernel.org
      Cc: Helge Deller <deller@gmx.de>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: linux-snps-arc@lists.infradead.org
      Cc: Fenghua Yu <fenghua.yu@intel.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: linux-xtensa@linux-xtensa.org
      Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
      Cc: openrisc@lists.librecores.org
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Stafford Horne <shorne@gmail.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-parisc@vger.kernel.org
      Cc: Vineet Gupta <vgupta@synopsys.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Richard Kuo <rkuo@codeaurora.org>
      Cc: linux-alpha@vger.kernel.org
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: "David S. Miller" <davem@davemloft.net>
      Link: http://lkml.kernel.org/r/20170824073105.3901-1-jslaby@suse.cz
      30d6e0a4
  11. 23 8月, 2017 4 次提交