Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 6 Apr 2014 15:11:57 +0000 (08:11 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 6 Apr 2014 15:11:57 +0000 (08:11 -0700)
Pull arch/tile updates from Chris Metcalf:
 "These fix a few stray build issues seen in linux-next, and also add
  the minimal required support for perf to tilegx"

* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
  arch/tile: remove unused variable 'devcap'
  tile: Fix vDSO compilation issue with allyesconfig
  perf tools: Allow building for tile
  tile/perf: Support perf_events on tilegx and tilepro
  tile: Enable NMIs on return from handle_nmi() without errors
  tile: Add support for handling PMC hardware
  tile: don't use __get_cpu_var() with structure-typed arguments
  tile: avoid overflow in ns2cycles

1  2 
tools/perf/perf.h

diff --combined tools/perf/perf.h
index e18a8b5e69531cca4e1fbf889098d779ff14cf4d,75caf680f6a8a27533cec19655a36a7936585896..5c11ecad02a9623c4324ca4aeefdb6fa1135c9f4
@@@ -12,9 -12,6 +12,9 @@@
  #ifndef __NR_perf_event_open
  # define __NR_perf_event_open 336
  #endif
 +#ifndef __NR_futex
 +# define __NR_futex 240
 +#endif
  #endif
  
  #if defined(__x86_64__)
@@@ -26,9 -23,6 +26,9 @@@
  #ifndef __NR_perf_event_open
  # define __NR_perf_event_open 298
  #endif
 +#ifndef __NR_futex
 +# define __NR_futex 202
 +#endif
  #endif
  
  #ifdef __powerpc__
  #define CPUINFO_PROC  "core ID"
  #endif
  
+ #ifdef __tile__
+ #define mb()          asm volatile ("mf" ::: "memory")
+ #define wmb()         asm volatile ("mf" ::: "memory")
+ #define rmb()         asm volatile ("mf" ::: "memory")
+ #define cpu_relax()   asm volatile ("mfspr zero, PASS" ::: "memory")
+ #define CPUINFO_PROC    "model name"
+ #endif
  #define barrier() asm volatile ("" ::: "memory")
  
  #ifndef cpu_relax
@@@ -257,14 -259,12 +265,14 @@@ void pthread__unblock_sigwinch(void)
  enum perf_call_graph_mode {
        CALLCHAIN_NONE,
        CALLCHAIN_FP,
 -      CALLCHAIN_DWARF
 +      CALLCHAIN_DWARF,
 +      CALLCHAIN_MAX
  };
  
  struct record_opts {
        struct target target;
        int          call_graph;
 +      bool         call_graph_enabled;
        bool         group;
        bool         inherit_stat;
        bool         no_buffering;