1. 30 1月, 2016 12 次提交
    • L
      Merge tag 'pm+acpi-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 46552e68
      Linus Torvalds 提交于
      Pull power management and ACPI fixes from Rafael Wysocki:
       "These are: cpuidle fixes (including one fix for a recent regression),
        cpufreq fixes (including fixes for two issues introduced during the
        4.2 cycle), generic power domains framework fixes (two locking fixes
        and one cleanup), one locking fix in the ACPI-based PCI hotplug
        framework (ACPIPHP), removal of one ACPI backlight blacklist entry
        that isn't necessary any more and a PM Kconfig cleanup.
      
        Specifics:
      
         - Fix a recent cpuidle core regression that broke suspend-to-idle on
           all systems where cpuidle drivers don't provide ->enter_freeze
           callbacks for any states (Sudeep Holla).
      
         - Drop an unnecessary symbol definition from the cpuidle core code
           handling coupled CPU cores (Anders Roxell).
      
         - Fix a race condition related to governor initialization and removal
           in the cpufreq core (Viresh Kumar).
      
         - Clean up the cpufreq core to use list_is_last() for checking if the
           given policy object is the last element of a list instead of open
           coding that in a clumsy way (Gautham R Shenoy).
      
         - Fix compiler warnings in the pxa2xx and cpufreq-dt cpufreq drivers
           (Arnd Bergmann).
      
         - Fix two locking issues and clean up a comment in the generic power
           domains framework (Ulf Hansson, Marek Szyprowski, Moritz Fischer).
      
         - Fix the error code path of one function in the ACPI-based PCI
           hotplug framework (ACPIPHP) that forgets to release a lock acquired
           previously (Insu Yun).
      
         - Drop the ACPI backlight blacklist entry for Dell Inspiron 5737 that
           is not necessary any more (Hans de Goede).
      
         - Clean up the top-level PM Kconfig to stop requiring APM emulation
           to depend on PM which in fact isn't necessary (Arnd Bergmann)"
      
      * tag 'pm+acpi-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: cpufreq-dt: avoid uninitialized variable warnings:
        cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype
        PM: APM_EMULATION does not depend on PM
        cpufreq: Use list_is_last() to check last entry of the policy list
        cpufreq: Fix NULL reference crash while accessing policy->governor_data
        cpuidle: coupled: remove unused define cpuidle_coupled_lock
        PM / Domains: Fix typo in comment
        PM / Domains: Fix potential deadlock while adding/removing subdomains
        ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot()
        ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist"
        cpuidle: fix fallback mechanism for suspend to idle in absence of enter_freeze
        PM / domains: fix lockdep issue for all subdomains
      46552e68
    • L
      Merge branch 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb · ad233aca
      Linus Torvalds 提交于
      Pull swiotlb patchlet from Konrad Rzeszutek Wilk:
       "One trivial patch.
      
        Another patch (from Fengguang) is already in your tree courtesy of
        Andrew Morton - but I would prefer not to rebase my tree.  Hence the
        diff is very small"
      
      * 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:
        swiotlb: Make linux/swiotlb.h standalone includible
        MAINTAINERS: add git URL for swiotlb
      ad233aca
    • L
      Merge branch 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm · 29737370
      Linus Torvalds 提交于
      Pull cleancache cleanups from Konrad Rzeszutek Wilk:
       "Simple cleanups"
      
      * 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm:
        include/linux/cleancache.h: Clean up code
        cleancache: constify cleancache_ops structure
      29737370
    • L
      Merge tag 'iommu-fixes-v4.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · f6a239a9
      Linus Torvalds 提交于
      Pull IOMMU fixes from Joerg Roedel:
       "Five patches queued up:
      
         - Two patches for the AMD and Intel IOMMU drivers to fix alias
           handling and ATS handling.
      
         - Fix build error with arm io-pgtable code
      
         - Two documentation fixes"
      
      * tag 'iommu-fixes-v4.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu: Update struct iommu_ops comments
        iommu/vt-d: Fix link to Intel IOMMU Specification
        iommu/amd: Correct the wrong setting of alias DTE in do_attach
        iommu/vt-d: Don't skip PCI devices when disabling IOTLB
        iommu/io-pgtable-arm: Fix io-pgtable-arm build failure
      f6a239a9
    • L
      Merge tag 'hwmon-for-linus-v4.5-rc2' of... · f51d4d78
      Linus Torvalds 提交于
      Merge tag 'hwmon-for-linus-v4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fixes from Guenter Roeck:
       - Use bit mask to calculate tdp limit in fam15h_power driver
       - Black-list Dell Studio XPS 8000 in dell-smm driver
      
      * tag 'hwmon-for-linus-v4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (fam15h_power) Add bit masking for tdp_limit
        hwmon: (dell-smm) Blacklist Dell Studio XPS 8000
      f51d4d78
    • L
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · a12883f0
      Linus Torvalds 提交于
      Pull SCSI fixes from James Bottomley:
       "Four fixes: one to try to fix our repeated intermittent crashes in
        suspend/resume, one to correct a regression in the optimal I/O size
        reporting and a couple for randconfig build failures in the hisi_sas
        driver"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        SCSI: fix crashes in sd and sr runtime PM
        sd: Optimal I/O size is in bytes, not sectors
        hisi_sas: Restrict SCSI_HISI_SAS to arm64
        hisi_sas: SCSI_HISI_SAS should depend on HAS_DMA
      a12883f0
    • L
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 13d56990
      Linus Torvalds 提交于
      Pull block layer fix from Jens Axboe:
       "This just contains the fix for the split issue that we had in -rc1.
      
        It's been well tested at this point, so let's get it in mainline so we
        don't have the same split issue for -rc2"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: fix bio splitting on max sectors
      13d56990
    • R
      Merge branches 'pm-cpuidle', 'pm-cpufreq', 'pm-domains' and 'pm-sleep' · ad1ac947
      Rafael J. Wysocki 提交于
      * pm-cpuidle:
        cpuidle: coupled: remove unused define cpuidle_coupled_lock
        cpuidle: fix fallback mechanism for suspend to idle in absence of enter_freeze
      
      * pm-cpufreq:
        cpufreq: cpufreq-dt: avoid uninitialized variable warnings:
        cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype
        cpufreq: Use list_is_last() to check last entry of the policy list
        cpufreq: Fix NULL reference crash while accessing policy->governor_data
      
      * pm-domains:
        PM / Domains: Fix typo in comment
        PM / Domains: Fix potential deadlock while adding/removing subdomains
        PM / domains: fix lockdep issue for all subdomains
      
      * pm-sleep:
        PM: APM_EMULATION does not depend on PM
      ad1ac947
    • R
      Merge branches 'acpi-video' and 'acpi-hotplug' · 0bce39cc
      Rafael J. Wysocki 提交于
      * acpi-video:
        ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist"
      
      * acpi-hotplug:
        ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot()
      0bce39cc
    • L
      Merge tag 'sound-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · b5454432
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "There are a few fixes in ALSA core for bugs that have been spotted by
        fuzzer.  Also a temporary workaround for PowerPC (and possibly other)
        builds with incompatible ioctls was applied to compress API.
      
        Other than that, a few trivial fixes and quirks for FireWire BeBoB,
        USB-audio and HD-audio are found, too"
      
      * tag 'sound-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - disable dynamic clock gating on Broxton before reset
        ALSA: hda - Add new GPU codec ID 0x10de0083 to snd-hda
        ALSA: dummy: Disable switching timer backend via sysfs
        ALSA: timer: fix SND_PCM_TIMER Kconfig text
        ALSA: Add missing dependency on CONFIG_SND_TIMER
        ALSA: bebob: Use a signed return type for get_formation_index
        ALSA: usb-audio: Fix TEAC UD-501/UD-503/NT-503 usb delay
        ALSA: compress: Disable GET_CODEC_CAPS ioctl for some architectures
        ALSA: seq: Degrade the error message for too many opens
        ALSA: seq: Fix incorrect sanity check at snd_seq_oss_synth_cleanup()
      b5454432
    • L
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · b943d0b9
      Linus Torvalds 提交于
      Pull drm fixes from Dave Airlie:
       "Summary:
      
        - Misc amdgpu/radeon fixes
        - VC4 build fix
        - vmwgfx fix
        - misc rockchip fixes
      
        The etnaviv guys had an API feature they wanted in their first
        release, so I've merged that with their fixes"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (41 commits)
        drm/vmwgfx: respect 'nomodeset'
        drm/amdgpu: only move pt bos in LRU list on success
        drm/radeon: fix DP audio support for APU with DCE4.1 display engine
        drm/radeon: Add a common function for DFS handling
        drm/radeon: cleaned up VCO output settings for DP audio
        drm/amd/powerplay: Update SMU firmware loading for Stoney
        drm/etnaviv: call correct function when trying to vmap a DMABUF
        drm/etnaviv: rename etnaviv_gem_vaddr to etnaviv_gem_vmap
        drm/etnaviv: fix get pages error path in etnaviv_gem_vaddr
        drm/etnaviv: fix memory leak in IOMMU init path
        drm/etnaviv: add further minor features and varyings count
        drm/etnaviv: add helper for comparing model/revision IDs
        drm/etnaviv: add helper to extract bitfields
        drm/etnaviv: use defined constants for the chip model
        drm/etnaviv: update common and state_hi xml.h files
        drm/etnaviv: ignore VG GPUs with FE2.0
        drm/amdgpu: don't init fbdev if we don't have any connectors
        drm/radeon: only init fbdev if we have connectors
        drm/radeon: Ensure radeon bo is unreserved in radeon_gem_va_ioctl
        drm/etnaviv: fix failure path if model is zero
        ...
      b943d0b9
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 704bb813
      Linus Torvalds 提交于
      Pull security layer fixes from James Morris:
       "The keys patch fixes a bug which is breaking kerberos, and the seccomp
        fix addresses a no_new_privs bypass"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        KEYS: Only apply KEY_FLAG_KEEP to a key if a parent keyring has it set
        seccomp: always propagate NO_NEW_PRIVS on tsync
      704bb813
  2. 29 1月, 2016 14 次提交
  3. 28 1月, 2016 14 次提交
    • T
      ALSA: dummy: Disable switching timer backend via sysfs · 7ee96216
      Takashi Iwai 提交于
      ALSA dummy driver can switch the timer backend between system timer
      and hrtimer via its hrtimer module option.  This can be also switched
      dynamically via sysfs, but it may lead to a memory corruption when
      switching is done while a PCM stream is running; the stream instance
      for the newly switched timer method tries to access the memory that
      was allocated by another timer method although the sizes differ.
      
      As the simplest fix, this patch just disables the switch via sysfs by
      dropping the writable bit.
      
      BugLink: http://lkml.kernel.org/r/CACT4Y+ZGEeEBntHW5WHn2GoeE0G_kRrCmUh6=dWyy-wfzvuJLg@mail.gmail.comReported-by: NDmitry Vyukov <dvyukov@google.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7ee96216
    • R
      ALSA: timer: fix SND_PCM_TIMER Kconfig text · ac1efcfb
      Randy Dunlap 提交于
      Fix spelling and typos for SND_PCM_TIMER.
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      ac1efcfb
    • G
      hwmon: (fam15h_power) Add bit masking for tdp_limit · 60dee3ca
      Gioh Kim 提交于
      Add bit masking to read ApmTdpLimit precisely
      Signed-off-by: NGioh Kim <gi-oh.kim@profitbricks.com>
      Acked-by: NBorislav Petkov <bp@suse.de>
      Acked-by: NHuang Rui <ray.huang@amd.com>
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      60dee3ca
    • J
      Merge tag 'seccomp-4.5-rc2' of... · 1c1ecf17
      James Morris 提交于
      Merge tag 'seccomp-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux into for-linus
      1c1ecf17
    • D
      KEYS: Only apply KEY_FLAG_KEEP to a key if a parent keyring has it set · eee04502
      David Howells 提交于
      KEY_FLAG_KEEP should only be applied to a key if the keyring it is being
      linked into has KEY_FLAG_KEEP set.
      
      To this end, partially revert the following patch:
      
      	commit 1d6d167c
      	Author: Mimi Zohar <zohar@linux.vnet.ibm.com>
      	Date:   Thu Jan 7 07:46:36 2016 -0500
      	KEYS: refcount bug fix
      
      to undo the change that made it unconditional (Mimi got it right the first
      time).
      
      Without undoing this change, it becomes impossible to delete, revoke or
      invalidate keys added to keyrings through __key_instantiate_and_link()
      where the keyring has itself been linked to.  To test this, run the
      following command sequence:
      
          keyctl newring foo @s
          keyctl add user a a %:foo
          keyctl unlink %user:a %:foo
          keyctl clear %:foo
      
      With the commit mentioned above the third and fourth commands fail with
      EPERM when they should succeed.
      Reported-by: NStephen Gallager <sgallagh@redhat.com>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Acked-by: NMimi Zohar <zohar@linux.vnet.ibm.com>
      cc: Mimi Zohar <zohar@linux.vnet.ibm.com>
      cc: keyrings@vger.kernel.org
      cc: stable@vger.kernel.org
      Signed-off-by: NJames Morris <james.l.morris@oracle.com>
      eee04502
    • A
      cpufreq: cpufreq-dt: avoid uninitialized variable warnings: · b331bc20
      Arnd Bergmann 提交于
      gcc warns quite a bit about values returned from allocate_resources()
      in cpufreq-dt.c:
      
      cpufreq-dt.c: In function 'cpufreq_init':
      cpufreq-dt.c:327:6: error: 'cpu_dev' may be used uninitialized in this function [-Werror=maybe-uninitialized]
      cpufreq-dt.c:197:17: note: 'cpu_dev' was declared here
      cpufreq-dt.c:376:2: error: 'cpu_clk' may be used uninitialized in this function [-Werror=maybe-uninitialized]
      cpufreq-dt.c:199:14: note: 'cpu_clk' was declared here
      cpufreq-dt.c: In function 'dt_cpufreq_probe':
      cpufreq-dt.c:461:2: error: 'cpu_clk' may be used uninitialized in this function [-Werror=maybe-uninitialized]
      cpufreq-dt.c:447:14: note: 'cpu_clk' was declared here
      
      The problem is that it's slightly hard for gcc to follow return
      codes across PTR_ERR() calls.
      
      This patch uses explicit assignments to the "ret" variable to make
      it easier for gcc to verify that the code is actually correct,
      without the need to add a bogus initialization.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      b331bc20
    • A
      cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype · fb2a24a1
      Arnd Bergmann 提交于
      There are two definitions of pxa_cpufreq_change_voltage, with slightly
      different prototypes after one of them had its argument marked 'const'.
      Now the other one (for !CONFIG_REGULATOR) produces a harmless warning:
      
      drivers/cpufreq/pxa2xx-cpufreq.c: In function 'pxa_set_target':
      drivers/cpufreq/pxa2xx-cpufreq.c:291:36: warning: passing argument 1 of 'pxa_cpufreq_change_voltage' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ret = pxa_cpufreq_change_voltage(&pxa_freq_settings[idx]);
                                          ^
      drivers/cpufreq/pxa2xx-cpufreq.c:205:12: note: expected 'struct pxa_freqs *' but argument is of type 'const struct pxa_freqs *'
       static int pxa_cpufreq_change_voltage(struct pxa_freqs *pxa_freq)
                  ^
      
      This changes the prototype in the same way as the other, which
      avoids the warning.
      
      Fixes: 03c22990 (cpufreq: pxa: make pxa_freqs arrays const)
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NViresh Kumar <viresh.kumar@linaro.org>
      Cc: 4.2+ <stable@vger.kernel.org> # 4.2+
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      fb2a24a1
    • A
      PM: APM_EMULATION does not depend on PM · 993e9fe1
      Arnd Bergmann 提交于
      The APM emulation code does multiple things, and some of them depend on
      PM_SLEEP, while the battery management does not. However, selecting
      the symbol like SHARPSL_PM does causes a Kconfig warning:
      
      warning: (SHARPSL_PM && PMAC_APM_EMU) selects APM_EMULATION which has unmet direct dependencies (PM && SYS_SUPPORTS_APM_EMULATION)
      
      From all I can tell, this is completely harmless, and we can simply allow
      APM_EMULATION to be enabled here, even if PM is not.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      993e9fe1
    • G
      cpufreq: Use list_is_last() to check last entry of the policy list · 2dadfd75
      Gautham R Shenoy 提交于
      Currently next_policy() explicitly checks if a policy is the last
      policy in the cpufreq_policy_list. Use the standard list_is_last
      primitive instead.
      Signed-off-by: NGautham R. Shenoy <ego@linux.vnet.ibm.com>
      Acked-by: NViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      2dadfd75
    • V
      cpufreq: Fix NULL reference crash while accessing policy->governor_data · e4b133cc
      Viresh Kumar 提交于
      There is a race discovered by Juri, where we are able to:
      - create and read a sysfs file before policy->governor_data is being set
        to a non NULL value.
        OR
      - set policy->governor_data to NULL, and reading a file before being
        destroyed.
      
      And so such a crash is reported:
      
      Unable to handle kernel NULL pointer dereference at virtual address 0000000c
      pgd = edfc8000
      [0000000c] *pgd=bfc8c835
      Internal error: Oops: 17 [#1] SMP ARM
      Modules linked in:
      CPU: 4 PID: 1730 Comm: cat Not tainted 4.5.0-rc1+ #463
      Hardware name: ARM-Versatile Express
      task: ee8e8480 ti: ee930000 task.ti: ee930000
      PC is at show_ignore_nice_load_gov_pol+0x24/0x34
      LR is at show+0x4c/0x60
      pc : [<c058f1bc>]    lr : [<c058ae88>]    psr: a0070013
      sp : ee931dd0  ip : ee931de0  fp : ee931ddc
      r10: ee4bc290  r9 : 00001000  r8 : ef2cb000
      r7 : ee4bc200  r6 : ef2cb000  r5 : c0af57b0  r4 : ee4bc2e0
      r3 : 00000000  r2 : 00000000  r1 : c0928df4  r0 : ef2cb000
      Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
      Control: 10c5387d  Table: adfc806a  DAC: 00000051
      Process cat (pid: 1730, stack limit = 0xee930210)
      Stack: (0xee931dd0 to 0xee932000)
      1dc0:                                     ee931dfc ee931de0 c058ae88 c058f1a4
      1de0: edce3bc0 c07bfca4 edce3ac0 00001000 ee931e24 ee931e00 c01fcb90 c058ae48
      1e00: 00000001 edce3bc0 00000000 00000001 ee931e50 ee8ff480 ee931e34 ee931e28
      1e20: c01fb33c c01fcb0c ee931e8c ee931e38 c01a5210 c01fb314 ee931e9c ee931e48
      1e40: 00000000 edce3bf0 befe4a00 ee931f78 00000000 00000000 000001e4 00000000
      1e60: c00545a8 edce3ac0 00001000 00001000 befe4a00 ee931f78 00000000 00001000
      1e80: ee931ed4 ee931e90 c01fbed8 c01a5038 ed085a58 00020000 00000000 00000000
      1ea0: c0ad72e4 ee931f78 ee8ff488 ee8ff480 c077f3fc 00001000 befe4a00 ee931f78
      1ec0: 00000000 00001000 ee931f44 ee931ed8 c017c328 c01fbdc4 00001000 00000000
      1ee0: ee8ff480 00001000 ee931f44 ee931ef8 c017c65c c03deb10 ee931fac ee931f08
      1f00: c0009270 c001f290 c0a8d968 ef2cb000 ef2cb000 ee8ff480 00000020 ee8ff480
      1f20: ee8ff480 befe4a00 00001000 ee931f78 00000000 00000000 ee931f74 ee931f48
      1f40: c017d1ec c017c2f8 c019c724 c019c684 ee8ff480 ee8ff480 00001000 befe4a00
      1f60: 00000000 00000000 ee931fa4 ee931f78 c017d2a8 c017d160 00000000 00000000
      1f80: 000a9f20 00001000 befe4a00 00000003 c000ffe4 ee930000 00000000 ee931fa8
      1fa0: c000fe40 c017d264 000a9f20 00001000 00000003 befe4a00 00001000 00000000
      Unable to handle kernel NULL pointer dereference at virtual address 0000000c
      1fc0: 000a9f20 00001000 befe4a00 00000003 00000000 00000000 00000003 00000001
      pgd = edfc4000
      [0000000c] *pgd=bfcac835
      1fe0: 00000000 befe49dc 000197f8 b6e35dfc 60070010 00000003 3065b49d 134ac2c9
      
      [<c058f1bc>] (show_ignore_nice_load_gov_pol) from [<c058ae88>] (show+0x4c/0x60)
      [<c058ae88>] (show) from [<c01fcb90>] (sysfs_kf_seq_show+0x90/0xfc)
      [<c01fcb90>] (sysfs_kf_seq_show) from [<c01fb33c>] (kernfs_seq_show+0x34/0x38)
      [<c01fb33c>] (kernfs_seq_show) from [<c01a5210>] (seq_read+0x1e4/0x4e4)
      [<c01a5210>] (seq_read) from [<c01fbed8>] (kernfs_fop_read+0x120/0x1a0)
      [<c01fbed8>] (kernfs_fop_read) from [<c017c328>] (__vfs_read+0x3c/0xe0)
      [<c017c328>] (__vfs_read) from [<c017d1ec>] (vfs_read+0x98/0x104)
      [<c017d1ec>] (vfs_read) from [<c017d2a8>] (SyS_read+0x50/0x90)
      [<c017d2a8>] (SyS_read) from [<c000fe40>] (ret_fast_syscall+0x0/0x1c)
      Code: e5903044 e1a00001 e3081df4 e34c1092 (e593300c)
      ---[ end trace 5994b9a5111f35ee ]---
      
      Fix that by making sure, policy->governor_data is updated at the right
      places only.
      
      Cc: 4.2+ <stable@vger.kernel.org> # 4.2+
      Reported-and-tested-by: NJuri Lelli <juri.lelli@arm.com>
      Signed-off-by: NViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      e4b133cc
    • A
      cpuidle: coupled: remove unused define cpuidle_coupled_lock · 75274b33
      Anders Roxell 提交于
      This was found with the -RT patch enabled, but the fix should apply to
      non-RT also.
      
      Used multi_v7_defconfig+PREEMPT_RT_FULL=y and this caused a compilation
      warning without this fix:
      ../drivers/cpuidle/coupled.c:122:21: warning: 'cpuidle_coupled_lock'
      defined but not used [-Wunused-variable]
      Signed-off-by: NAnders Roxell <anders.roxell@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      75274b33
    • M
    • U
      PM / Domains: Fix potential deadlock while adding/removing subdomains · cdb300a0
      Ulf Hansson 提交于
      We must preserve the same order of how we acquire and release the lock for
      genpd, as otherwise we may encounter deadlocks.
      
      The power on phase of a genpd starts by acquiring its lock. Then it walks
      the hierarchy of its parent domains to be able to power on these first, as
      per design of genpd.
      
      From a locking perspective this means the locks of the parents becomes
      acquired after the lock of the subdomain.
      
      Let's fix pm_genpd_add|remove_subdomain() to maintain the same order of
      acquiring/releasing the genpd lock as being applied in the power on/off
      sequence.
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      cdb300a0
    • L
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 03c21cb7
      Linus Torvalds 提交于
      Pull virtio tests and fixes from Michael Tsirkin:
       "This fixes existing tests broken by barrier rework, and adds some new
        tests.
      
        Plus, there's a fix for an old bug in virtio-pci"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        tools/virtio: add ringtest utilities
        sh: fix smp_store_mb for !SMP
        tools/virtio: use virt_xxx barriers
        virtio_pci: fix use after free on release
      03c21cb7