1. 12 Sep, 2013 25 commits
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · e5d0c874
      Linus Torvalds authored
      Pull IOMMU Updates from Joerg Roedel:
       "This round the updates contain:
      
         - A new driver for the Freescale PAMU IOMMU from Varun Sethi.
      
           This driver has cooked for a while and required changes to the
           IOMMU-API and infrastructure that were already merged before.
      
         - Updates for the ARM-SMMU driver from Will Deacon
      
         - Various fixes, the most important one is probably a fix from Alex
           Williamson for a memory leak in the VT-d page-table freeing code
      
        In summary not all that much.  The biggest part in the diffstat is the
        new PAMU driver"
      
      * tag 'iommu-updates-v3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        intel-iommu: Fix leaks in pagetable freeing
        iommu/amd: Fix resource leak in iommu_init_device()
        iommu/amd: Clean up unnecessary MSI/MSI-X capability find
        iommu/arm-smmu: Simplify VMID and ASID allocation
        iommu/arm-smmu: Don't use VMIDs for stage-1 translations
        iommu/arm-smmu: Tighten up global fault reporting
        iommu/arm-smmu: Remove broken big-endian check
        iommu/fsl: Remove unnecessary 'fsl-pamu' prefixes
        iommu/fsl: Fix whitespace problems noticed by git-am
        iommu/fsl: Freescale PAMU driver and iommu implementation.
        iommu/fsl: Add additional iommu attributes required by the PAMU driver.
        powerpc: Add iommu domain pointer to device archdata
        iommu/exynos: Remove dead code (set_prefbuf)
      e5d0c874
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.12-rc0-tag-three' of... · d5adf7e2
      Linus Torvalds authored
      Merge tag 'stable/for-linus-3.12-rc0-tag-three' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
      
      Pull Xen balloon driver bug-fixes from Stefano Stabellini:
       - fix a preemption bug in xen/balloon.c;
       - remove an harmful BUG_ON in xen/balloon.c that can trigger in
         non-erroneous situations.
      
      * tag 'stable/for-linus-3.12-rc0-tag-three' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/balloon: remove BUG_ON in increase_reservation
        xen/balloon: ensure preemption is disabled when using a scratch page
      d5adf7e2
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-fixes-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 02b9735c
      Linus Torvalds authored
      Pull ACPI and power management fixes from Rafael Wysocki:
       "All of these commits are fixes that have emerged recently and some of
        them fix bugs introduced during this merge window.
      
        Specifics:
      
         1) ACPI-based PCI hotplug (ACPIPHP) fixes related to spurious events
      
            After the recent ACPIPHP changes we've seen some interesting
            breakage on a system that triggers device check notifications
            during boot for non-existing devices.  Although those
            notifications are really spurious, we should be able to deal with
            them nevertheless and that shouldn't introduce too much overhead.
            Four commits to make that work properly.
      
         2) Memory hotplug and hibernation mutual exclusion rework
      
            This was maent to be a cleanup, but it happens to fix a classical
            ABBA deadlock between system suspend/hibernation and ACPI memory
            hotplug which is possible if they are started roughly at the same
            time.  Three commits rework memory hotplug so that it doesn't
            acquire pm_mutex and make hibernation use device_hotplug_lock
            which prevents it from racing with memory hotplug.
      
         3) ACPI Intel LPSS (Low-Power Subsystem) driver crash fix
      
            The ACPI LPSS driver crashes during boot on Apple Macbook Air with
            Haswell that has slightly unusual BIOS configuration in which one
            of the LPSS device's _CRS method doesn't return all of the
            information expected by the driver.  Fix from Mika Westerberg, for
            stable.
      
         4) ACPICA fix related to Store->ArgX operation
      
            AML interpreter fix for obscure breakage that causes AML to be
            executed incorrectly on some machines (observed in practice).
            From Bob Moore.
      
         5) ACPI core fix for PCI ACPI device objects lookup
      
            There still are cases in which there is more than one ACPI device
            object matching a given PCI device and we don't choose the one
            that the BIOS expects us to choose, so this makes the lookup take
            more criteria into account in those cases.
      
         6) Fix to prevent cpuidle from crashing in some rare cases
      
            If the result of cpuidle_get_driver() is NULL, which can happen on
            some systems, cpuidle_driver_ref() will crash trying to use that
            pointer and the Daniel Fu's fix prevents that from happening.
      
         7) cpufreq fixes related to CPU hotplug
      
            Stephen Boyd reported a number of concurrency problems with
            cpufreq related to CPU hotplug which are addressed by a series of
            fixes from Srivatsa S Bhat and Viresh Kumar.
      
         8) cpufreq fix for time conversion in time_in_state attribute
      
            Time conversion carried out by cpufreq when user space attempts to
            read /sys/devices/system/cpu/cpu*/cpufreq/stats/time_in_state
            won't work correcty if cputime_t doesn't map directly to jiffies.
            Fix from Andreas Schwab.
      
         9) Revert of a troublesome cpufreq commit
      
            Commit 7c30ed53 (cpufreq: make sure frequency transitions are
            serialized) was intended to address some known concurrency
            problems in cpufreq related to the ordering of transitions, but
            unfortunately it introduced several problems of its own, so I
            decided to revert it now and address the original problems later
            in a more robust way.
      
        10) Intel Haswell CPU models for intel_pstate from Nell Hardcastle.
      
        11) cpufreq fixes related to system suspend/resume
      
            The recent cpufreq changes that made it preserve CPU sysfs
            attributes over suspend/resume cycles introduced a possible NULL
            pointer dereference that caused it to crash during the second
            attempt to suspend.  Three commits from Srivatsa S Bhat fix that
            problem and a couple of related issues.
      
        12) cpufreq locking fix
      
            cpufreq_policy_restore() should acquire the lock for reading, but
            it acquires it for writing.  Fix from Lan Tianyu"
      
      * tag 'pm+acpi-fixes-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (25 commits)
        cpufreq: Acquire the lock in cpufreq_policy_restore() for reading
        cpufreq: Prevent problems in update_policy_cpu() if last_cpu == new_cpu
        cpufreq: Restructure if/else block to avoid unintended behavior
        cpufreq: Fix crash in cpufreq-stats during suspend/resume
        intel_pstate: Add Haswell CPU models
        Revert "cpufreq: make sure frequency transitions are serialized"
        cpufreq: Use signed type for 'ret' variable, to store negative error values
        cpufreq: Remove temporary fix for race between CPU hotplug and sysfs-writes
        cpufreq: Synchronize the cpufreq store_*() routines with CPU hotplug
        cpufreq: Invoke __cpufreq_remove_dev_finish() after releasing cpu_hotplug.lock
        cpufreq: Split __cpufreq_remove_dev() into two parts
        cpufreq: Fix wrong time unit conversion
        cpufreq: serialize calls to __cpufreq_governor()
        cpufreq: don't allow governor limits to be changed when it is disabled
        ACPI / bind: Prefer device objects with _STA to those without it
        ACPI / hotplug / PCI: Avoid parent bus rescans on spurious device checks
        ACPI / hotplug / PCI: Use _OST to notify firmware about notify status
        ACPI / hotplug / PCI: Avoid doing too much for spurious notifies
        ACPICA: Fix for a Store->ArgX when ArgX contains a reference to a field.
        ACPI / hotplug / PCI: Don't trim devices before scanning the namespace
        ...
      02b9735c
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 75acebf2
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Various fixes.
      
        The -g perf report lockup you reported is only partially addressed,
        patches that fix the excessive runtime are still being worked on"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86: Fix uncore PCI fixed counter handling
        uprobes: Fix utask->depth accounting in handle_trampoline()
        perf/x86: Add constraint for IVB CYCLE_ACTIVITY:CYCLES_LDM_PENDING
        perf: Fix up MMAP2 buffer space reservation
        perf tools: Add attr->mmap2 support
        perf kvm: Fix sample_type manipulation
        perf evlist: Fix id pos in perf_evlist__open()
        perf trace: Handle perf.data files with no tracepoints
        perf session: Separate progress bar update when processing events
        perf trace: Check if MAP_32BIT is defined
        perf hists: Fix formatting of long symbol names
        perf evlist: Fix parsing with no sample_id_all bit set
        perf tools: Add test for parsing with no sample_id_all bit
        perf trace: Check control+C more often
      75acebf2
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b55ee281
      Linus Torvalds authored
      Pull scheduler fix from Ingo Molnar:
       "Performance regression fix"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: Fix load balancing performance regression in should_we_balance()
      b55ee281
    • Linus Torvalds's avatar
      vfs: make getcwd() get the root and pwd path under rcu · 8b19e341
      Linus Torvalds authored
      This allows us to skip all the crazy spinlocks and reference count
      updates, and instead use the fs sequence read-lock to get an atomic
      snapshot of the root and cwd information.
      
      We might want to make the rule that "prepend_path()" is always called
      with the RCU lock held, but the RCU lock nests fine and this is the
      minimal fix.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8b19e341
    • Linus Torvalds's avatar
      vfs: move get_fs_root_and_pwd() to single caller · 5762482f
      Linus Torvalds authored
      Let's not pollute the include files with inline functions that are only
      used in a single place.  Especially not if we decide we might want to
      change the semantics of said function to make it more efficient..
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5762482f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · b7c09ad4
      Linus Torvalds authored
      Pull btrfs updates from Chris Mason:
       "This is against 3.11-rc7, but was pulled and tested against your tree
        as of yesterday.  We do have two small incrementals queued up, but I
        wanted to get this bunch out the door before I hop on an airplane.
      
        This is a fairly large batch of fixes, performance improvements, and
        cleanups from the usual Btrfs suspects.
      
        We've included Stefan Behren's work to index subvolume UUIDs, which is
        targeted at speeding up send/receive with many subvolumes or snapshots
        in place.  It closes a long standing performance issue that was built
        in to the disk format.
      
        Mark Fasheh's offline dedup work is also here.  In this case offline
        means the FS is mounted and active, but the dedup work is not done
        inline during file IO.  This is a building block where utilities are
        able to ask the FS to dedup a series of extents.  The kernel takes
        care of verifying the data involved really is the same.  Today this
        involves reading both extents, but we'll continue to evolve the
        patches"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (118 commits)
        Btrfs: optimize key searches in btrfs_search_slot
        Btrfs: don't use an async starter for most of our workers
        Btrfs: only update disk_i_size as we remove extents
        Btrfs: fix deadlock in uuid scan kthread
        Btrfs: stop refusing the relocation of chunk 0
        Btrfs: fix memory leak of uuid_root in free_fs_info
        btrfs: reuse kbasename helper
        btrfs: return btrfs error code for dev excl ops err
        Btrfs: allow partial ordered extent completion
        Btrfs: convert all bug_ons in free-space-cache.c
        Btrfs: add support for asserts
        Btrfs: adjust the fs_devices->missing count on unmount
        Btrf: cleanup: don't check for root_refs == 0 twice
        Btrfs: fix for patch "cleanup: don't check the same thing twice"
        Btrfs: get rid of one BUG() in write_all_supers()
        Btrfs: allocate prelim_ref with a slab allocater
        Btrfs: pass gfp_t to __add_prelim_ref() to avoid always using GFP_ATOMIC
        Btrfs: fix race conditions in BTRFS_IOC_FS_INFO ioctl
        Btrfs: fix race between removing a dev and writing sbs
        Btrfs: remove ourselves from the cluster list under lock
        ...
      b7c09ad4
    • Waiman Long's avatar
      dcache: get/release read lock in read_seqbegin_or_lock() & friend · 18129977
      Waiman Long authored
      This patch modifies read_seqbegin_or_lock() and need_seqretry() to use
      newly introduced read_seqlock_excl() and read_sequnlock_excl()
      primitives so that they won't change the sequence number even if they
      fall back to take the lock.  This is OK as no change to the protected
      data structure is being made.
      
      It will prevent one fallback to lock taking from cascading into a series
      of lock taking reducing performance because of the sequence number
      change.  It will also allow other sequence readers to go forward while
      an exclusive reader lock is taken.
      
      This patch also updates some of the inaccurate comments in the code.
      Signed-off-by: default avatarWaiman Long <Waiman.Long@hp.com>
      To: Alexander Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      18129977
    • Waiman Long's avatar
      seqlock: Add a new locking reader type · 1370e97b
      Waiman Long authored
      The sequence lock (seqlock) was originally designed for the cases where
      the readers do not need to block the writers by making the readers retry
      the read operation when the data change.
      
      Since then, the use cases have been expanded to include situations where
      a thread does not need to change the data (effectively a reader) at all
      but have to take the writer lock because it can't tolerate changes to
      the protected structure.  Some examples are the d_path() function and
      the getcwd() syscall in fs/dcache.c where the functions take the writer
      lock on rename_lock even though they don't need to change anything in
      the protected data structure at all.  This is inefficient as a reader is
      now blocking other sequence number reading readers from moving forward
      by pretending to be a writer.
      
      This patch tries to eliminate this inefficiency by introducing a new
      type of locking reader to the seqlock locking mechanism.  This new
      locking reader will try to take an exclusive lock preventing other
      writers and locking readers from going forward.  However, it won't
      affect the progress of the other sequence number reading readers as the
      sequence number won't be changed.
      Signed-off-by: default avatarWaiman Long <Waiman.Long@hp.com>
      Cc: Alexander Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1370e97b
    • Linus Torvalds's avatar
      Merge tag 'sound-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · decf7abc
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A few last-minute fixes for 3.12-rc1.  All patches are driver
        specific.
      
         - HD-audio fixes: MacBook 6,1/6,2 speaker fix, ASUS TX300 dock
           speaker fix, Toshiba Satellite irq fix, Haswell HDMI audio
           cleanups)
      
         - ASoC fixes: atmel irq fix, fsl DT fix, mc13783 spi fix, kirkwood
           compatible string change, etc"
      
      * tag 'sound-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ASoC: mc13783: add spi errata fix
        ASoC: rsnd: fixup flag name of rsnd_scu_platform_info
        ALSA: hda - Add CS4208 codec support for MacBook 6,1 and 6,2
        ALSA: hda - Add Toshiba Satellite C870 to MSI blacklist
        ASoC: fsl_spdif: Select regmap-mmio
        ALSA: hda - unmute pin amplifier in infoframe setup for Haswell
        ALSA: hda - define is_haswell() to check if a display audio codec is Haswell
        ALSA: hda - Add dock speaker support for ASUS TX300
        ASoC: kirkwood: change the compatible string of the kirkwood-i2s driver
        ASoC: atmel: disable error interrupt
        ASoC: fsl: imx-audmux: Do not call imx_audmux_parse_dt_defaults() on non-dt kernel
      decf7abc
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · 24ba4058
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
       - New watchdog driver for Allwinner A10/A13
       - some devm_ioremap_resource simplifications
       - a s3c2410_wdt change that removes the global variables
      
      * git://www.linux-watchdog.org/linux-watchdog:
        watchdog: s3c2410_wdt: simplify use of devm_ioremap_resource
        watchdog: simplify platform_get_resource_byname/devm_ioremap_resource
        watchdog: ts72xx_wdt: simplify use of devm_ioremap_resource
        watchdog: nuc900_wdt.c: simplify use of devm_ioremap_resource
        watchdog: sunxi: New watchdog driver for Allwinner A10/A13
        watchdog: s3c2410_wdt: remove the global variables
      24ba4058
    • Joerg Roedel's avatar
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux · b9b42eeb
      Linus Torvalds authored
      Pull thermal management updates from Zhang Rui:
       "We have a lot of SOC changes and a few thermal core fixes this time.
      
        The biggest change is about exynos thermal driver restructure.  The
        patch set adds TMU (Thermal management Unit) driver support for
        exynos5440 platform.  There are 3 instances of the TMU controllers so
        necessary cleanup/re-structure is done to handle multiple thermal
        zone.
      
        The next biggest change is the introduction of the imx thermal driver.
        It adds the imx thermal support using Temperature Monitor (TEMPMON)
        block found on some Freescale i.MX SoCs.  The driver uses syscon
        regmap interface to access TEMPMON control registers and calibration
        data, and supports cpufreq as the cooling device.
      
        Highlights:
      
         - restructure exynos thermal driver.
      
         - introduce new imx thermal driver.
      
         - fix a bug in thermal core, which powers on the fans unexpectedly
           after resume from suspend"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (46 commits)
        drivers: thermal: add check when unregistering cpu cooling
        thermal: thermal_core: allow binding with limits on bind_params
        drivers: thermal: make usage of CONFIG_THERMAL_HWMON optional
        drivers: thermal: parent virtual hwmon with thermal zone
        thermal: hwmon: move hwmon support to single file
        thermal: exynos: Clean up non-DT remnants
        thermal: exynos: Fix potential NULL pointer dereference
        thermal: exynos: Fix typos in Kconfig
        thermal: ti-soc-thermal: Ensure to compute thermal trend
        thermal: ti-soc-thermal: Set the bandgap mask counter delay value
        thermal: ti-soc-thermal: Initialize counter_delay field for TI DRA752 sensors
        thermal: step_wise: return instance->target by default
        thermal: step_wise: cdev only needs update on a new target state
        Thermal/cpu_cooling: Return directly for the cpu out of allowed_cpus in the cpufreq_thermal_notifier()
        thermal: exynos_tmu: fix wrong error check for mapped memory
        thermal: imx: implement thermal alarm interrupt handling
        thermal: imx: dynamic passive and SoC specific critical trip points
        Documentation: thermal: Explain the exynos thermal driver model
        ARM: dts: thermal: exynos: Add documentation for Exynos SoC thermal bindings
        thermal: exynos: Support for TMU regulator defined at device tree
        ...
      b9b42eeb
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · 7b7a2f0a
      Linus Torvalds authored
      Pull CIFS fixes from Steve French:
       "CIFS update including case insensitive file name matching improvements
        for UTF-8 to Unicode, various small cifs fixes, SMB2/SMB3 leasing
        improvements, support for following SMB2 symlinks, SMB3 packet signing
        improvements"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6: (25 commits)
        CIFS: Respect epoch value from create lease context v2
        CIFS: Add create lease v2 context for SMB3
        CIFS: Move parsing lease buffer to ops struct
        CIFS: Move creating lease buffer to ops struct
        CIFS: Store lease state itself rather than a mapped oplock value
        CIFS: Replace clientCanCache* bools with an integer
        [CIFS] quiet sparse compile warning
        cifs: Start using per session key for smb2/3 for signature generation
        cifs: Add a variable specific to NTLMSSP for key exchange.
        cifs: Process post session setup code in respective dialect functions.
        CIFS: convert to use le32_add_cpu()
        CIFS: Fix missing lease break
        CIFS: Fix a memory leak when a lease break comes
        cifs: add winucase_convert.pl to Documentation/ directory
        cifs: convert case-insensitive dentry ops to use new case conversion routines
        cifs: add new case-insensitive conversion routines that are based on wchar_t's
        [CIFS] Add Scott to list of cifs contributors
        cifs: Move and expand MAX_SERVER_SIZE definition
        cifs: Expand max share name length to 256
        cifs: Move string length definitions to uapi
        ...
      7b7a2f0a
    • Noam Camus's avatar
      ARC: SMP failed to boot due to missing IVT setup · c3567f8a
      Noam Camus authored
      Commit 05b016ec "ARC: Setup Vector Table Base in early boot" moved
      the Interrupt vector Table setup out of arc_init_IRQ() which is called
      for all CPUs, to entry point of boot cpu only, breaking booting of others.
      
      Fix by adding the same to entry point of non-boot CPUs too.
      
      read_arc_build_cfg_regs() printing IVT Base Register didn't help the
      casue since it prints a synthetic value if zero which is totally bogus,
      so fix that to print the exact Register.
      
      [vgupta: Remove the now stale comment from header of arc_init_IRQ and
      also added the commentary for halt-on-reset]
      
      Cc: Gilad Ben-Yossef <gilad@benyossef.com>
      Cc: Cc: <stable@vger.kernel.org> #3.11
      Signed-off-by: default avatarNoam Camus <noamc@ezchip.com>
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c3567f8a
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq' · f1728fd1
      Rafael J. Wysocki authored
      * pm-cpufreq:
        cpufreq: Acquire the lock in cpufreq_policy_restore() for reading
        cpufreq: Prevent problems in update_policy_cpu() if last_cpu == new_cpu
        cpufreq: Restructure if/else block to avoid unintended behavior
        cpufreq: Fix crash in cpufreq-stats during suspend/resume
      f1728fd1
    • Stephane Eranian's avatar
      perf/x86: Fix uncore PCI fixed counter handling · dbc33f70
      Stephane Eranian authored
      There was a bug in the handling of SNB-EP/IVB-EP uncore PCI
      fixed counters, e.g., IMC.
      
      It would cause erratic values to be returned for the IMC
      clockticks event. This was due to a bogus hwc->config value
      which was then written to PCI config space.
      
      The erratic values can be seen via:
      
        $ perf stat -a -C 0 -e uncore_imc_0/clockticks/ -I 1000 sleep 10
      
      The fixed counter has most fields marked as reserved with
      hw reset values of 0. Yet the kernel was defaulting to a
      hwc->config = ~0 and that was causing the issues.
      
      This patch sets the hwc->config values for fixed uncore event
      to 0. Now, the values of IMC clockticks is correct.
      Signed-off-by: default avatarStephane Eranian <eranian@google.com>
      Reviewed-by: default avatarAndi Kleen <ak@linux.intel.com>
      Cc: peterz@infradead.org
      Cc: zheng.z.yan@intel.com
      Link: http://lkml.kernel.org/r/20130909195350.GA17643@google.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      dbc33f70
    • Oleg Nesterov's avatar
      uprobes: Fix utask->depth accounting in handle_trampoline() · 878b5a6e
      Oleg Nesterov authored
      Currently utask->depth is simply the number of allocated/pending
      return_instance's in uprobe_task->return_instances list.
      
      handle_trampoline() should decrement this counter every time we
      handle/free an instance, but due to typo it does this only if
      ->chained == T. This means that in the likely case this counter
      is never decremented and the probed task can't report more than
      MAX_URETPROBE_DEPTH events.
      Reported-by: default avatarMikhail Kulemin <Mikhail.Kulemin@ru.ibm.com>
      Reported-by: default avatarHemant Kumar Shaw <hkshaw@linux.vnet.ibm.com>
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      Acked-by: default avatarAnton Arapov <anton@redhat.com>
      Cc: masami.hiramatsu.pt@hitachi.com
      Cc: srikar@linux.vnet.ibm.com
      Cc: systemtap@sourceware.org
      Cc: stable@vger.kernel.org
      Link: http://lkml.kernel.org/r/20130911154726.GA8093@redhat.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      878b5a6e
    • Stephane Eranian's avatar
      perf/x86: Add constraint for IVB CYCLE_ACTIVITY:CYCLES_LDM_PENDING · 6113af14
      Stephane Eranian authored
      The IvyBridge event CYCLE_ACTIVITY:CYCLES_LDM_PENDING can only
      be measured on counters 0-3 when HT is off. When HT is on, you
      only have counters 0-3.
      
      If you program it on the eight counters for 1s on a 3GHz
      IVB laptop running a noploop, you see:
      
                 2 747 527 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
                 2 747 527 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
                 2 747 527 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
                 2 747 527 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
             3 280 563 608 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
             3 280 563 608 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
             3 280 563 608 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
             3 280 563 608 CYCLE_ACTIVITY:CYCLES_LDM_PENDING
      
      Clearly the last 4 values are bogus.
      Signed-off-by: default avatarStephane Eranian <eranian@google.com>
      Cc: peterz@infradead.org
      Cc: ak@linux.intel.com
      Cc: zheng.z.yan@intel.com
      Cc: dhsharp@google.com
      Link: http://lkml.kernel.org/r/20130911152222.GA28761@google.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      6113af14
    • Ingo Molnar's avatar
      Merge tag 'perf-urgent-for-mingo' of... · e6d38183
      Ingo Molnar authored
      Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent
      
      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:
      
       * Handle perf.data files with no tracepoints in 'perf trace', fixing a
         segfault.
      
       * Fix up MMAP2 buffer space reservation, a problem that was caught via
         'perf test' consistency tests.
      
       * Add attr->mmap2 support in the tools, a patch that should've been merged
         together with the kernel counterpart:
      
           13d7a241 "perf: Add attr->mmap2 attribute to an event".
      
         Merging it allowed us to catch the MMAP buffer space reservation problem via
         'perf test'. From Stephane Eranian.
      
         The tools deals with older kernels by disabling this feature, resetting the
         perf_event_attr.mmap2 bit, when -EINVAL is returned by perf_event_open, just
         like with perf_event_attr.{sample_id_all,exclude_{guest,host}}.
      
         When such fallback happens the perf_missing_features.mmap2 flag is set to
         true and can be used by tooling that strictly needs this feature to check
         for its availability on the running kernel.
      
       * Make sure we can find PERF_SAMPLE_ID in the variable part of PERF_RECORD_
         ring buffer records in 'perf kvm', where direct manipulation of sample_type
         was being done.
      
         Fixed by making use of the perf_evlist__set_sample_bit() helper and by
         setting the evlist->id_pos in perf_evlist__open(), from Adrian Hunter.
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      e6d38183
    • Linus Torvalds's avatar
      Bye, bye, WfW flag · d5d04bb4
      Linus Torvalds authored
      This reverts the Linux for Workgroups thing.  And no, before somebody
      asks, we're not doing Linux95.  Not for a few years, at least.
      
      Sure, the flag added some color to the logo, and could have remained as
      a testament to my leet gimp skills.  But no.  And I'll do this early, to
      avoid the chance of forgetting when I'm doing the actual rc1 release on
      the road.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d5d04bb4
    • Linus Torvalds's avatar
      Merge tag 'ecryptfs-3.12-rc1-crypt-ctx' of... · 1ae276a9
      Linus Torvalds authored
      Merge tag 'ecryptfs-3.12-rc1-crypt-ctx' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs
      
      Pull eCryptfs fixes from Tyler Hicks:
       "Two small fixes to the code that initializes the per-file crypto
        contexts"
      
      * tag 'ecryptfs-3.12-rc1-crypt-ctx' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs:
        ecryptfs: avoid ctx initialization race
        ecryptfs: remove check for if an array is NULL
      1ae276a9
    • Linus Torvalds's avatar
      Merge branch 'for-v3.12-fix' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping · 3b38f56c
      Linus Torvalds authored
      Pull DMA-mapping fix from Marek Szyprowski:
       "A build bugfix for the device tree support for reserved memory
        regions.  Due to superfluous include the common code failed to build
        on ARM64 and MIPS architectures.
      
        The patch that caused the build break has lived at linux-next for
        about two weeks and noone noticed the issue, what convinced me that
        everything was ok"
      
      * 'for-v3.12-fix' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:
        drivers: of: fix build break if asm/dma-contiguous.h is missing
      3b38f56c
    • Linus Torvalds's avatar
      Merge tag 'for-3.12' of git://git.linaro.org/people/sumitsemwal/linux-dma-buf · b3b75684
      Linus Torvalds authored
      Pull dma-buf updates from Sumit Semwal:
       "Yet another small one - dma-buf framework now supports size discovery
        of the buffer via llseek"
      
      * tag 'for-3.12' of git://git.linaro.org/people/sumitsemwal/linux-dma-buf:
        dma-buf: Expose buffer size to userspace (v2)
        dma-buf: Check return value of anon_inode_getfile
      b3b75684
  2. 11 Sep, 2013 15 commits