aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-09-28power: bq24257: Remove IRQ config through stat-gpiosAndreas Dannenberg1-24/+4
At the time the driver was written GpioInt resources in ACPI were not passed to the driver in client->irq, as opposed to DT enumeration. To accommodate this use case, a "stat-gpios" property was introduced to allow configuring the IRQ. However this issue with ACPI was fixed in commit "845c877 i2c / ACPI: Assign IRQ for devices that have GpioInt automatically" and makes this workaround no longer necessary, hence we can remove the support for the "stat-gpios" property and the associated code from the bq24257 driver. Signed-off-by: Andreas Dannenberg <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-28power: bq27xxx_battery: fix signedness bug in bq27xxx_battery_read_health()Andrzej Hajda1-1/+1
We need flags to be signed for the error handling to work. The problem has been detected using proposed semantic patch scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1]. [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576 Fixes: 74aab849f342 ('power: bq27xxx_battery: Cleanup health checking') Signed-off-by: Andrzej Hajda <[email protected]> Signed-off-by: Dan Carpenter <[email protected]> Acked-By: Pali Rohár <[email protected]> Acked-by: Andrew F. Davis <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-26drivers: power: twl4030_charger: fix link problems when building as moduleMarek Belisko1-12/+27
If either twl4030_charger or twl4030_madc is configured as MODULE, we get build (link) errors. To solve, the direct call of twl4030_get_madc_conversion() is replaced by a call to iio_read_channel_processed(). Signed-off-by: H. Nikolaus Schaller <[email protected]> Signed-off-by: Marek Belisko <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-26ARM: dts: twl4030: Add iio properties for bci subnodeMarek Belisko1-0/+2
Added new iio properties which are required for twl4030-charger driver and allow to use twl4030-madc indirectly. Signed-off-by: Marek Belisko <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-26wm831x_power: Use IRQF_ONESHOT to request threaded IRQsValentin Rothberg1-3/+3
Since commit 1c6c69525b40 ("genirq: Reject bogus threaded irq requests") threaded IRQs without a primary handler need to be requested with IRQF_ONESHOT, otherwise the request will fail. scripts/coccinelle/misc/irqf_oneshot.cocci detected this issue. Fixes: b5874f33bbaf ("wm831x_power: Use genirq") Signed-off-by: Valentin Rothberg <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-24power_supply: Add support for tps65217-charger.Enric Balletbo i Serra3-0/+272
This patch adds support for the tps65217 charger driver. This driver is responsible for controlling the charger aspect of the tps65217 mfd. Currently, this mainly consists of turning on and off the charger, but some other features of the charger can be supported through this driver. Signed-off-by: Enric Balletbo i Serra <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-24devicetree: Add TPS65217 charger binding.Enric Balletbo i Serra1-0/+12
The TPS65217 charger is a subnode of the TPS65217 MFD. Signed-off-by: Enric Balletbo i Serra <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-24power: qcom_smbb: test the correct variableDan Carpenter1-1/+1
"state" is a bool so it's never less than zero. The intent was to test "ret" instead. Fixes: 56d7df8716b2 ('power: Add Qualcomm SMBB driver') Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23bq2415x_charger: Fix null pointer dereferencePali Rohár1-1/+1
Commit b68c3161430a (bq2415x_charger: Allow to load and use driver even if notify device is not registered yet) introduced null pointer dereference in case bq is NULL. This patch fixes it. Fixes: b68c3161430a ("bq2415x_charger: Allow to load and use driver even if notify device is not registered yet") Reported-by: Dan Carpenter <[email protected]> Signed-off-by: Pali Rohár <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23power: bq27xxx_battery: Add interrupt handling supportAndrew F. Davis1-0/+23
Some devices have a pin that can generate an interrupt when the battery's status changes. Add an interrupt handler to read the new battery status. Signed-off-by: Andrew F. Davis <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23power: bq27xxx_battery: Cleanup health checkingAndrew F. Davis1-22/+42
Reorganize the logic checking battery health and add under temperature condition checking. Signed-off-by: Andrew F. Davis <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23power: bq27xxx_battery: Add support for additional bq27xxx family devicesAndrew F. Davis2-211/+421
Add support for additional devices and register equivalent family devices including the bq27010, bq27210, bq27500, bq27510, bq27520, bq27530, bq27531, bq27541, bq27542, bq27546, bq27545, bq27441, bq27421, and the bq27641. To facilitate this process the register mapings have been moved to tables and other small cleanups have been made. Signed-off-by: Andrew F. Davis <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23power: bq27xxx_battery: Fix typos and change naming for state of charge ↵Andrew F. Davis1-14/+14
functions Fix typos and change "relative state of charge" to "state of charge" as not all supported devices use relative state of charge. Signed-off-by: Andrew F. Davis <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23power: bq27xxx_battery: Platform initialization must declare a deviceAndrew F. Davis3-4/+12
When initialized as a platform device the initializer must now specify a device. An empty device name is no longer valid. Signed-off-by: Andrew F. Davis <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-23power: bq27x00_battery: Renaming for consistencyAndrew F. Davis8-186/+187
Rename functions that are used by multiple devices. New devices have been added and the function names and driver name are no longer general enough for the functionality they provide. Signed-off-by: Andrew F. Davis <[email protected]> Acked-by: Tony Lindgren <[email protected]> Acked-by: GUAN Xuetao <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: bq27x00_battery: Remove unneeded i2c MODULE_ALIASAndrew F. Davis1-4/+0
The MODULE_DEVICE_TABLE macro automatically adds all needed i2c MODULE_ALIASes so remove the extra MODULE_ALIAS. Signed-off-by: Andrew F. Davis <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power_supply: max8998: Use devm_power_supply_registerVaishali Thakkar1-22/+7
Use managed resource function devm_power_supply_register instead of power_supply_register to simplify the error path by allowing unregister to happen automatically on error. To be compatible with the change, replace various gotos by direct returns and remove unneeded label err. Also, remove max8998_battery_remove as it is now redundant. Signed-off-by: Vaishali Thakkar <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: charger-manager: comment spelling fixesMarcel Ziswiler1-4/+4
By accident I stumbled over a few misspelled words in the charger-manager header file which this patch fixes. Namely: - Extcon rather than Exton - constraint rather than constratint - existence rather than existance - difference rather than diffential While at it also add a missing space before a closing comment star forward-slash. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22tps65090-charger: Fix module autoload for OF platform driverLuis de Bethencourt1-0/+1
This platform driver has a OF device ID table but the OF module alias information is not created so module autoloading won't work. Signed-off-by: Luis de Bethencourt <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22max8903_charger: Convert to using managed resourcesVaishali Thakkar1-65/+28
Use managed resource functions devm_request_threaded_irq and devm_power_supply_register to simplify error handling. To be compatible with the change, various gotos are replaced with direct returns and unneeded labels are dropped. Also, remove max8903_remove as it is now redundant. Signed-off-by: Vaishali Thakkar <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: max17042_battery: Convert to using managed resourcesVaishali Thakkar1-17/+9
Use managed resource functions devm_request_threaded_irq and devm_power_supply_register to simplify error handling. Also, remove max17042_remove as it is now redundant. Signed-off-by: Vaishali Thakkar <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: reset: at91-reset/trivial: driver applies to SAMA5 family as wellNicolas Ferre1-1/+1
This diver doesn't applies only on SAM9 SoC families but on SAMA5 families as well. Signed-off-by: Nicolas Ferre <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power/reset: at91-poweroff: get and use slow clockAlexandre Belloni1-0/+15
Commit dca1a4b5ff6e ("clk: at91: keep slow clk enabled to prevent system hang") added a workaround for the slow clock as it is not properly handled by its users. Get and use the slow clock as it is necessary for the at91 shutdown controller. Signed-off-by: Alexandre Belloni <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power/reset: at91-poweroff: allow compiling as a moduleAlexandre Belloni2-4/+16
It was not possible to compile at91-poweroff as a module. Implement .remove() to allow it. Also switch to module_platform_driver_probe() as it is not hotpluggable. Signed-off-by: Alexandre Belloni <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power/reset: at91-reset: get and use slow clockAlexandre Belloni1-1/+16
Commit dca1a4b5ff6e ("clk: at91: keep slow clk enabled to prevent system hang") added a workaround for the slow clock as it is not properly handled by its users. Get and use the slow clock as it is necessary for the at91 reset controller. Signed-off-by: Alexandre Belloni <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power/reset: at91-reset: allow compiling as a moduleAlexandre Belloni2-4/+15
It was not possible to compile at91-reset as a module. Implement .remove() to allow it. Also switch to module_platform_driver_probe() as it is not hotpluggable. Signed-off-by: Alexandre Belloni <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power/reset: at91-reset: remove useless at91_reset_platform_probe()Alexandre Belloni1-44/+3
Since all the at91 platforms are now DT only, at91_reset_platform_probe() is now useless, remove it. Signed-off-by: Alexandre Belloni <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-2288pm860x_battery: Convert to using managed resourcesVaishali Thakkar1-26/+11
Use managed resource functions devm_request_threaded_irq and devm_power_supply_register to simplify error handling. To be compatible with the change, various gotos are replaced with direct returns and unneeded labels are dropped. Also, remove pm860x_battery_remove as it is now redundant. Signed-off-by: Vaishali Thakkar <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: Add Qualcomm SMBB driverCourtney Cavin3-0/+964
Add the Qualcomm Switch-Mode Battery Charger and Boost driver, found in pm8941. Signed-off-by: Courtney Cavin <[email protected]> Signed-off-by: Bjorn Andersson <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22dt-binding: power: Add Qualcomm SMBB bindingCourtney Cavin1-0/+131
Add the Qualcomm Switch-Mode Battery Charger and Boost device tree binding. Signed-off-by: Courtney Cavin <[email protected]> Signed-off-by: Bjorn Andersson <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: Remove unnecessary MODULE_ALIAS() for I2C driversJavier Martinez Canillas4-4/+0
These drivers already have an I2C device id table that is used to create module aliases and the used MODULE_ALIAS() was either already in the I2C table so it was redundant or wasn't a valid I2C id so it was never used. Signed-off-by: Javier Martinez Canillas <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power:lp8727_charger: parsing child node after getting debounce-msMilo Kim1-4/+4
According to lp8727 bindings[*], charging parameter is optional. So parsing can be skipped in case those properties are undefined. However, 'debounce-ms' should be read prior to checking the properties. Otherwise, 'debounce-ms' property will be ignored even it is configured inside the DT. So, counting child is processed after updating 'debounce-ms'. [*] Documentation/devicetree/bindings/power_supply/lp8727_charger.txt Cc: Dmitry Eremin-Solenikov <[email protected]> Cc: [email protected] Cc: [email protected] Signed-off-by: Milo Kim <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power:lp8727_charger: use the private data instead of updating I2C device ↵Milo Kim1-12/+13
platform data Currently, lp8727 charger driver parses the DT and copies values into the 'cl->dev.platform_data' if 'of_node' exists. This may have architectural issue. Platform data is configurable through the DT or I2C board info inside the platform area. However, lp8727 driver changes this configuration when it is loaded. The driver should get data from the platform side and use the private data, 'lp8727_chg->pdata' instead of changing the original platform data. _probe() procedure is changed as follows. 1. lp8727_parse_dt() returns the pointer of lp8727_platform_data. The driver uses this allocated platform data. So it should keep original platform data, 'dev->platform_data'. 2. In _probe(), check the return value of lp8727_parse_dt(). If an error is found, then exit as PTR_ERR(pdata). 3. If 'of_node' is not found, then the driver just gets the platform data from the I2C device structure. 4. Map the platform data to private data structure. Cc: Dmitry Eremin-Solenikov <[email protected]> Cc: [email protected] Cc: [email protected] Signed-off-by: Milo Kim <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: wm831x_power: Convert to devm_kzalloc()Mark Brown1-5/+4
Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22power: Add an axp20x-usb-power driverHans de Goede4-0/+280
This adds a driver for the usb power_supply bits of the axp20x PMICs. I initially started writing my own driver, before coming aware of Bruno Prémont's excellent earlier RFC with a driver for this. My driver was lacking CURRENT_MAX and VOLTAGE_MIN support Bruno's drvier has, so I've copied the code for those from his driver. Note that the AC-power-supply and battery charger bits will need separate drivers. Each one needs its own devictree child-node so that other devicetree nodes can reference the right power-supply, and thus each one will get its own mfd-cell / platform_device and platform-driver. Cc: Bruno Prémont <[email protected]> Acked-by: Lee Jones <[email protected]> Signed-off-by: Bruno Prémont <[email protected]> Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-22ARM: dts: Add binding documentation for AXP20x pmic usb power supplyHans de Goede1-0/+34
Add binding documentation for the usb power supply part of the AXP20x pmic. Signed-off-by: Hans de Goede <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2015-09-20Linux 4.3-rc2Linus Torvalds1-1/+1
2015-09-19Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-armLinus Torvalds3-10/+17
Pull ARM fixes from Russell King: "Three fixes and a resulting cleanup for -rc2: - Andre Przywara reported that he was seeing a warning with the new cast inside DMA_ERROR_CODE's definition, and fixed the incorrect use. - Doug Anderson noticed that kgdb causes a "scheduling while atomic" bug. - OMAP5 folk noticed that their Thumb-2 compiled X servers crashed when enabling support to cover ARMv6 CPUs due to a kernel bug leaking some conditional context into the signal handler" * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: ARM: 8425/1: kgdb: Don't try to stop the machine when setting breakpoints ARM: 8437/1: dma-mapping: fix build warning with new DMA_ERROR_CODE definition ARM: get rid of needless #if in signal handling code ARM: fix Thumb2 signal handling when ARMv6 is enabled
2015-09-19Merge tag 'linux-kselftest-4.3-rc2' of ↵Linus Torvalds9-34/+52
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest Pull kselftest fixes from Shuah Khan: "This update contains 7 fixes for problems ranging from build failurs to incorrect error reporting" * tag 'linux-kselftest-4.3-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: selftests: exec: revert to default emit rule selftests: change install command to rsync selftests: mqueue: simplify the Makefile selftests: mqueue: allow extra cflags selftests: rename jump label to static_keys selftests/seccomp: add support for s390 seltests/zram: fix syntax error
2015-09-19Merge tag 'pm+acpi-4.3-rc2' of ↵Linus Torvalds12-46/+73
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm Pull power management and ACPI updates from Rafael Wysocki: "Included are: a somewhat late devfreq update which however is mostly fixes and cleanups with one new thing only (the PPMUv2 support on Exynos5433), an ACPI cpufreq driver fixup and two ACPI core cleanups related to preprocessor directives. Specifics: - Fix a memory allocation size in the devfreq core (Xiaolong Ye). - Fix a mistake in the exynos-ppmu DT binding (Javier Martinez Canillas). - Add support for PPMUv2 ((Platform Performance Monitoring Unit version 2.0) on the Exynos5433 SoCs (Chanwoo Choi). - Fix a type casting bug in the Exynos PPMU code (MyungJoo Ham). - Assorted devfreq code cleanups and optimizations (Javi Merino, MyungJoo Ham, Viresh Kumar). - Fix up the ACPI cpufreq driver to use a more lightweight way to get to its private data in the ->get() callback (Rafael J Wysocki). - Fix a CONFIG_ prefix bug in one of the ACPI drivers and make the ACPI subsystem use IS_ENABLED() instead of #ifdefs in function bodies (Sudeep Holla)" * tag 'pm+acpi-4.3-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: cpufreq: acpi-cpufreq: Use cpufreq_cpu_get_raw() in ->get() ACPI: Eliminate CONFIG_.*{, _MODULE} #ifdef in favor of IS_ENABLED() ACPI: int340x_thermal: add missing CONFIG_ prefix PM / devfreq: Fix incorrect type issue. PM / devfreq: tegra: Update governor to use devfreq_update_stats() PM / devfreq: comments for get_dev_status usage updated PM / devfreq: drop comment about thermal setting max_freq PM / devfreq: cache the last call to get_dev_status() PM / devfreq: Drop unlikely before IS_ERR(_OR_NULL) PM / devfreq: exynos-ppmu: bit-wise operation bugfix. PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2 PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433 PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding
2015-09-19Merge tag 'clk-fixes-for-linus' of ↵Linus Torvalds5-12/+25
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux Pull clk fixes from Stephen Boyd: "A few driver fixes for tegra, rockchip, and st SoCs and a two-liner in the framework to avoid oops when get_parent ops return out of range values on tegra platforms" * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: drivers: clk: st: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x clk: check for invalid parent index of orphans in __clk_init() clk: tegra: dfll: Properly protect OPP list clk: rockchip: add critical clock for rk3368
2015-09-19Merge tag 'led-fixes-for-v4.3-rc2' of ↵Linus Torvalds7-2/+9
git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds Pull LED fixes from Jacek Anaszewski: - fix module autoload for six OF platform drivers (aat1290, bcm6328, bcm6358, ktd2692, max77693, ns2) - aat1290: add missing static modifier - ipaq-micro: add missing LEDS_CLASS dependency - lp55xx: correct Kconfig dependecy for f/w user helper * tag 'led-fixes-for-v4.3-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds: leds:lp55xx: Correct Kconfig dependency for f/w user helper leds: leds-ipaq-micro: Add LEDS_CLASS dependency leds: aat1290: add 'static' modifier to init_mm_current_scale leds: leds-ns2: Fix module autoload for OF platform driver leds: max77693: Fix module autoload for OF platform driver leds: ktd2692: Fix module autoload for OF platform driver leds: bcm6358: Fix module autoload for OF platform driver leds: bcm6328: Fix module autoload for OF platform driver leds: aat1290: Fix module autoload for OF platform driver
2015-09-19Merge tag 'for-linus' of ↵Linus Torvalds10-58/+107
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma Pull rdma fixes from Doug Ledford: "The new hfi1 driver in staging/rdma has had a number of fixup patches since being added to the tree. This is the first batch of those fixes" * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma: IB/hfi: Properly set permissions for user device files IB/hfi1: mask vs shift confusion IB/hfi1: clean up some defines IB/hfi1: info leak in get_ctxt_info() IB/hfi1: fix a locking bug IB/hfi1: checking for NULL instead of IS_ERR IB/hfi1: fix sdma_descq_cnt parameter parsing IB/hfi1: fix copy_to/from_user() error handling IB/hfi1: fix pstateinfo from returning improperly byteswapped value
2015-09-19Merge branch 'libnvdimm-fixes' of ↵Linus Torvalds6-6/+16
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm Pull libnvdimm fixes from Dan Williams: - a boot regression (since v4.2) fix for some ARM configurations from Tyler - regression (since v4.1) fixes for mkfs.xfs on a DAX enabled device from Jeff. These are tagged for -stable. - a pair of locking fixes from Axel that are hidden from lockdep since they involve device_lock(). The "btt" one is tagged for -stable, the other only applies to the new "pfn" mechanism in v4.3. - a fix for the pmem ->rw_page() path to use wmb_pmem() from Ross. * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: mm: fix type cast in __pfn_to_phys() pmem: add proper fencing to pmem_rw_page() libnvdimm: pfn_devs: Fix locking in namespace_store libnvdimm: btt_devs: Fix locking in namespace_store blockdev: don't set S_DAX for misaligned partitions dax: fix O_DIRECT I/O to the last block of a blockdev
2015-09-19Merge branch 'for-linus' of git://git.kernel.dk/linux-blockLinus Torvalds8-57/+129
Pull block updates from Jens Axboe: "This is a bit bigger than it should be, but I could (did) not want to send it off last week due to both wanting extra testing, and expecting a fix for the bounce regression as well. In any case, this contains: - Fix for the blk-merge.c compilation warning on gcc 5.x from me. - A set of back/front SG gap merge fixes, from me and from Sagi. This ensures that we honor SG gapping for integrity payloads as well. - Two small fixes for null_blk from Matias, fixing a leak and a capacity propagation issue. - A blkcg fix from Tejun, fixing a NULL dereference. - A fast clone optimization from Ming, fixing a performance regression since the arbitrarily sized bio's were introduced. - Also from Ming, a regression fix for bouncing IOs" * 'for-linus' of git://git.kernel.dk/linux-block: block: fix bounce_end_io block: blk-merge: fast-clone bio when splitting rw bios block: blkg_destroy_all() should clear q->root_blkg and ->root_rl.blkg block: Copy a user iovec if it includes gaps block: Refuse adding appending a gapped integrity page to a bio block: Refuse request/bio merges with gaps in the integrity payload block: Check for gaps on front and back merges null_blk: fix wrong capacity when bs is not 512 bytes null_blk: fix memory leak on cleanup block: fix bogus compiler warnings in blk-merge.c
2015-09-19fs-writeback: unplug before cond_resched in writeback_sb_inodesChris Mason1-1/+16
Commit 505a666ee3fc ("writeback: plug writeback in wb_writeback() and writeback_inodes_wb()") has us holding a plug during writeback_sb_inodes, which increases the merge rate when relatively contiguous small files are written by the filesystem. It helps both on flash and spindles. For an fs_mark workload creating 4K files in parallel across 8 drives, this commit improves performance ~9% more by unplugging before calling cond_resched(). cond_resched() doesn't trigger an implicit unplug, so explicitly getting the IO down to the device before scheduling reduces latencies for anyone waiting on clean pages. It also cuts down on how often we use kblockd to unplug, which means less work bouncing from one workqueue to another. Many more details about how we got here: https://lkml.org/lkml/2015/9/11/570 Signed-off-by: Chris Mason <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2015-09-19mm: fix type cast in __pfn_to_phys()Tyler Baker1-1/+1
The various definitions of __pfn_to_phys() have been consolidated to use a generic macro in include/asm-generic/memory_model.h. This hit mainline in the form of 012dcef3f058 "mm: move __phys_to_pfn and __pfn_to_phys to asm/generic/memory_model.h". When the generic macro was implemented the type cast to phys_addr_t was dropped which caused boot regressions on ARM platforms with more than 4GB of memory and LPAE enabled. It was suggested to use PFN_PHYS() defined in include/linux/pfn.h as provides the correct logic and avoids further duplication. Reported-by: kernelci.org bot <[email protected]> Suggested-by: Dan Williams <[email protected]> Signed-off-by: Tyler Baker <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2015-09-18Merge branch 'acpi-bus'Rafael J. Wysocki4-16/+11
* acpi-bus: ACPI: Eliminate CONFIG_.*{, _MODULE} #ifdef in favor of IS_ENABLED() ACPI: int340x_thermal: add missing CONFIG_ prefix
2015-09-18Merge branches 'pm-cpufreq' and 'pm-devfreq'Rafael J. Wysocki8-30/+62
* pm-cpufreq: cpufreq: acpi-cpufreq: Use cpufreq_cpu_get_raw() in ->get() * pm-devfreq: PM / devfreq: Fix incorrect type issue. PM / devfreq: tegra: Update governor to use devfreq_update_stats() PM / devfreq: comments for get_dev_status usage updated PM / devfreq: drop comment about thermal setting max_freq PM / devfreq: cache the last call to get_dev_status() PM / devfreq: Drop unlikely before IS_ERR(_OR_NULL) PM / devfreq: exynos-ppmu: bit-wise operation bugfix. PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2 PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433 PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding
2015-09-18Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhostLinus Torvalds9-8/+31
Pull virtio fixes and cleanups from Michael Tsirkin: "This fixes the virtio-test tool, and improves the error handling for virtio-ccw" * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: virtio/s390: handle failures of READ_VQ_CONF ccw tools/virtio: propagate V=X to kernel build vhost: move features to core tools/virtio: fix build after 4.2 changes