06 Mar, 2013

1 commit

  • Stricter validation was introduced with commit da27a24383b2b
    ("efivarfs: guid part of filenames are case-insensitive") and commit
    47f531e8ba3b ("efivarfs: Validate filenames much more aggressively"),
    which is necessary for the guid portion of efivarfs filenames, but we
    don't need to be so strict with the first part, the variable name. The
    UEFI specification doesn't impose any constraints on variable names
    other than they be a NULL-terminated string.

    The above commits caused a regression that resulted in users seeing
    the following message,

    $ sudo mount -v /sys/firmware/efi/efivars mount: Cannot allocate memory

    whenever pstore EFI variables were present in the variable store,
    since their variable names failed to pass the following check,

    /* GUID should be right after the first '-' */
    if (s - 1 != strchr(str, '-'))

    as a typical pstore filename is of the form, dump-type0-10-1-.
    The fix is trivial since the guid portion of the filename is GUID_LEN
    bytes, we can use (len - GUID_LEN) to ensure the '-' character is
    where we expect it to be.

    (The bogus ENOMEM error value will be fixed in a separate patch.)

    Reported-by: Joseph Yasi
    Tested-by: Joseph Yasi
    Reported-by: Lingzhu Xiang
    Cc: Josh Boyer
    Cc: Jeremy Kerr
    Cc: Matthew Garrett
    Cc: # v3.8
    Signed-off-by: Matt Fleming

    Matt Fleming
     

04 Mar, 2013

1 commit

  • Pull new ImgTec Meta architecture from James Hogan:
    "This adds core architecture support for Imagination's Meta processor
    cores, followed by some later miscellaneous arch/metag cleanups and
    fixes which I kept separate to ease review:

    - Support for basic Meta 1 (ATP) and Meta 2 (HTP) core architecture
    - A few fixes all over, particularly for symbol prefixes
    - A few privilege protection fixes
    - Several cleanups (setup.c includes, split out a lot of
    metag_ksyms.c)
    - Fix some missing exports
    - Convert hugetlb to use vm_unmapped_area()
    - Copy device tree to non-init memory
    - Provide dma_get_sgtable()"

    * tag 'metag-v3.9-rc1-v4' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag: (61 commits)
    metag: Provide dma_get_sgtable()
    metag: prom.h: remove declaration of metag_dt_memblock_reserve()
    metag: copy devicetree to non-init memory
    metag: cleanup metag_ksyms.c includes
    metag: move mm/init.c exports out of metag_ksyms.c
    metag: move usercopy.c exports out of metag_ksyms.c
    metag: move setup.c exports out of metag_ksyms.c
    metag: move kick.c exports out of metag_ksyms.c
    metag: move traps.c exports out of metag_ksyms.c
    metag: move irq enable out of irqflags.h on SMP
    genksyms: fix metag symbol prefix on crc symbols
    metag: hugetlb: convert to vm_unmapped_area()
    metag: export clear_page and copy_page
    metag: export metag_code_cache_flush_all
    metag: protect more non-MMU memory regions
    metag: make TXPRIVEXT bits explicit
    metag: kernel/setup.c: sort includes
    perf: Enable building perf tools for Meta
    metag: add boot time LNKGET/LNKSET check
    metag: add __init to metag_cache_probe()
    ...

    Linus Torvalds
     

03 Mar, 2013

1 commit


02 Mar, 2013

1 commit

  • Pull new ARC architecture from Vineet Gupta:
    "Initial ARC Linux port with some fixes on top for 3.9-rc1:

    I would like to introduce the Linux port to ARC Processors (from
    Synopsys) for 3.9-rc1. The patch-set has been discussed on the public
    lists since Nov and has received a fair bit of review, specially from
    Arnd, tglx, Al and other subsystem maintainers for DeviceTree, kgdb...

    The arch bits are in arch/arc, some asm-generic changes (acked by
    Arnd), a minor change to PARISC (acked by Helge).

    The series is a touch bigger for a new port for 2 main reasons:

    1. It enables a basic kernel in first sub-series and adds
    ptrace/kgdb/.. later

    2. Some of the fallout of review (DeviceTree support, multi-platform-
    image support) were added on top of orig series, primarily to
    record the revision history.

    This updated pull request additionally contains

    - fixes due to our GNU tools catching up with the new syscall/ptrace
    ABI

    - some (minor) cross-arch Kconfig updates."

    * tag 'arc-v3.9-rc1-late' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (82 commits)
    ARC: split elf.h into uapi and export it for userspace
    ARC: Fixup the current ABI version
    ARC: gdbserver using regset interface possibly broken
    ARC: Kconfig cleanup tracking cross-arch Kconfig pruning in merge window
    ARC: make a copy of flat DT
    ARC: [plat-arcfpga] DT arc-uart bindings change: "baud" => "current-speed"
    ARC: Ensure CONFIG_VIRT_TO_BUS is not enabled
    ARC: Fix pt_orig_r8 access
    ARC: [3.9] Fallout of hlist iterator update
    ARC: 64bit RTSC timestamp hardware issue
    ARC: Don't fiddle with non-existent caches
    ARC: Add self to MAINTAINERS
    ARC: Provide a default serial.h for uart drivers needing BASE_BAUD
    ARC: [plat-arcfpga] defconfig for fully loaded ARC Linux
    ARC: [Review] Multi-platform image #8: platform registers SMP callbacks
    ARC: [Review] Multi-platform image #7: SMP common code to use callbacks
    ARC: [Review] Multi-platform image #6: cpu-to-dma-addr optional
    ARC: [Review] Multi-platform image #5: NR_IRQS defined by ARC core
    ARC: [Review] Multi-platform image #4: Isolate platform headers
    ARC: [Review] Multi-platform image #3: switch to board callback
    ...

    Linus Torvalds
     

28 Feb, 2013

6 commits

  • I'm not sure why, but the hlist for each entry iterators were conceived

    list_for_each_entry(pos, head, member)

    The hlist ones were greedy and wanted an extra parameter:

    hlist_for_each_entry(tpos, pos, head, member)

    Why did they need an extra pos parameter? I'm not quite sure. Not only
    they don't really need it, it also prevents the iterator from looking
    exactly like the list iterator, which is unfortunate.

    Besides the semantic patch, there was some manual work required:

    - Fix up the actual hlist iterators in linux/list.h
    - Fix up the declaration of other iterators based on the hlist ones.
    - A very small amount of places were using the 'node' parameter, this
    was modified to use 'obj->member' instead.
    - Coccinelle didn't handle the hlist_for_each_entry_safe iterator
    properly, so those had to be fixed up manually.

    The semantic patch which is mostly the work of Peter Senna Tschudin is here:

    @@
    iterator name hlist_for_each_entry, hlist_for_each_entry_continue, hlist_for_each_entry_from, hlist_for_each_entry_rcu, hlist_for_each_entry_rcu_bh, hlist_for_each_entry_continue_rcu_bh, for_each_busy_worker, ax25_uid_for_each, ax25_for_each, inet_bind_bucket_for_each, sctp_for_each_hentry, sk_for_each, sk_for_each_rcu, sk_for_each_from, sk_for_each_safe, sk_for_each_bound, hlist_for_each_entry_safe, hlist_for_each_entry_continue_rcu, nr_neigh_for_each, nr_neigh_for_each_safe, nr_node_for_each, nr_node_for_each_safe, for_each_gfn_indirect_valid_sp, for_each_gfn_sp, for_each_host;

    type T;
    expression a,c,d,e;
    identifier b;
    statement S;
    @@

    -T b;

    [akpm@linux-foundation.org: drop bogus change from net/ipv4/raw.c]
    [akpm@linux-foundation.org: drop bogus hunk from net/ipv6/raw.c]
    [akpm@linux-foundation.org: checkpatch fixes]
    [akpm@linux-foundation.org: fix warnings]
    [akpm@linux-foudnation.org: redo intrusive kvm changes]
    Tested-by: Peter Senna Tschudin
    Acked-by: Paul E. McKenney
    Signed-off-by: Sasha Levin
    Cc: Wu Fengguang
    Cc: Marcelo Tosatti
    Cc: Gleb Natapov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sasha Levin
     
  • This change adds a little documentation to the tests under
    tools/testing/selftests/, based on akpm's explanation.

    [akpm@linux-foundation.org: move from Documentation to tools/testing/selftests/README.txt]
    Signed-off-by: Jeremy Kerr
    Cc: Dave Young
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeremy Kerr
     
  • Do it one-per-line to reduce patch conflict pain.

    Cc: Dave Young
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Test that reads from a newly-created efivarfs file (with no data written)
    will return EOF.

    Signed-off-by: Jeremy Kerr
    Cc: Matt Fleming
    Cc: Lingzhu Xiang
    Cc: Dave Young
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeremy Kerr
     
  • Signed-off-by: Jeremy Kerr
    Cc: Matt Fleming
    Cc: Lingzhu Xiang
    Cc: Dave Young
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeremy Kerr
     
  • This change adds a few initial efivarfs tests to the
    tools/testing/selftests directory.

    The open-unlink test is based on code from Lingzhu Xiang.

    Signed-off-by: Jeremy Kerr
    Cc: Matt Fleming
    Cc: Lingzhu Xiang
    Cc: Dave Young
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeremy Kerr
     

26 Feb, 2013

1 commit

  • Pull ktest update from Steven Rostedt:
    "Added ability to have all builds test warnings.

    Fixed failing reboot when the reboot produces a non fatal error.

    Config reading fixes and other cleanups"

    * tag 'ktest-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
    ktest: Remove indexes from warnings check
    ktest: Ignore warnings during reboot
    ktest: Search for linux banner for successful reboot
    ktest: Add make_warnings_file and process full warnings
    ktest: Allow a test option to use its default option
    ktest: Strip off '\n' when reading which files were modified
    ktest: Do not require CONSOLE for build or install bisects

    Linus Torvalds
     

22 Feb, 2013

3 commits

  • Pull char/misc driver patches from Greg Kroah-Hartman:
    "Here's the big char/misc driver patches for 3.9-rc1.

    Nothing major here, just lots of different driver updates (mei,
    hyperv, ipack, extcon, vmci, etc.).

    All of these have been in the linux-next tree for a while."

    * tag 'char-misc-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (209 commits)
    w1: w1_therm: Add force-pullup option for "broken" sensors
    w1: ds2482: Added 1-Wire pull-up support to the driver
    vme: add missing put_device() after device_register() fails
    extcon: max8997: Use workqueue to check cable state after completing boot of platform
    extcon: max8997: Set default UART/USB path on probe
    extcon: max8997: Consolidate duplicate code for checking ADC/CHG cable type
    extcon: max8997: Set default of ADC debounce time during initialization
    extcon: max8997: Remove duplicate code related to set H/W line path
    extcon: max8997: Move defined constant to header file
    extcon: max77693: Make max77693_extcon_cable static
    extcon: max8997: Remove unreachable code
    extcon: max8997: Make max8997_extcon_cable static
    extcon: max77693: Remove unnecessary goto statement to improve readability
    extcon: max77693: Convert to devm_input_allocate_device()
    extcon: gpio: Rename filename of extcon-gpio.c according to kernel naming style
    CREDITS: update email and address of Harald Hoyer
    extcon: arizona: Use MICDET for final microphone identification
    extcon: arizona: Always take the first HPDET reading as the final one
    extcon: arizona: Clear _trig_sts bits after jack detection
    extcon: arizona: Don't HPDET magic when headphones are enabled
    ...

    Linus Torvalds
     
  • Pull USB patches from Greg Kroah-Hartman:
    "Here's the big USB merge for 3.9-rc1

    Nothing major, lots of gadget fixes, and of course, xhci stuff.

    All of this has been in linux-next for a while, with the exception of
    the last 3 patches, which were reverts of patches in the tree that
    caused problems, they went in yesterday."

    * tag 'usb-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (190 commits)
    Revert "USB: EHCI: make ehci-vt8500 a separate driver"
    Revert "USB: EHCI: make ehci-orion a separate driver"
    Revert "USB: update host controller Kconfig entries"
    USB: update host controller Kconfig entries
    USB: EHCI: make ehci-orion a separate driver
    USB: EHCI: make ehci-vt8500 a separate driver
    USB: usb-storage: unusual_devs update for Super TOP SATA bridge
    USB: ehci-omap: Fix autoloading of module
    USB: ehci-omap: Don't free gpios that we didn't request
    USB: option: add Huawei "ACM" devices using protocol = vendor
    USB: serial: fix null-pointer dereferences on disconnect
    USB: option: add Yota / Megafon M100-1 4g modem
    drivers/usb: add missing GENERIC_HARDIRQS dependencies
    USB: storage: properly handle the endian issues of idProduct
    testusb: remove all mentions of 'usbfs'
    usb: gadget: imx_udc: make it depend on BROKEN
    usb: omap_control_usb: fix compile warning
    ARM: OMAP: USB: Add phy binding information
    ARM: OMAP2: MUSB: Specify omap4 has mailbox
    ARM: OMAP: devices: create device for usb part of control module
    ...

    Linus Torvalds
     
  • Pull driver core patches from Greg Kroah-Hartman:
    "Here is the big driver core merge for 3.9-rc1

    There are two major series here, both of which touch lots of drivers
    all over the kernel, and will cause you some merge conflicts:

    - add a new function called devm_ioremap_resource() to properly be
    able to check return values.

    - remove CONFIG_EXPERIMENTAL

    Other than those patches, there's not much here, some minor fixes and
    updates"

    Fix up trivial conflicts

    * tag 'driver-core-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits)
    base: memory: fix soft/hard_offline_page permissions
    drivercore: Fix ordering between deferred_probe and exiting initcalls
    backlight: fix class_find_device() arguments
    TTY: mark tty_get_device call with the proper const values
    driver-core: constify data for class_find_device()
    firmware: Ignore abort check when no user-helper is used
    firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER
    firmware: Make user-mode helper optional
    firmware: Refactoring for splitting user-mode helper code
    Driver core: treat unregistered bus_types as having no devices
    watchdog: Convert to devm_ioremap_resource()
    thermal: Convert to devm_ioremap_resource()
    spi: Convert to devm_ioremap_resource()
    power: Convert to devm_ioremap_resource()
    mtd: Convert to devm_ioremap_resource()
    mmc: Convert to devm_ioremap_resource()
    mfd: Convert to devm_ioremap_resource()
    media: Convert to devm_ioremap_resource()
    iommu: Convert to devm_ioremap_resource()
    drm: Convert to devm_ioremap_resource()
    ...

    Linus Torvalds
     

21 Feb, 2013

2 commits

  • Pull ACPI and power management updates from Rafael Wysocki:

    - Rework of the ACPI namespace scanning code from Rafael J. Wysocki
    with contributions from Bjorn Helgaas, Jiang Liu, Mika Westerberg,
    Toshi Kani, and Yinghai Lu.

    - ACPI power resources handling and ACPI device PM update from Rafael
    J Wysocki.

    - ACPICA update to version 20130117 from Bob Moore and Lv Zheng with
    contributions from Aaron Lu, Chao Guan, Jesper Juhl, and Tim Gardner.

    - Support for Intel Lynxpoint LPSS from Mika Westerberg.

    - cpuidle update from Len Brown including Intel Haswell support, C1
    state for intel_idle, removal of global pm_idle.

    - cpuidle fixes and cleanups from Daniel Lezcano.

    - cpufreq fixes and cleanups from Viresh Kumar and Fabio Baltieri with
    contributions from Stratos Karafotis and Rickard Andersson.

    - Intel P-states driver for Sandy Bridge processors from Dirk
    Brandewie.

    - cpufreq driver for Marvell Kirkwood SoCs from Andrew Lunn.

    - cpufreq fixes related to ordering issues between acpi-cpufreq and
    powernow-k8 from Borislav Petkov and Matthew Garrett.

    - cpufreq support for Calxeda Highbank processors from Mark Langsdorf
    and Rob Herring.

    - cpufreq driver for the Freescale i.MX6Q SoC and cpufreq-cpu0 update
    from Shawn Guo.

    - cpufreq Exynos fixes and cleanups from Jonghwan Choi, Sachin Kamat,
    and Inderpal Singh.

    - Support for "lightweight suspend" from Zhang Rui.

    - Removal of the deprecated power trace API from Paul Gortmaker.

    - Assorted updates from Andreas Fleig, Colin Ian King, Davidlohr Bueso,
    Joseph Salisbury, Kees Cook, Li Fei, Nishanth Menon, ShuoX Liu,
    Srinivas Pandruvada, Tejun Heo, Thomas Renninger, and Yasuaki
    Ishimatsu.

    * tag 'pm+acpi-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (267 commits)
    PM idle: remove global declaration of pm_idle
    unicore32 idle: delete stray pm_idle comment
    openrisc idle: delete pm_idle
    mn10300 idle: delete pm_idle
    microblaze idle: delete pm_idle
    m32r idle: delete pm_idle, and other dead idle code
    ia64 idle: delete pm_idle
    cris idle: delete idle and pm_idle
    ARM64 idle: delete pm_idle
    ARM idle: delete pm_idle
    blackfin idle: delete pm_idle
    sparc idle: rename pm_idle to sparc_idle
    sh idle: rename global pm_idle to static sh_idle
    x86 idle: rename global pm_idle to static x86_idle
    APM idle: register apm_cpu_idle via cpuidle
    cpufreq / intel_pstate: Add kernel command line option disable intel_pstate.
    cpufreq / intel_pstate: Change to disallow module build
    tools/power turbostat: display SMI count by default
    intel_idle: export both C1 and C1E
    ACPI / hotplug: Fix concurrency issues and memory leaks
    ...

    Linus Torvalds
     
  • Pull cgroup changes from Tejun Heo:
    "Nothing too drastic.

    - Removal of synchronize_rcu() from userland visible paths.

    - Various fixes and cleanups from Li.

    - cgroup_rightmost_descendant() added which will be used by cpuset
    changes (it will be a separate pull request)."

    * 'for-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
    cgroup: fail if monitored file and event_control are in different cgroup
    cgroup: fix cgroup_rmdir() vs close(eventfd) race
    cpuset: fix cpuset_print_task_mems_allowed() vs rename() race
    cgroup: fix exit() vs rmdir() race
    cgroup: remove bogus comments in cgroup_diput()
    cgroup: remove synchronize_rcu() from cgroup_diput()
    cgroup: remove duplicate RCU free on struct cgroup
    sched: remove redundant NULL cgroup check in task_group_path()
    sched: split out css_online/css_offline from tg creation/destruction
    cgroup: initialize cgrp->dentry before css_alloc()
    cgroup: remove a NULL check in cgroup_exit()
    cgroup: fix bogus kernel warnings when cgroup_create() failed
    cgroup: remove synchronize_rcu() from rebind_subsystems()
    cgroup: remove synchronize_rcu() from cgroup_attach_{task|proc}()
    cgroup: use new hashtable implementation
    cgroups: fix cgroup_event_listener error handling
    cgroups: move cgroup_event_listener.c to tools/cgroup
    cgroup: implement cgroup_rightmost_descendant()
    cgroup: remove unused dummy cgroup_fork_callbacks()

    Linus Torvalds
     

20 Feb, 2013

1 commit

  • Pull perf changes from Ingo Molnar:
    "There are lots of improvements, the biggest changes are:

    Main kernel side changes:

    - Improve uprobes performance by adding 'pre-filtering' support, by
    Oleg Nesterov.

    - Make some POWER7 events available in sysfs, equivalent to what was
    done on x86, from Sukadev Bhattiprolu.

    - tracing updates by Steve Rostedt - mostly misc fixes and smaller
    improvements.

    - Use perf/event tracing to report PCI Express advanced errors, by
    Tony Luck.

    - Enable northbridge performance counters on AMD family 15h, by Jacob
    Shin.

    - This tracing commit:

    tracing: Remove the extra 4 bytes of padding in events

    changes the ABI. All involved parties (PowerTop in particular)
    seem to agree that it's safe to do now with the introduction of
    libtraceevent, but the devil is in the details ...

    Main tooling side changes:

    - Add 'event group view', from Namyung Kim:

    To use it, 'perf record' should group events when recording. And
    then perf report parses the saved group relation from file header
    and prints them together if --group option is provided. You can
    use the 'perf evlist' command to see event group information:

    $ perf record -e '{ref-cycles,cycles}' noploop 1
    [ perf record: Woken up 2 times to write data ]
    [ perf record: Captured and wrote 0.385 MB perf.data (~16807 samples) ]

    $ perf evlist --group
    {ref-cycles,cycles}

    With this example, default perf report will show you each event
    separately.

    You can use --group option to enable event group view:

    $ perf report --group
    ...
    # group: {ref-cycles,cycles}
    # ========
    # Samples: 7K of event 'anon group { ref-cycles, cycles }'
    # Event count (approx.): 6876107743
    #
    # Overhead Command Shared Object Symbol
    # ................ ....... ................. ..........................
    99.84% 99.76% noploop noploop [.] main
    0.07% 0.00% noploop ld-2.15.so [.] strcmp
    0.03% 0.00% noploop [kernel.kallsyms] [k] timerqueue_del
    0.03% 0.03% noploop [kernel.kallsyms] [k] sched_clock_cpu
    0.02% 0.00% noploop [kernel.kallsyms] [k] account_user_time
    0.01% 0.00% noploop [kernel.kallsyms] [k] __alloc_pages_nodemask
    0.00% 0.00% noploop [kernel.kallsyms] [k] native_write_msr_safe
    0.00% 0.11% noploop [kernel.kallsyms] [k] _raw_spin_lock
    0.00% 0.06% noploop [kernel.kallsyms] [k] find_get_page
    0.00% 0.02% noploop [kernel.kallsyms] [k] rcu_check_callbacks
    0.00% 0.02% noploop [kernel.kallsyms] [k] __current_kernel_time

    As you can see the Overhead column now contains both of ref-cycles
    and cycles and header line shows group information also - 'anon
    group { ref-cycles, cycles }'. The output is sorted by period of
    group leader first.

    - Initial GTK+ annotate browser, from Namhyung Kim.

    - Add option for runtime switching perf data file in perf report,
    just press 's' and a menu with the valid files found in the current
    directory will be presented, from Feng Tang.

    - Add support to display whole group data for raw columns, from Jiri
    Olsa.

    - Add per processor socket count aggregation in perf stat, from
    Stephane Eranian.

    - Add interval printing in 'perf stat', from Stephane Eranian.

    - 'perf test' improvements

    - Add support for wildcards in tracepoint system name, from Jiri
    Olsa.

    - Add anonymous huge page recognition, from Joshua Zhu.

    - perf build-id cache now can show DSOs present in a perf.data file
    that are not in the cache, to integrate with build-id servers being
    put in place by organizations such as Fedora.

    - perf top now shares more of the evsel config/creation routines with
    'record', paving the way for further integration like 'top'
    snapshots, etc.

    - perf top now supports DWARF callchains.

    - Fix mmap limitations on 32-bit, fix from David Miller.

    - 'perf bench numa mem' NUMA performance measurement suite

    - ... and lots of fixes, performance improvements, cleanups and other
    improvements I failed to list - see the shortlog and git log for
    details."

    * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (270 commits)
    perf/x86/amd: Enable northbridge performance counters on AMD family 15h
    perf/hwbp: Fix cleanup in case of kzalloc failure
    perf tools: Fix build with bison 2.3 and older.
    perf tools: Limit unwind support to x86 archs
    perf annotate: Make it to be able to skip unannotatable symbols
    perf gtk/annotate: Fail early if it can't annotate
    perf gtk/annotate: Show source lines with gray color
    perf gtk/annotate: Support multiple event annotation
    perf ui/gtk: Implement basic GTK2 annotation browser
    perf annotate: Fix warning message on a missing vmlinux
    perf buildid-cache: Add --update option
    uprobes/perf: Avoid uprobe_apply() whenever possible
    uprobes/perf: Teach trace_uprobe/perf code to use UPROBE_HANDLER_REMOVE
    uprobes/perf: Teach trace_uprobe/perf code to pre-filter
    uprobes/perf: Teach trace_uprobe/perf code to track the active perf_event's
    uprobes: Introduce uprobe_apply()
    perf: Introduce hw_perf_event->tp_target and ->tp_list
    uprobes/perf: Always increment trace_uprobe->nhit
    uprobes/tracing: Kill uprobe_trace_consumer, embed uprobe_consumer into trace_uprobe
    uprobes/tracing: Introduce is_trace_uprobe_enabled()
    ...

    Linus Torvalds
     

19 Feb, 2013

1 commit

  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux: (35 commits)
    PM idle: remove global declaration of pm_idle
    unicore32 idle: delete stray pm_idle comment
    openrisc idle: delete pm_idle
    mn10300 idle: delete pm_idle
    microblaze idle: delete pm_idle
    m32r idle: delete pm_idle, and other dead idle code
    ia64 idle: delete pm_idle
    cris idle: delete idle and pm_idle
    ARM64 idle: delete pm_idle
    ARM idle: delete pm_idle
    blackfin idle: delete pm_idle
    sparc idle: rename pm_idle to sparc_idle
    sh idle: rename global pm_idle to static sh_idle
    x86 idle: rename global pm_idle to static x86_idle
    APM idle: register apm_cpu_idle via cpuidle
    tools/power turbostat: display SMI count by default
    intel_idle: export both C1 and C1E
    cpuidle: remove vestage definition of cpuidle_state_usage.driver_data
    x86 idle: remove 32-bit-only "no-hlt" parameter, hlt_works_ok flag
    x86 idle: remove mwait_idle() and "idle=mwait" cmdline param
    ...

    Conflicts:
    arch/x86/kernel/process.c (with PM / tracing commit 43720bd)
    drivers/acpi/processor_idle.c (with ACPICA commit 4f84291)

    Rafael J. Wysocki
     

18 Feb, 2013

1 commit

  • The index of a line where a warning is tested can be returned
    differently on different versions of gcc (or same version compiled
    differently). That is, a tab + space can give different results. This
    causes the warning check to produce a false positive. Removing the
    index from the check fixes this issue.

    Signed-off-by: Steven Rostedt

    Steven Rostedt (Red Hat)
     

16 Feb, 2013

1 commit


15 Feb, 2013

10 commits

  • * pm-tools:
    ACPI tools / acpidump: must be run as root - install it into /usr/sbin

    Rafael J. Wysocki
     
  • The %name-prefix "prefix" syntax is not available on bison 2.3 and
    older. Substitute with the -p "prefix" command-line option for
    compatibility with older versions of bison.

    This patch fixes this build error with older versions of bison.

    CC util/sysfs.o
    BISON util/pmu-bison.c
    util/pmu.y:2.14-24: syntax error, unexpected string, expecting =
    make: *** [util/pmu-bison.c] Error 1

    Signed-off-by: Vinson Lee
    Tested-by: Li Zefan
    Cc: stable@vger.kernel.org # 3.4+
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Li Zefan
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Link: http://lkml.kernel.org/r/1360792138-29186-1-git-send-email-vlee@twitter.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Vinson Lee
     
  • There's DWARF unwind support only for x86 archs, so limit the unwind.o
    object to them only.

    Without this building for other archs (e.g. cross compiling for ARM) is
    broken.

    Signed-off-by: Jiri Olsa
    Signed-off-by: Dirk Behme
    Link: http://lkml.kernel.org/n/tip-viqtvd6hppqgt68zz4wlqm20@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Add --skip-missing option for skipping symbols that cannot be used for
    annotation. It's the case of kernel symbols that user doesn't have a
    vmlinux image file.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-8-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Don't need to setup a browser window if annotate cannot work.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-7-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • In order to differentiate source lines from asm line, print them with
    gray color. To do this, it needs to be escaped since sometimes it
    contains "" characters so that it should not be considered
    as a markup tags. Use glib's g_markup_escape_text() for this.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-4-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Show multiple annotation result for each evsel. Each result represents
    the most frquently sampled symbol/function for the evsel and it will be
    shown in a tab window.

    For this add a reference to main container (notebook) to the pgctx. At
    the first call to annotate browser, hist_entry__find_annotations() will
    setup a new browser, and next calls will add new tabs to the browser.
    But it requires final perf_gtk__show_annotations() to start processing
    GUI events.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-3-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Basic implementation of perf annotate on GTK2. Currently only
    shows first symbol. Add a new --gtk option to use it.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-2-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • When perf annotate runs with no vmlinux file it cannot annotate kernel
    symbols because the kallsyms only provides symbol addresses. So it
    recommends to run perf buildid-cache to install proper vmlinux image.

    But running perf buildid-cache -av vmlinux as the message gives me a
    following error:

    $ perf buildid-cache -av /home/namhyung/build/kernel/vmlinux
    Couldn't add v: No such file or directory

    Since the -a option receives a parameter, 'v' should not be after the
    option.

    In addition -a option is not work for this case since the build-id cache
    already has a kallsyms with same build-id so it'll fail with EEXIST.
    Use recently added -u (--update) option for it.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-6-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • When adding vmlinux file to build-id cache, it'd be fail since kallsyms
    dso with a same build-id was already added by perf record.

    So one needs to remove the kallsyms first to add vmlinux into the cache.
    Add --update option for doing it at once.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360227734-375-5-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     

14 Feb, 2013

1 commit

  • The SMI counter is popular -- so display it by default
    rather than requiring an option. What the heck,
    we've blown the 80 column budget on many systems already...

    Note that the value displayed is the delta
    during the measurement interval.
    The absolute value of the counter can still be seen with
    the generic 32-bit MSR option, ie. -m 0x34

    Signed-off-by: Len Brown

    Len Brown
     

09 Feb, 2013

3 commits


07 Feb, 2013

6 commits

  • So that we fix this regression:

    [root@sandy linux]# perf test -v 15
    15: Try 'use perf' in python, checking link problems :
    --- start ---
    Traceback (most recent call last):
    File "", line 1, in
    ImportError: /home/acme/git/build/perf/python/perf.so: undefined symbol: sysfs_find_mountpoint
    ---- end ----
    Try 'use perf' in python, checking link problems: FAILED!
    [root@sandy linux]#

    Cc: David Ahern
    Cc: Frederic Weisbecker
    Cc: Jiri Olsa
    Cc: Mike Galbraith
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/n/tip-8pf64bsdywg1gl9m55ul77hg@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • So that we avoid dragging symbol.o into the python binding.

    Cc: David Ahern
    Cc: Frederic Weisbecker
    Cc: Jiri Olsa
    Cc: Mike Galbraith
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/n/tip-izjubje7ltd1srji5wb0ygwi@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • A sweep of the kernel for regex "kcalloc(sizeof" turned up 2 reversed
    args, fixed in commit d3d09e18203dba16a9dbdb2b4cc673d90748cdd1 ("EDAC:
    Fix kcalloc argument order") and also fixed in the networking commit
    a1b1add07fa794974573d93483d68e373edfe7bd ("gro: Fix kcalloc argument
    order").

    I know that was the regex used, because on seeing the 1st of these
    changes, I wondered "how many other instances of this are there" and I
    happened to just use "calloc(sizeof" as a regex and it in turn found
    these additional reversed args instances in the perf code.

    In the kcalloc cases, the changes are cosmetic, since the numbers are
    simply multiplied. I had no desire to go data mining in userspace to
    see if the same thing held true there, however.

    Signed-off-by: Paul Gortmaker
    Cc: Ingo Molnar
    Cc: Joe Perches
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1359594349-25912-1-git-send-email-paul.gortmaker@windriver.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Paul Gortmaker
     
  • The ':GH' group modifier handling was just recently fixed, adding some
    autommated tests to keep it that way. Adding tests for following events:

    "{cycles,cache-misses:G}:H"
    "{cycles,cache-misses:H}:G"
    "{cycles:G,cache-misses:H}:u"
    "{cycles:G,cache-misses:H}:uG"

    Plus fixing test__group2 test.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1359971803-2343-3-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Let the perf_evsel::exclude_GH only prevent the reset of exclude_host
    and exclude_guest attributes in case they were already set.

    We cannot reset their values to 0, because they might have other
    defaults set by event_attr_init.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1359971803-2343-2-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Fixing rwtop script race. The issue is caused by rwtop script triggering
    SIGALRM and underneath pipe reading layer reporting error when
    interrupted.

    Fixing this by setting SA_RESTART for rwtop SIGALRM handler, which
    avoids interruption of the pipe reading layer.

    The discussion for this issue & fix is here:
    https://lkml.org/lkml/2012/9/18/123

    Signed-off-by: Jiri Olsa
    Original-patch-by: Andrew Jones
    Cc: Andrew Jones
    Cc: Corey Ashford
    Cc: David Ahern
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1360080351-3246-2-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa