1. 30 Dec, 2009 4 commits
  2. 28 Dec, 2009 18 commits
  3. 18 Dec, 2009 3 commits
    • Arnaldo Carvalho de Melo's avatar
      perf diff: Fix usage array, it must end with a NULL entry · 0422a4fc
      Arnaldo Carvalho de Melo authored
      Fixing this:
      
       [acme@doppio linux-2.6-tip]$ perf diff --hell
         Error: unknown option `hell'
      
        usage: perf diff [<options>] [old_file] [new_file]
       Segmentation fault
       [acme@doppio linux-2.6-tip]$
      
      Also go over the other such arrays to check if they all were OK,
      they are, but there were some minor changes to do like making
      one static and renaming another to match the command it refers
      to.
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <1261161358-23959-1-git-send-email-acme@infradead.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0422a4fc
    • Arnaldo Carvalho de Melo's avatar
      perf session: Make events_stats u64 to avoid overflow on 32-bit arches · b5b60fda
      Arnaldo Carvalho de Melo authored
      Pekka Enberg reported weird percentages in perf report. It
      turns out we are overflowing a 32-bit variables in struct
      events_stats on 32-bit architectures.
      
      Before:
      
       [acme@ana linux-2.6-tip]$ perf report -i pekka.perf.data 2> /dev/null | head -10
         281.96%       Xorg                        b710a561  [.] 0x000000b710a561
         140.15%       Xorg  [kernel]                        [k] __initramfs_end
          51.56%   metacity  libgobject-2.0.so.0.2000.1      [.] 0x00000000026e46
          35.12%  evolution  libcairo.so.2.10800.6           [.] 0x000000000203bd
          33.84%   metacity  libpthread-2.9.so               [.] 0x00000000007a3d
      
      After:
      
       [acme@ana linux-2.6-tip]$ perf report -i pekka.perf.data 2> /dev/null | head -10
          30.04%       Xorg                       b710a561   [.] 0x000000b710a561
          14.93%       Xorg  [kernel]                        [k] __initramfs_end
           5.49%   metacity  libgobject-2.0.so.0.2000.1      [.] 0x00000000026e46
           3.74%  evolution  libcairo.so.2.10800.6           [.] 0x000000000203bd
           3.61%   metacity  libpthread-2.9.so               [.] 0x00000000007a3d
      Reported-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
      Tested-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <1261148583-20395-1-git-send-email-acme@infradead.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b5b60fda
    • Frederic Weisbecker's avatar
      hw-breakpoints: Fix hardware breakpoints -> perf events dependency · 99e8c5a3
      Frederic Weisbecker authored
      The kbuild's select command doesn't propagate through the config
      dependencies.
      
      Hence the current rules of hardware breakpoint's config can't
      ensure perf can never be disabled under us.
      
      We have:
      
      config X86
      	selects HAVE_HW_BREAKPOINTS
      
      config HAVE_HW_BREAKPOINTS
      	select PERF_EVENTS
      
      config PERF_EVENTS
      	[...]
      
      x86 will select the breakpoints but that won't propagate to perf
      events. The user can still disable the latter, but it is
      necessary for the breakpoints.
      
      What we need is:
      
       - x86 selects HAVE_HW_BREAKPOINTS and PERF_EVENTS
       - HAVE_HW_BREAKPOINTS depends on PERF_EVENTS
      
      so that we ensure PERF_EVENTS is enabled and frozen for x86.
      
      This fixes the following kind of build errors:
      
       In file included from arch/x86/kernel/hw_breakpoint.c:31:
       include/linux/hw_breakpoint.h: In function 'hw_breakpoint_addr':
       include/linux/hw_breakpoint.h:39: error: 'struct perf_event' has no member named 'attr'
      
      v2: Select also ANON_INODES from x86, required for perf
      Reported-by: default avatarCyrill Gorcunov <gorcunov@gmail.com>
      Reported-by: default avatarMichal Marek <mmarek@suse.cz>
      Reported-by: default avatarAndrew Randrianasulu <randrik_a@yahoo.com>
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Randy Dunlap <randy.dunlap@oracle.com>
      Cc: K.Prasad <prasad@linux.vnet.ibm.com>
      LKML-Reference: <1261010034-7786-1-git-send-regression-fweisbec@gmail.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      99e8c5a3
  4. 17 Dec, 2009 9 commits
    • Peter Zijlstra's avatar
      perf events: Dont report side-band events on each cpu for per-task-per-cpu events · 5d27c23d
      Peter Zijlstra authored
      Acme noticed that his FORK/MMAP numbers were inflated by about
      the same factor as his cpu-count.
      
      This led to the discovery of a few more sites that need to
      respect the event->cpu filter.
      Reported-by: default avatarArnaldo Carvalho de Melo <acme@ghostprotocols.net>
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <20091217121830.215333434@chello.nl>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      5d27c23d
    • Frederic Weisbecker's avatar
      perf events, x86/stacktrace: Fix performance/softlockup by providing a special... · 06d65bda
      Frederic Weisbecker authored
      perf events, x86/stacktrace: Fix performance/softlockup by providing a special frame pointer-only stack walker
      
      It's just wasteful for stacktrace users like perf to walk
      through every entries on the stack whereas these only accept
      reliable ones, ie: that the frame pointer validates.
      
      Since perf requires pure reliable stacktraces, it needs a stack
      walker based on frame pointers-only to optimize the stacktrace
      processing.
      
      This might solve some near-lockup scenarios that can be triggered
      by call-graph tracing timer events.
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <1261024834-5336-2-git-send-regression-fweisbec@gmail.com>
      [ v2: fix for modular builds and small detail tidyup ]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      06d65bda
    • Frederic Weisbecker's avatar
      perf events, x86/stacktrace: Make stack walking optional · 61c1917f
      Frederic Weisbecker authored
      The current print_context_stack helper that does the stack
      walking job is good for usual stacktraces as it walks through
      all the stack and reports even addresses that look unreliable,
      which is nice when we don't have frame pointers for example.
      
      But we have users like perf that only require reliable
      stacktraces, and those may want a more adapted stack walker, so
      lets make this function a callback in stacktrace_ops that users
      can tune for their needs.
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <1261024834-5336-1-git-send-regression-fweisbec@gmail.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      61c1917f
    • Robert P. J. Day's avatar
      perf events: Remove unused perf_counter.h header file · 5b74ed47
      Robert P. J. Day authored
      Since nothing includes the <linux/perf_counter.h> file and it's
      also not exported to user space, remove it.
      Signed-off-by: default avatarRobert P. J. Day <rpjday@crashcourse.ca>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <alpine.LFD.2.00.0912161007430.8198@localhost>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      5b74ed47
    • Masami Hiramatsu's avatar
      perf probe: Check new event name · b7702a21
      Masami Hiramatsu authored
      Check new event name is same syntax as a C symbol in perf command.
      In other words, checking the name is as like as other tracepoint
      events.
      
      This can prevent user to create an event with useless name (e.g.
      foo|bar, foo*bar).
      Signed-off-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Jim Keniston <jkenisto@us.ibm.com>
      Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Jason Baron <jbaron@redhat.com>
      Cc: K.Prasad <prasad@linux.vnet.ibm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: systemtap <systemtap@sources.redhat.com>
      Cc: DLE <dle-develop@lists.sourceforge.net>
      LKML-Reference: <20091216222415.14459.71383.stgit@dhcp-100-2-132.bos.redhat.com>
      [ v2: minor cleanups ]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b7702a21
    • Masami Hiramatsu's avatar
      kprobe-tracer: Check new event/group name · 6f3cf440
      Masami Hiramatsu authored
      Check new event/group name is same syntax as a C symbol. In other
      words, checking the name is as like as other tracepoint events.
      
      This can prevent user to create an event with useless name (e.g.
      foo|bar, foo*bar).
      Signed-off-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Jim Keniston <jkenisto@us.ibm.com>
      Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Jason Baron <jbaron@redhat.com>
      Cc: K.Prasad <prasad@linux.vnet.ibm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: systemtap <systemtap@sources.redhat.com>
      Cc: DLE <dle-develop@lists.sourceforge.net>
      LKML-Reference: <20091216222408.14459.68790.stgit@dhcp-100-2-132.bos.redhat.com>
      [ v2: minor cleanups ]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      6f3cf440
    • Masami Hiramatsu's avatar
      perf probe: Check whether debugfs path is correct · 96c96612
      Masami Hiramatsu authored
      Check whether the debugfs path is correct before executing
      a command, because perf-probe depends on debugfs.
      Signed-off-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Jim Keniston <jkenisto@us.ibm.com>
      Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Jason Baron <jbaron@redhat.com>
      Cc: K.Prasad <prasad@linux.vnet.ibm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: systemtap <systemtap@sources.redhat.com>
      Cc: DLE <dle-develop@lists.sourceforge.net>
      LKML-Reference: <20091216222400.14459.48162.stgit@dhcp-100-2-132.bos.redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      96c96612
    • Masami Hiramatsu's avatar
      perf probe: Fix libdwarf include path for Debian · 27f3b24d
      Masami Hiramatsu authored
      Fix libdwarf include path to fit debian-like systems too.
      
      Borislav Petkov reported:
      
      > even after installing libdwarf-dev on my debian box here,
      > make in tools/perf/ still complains that it cannot find libdwarf:
      >
      > Makefile:491: No libdwarf.h found or old libdwarf.h found, disables dwarf
      > support. Please install libdwarf-dev/libdwarf-devel >= 20081231
      >
      > The problem is that the include path on debian is not
      > /usr/include/libdwarf/ but simply /usr/include because the debian
      > package libdwarf-dev puts the headers straight into
      > /usr/include.
      
      This patch adds -I/usr/include/libdwarf to BASIC_CFLAGS
      and fix probe-finder.h to include just libdwarf.h/dwarf.h.
      
      This patch also adds a workaround for the undefined _MIPS_SZLONG
      bug in libdwarf.h.
      Reported-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
      Signed-off-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Gabor Gombas <gombasg@sztaki.hu>
      Cc: systemtap <systemtap@sources.redhat.com>
      Cc: DLE <dle-develop@lists.sourceforge.net>
      LKML-Reference: <20091216221618.13816.83296.stgit@dhcp-100-2-132.bos.redhat.com>
      [ v2: small stylistic fixlets to probe-finder.h ]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      27f3b24d
    • Al Viro's avatar
      Fix breakage in shmem.c · 718deb6b
      Al Viro authored
      Replacing
      	error = 0;
      	if (error)
      		op
      with nothing is not quite an equivalent transformation ;-)
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      718deb6b
  5. 16 Dec, 2009 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs · bea4c899
      Linus Torvalds authored
      * 'for-linus' of git://oss.sgi.com/xfs/xfs:
        XFS: Free buffer pages array unconditionally
        xfs: kill xfs_bmbt_rec_32/64 types
        xfs: improve metadata I/O merging in the elevator
        xfs: check for not fully initialized inodes in xfs_ireclaim
      bea4c899
    • Roland Dreier's avatar
      re-export alloc_file() · 73efc468
      Roland Dreier authored
      Commit 3d1e4631 ("get rid of init_file()") removed the export of
      alloc_file() -- possibly inadvertently, since that commit mainly
      consisted of deleting the lines between the end of alloc_file() and
      the start of the code in init_file().
      
      There is in fact one modular use of alloc_file() in the tree, in
      drivers/infiniband/core/uverbs_main.c, so re-add the export to fix:
      
          ERROR: "alloc_file" [drivers/infiniband/core/ib_uverbs.ko] undefined!
      
      when CONFIG_INFINIBAND_USER_ACCESS=m.
      
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      73efc468
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.secretlab.ca/git/linux-2.6 · a73611b6
      Linus Torvalds authored
      * 'next' of git://git.secretlab.ca/git/linux-2.6: (23 commits)
        powerpc: fix up for mmu_mapin_ram api change
        powerpc: wii: allow ioremap within the memory hole
        powerpc: allow ioremap within reserved memory regions
        wii: use both mem1 and mem2 as ram
        wii: bootwrapper: add fixup to calc useable mem2
        powerpc: gamecube/wii: early debugging using usbgecko
        powerpc: reserve fixmap entries for early debug
        powerpc: wii: default config
        powerpc: wii: platform support
        powerpc: wii: hollywood interrupt controller support
        powerpc: broadway processor support
        powerpc: wii: bootwrapper bits
        powerpc: wii: device tree
        powerpc: gamecube: default config
        powerpc: gamecube: platform support
        powerpc: gamecube/wii: flipper interrupt controller support
        powerpc: gamecube/wii: udbg support for usbgecko
        powerpc: gamecube/wii: do not include PCI support
        powerpc: gamecube/wii: declare as non-coherent platforms
        powerpc: gamecube/wii: introduce GAMECUBE_COMMON
        ...
      
      Fix up conflicts in arch/powerpc/mm/fsl_booke_mmu.c.
      
      Hopefully even close to correctly.
      a73611b6
    • Linus Torvalds's avatar
      Merge branch 'drm-vmware-staging' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · 5fa3577b
      Linus Torvalds authored
      * 'drm-vmware-staging' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/vmwgfx: Add DRM driver for VMware Virtual GPU
        drm/vmwgfx: Add svga headers for vmwgfx driver
        drm/ttm: Add more driver type enums
      5fa3577b
    • Linus Torvalds's avatar
      Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6 · d4220f98
      Linus Torvalds authored
      * 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6: (34 commits)
        HWPOISON: Remove stray phrase in a comment
        HWPOISON: Try to allocate migration page on the same node
        HWPOISON: Don't do early filtering if filter is disabled
        HWPOISON: Add a madvise() injector for soft page offlining
        HWPOISON: Add soft page offline support
        HWPOISON: Undefine short-hand macros after use to avoid namespace conflict
        HWPOISON: Use new shake_page in memory_failure
        HWPOISON: Use correct name for MADV_HWPOISON in documentation
        HWPOISON: mention HWPoison in Kconfig entry
        HWPOISON: Use get_user_page_fast in hwpoison madvise
        HWPOISON: add an interface to switch off/on all the page filters
        HWPOISON: add memory cgroup filter
        memcg: add accessor to mem_cgroup.css
        memcg: rename and export try_get_mem_cgroup_from_page()
        HWPOISON: add page flags filter
        mm: export stable page flags
        HWPOISON: limit hwpoison injector to known page types
        HWPOISON: add fs/device filters
        HWPOISON: return 0 to indicate success reliably
        HWPOISON: make semantics of IGNORED/DELAYED clear
        ...
      d4220f98
    • Andi Kleen's avatar
      [sysctl] Fix breakage on systems with older glibc · 61cf6931
      Andi Kleen authored
      As predicted during code review, the sysctl(2) changes made systems with
      old glibc nearly unusable.  About every command gives a:
      
        warning: process `ls' used the deprecated sysctl system call with 1.4
      
      warning in the log.
      
      I see this on a SUSE 10.0 system with glibc 2.3.5.
      
      Don't warn for this common case.
      Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      61cf6931