1. 09 May, 2017 1 commit
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-domains', 'pm-cpuidle', 'pm-sleep' and 'powercap' · 80449d89
      Rafael J. Wysocki authored
      * pm-domains:
        PM / Domains: Add DT file to MAINTAINERS
        PM / Domains: Fix DT example
      
      * pm-cpuidle:
        x86/intel_idle: add Gemini Lake support
        cpuidle: check dev before usage in cpuidle_use_deepest_state()
      
      * pm-sleep:
        ACPI / sleep: Ignore spurious SCI wakeups from suspend-to-idle
        PM / wakeup: Integrate mechanism to abort transitions in progress
      
      * powercap:
        powercap: intel_rapl: Add support for Gemini Lake
      80449d89
  2. 05 May, 2017 2 commits
    • Rafael J. Wysocki's avatar
      ACPI / sleep: Ignore spurious SCI wakeups from suspend-to-idle · eed4d47e
      Rafael J. Wysocki authored
      The ACPI SCI (System Control Interrupt) is set up as a wakeup IRQ
      during suspend-to-idle transitions and, consequently, any events
      signaled through it wake up the system from that state.  However,
      on some systems some of the events signaled via the ACPI SCI while
      suspended to idle should not cause the system to wake up.  In fact,
      quite often they should just be discarded.
      
      Arguably, systems should not resume entirely on such events, but in
      order to decide which events really should cause the system to resume
      and which are spurious, it is necessary to resume up to the point
      when ACPI SCIs are actually handled and processed, which is after
      executing dpm_resume_noirq() in the system resume path.
      
      For this reasons, add a loop around freeze_enter() in which the
      platforms can process events signaled via multiplexed IRQ lines
      like the ACPI SCI and add suspend-to-idle hooks that can be
      used for this purpose to struct platform_freeze_ops.
      
      In the ACPI case, the ->wake hook is used for checking if the SCI
      has triggered while suspended and deferring the interrupt-induced
      system wakeup until the events signaled through it are actually
      processed sufficiently to decide whether or not the system should
      resume.  In turn, the ->sync hook allows all of the relevant event
      queues to be flushed so as to prevent events from being missed due
      to race conditions.
      
      In addition to that, some ACPI code processing wakeup events needs
      to be modified to use the "hard" version of wakeup triggers, so that
      it will cause a system resume to happen on device-induced wakeup
      events even if the "soft" mechanism to prevent the system from
      suspending is not enabled (that also helps to catch device-induced
      wakeup events occurring during suspend transitions in progress).
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      eed4d47e
    • Rafael J. Wysocki's avatar
      PM / wakeup: Integrate mechanism to abort transitions in progress · 8a537ece
      Rafael J. Wysocki authored
      The system wakeup framework is not very consistent with respect to
      the way it handles suspend-to-idle and generally wakeup events
      occurring during transitions to system low-power states.
      
      First off, system transitions in progress are aborted by the event
      reporting helpers like pm_wakeup_event() only if the wakeup_count
      sysfs attribute is in use (as documented), but there are cases in
      which system-wide transitions should be aborted even if that is
      not the case.  For example, a wakeup signal from a designated
      wakeup device during system-wide PM transition, it should cause
      the transition to be aborted right away.
      
      Moreover, there is a freeze_wake() call in wakeup_source_activate(),
      but that really is only effective after suspend_freeze_state has
      been set to FREEZE_STATE_ENTER by freeze_enter().  However, it
      is very unlikely that wakeup_source_activate() will ever be called
      at that time, as it could only be triggered by a IRQF_NO_SUSPEND
      interrupt handler, so wakeups from suspend-to-idle don't really
      occur in wakeup_source_activate().
      
      At the same time there is a way to abort a system suspend in
      progress (or wake up the system from suspend-to-idle), which is by
      calling pm_system_wakeup(), but in turn that doesn't cause any
      wakeup source objects to be activated, so it will not be covered
      by wakeup source statistics and will not prevent the system from
      suspending again immediately (in case autosleep is used, for
      example).  Consequently, if anyone wants to abort system transitions
      in progress and allow the wakeup_count mechanism to work, they need
      to use both pm_system_wakeup() and pm_wakeup_event(), say, at the
      same time which is awkward.
      
      For the above reasons, make it possible to trigger
      pm_system_wakeup() from within wakeup_source_activate() and
      provide a new pm_wakeup_hard_event() helper to do so within the
      wakeup framework.
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      8a537ece
  3. 01 May, 2017 18 commits
    • David E. Box's avatar
      x86/intel_idle: add Gemini Lake support · 1b2e8768
      David E. Box authored
      Gemini Lake uses the same C-states as Broxton and also uses the
      IRTL MSR's to determine maximum C-state latency.
      Signed-off-by: default avatarDavid E. Box <david.e.box@linux.intel.com>
      Acked-by: default avatarLen Brown <len.brown@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      1b2e8768
    • Li, Fei's avatar
      cpuidle: check dev before usage in cpuidle_use_deepest_state() · 41dc750e
      Li, Fei authored
      In case of there is no cpuidle devices registered, dev will be null, and
      panic will be triggered like below;
      In this patch, add checking of dev before usage, like that done in
      cpuidle_idle_call.
      
      Panic without fix:
      [  184.961328] BUG: unable to handle kernel NULL pointer dereference at
        (null)
      [  184.961328] IP: cpuidle_use_deepest_state+0x30/0x60
      ...
      [  184.961328]  play_idle+0x8d/0x210
      [  184.961328]  ? __schedule+0x359/0x8e0
      [  184.961328]  ? _raw_spin_unlock_irqrestore+0x28/0x50
      [  184.961328]  ? kthread_queue_delayed_work+0x41/0x80
      [  184.961328]  clamp_idle_injection_func+0x64/0x1e0
      
      Fixes: bb8313b6 (cpuidle: Allow enforcing deepest idle state selection)
      Signed-off-by: default avatarLi, Fei <fei.li@intel.com>
      Tested-by: default avatarShi, Feng <fengx.shi@intel.com>
      Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Cc: 4.10+ <stable@vger.kernel.org> # 4.10+
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      41dc750e
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 08be8810
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These are some device enumeration code changes, updates of the AC and
        battery drivers to help them avoid attaching to devices that cannot be
        handled by them, new operation region driver for the Intel CHT Whiskey
        Cove PMIC, new sysfs entries for CPPC performance capabilities, a new
        _REV quirk blacklist entry and a couple of assorted minor fixes and
        cleanups.
      
        Specifics:
      
         - Update the core device enumeration code to make it more internally
           consistent and robust and drop the force_remove sysfs attribute
           that could be used to tell it to ignore errors on device
           hot-removal which was dangerous in general and no real and still
           relevant use cases for it could be found (Rafael Wysocki, Michal
           Hocko).
      
         - Make the core device enumeration code use _PXM to associate
           platform devices created by it with specific NUMA nodes (Shanker
           Donthineni).
      
         - Extend the CPPC library by adding more sysfs entries for
           performance capabilities to it and making it use the lowest
           nonlinear performance parameter (Prashanth Prakash).
      
         - Make the CPU online more consistent with CPU initialization in the
           ACPI processor driver (Prashanth Prakash).
      
         - Update the AC and battery drivers to help them avoid attaching to
           devices that cannot be handled by them and update the
           axp288_charger power supply driver to work correctly on ACPI
           systems without the INT3496 device (Hans de Goede).
      
         - Add an ACPI operation region driver for the Intel CHT Whiskey Cove
           PMIC and update the xpower operation region driver to work without
           IIO which isn't really necessary for it to work (Hans de Goede).
      
         - Add a new entry for Dell Inspiron 7537 to the _REV quirk blacklist
           (Kai Heng Feng).
      
         - Make the code in the ACPI video driver easier to follow by adding
           symbols and comments to it (Dmitry Frank).
      
         - Update ACPI documentation and drop a function that has no users
           from the tables-handling code (Cao jin, Baoquan He)"
      
      * tag 'acpi-4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / PMIC: Stop xpower OPRegion handler relying on IIO
        ACPI / PMIC: Add opregion driver for Intel CHT Whiskey Cove PMIC
        ACPI / scan: Avoid enumerating devices more than once
        ACPI / scan: Apply default enumeration to devices with ACPI drivers
        power: supply: axp288_charger: Only wait for INT3496 device if present
        ACPI / AC: Add a blacklist with PMIC ACPI HIDs with a native charger driver
        ACPI / battery: Add a blacklist with PMIC ACPI HIDs with a native battery driver
        ACPI / battery: Fix acpi_battery_exit on acpi_battery_init_async errors
        ACPI / utils: Add new acpi_dev_present helper
        ACPI / video: add comments about subtle cases
        ACPI / video: get rid of magic numbers and use enum instead
        ACPI / doc: linuxized-acpica.txt: fix typos
        ACPI / blacklist: add _REV quirk for Dell Inspiron 7537
        ACPI / tables: Drop acpi_parse_entries() which is not used
        ACPI / CPPC: add sysfs entries for CPPC perf capabilities
        ACPI / CPPC: Read lowest nonlinear perf in cppc_get_perf_caps()
        ACPI / platform: Update platform device NUMA node based on _PXM method
        ACPI / Processor: Drop setup_max_cpus check from acpi_processor_add()
        ACPI / scan: Drop support for force_remove
      08be8810
    • Linus Torvalds's avatar
      Merge tag 'pm-4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 0e285e90
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "This time the majority of changes go to the cpufreq subsystem (and to
        the intel_pstate driver in particular) and there are some updates in
        the generic power domains framework, cpuidle, tools and a couple of
        other places.
      
        One thing worth mentioning is that the intel_pstate's sysfs interface
        has been reworked to be more consistent with the general expectations
        of the cpufreq core and less confusing, hopefully for the better.
        Also, we have a new cpufreq driver for Tegra186 and new hardware
        support in intel_pstata and the Mediatek cpufreq driver.
      
        Apart from that, the AnalyzeSuspend utility for system suspend
        profiling gets a companion called AnalyzeBoot for the analogous
        profiling of system boot and they both go into one place under
        tools/power/pm-graph/.
      
        The rest is mostly fixes, cleanups and code reorganization.
      
        Specifics:
      
         - Rework the intel_pstate driver's sysfs interface to make it more
           straightforward and more intuitive (Rafael Wysocki).
      
         - Make intel_pstate support all processors which advertise HWP
           (hardware-managed P-states) to the kernel in all operation modes
           and make it use the load-based P-state selection algorithm on a
           wider range of systems in the active mode (Rafael Wysocki).
      
         - Add cpufreq driver for Tegra186 (Mikko Perttunen).
      
         - Add support for Gemini Lake SoCs to intel_pstate (David Box).
      
         - Add support for MT8176 and MT817x to the Mediatek cpufreq driver
           and clean up that driver a bit (Daniel Kurtz).
      
         - Clean up intel_pstate and optimize it slightly (Rafael Wysocki).
      
         - Update the schedutil cpufreq governor, mostly to fix a couple of
           issues with it related to specific workloads, and rework its sysfs
           tunable and initialization a bit (Rafael Wysocki, Viresh Kumar).
      
         - Fix minor issues in the imx6q, dbx500 and qoriq cpufreq drivers
           (Christophe Jaillet, Irina Tirdea, Leonard Crestez, Viresh Kumar,
           YuanTian Tang).
      
         - Add file patterns for cpufreq DT bindings to MAINTAINERS (Geert
           Uytterhoeven).
      
         - Add support for "always on" power domains to the genpd (generic
           power domains) framework and clean up that code somewhat (Ulf
           Hansson, Lina Iyer, Viresh Kumar).
      
         - Fix minor issues in the powernv cpuidle driver and clean it up
           (Anton Blanchard, Gautham Shenoy).
      
         - Move the AnalyzeSuspend utility under tools/power/pm-graph/ and add
           an analogous boot-profiling utility called AnalyzeBoot to it (Todd
           Brandt).
      
         - Add rk3328 support to the rockchip-io AVS (Adaptive Voltage
           Scaling) driver (David Wu).
      
         - Fix minor issues in the cpuidle core, the intel_pstate_tracer
           utility, the devfreq framework and the PM core documentation
           (Chanwoo Choi, Doug Smythies, Johan Hovold, Marcin Nowakowski)"
      
      * tag 'pm-4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (56 commits)
        PM / runtime: Document autosuspend-helper side effects
        PM / runtime: Fix autosuspend documentation
        tools: power: pm-graph: Package makefile and man pages
        tools: power: pm-graph: AnalyzeBoot v2.0
        tools: power: pm-graph: AnalyzeSuspend v4.6
        cpufreq: Add Tegra186 cpufreq driver
        cpufreq: imx6q: Fix error handling code
        cpufreq: imx6q: Set max suspend_freq to avoid changes during suspend
        cpufreq: imx6q: Fix handling EPROBE_DEFER from regulator
        cpuidle: powernv: Avoid a branch in the core snooze_loop() loop
        cpuidle: powernv: Don't continually set thread priority in snooze_loop()
        cpuidle: powernv: Don't bounce between low and very low thread priority
        cpuidle: cpuidle-cps: remove unused variable
        tools/power/x86/intel_pstate_tracer: Adjust directory ownership
        cpufreq: schedutil: Use policy-dependent transition delays
        cpufreq: schedutil: Reduce frequencies slower
        PM / devfreq: Move struct devfreq_governor to devfreq directory
        PM / Domains: Ignore domain-idle-states that are not compatible
        cpufreq: intel_pstate: Add support for Gemini Lake
        powernv-cpuidle: Validate DT property array size
        ...
      0e285e90
    • Linus Torvalds's avatar
      Merge branch 'for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 9410091d
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
       "Nothing major. Two notable fixes are Li's second stab at fixing the
        long-standing race condition in the mount path and suppression of
        spurious warning from cgroup_get(). All other changes are trivial"
      
      * 'for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: mark cgroup_get() with __maybe_unused
        cgroup: avoid attaching a cgroup root to two different superblocks, take 2
        cgroup: fix spurious warnings on cgroup_is_dead() from cgroup_sk_alloc()
        cgroup: move cgroup_subsys_state parent field for cache locality
        cpuset: Remove cpuset_update_active_cpus()'s parameter.
        cgroup: switch to BUG_ON()
        cgroup: drop duplicate header nsproxy.h
        kernel: convert css_set.refcount from atomic_t to refcount_t
        kernel: convert cgroup_namespace.count from atomic_t to refcount_t
      9410091d
    • Linus Torvalds's avatar
      Merge branch 'for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · ad1490bc
      Linus Torvalds authored
      Pull workqueue update from Tejun Heo:
       "One trivial patch to use setup_deferrable_timer() instead of
        open-coding the initialization"
      
      * 'for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: use setup_deferrable_timer
      ad1490bc
    • Linus Torvalds's avatar
      Merge branch 'for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · e69bbe75
      Linus Torvalds authored
      Pull libata updates from Tejun Heo:
       "The biggest core change is removal of SCT WRITE SAME support, which
        never worked properly.
      
        Other than that, trivial updates in core code and specific embedded
        driver updates"
      
      * 'for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        libata: remove SCT WRITE SAME support
        libata: reject passthrough WRITE SAME requests
        dt-bindings: ata: add DT bindings for ahci-dm816 SATA controller
        ata: ahci: add support for DaVinci DM816 SATA controller
        pata: remove the at91 driver
        libata: make ata_sg_clean static over again
        libata: use setup_deferrable_timer
        ata: allow subsystem to be used on m32r and s390 archs
        Delete redundant return value check of platform_get_resource()
        ata: constify of_device_id structures
      e69bbe75
    • Linus Torvalds's avatar
      Merge tag 'leds_for_4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds · 85724ede
      Linus Torvalds authored
      Pull LED updates from Jacek Anaszewski:
       "New drivers:
      
         - add LED support for MT6323 PMIC
      
         - add LED support for Motorola CPCAP PMIC
      
        New features and improvements:
      
         - add LED trigger for all CPUs aggregated which is useful on tiny
           boards with more CPU cores than LED pins
      
         - add OF variants of LED registering functions as a preparation for
           adding generic support for Device Tree parsing
      
         - dell-led improvements and cleanups, followed by moving it to the
           x86 platform driver subsystem which is a more appropriate place for
           it
      
         - extend pca9532 Device Tree support by adding the LEDs
           'default-state' property
      
         - extend pca963x Device Tree support by adding nxp,inverted-out
           property for inverting the polarity of the output
      
         - remove ACPI support for lp3952 since it relied on a non-official
           ACPI IDs"
      
      * tag 'leds_for_4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        leds: pca9532: Extend pca9532 device tree support
        leds: cpcap: new driver
        mfd: cpcap: Add missing include dependencies
        leds: lp3952: Use 'if (ret)' pattern
        leds: lp3952: Remove ACPI support for lp3952
        leds: mt6323: Fix an off by one bug in probe
        dt-bindings: leds: Add document bindings for leds-mt6323
        leds: Add LED support for MT6323 PMIC
        leds: gpio: use OF variant of LED registering function
        leds: core: add OF variants of LED registering functions
        platform/x86: dell-wmi-led: fix coding style issues
        dell-led: move driver to drivers/platform/x86/dell-wmi-led.c
        dell-led: remove code related to mic mute LED
        platform/x86: dell-laptop: import dell_micmute_led_set() from drivers/leds/dell-led.c
        ALSA: hda - rename dell_led_set_func to dell_micmute_led_set_func
        ALSA: hda - use dell_micmute_led_set() instead of dell_app_wmi_led_set()
        dell-led: remove GUID check from dell_micmute_led_set()
        leds/trigger/cpu: Add LED trigger for all CPUs aggregated
      85724ede
    • Linus Torvalds's avatar
      Merge branch 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration · 477d7cae
      Linus Torvalds authored
      Pull mailbox updates from Jassi Brar:
      
       - new driver for Broadcom FlexRM controller
      
       - constify data structures of callback functions in some drivers
      
       - a few bug fixes uncovered by multi-threaded use of mailbox channels
         in blocking mode
      
      * 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
        mailbox: handle empty message in tx_tick
        mailbox: skip complete wait event if timer expired
        mailbox: always wait in mbox_send_message for blocking Tx mode
        mailbox: Remove depends on COMPILE_TEST for BCM_FLEXRM_MBOX
        mailbox: check ->last_tx_done for NULL in case of timer-based polling
        dt-bindings: Add DT bindings info for FlexRM ring manager
        mailbox: Add driver for Broadcom FlexRM ring manager
        dt-bindings: mailbox: Update doc with NSP PDC/mailbox support
        mailbox: bcm-pdc: Add Northstar Plus support to PDC driver
        mailbox: constify mbox_chan_ops structures
      477d7cae
    • Linus Torvalds's avatar
      Merge tag 'for-linux-4.12' of git://github.com/cminyard/linux-ipmi · 6fb41cbd
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "A few fixes of things in the IPMI area, the watchdog would have issues
        at panic time cause by a recently introduced change, a problem with
        device numbering, one possible panic in the I2C driver (destined for
        stable).
      
        Nothing earth-shattering, but some things that need to go in"
      
      * tag 'for-linux-4.12' of git://github.com/cminyard/linux-ipmi:
        ipmi/watchdog: fix wdog hang on panic waiting for ipmi response
        ipmi_si: use smi_num for init_name
        ipmi: bt-bmc: Add ast2500 compatible string
        ACPI / IPMI: change warning to debug on timeout
        ACPI / IPMI: allow ACPI_IPMI with IPMI_SSIF
        ipmi_ssif: use setup_timer
        ipmi: Fix kernel panic at ipmi_ssif_thread()
      6fb41cbd
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 5c6ba7d5
      Linus Torvalds authored
      Pull HSI fix from Sebastian Reichel:
       "Fix double free fix in ssi-protocol"
      
      * tag 'hsi-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: ssi_protocol: double free in ssip_pn_xmit()
      5c6ba7d5
    • Linus Torvalds's avatar
      Merge tag 'for-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 7f2ebde7
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "New drivers:
         - gemini-poweroff
         - cpcap-charger (for Motorola Droid 4)
         - battery-lego-ev3 (for LEGO Mindstorms EV3)
      
        New chip/feature support:
         - bq24190-charger: add runtime PM support
         - bq24190-charger: add bq24192i support
         - register masking for syscon-poweroff
      
        ... and misc small fixes & cleanups
      
      * tag 'for-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (29 commits)
        power: supply: bq24190_charger: Use new extcon_register_notifier_all()
        power: supply: bq24190_charger: Longer delay while polling reset flag
        power: supply: bq24190_charger: Uniform pm_runtime_get() failure handling
        power: supply: bq24190_charger: Clean up extcon code
        power: supply: bq24190_charger: Limit over/under voltage fault logging
        power: supply: New driver for LEGO MINDSTORMS EV3 battery
        dt-bindings: power: supply: New bindings for LEGO MINDSTORMS EV3 battery
        power: supply: tps65217: remove debug messages for function calls
        power: supply: ltc2941-battery-gauge: Add OF device ID table
        power: supply: ltc2941-battery-gauge: Add vendor to compatibles in binding
        power: supply: charger-manager: simplify return statements
        power: supply: lp8788: prevent out of bounds array access
        power: supply: cpcap-charger: Add minimal CPCAP PMIC battery charger
        power: supply: bq24190_charger: Use extcon to determine ilimit, 5v boost
        power: supply: bq24190_charger: Add support for bq24192i
        power: supply: bq24190_charger: Use i2c-core irq-mapping code
        power: bq24190_charger: mark PM functions as __maybe_unused
        power: supply: sbs-charger: simplified bool function
        power: supply: ab8500: Replaced spaces with tabs in indent
        power: supply: bq25890: Use gpiod_get()
        ...
      7f2ebde7
    • Tejun Heo's avatar
      cgroup: mark cgroup_get() with __maybe_unused · 310b4816
      Tejun Heo authored
      a590b90d ("cgroup: fix spurious warnings on cgroup_is_dead() from
      cgroup_sk_alloc()") converted most cgroup_get() usages to
      cgroup_get_live() leaving cgroup_sk_alloc() the sole user of
      cgroup_get().  When !CONFIG_SOCK_CGROUP_DATA, this ends up triggering
      unused warning for cgroup_get().
      
      Silence the warning by adding __maybe_unused to cgroup_get().
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Link: http://lkml.kernel.org/r/20170501145340.17e8ef86@canb.auug.org.auSigned-off-by: default avatarTejun Heo <tj@kernel.org>
      310b4816
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.12' of... · cdbfbba9
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
      
       - removed twl4030-madc driver
      
       - added ASPEED PWM/fan driver
      
       - various minor improvements and fixes in several drivers
      
      * tag 'hwmon-for-linus-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (36 commits)
        hwmon: (twl4030-madc) drop driver
        hwmon: (tmp103) Use SIMPLE_DEV_PM_OPS helper macro
        hwmon: (adt7475) set start bit in probe
        hwmon: (ina209) Handled signed registers
        hwmon: (lm87) Add OF device ID table
        hwmon: (lm87) Remove unused I2C devices driver_data
        drivers: hwmon: Support for ASPEED PWM/Fan tach
        Documentation: dt-bindings: Document bindings for ASPEED AST2400/AST2500 PWM and Fan tach controller device driver
        hwmon: (lm87) Allow channel data to be set from dts file
        Documentation: dtb: lm87: Add hwmon binding documentation
        hwmon: (ads7828) Accept optional parameters from device tree
        hwmon: (dell-smm) Add Dell XPS 15 9560 into DMI list
        hwmon: Constify str parameter of hwmon_ops->read_string
        dt: Add vendor prefix for Sensirion
        hwmon: (tmp421) Add OF device ID table
        hwmon: (tmp103) Add OF device ID table
        hwmon: (tmp102) Add OF device ID table
        hwmon: (stts751) Add OF device ID table
        hwmon: (ucd9200) Add OF device ID table
        hwmon: (ucd9000) Add OF device ID table
        ...
      cdbfbba9
    • Linus Torvalds's avatar
      Merge tag 'edac_for_4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 89d1cf89
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
      
       - an EDAC driver for Cavium ThunderX RAS IP (Sergey Temerkhanov)
      
       - removal of DRAM error reporting through PCI SERR NMI (Borislav
         Petkov)
      
       - misc small fixes (Jan Glauber, Thor Thayer)
      
      * tag 'edac_for_4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC, ghes: Do not enable it by default
        EDAC: Rename report status accessors
        EDAC: Delete edac_stub.c
        EDAC: Update Kconfig help text
        EDAC: Remove EDAC_MM_EDAC
        EDAC: Issue tracepoint only when it is defined
        ACPI/extlog: Add EDAC dependency
        EDAC: Move edac_op_state to edac_mc.c
        EDAC: Remove edac_err_assert
        EDAC: Get rid of edac_handlers
        x86/nmi, EDAC: Get rid of DRAM error reporting thru PCI SERR NMI
        EDAC, highbank: Align Makefile directives
        EDAC, thunderx: Remove unused code
        EDAC, thunderx: Change LMC index calculation
        EDAC, altera: Fix peripheral warnings for Cyclone5
        EDAC, thunderx: Fix L2C MCI interrupt disable
        EDAC, thunderx: Add Cavium ThunderX EDAC driver
      89d1cf89
    • Linus Torvalds's avatar
      Merge branch 'for-4.12/post-merge' of git://git.kernel.dk/linux-block · 08c521a2
      Linus Torvalds authored
      Pull second round of block layer updates from Jens Axboe:
      
       - Further fixups to the NVMe APST code, from Andy.
      
       - Various fixes for (mostly) nvme-fc, from Christoph and James.
      
       - NVMe scsi fixes from Jon and Christoph.
      
      * 'for-4.12/post-merge' of git://git.kernel.dk/linux-block: (39 commits)
        nvme-scsi: remove nvme_trans_security_protocol
        nvme-lightnvm: add missing endianess conversion in nvme_nvm_end_io
        nvme-scsi: Consider LBA format in IO splitting calculation
        nvme-fc: avoid memory corruption caused by calling nvmf_free_options() twice
        lpfc: Fix memory corruption of the lpfc_ncmd->list pointers
        nvme: Add nvme_core.force_apst to ignore the NO_APST quirk
        nvme: Display raw APST configuration via DYNAMIC_DEBUG
        nvme: Fix APST comment
        lpfc revison 11.2.0.12
        Fix Express lane queue creation.
        Update ABORT processing for NVMET.
        Fix implicit logo and RSCN handling for NVMET
        Add Fabric assigned WWN support.
        Fix max_sgl_segments settings for NVME / NVMET
        Fix crash after issuing lip reset
        Fix driver load issues when MRQ=8
        Remove hba lock from NVMET issue WQE.
        Fix nvme initiator handling when not enabled.
        Fix driver usage of 128B WQEs when WQ_CREATE is V1.
        Fix driver unload/reload operation.
        ...
      08c521a2
    • Linus Torvalds's avatar
      Merge branch 'for-4.12/block' of git://git.kernel.dk/linux-block · 69475292
      Linus Torvalds authored
      Pull block layer updates from Jens Axboe:
      
       - Add BFQ IO scheduler under the new blk-mq scheduling framework. BFQ
         was initially a fork of CFQ, but subsequently changed to implement
         fairness based on B-WF2Q+, a modified variant of WF2Q. BFQ is meant
         to be used on desktop type single drives, providing good fairness.
         From Paolo.
      
       - Add Kyber IO scheduler. This is a full multiqueue aware scheduler,
         using a scalable token based algorithm that throttles IO based on
         live completion IO stats, similary to blk-wbt. From Omar.
      
       - A series from Jan, moving users to separately allocated backing
         devices. This continues the work of separating backing device life
         times, solving various problems with hot removal.
      
       - A series of updates for lightnvm, mostly from Javier. Includes a
         'pblk' target that exposes an open channel SSD as a physical block
         device.
      
       - A series of fixes and improvements for nbd from Josef.
      
       - A series from Omar, removing queue sharing between devices on mostly
         legacy drivers. This helps us clean up other bits, if we know that a
         queue only has a single device backing. This has been overdue for
         more than a decade.
      
       - Fixes for the blk-stats, and improvements to unify the stats and user
         windows. This both improves blk-wbt, and enables other users to
         register a need to receive IO stats for a device. From Omar.
      
       - blk-throttle improvements from Shaohua. This provides a scalable
         framework for implementing scalable priotization - particularly for
         blk-mq, but applicable to any type of block device. The interface is
         marked experimental for now.
      
       - Bucketized IO stats for IO polling from Stephen Bates. This improves
         efficiency of polled workloads in the presence of mixed block size
         IO.
      
       - A few fixes for opal, from Scott.
      
       - A few pulls for NVMe, including a lot of fixes for NVMe-over-fabrics.
         From a variety of folks, mostly Sagi and James Smart.
      
       - A series from Bart, improving our exposed info and capabilities from
         the blk-mq debugfs support.
      
       - A series from Christoph, cleaning up how handle WRITE_ZEROES.
      
       - A series from Christoph, cleaning up the block layer handling of how
         we track errors in a request. On top of being a nice cleanup, it also
         shrinks the size of struct request a bit.
      
       - Removal of mg_disk and hd (sorry Linus) by Christoph. The former was
         never used by platforms, and the latter has outlived it's usefulness.
      
       - Various little bug fixes and cleanups from a wide variety of folks.
      
      * 'for-4.12/block' of git://git.kernel.dk/linux-block: (329 commits)
        block: hide badblocks attribute by default
        blk-mq: unify hctx delay_work and run_work
        block: add kblock_mod_delayed_work_on()
        blk-mq: unify hctx delayed_run_work and run_work
        nbd: fix use after free on module unload
        MAINTAINERS: bfq: Add Paolo as maintainer for the BFQ I/O scheduler
        blk-mq-sched: alloate reserved tags out of normal pool
        mtip32xx: use runtime tag to initialize command header
        scsi: Implement blk_mq_ops.show_rq()
        blk-mq: Add blk_mq_ops.show_rq()
        blk-mq: Show operation, cmd_flags and rq_flags names
        blk-mq: Make blk_flags_show() callers append a newline character
        blk-mq: Move the "state" debugfs attribute one level down
        blk-mq: Unregister debugfs attributes earlier
        blk-mq: Only unregister hctxs for which registration succeeded
        blk-mq-debugfs: Rename functions for registering and unregistering the mq directory
        blk-mq: Let blk_mq_debugfs_register() look up the queue name
        blk-mq: Register <dev>/queue/mq after having registered <dev>/queue
        ide-pm: always pass 0 error to ide_complete_rq in ide_do_devset
        ide-pm: always pass 0 error to __blk_end_request_all
        ..
      69475292
    • Linus Torvalds's avatar
      Linux 4.11 · a351e9b9
      Linus Torvalds authored
      a351e9b9
  4. 30 Apr, 2017 4 commits
  5. 29 Apr, 2017 3 commits
  6. 28 Apr, 2017 12 commits