1. 25 9月, 2009 1 次提交
    • E
      perf tools: Dont use openat() · 725b1368
      Eric Dumazet 提交于
      openat() is still a young glibc facility, better to not use it in a
      non performance critical program (perf list)
      
      Many machines have older glibc (RHEL 4 Update 5 -> glibc-2.3.4-2.36
      on my dev machine for example).
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Ulrich Drepper <drepper@redhat.com>
      LKML-Reference: <4ABB767D.6080004@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      725b1368
  2. 24 9月, 2009 3 次提交
  3. 23 9月, 2009 2 次提交
    • M
      perf tools: Fix module symbol loading bug · 508c4d08
      Mike Galbraith 提交于
      Avi Kivity reported 'perf annotate' failures with modules, the
      requested function was not annotated.
      
      If there are no modules currently loaded, or the last module
      scanned is not loaded, dso__load_modules() steps on the value from
      dso__load_vmlinux(), so we happily load the kallsyms symbols on top
      of what we've already loaded.
      
      Fix that such that the total count of symbols loaded is returned.
      Should module symbol load fail after parsing of vmlinux, is's a
      hard failure, so do not silently fall-back to kallsyms.
      Reported-by: NAvi Kivity <avi@redhat.com>
      Signed-off-by: NMike Galbraith <efault@gmx.de>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: rostedt@goodmis.org
      Cc: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Masami Hiramatsu <mhiramat@redhat.com>
      LKML-Reference: <1253697658.11461.36.camel@marge.simson.net>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      508c4d08
    • P
      perf_event, x86: Fix 'perf sched record' crashing the machine · 7d428966
      Peter Zijlstra 提交于
      Chris Malley reported that 'perf sched record' sometimes
      crashes his box with:
      
      [  389.272175] BUG: unable to handle kernel paging request at ffffb300
      [  389.272294] IP: [<c011b0bd>] default_send_IPI_self+0x1d/0x50
      [  389.272366] *pde = 0073f067 *pte = 00000000
      [  389.274708] Call Trace:
      [  389.274752]  [<c010e3b4>] ?  set_perf_event_pending+0x14/0x20
      [  389.274801]  [<c01b9751>] ?  perf_output_unlock+0x121/0x1a0
      [  389.274848]  [<c01b981a>] ? perf_output_end+0x4a/0x70
      [  389.274893]  [<c01ba690>] ?  __perf_event_overflow+0x240/0x2f0
      [  389.274942]  [<c030963e>] ? atomic64_cmpxchg+0x1e/0x30
      [  389.274988]  [<c01ba8f4>] ?  perf_swevent_ctx_event+0x1b4/0x1c0
      [  389.275035]  [<c01ba773>] ?  perf_swevent_ctx_event+0x33/0x1c0
      [  389.275081]  [<c01ba9a7>] ? do_perf_sw_event+0xa7/0x160
      [  389.275127]  [<c01baae2>] ? perf_tp_event+0x82/0xa0
      [  389.275174]  [<c012e9c6>] ?  ftrace_profile_sched_stat_runtime+0xe6/0x120
      [  389.275224]  [<c012e8e0>] ?  ftrace_profile_sched_stat_runtime+0x0/0x120
      [  389.275273]  [<c013c85a>] ? update_curr+0x18a/0x230
      [  389.275318]  [<c013cdc5>] ?  put_prev_task_fair+0x155/0x160
      [  389.275366]  [<c01618b5>] ? sched_clock_cpu+0xd5/0x110
      [  389.275413]  [<c04e7525>] ? _spin_lock_irq+0x45/0x50
      [  389.275458]  [<c04e424e>] ? schedule+0x20e/0xb10
      
      The problem is that the box has no lapic enabled:
      
        [    0.042445] Local APIC not detected. Using dummy APIC emulation.
      
      The below seems like the best fix. We disabled all lapic bits, except
      the self-IPI-resend logic.
      Reported-by: NChris Malley <mail@chrismalley.co.uk>
      Signed-off-by: NPeter Zijlstra <peterz@infradead.org>
      Cc: Cyrill Gorcunov <gorcunov@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <7863dc4c0909221409v7893bfd3o4b590d5951a233ba@mail.gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      7d428966
  4. 22 9月, 2009 11 次提交
    • A
      perf_event: Update PERF_EVENT_FORK header definition · a6f10a2f
      Anton Blanchard 提交于
      PERF_EVENT_FORK always outputs the time field, so update the header
      to reflect this.
      Signed-off-by: NAnton Blanchard <anton@samba.org>
      Cc: Arjan van de Ven <arjan@linux.intel.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <20090922123424.GD19453@kryten>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      a6f10a2f
    • I
      perf stat: Fix zero total printouts · c7f7fea3
      Ingo Molnar 提交于
      Before:
      
                 0  sched:sched_switch #        nan M/sec
      
      After:
      
                 0  sched:sched_switch #      0.000 M/sec
      
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      c7f7fea3
    • P
      perf_event, powerpc: Fix compilation after big perf_counter rename · a8f90e90
      Paul Mackerras 提交于
      This fixes two places in the powerpc perf_event (perf_counter) code
      where 'list_entry' needs to be changed to 'group_entry', but were
      missed in commit 65abc865 ("perf_counter: Rename list_entry ->
      group_entry, counter_list -> group_list").
      
      This also changes 'event' back to 'counter' in a couple of
      contexts:
      
      * Field and function names that deal with the limited-function
        counters: it's really the hardware counters whose function is
        limited, not the events that they count.  Hence:
      
        MAX_LIMITED_HWEVENTS -> MAX_LIMITED_HWCOUNTERS
        limited_event -> limited_counter
        freeze/thaw_limited_events -> freeze/thaw_limited_counters
      
      * The machine-specific PMU description struct (struct power_pmu): this
        renames 'n_event' back to 'n_counter' since it really describes how
        many hardware counters the machine has.  (Renaming this back avoids
        a compile error in each of the machine-specific PMU back-ends where
        they initialize their power_pmu struct.)
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      Cc: linuxppc-dev@ozlabs.org
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      LKML-Reference: <19128.4280.813369.589704@cargo.ozlabs.ibm.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      a8f90e90
    • L
      Merge branch 'perfcounters-rename-for-linus' of... · 43c1266c
      Linus Torvalds 提交于
      Merge branch 'perfcounters-rename-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'perfcounters-rename-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        perf: Tidy up after the big rename
        perf: Do the big rename: Performance Counters -> Performance Events
        perf_counter: Rename 'event' to event_id/hw_event
        perf_counter: Rename list_entry -> group_entry, counter_list -> group_list
      
      Manually resolved some fairly trivial conflicts with the tracing tree in
      include/trace/ftrace.h and kernel/trace/trace_syscalls.c.
      43c1266c
    • L
      Merge branch 'core-fixes-for-linus' of... · b8c7f1dc
      Linus Torvalds 提交于
      Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        rcu: Fix whitespace inconsistencies
        rcu: Fix thinko, actually initialize full tree
        rcu: Apply results of code inspection of kernel/rcutree_plugin.h
        rcu: Add WARN_ON_ONCE() consistency checks covering state transitions
        rcu: Fix synchronize_rcu() for TREE_PREEMPT_RCU
        rcu: Simplify rcu_read_unlock_special() quiescent-state accounting
        rcu: Add debug checks to TREE_PREEMPT_RCU for premature grace periods
        rcu: Kconfig help needs to say that TREE_PREEMPT_RCU scales down
        rcutorture: Occasionally delay readers enough to make RCU force_quiescent_state
        rcu: Initialize multi-level RCU grace periods holding locks
        rcu: Need to update rnp->gpnum if preemptable RCU is to be reliable
      b8c7f1dc
    • L
      Merge branch 'perfcounters-fixes-for-linus' of... · f4eccb6d
      Linus Torvalds 提交于
      Merge branch 'perfcounters-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'perfcounters-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        perf_counter, powerpc, sparc: Fix compilation after perf_counter_overflow() change
        perf_counter: x86: Fix PMU resource leak
        perf util: SVG performance improvements
        perf util: Make the timechart SVG width dynamic
        perf timechart: Show the duration of scheduler delays in the SVG
        perf timechart: Show the name of the waker/wakee in timechart
      f4eccb6d
    • L
      Merge branch 'sched-fixes-for-linus' of... · 8e4bc3dd
      Linus Torvalds 提交于
      Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        sched: Simplify sys_sched_rr_get_interval() system call
        sched: Fix potential NULL derference of doms_cur
        sched: Fix raciness in runqueue_is_locked()
        sched: Re-add lost cpu_allowed check to sched_fair.c::select_task_rq_fair()
        sched: Remove unneeded indentation in sched_fair.c::place_entity()
      8e4bc3dd
    • L
      Merge branch 'tracing-fixes-for-linus' of... · bd4c3a34
      Linus Torvalds 提交于
      Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        kernel/profile.c: Switch /proc/irq/prof_cpu_mask to seq_file
        tracing: Export trace_profile_buf symbols
        tracing/events: use list_for_entry_continue
        tracing: remove max_tracer_type_len
        function-graph: use ftrace_graph_funcs directly
        tracing: Remove markers
        tracing: Allocate the ftrace event profile buffer dynamically
        tracing: Factorize the events profile accounting
      bd4c3a34
    • L
      Merge branch 'x86-fixes-for-linus' of... · b3727c24
      Linus Torvalds 提交于
      Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        x86: Print the hypervisor returned tsc_khz during boot
        x86: Correct segment permission flags in 64-bit linker script
        x86: cpuinit-annotate SMP boot trampolines properly
        x86: Increase timeout for EHCI debug port reset completion in early printk
        x86: Fix uaccess_32.h typo
        x86: Trivial whitespace cleanups
        x86, apic: Fix missed handling of discrete apics
        x86/i386: Remove duplicated #include
        x86, mtrr: Convert loop to a while based construct, avoid naked semicolon
        Revert 'x86: Fix system crash when loading with "reservetop" parameter'
        x86, mce: Fix compile warning in case of CONFIG_SMP=n
        x86, apic: Use logical flat on intel with <= 8 logical cpus
        x86: SGI UV: Map MMIO-High memory range
        x86: SGI UV: Add volatile semantics to macros that access chipset registers
        x86: SGI UV: Fix IPI macros
        x86: apic: Convert BUG() to BUG_ON()
        x86: Remove final bits of CONFIG_X86_OLD_MCE
      b3727c24
    • L
      Merge branch 'writeback' of git://git.kernel.dk/linux-2.6-block · 58e75a09
      Linus Torvalds 提交于
      * 'writeback' of git://git.kernel.dk/linux-2.6-block:
        nfs: initialize the backing_dev_info when creating the server
        writeback: make balance_dirty_pages() gradually back more off
        writeback: don't use schedule_timeout() without setting runstate
        nfs: nfs_kill_super() should call bdi_unregister() after killing super
      58e75a09
    • L
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 · c720f565
      Linus Torvalds 提交于
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (222 commits)
        V4L/DVB (13033): pt1: Don't use a deprecated DMA_BIT_MASK macro
        V4L/DVB (13029): radio-si4713: remove #include <linux/version.h>
        V4L/DVB (13027): go7007: convert printks to v4l2_info
        V4L/DVB (13026): s2250-board: Implement brightness and contrast controls
        V4L/DVB (13025): s2250-board: Fix memory leaks
        V4L/DVB (13024): go7007: Implement vidioc_g_std and vidioc_querystd
        V4L/DVB (13023): go7007: Merge struct gofh and go declarations
        V4L/DVB (13022): go7007: Fix mpeg controls
        V4L/DVB (13021): go7007: Fix whitespace and line lengths
        V4L/DVB (13020): go7007: Updates to Kconfig and Makefile
        V4L/DVB (13019): video: initial support for ADV7180
        V4L/DVB (13018): kzalloc failure ignored in au8522_probe()
        V4L/DVB (13017): gspca: kmalloc failure ignored in sd_start()
        V4L/DVB (13016): kmalloc failure ignored in lgdt3304_attach() and s921_attach()
        V4L/DVB (13015): kmalloc failure ignored in m920x_firmware_download()
        V4L/DVB (13014): Add support for Compro VideoMate E800 (DVB-T part only)
        V4L/DVB (13013): FM TX: si4713: Kconfig: Fixed two typos.
        V4L/DVB (13012): uvc: introduce missing kfree
        V4L/DVB (13011): Change tuner type of BeholdTV cards
        V4L/DVB (13009): gspca - stv06xx-hdcs: Reduce exposure range
        ...
      c720f565
  5. 21 9月, 2009 23 次提交