aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-07-19iio: mma8452: use iio event type IIO_EV_TYPE_MAGMartin Kepplinger1-4/+4
IIO_EV_TYPE_THRESH in rising direction describes an event where the threshold is crossed in rising direction, positive or negative values being possible. This is not the case here. Since the threshold is no signed value and only the magnitude is compared, IIO_EV_TYPE_MAG is what describes the behaviour of these devices, see the sysfs-bus-iio ABI Documentation. Signed-off-by: Martin Kepplinger <[email protected]> Signed-off-by: Christoph Muellner <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: mcp320x: Fix NULL pointer dereferenceManfred Schlaegl1-0/+2
On reading in_voltage_scale of we got an NULL pointer dereference Oops. The reason for this is, that mcp320x_read_raw tries to access chip_info->resolution from struct mcp320x, but chip_info is never set. chip_info was never set since the driver was added, but there was no acute problem, because it was not referenced. The acute problem exists since b12206e917ac34bec41b9ff93d37d8bd53a2b3bc iio: adc: mcp320x. Add support for more ADCs This patch fixes the issue by setting chip_info in mcp320x_probe. Signed-off-by: Manfred Schlaegl <[email protected]> Reviewed-by: Michael Welling <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: adc: vf610: fix the adc register read fail issueFugang Duan1-1/+1
Read the register only when the adc register address is 4 byte aligned. (rather than the other way around). Signed-off-by: Haibo Chen <[email protected]> Signed-off-by: Fugang Duan <[email protected]> Cc: <Stable.vger.kernel.org> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: mlx96014: Replace offset signCrt Mori1-1/+1
Changed the offset to negative as usual equation is: (raw + offset)*scale and in this case offset should be negative (as we deduct 273.15 Kelvin to get temperature in Celsius). Signed-off-by: Crt Mori <[email protected]> Acked-by: Peter Meerwald <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: magnetometer: mmc35240: fix SET/RESET sequenceViorel Suman1-3/+4
The RESET operation invoked in the last instance will align in the natural way all 3 axis and the chip top view. Without this, north and south are swapped. Signed-off-by: Viorel Suman <[email protected]> Signed-off-by: Daniel Baluta <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: magnetometer: mmc35240: Fix SET/RESET maskDaniel Baluta1-2/+2
This fixes setting the SET/RESET bit in the REG_CTRL0 register. Signed-off-by: Daniel Baluta <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: magnetometer: mmc35240: Fix crash in pm suspendDaniel Baluta1-0/+1
We must set i2c client private data at probe in order to correctly retrieve it in pm suspend/resume, preventing the following crash: [ 321.790582] PM: Syncing filesystems ... done. [ 322.364440] PM: Preparing system for mem sleep [ 322.400047] PM: Entering mem sleep [ 322.462178] BUG: unable to handle kernel NULL pointer dereference at 0000036c [ 322.469119] IP: [<80e0b3d2>] mmc35240_suspend+0x12/0x30 [ 322.474291] *pdpt = 000000002fd6f001 *pde = 0000000000000000 [ 322.479967] Oops: 0000 1 PREEMPT SMP [ 322.496516] task: a86d0df0 ti: a8766000 task.ti: a8766000 [ 322.570744] Call Trace: [ 322.573217] [<80c0d2d1>] pm_generic_suspend+0x21/0x30 [ 322.578284] [<80d042ab>] i2c_device_pm_suspend+0x1b/0x30 Signed-off-by: Daniel Baluta <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:magnetometer:bmc150_magn: output intended variableHartmut Knaack1-2/+2
According to the debug/error string, the content of chip_id is supposed to be output, rather than the return value of the previous operation. Fixes: c91746a2361d ("iio: magn: Add support for BMC150 magnetometer") Signed-off-by: Hartmut Knaack <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:magnetometer:bmc150_magn: add regmap dependencyHartmut Knaack1-0/+1
bmc150_magn makes use of REGMAP_I2C, so select it to build always without errors. Fixes: c91746a2361d ("iio: magn: Add support for BMC150 magnetometer") Signed-off-by: Hartmut Knaack <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19staging: vt6656: check ieee80211_bss_conf bssid not NULLMalcolm Priestley1-1/+1
Sometimes bssid can go null on failed association. Signed-off-by: Malcolm Priestley <[email protected]> Cc: <[email protected]> # v3.17+ Signed-off-by: Greg Kroah-Hartman <[email protected]>
2015-07-19staging: vt6655: check ieee80211_bss_conf bssid not NULLMalcolm Priestley1-1/+1
Sometimes bssid can go null on failed association. Signed-off-by: Malcolm Priestley <[email protected]> Cc: <[email protected]> # v3.19+ Signed-off-by: Greg Kroah-Hartman <[email protected]>
2015-07-19iio: tmp006: Check channel info on writePeter Meerwald1-0/+3
only SAMP_FREQ is writable Will lead to SAMP_FREQ being written by any attempt to write to the other exported attributes and hence a rather unexpected result! Signed-off-by: Peter Meerwald <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: sx9500: Add missing init in sx9500_buffer_pre{en,dis}able()Geert Uytterhoeven1-2/+2
drivers/iio/proximity/sx9500.c: In function ‘sx9500_buffer_preenable’: drivers/iio/proximity/sx9500.c:682: warning: ‘ret’ may be used uninitialized in this function drivers/iio/proximity/sx9500.c: In function ‘sx9500_buffer_predisable’: drivers/iio/proximity/sx9500.c:706: warning: ‘ret’ may be used uninitialized in this function If active_scan_mask is empty, it will loop once more over all channels, doing nothing. Signed-off-by: Geert Uytterhoeven <[email protected]> Reviewed-by: Vlad Dogaru <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:light:ltr501: fix regmap dependencyHartmut Knaack1-0/+1
The use of regmap in commit 2f2c96338afc requires REGMAP_I2C to be selected, in order to meet all dependencies. Fixes: 2f2c96338afc ("iio: ltr501: Add regmap support.") Signed-off-by: Hartmut Knaack <[email protected]> Acked-by: Daniel Baluta <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:light:ltr501: fix variable in ltr501_initHartmut Knaack1-1/+1
When filling data->als_contr, the register content read into status needs to be used, instead of the return status value of regmap_read. Fixes: 8592a7eefa540 ("iio: ltr501: Add support for ltr559 chip") Signed-off-by: Hartmut Knaack <[email protected]> Acked-by: Daniel Baluta <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: sx9500: fix bug in compensation codeVlad Dogaru1-3/+3
The initial compensation was mistakingly toggling an extra bit in the control register. Fix this and make sure it's less likely to happen by introducing an additional macro. Reported-by: Hartmut Knaack <[email protected]> Signed-off-by: Vlad Dogaru <[email protected]> Acked-by: Hartmut Knaack <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: sx9500: rework error handling of raw readingsVlad Dogaru1-7/+9
Fix error handling so that we can power the chip down even if a raw read fails. Reported-by: Hartmut Knaack <[email protected]> Signed-off-by: Vlad Dogaru <[email protected]> Acked-by: Hartmut Knaack <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: magnetometer: mmc35240: fix available sampling frequenciesTeodora Baluta1-14/+21
Fix the sampling frequencies according to the datasheet (page 8). The datasheet specifies the following available frequencies for continuous mode: 1.5 Hz, 13 Hz, 25 Hz, and 50 Hz. Also fix comments about the ODR to comply with datasheet. Signed-off-by: Teodora Baluta <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:light:stk3310: Fix REGMAP_I2C dependencyHartmut Knaack1-0/+1
The stk3310 driver makes use of regmap_i2c, so this dependency needs to be reflected in Kconfig. Signed-off-by: Hartmut Knaack <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: light: STK3310: un-invert proximity valuesTiberiu Breana1-36/+17
In accordance with the recent proximity ABI changes, STK3310's proximity readings should be un-inversed in order to return low values for far-away objects and high values for close ones. As consequences of this change, iio event directions have been switched and maximum proximity sensor reference values have also been adjusted in accordance with the real readings. Signed-off-by: Tiberiu Breana <[email protected]> Acked-by: Hartmut Knaack <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:adc:cc10001_adc: fix Kconfig dependencyHartmut Knaack1-2/+1
The Cosmic Circuits 10001 ADC driver depends on HAS_IOMEM, HAVE_CLK and REGULATOR together, not just any of these. Signed-off-by: Hartmut Knaack <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: light: tcs3414: Fix bug preventing to set integration timePeter Meerwald1-1/+1
the millisecond values in tcs3414_times should be checked against val2, not val, which is always zero. Signed-off-by: Peter Meerwald <[email protected]> Reported-by: Stephan Kleisinger <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:accel:bmc150-accel: fix counting directionHartmut Knaack1-1/+1
In bmc150_accel_unregister_triggers() triggers should be unregistered in reverse order of registration. Trigger registration starts with number 0, counting up. In consequence, trigger number needs to be count down here. Signed-off-by: Hartmut Knaack <[email protected]> Reviewed-by: Octavian Purdila <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio:light:cm3323: clear bitmask before setHartmut Knaack1-1/+1
When setting the bits for integration time, the appropriate bitmask needs to be cleared first. Signed-off-by: Hartmut Knaack <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: adc: at91_adc: allow to use full range of startup timeJan Leupold1-4/+4
The DT-Property "atmel,adc-startup-time" is stored in an u8 for a microsecond value. When trying to increase the value of STARTUP in Register AT91_ADC_MR some higher values can't be reached. Change the type in function parameter and private structure field from u8 to u32. Signed-off-by: Jan Leupold <[email protected]> [[email protected]: change commit message, increase u16 to u32 for startup time] Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Alexandre Belloni <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: DAC: ad5624r_spi: fix bit shift of output data valueJM Friedt1-2/+2
The value sent on the SPI bus is shifted by an erroneous number of bits. The shift value was already computed in the iio_chan_spec structure and hence subtracting this argument to 16 yields an erroneous data position in the SPI stream. Signed-off-by: JM Friedt <[email protected]> Acked-by: Lars-Peter Clausen <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: proximity: sx9500: Fix proximity valueDaniel Baluta1-1/+1
Because of the ABI confusion proximity value exposed by SX9500 was inverted. Signed-off-by: Daniel Baluta <[email protected]> Reviewed-by: Vlad Dogaru <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: ABI: Clarify proximity output valueDaniel Baluta1-4/+2
Current description for proximity measurement is ambiguous. While the first part says that proximity is measured by observing reflectivity, the second part incorrectly infers that reported values should behave like a distance. This is because of AS3935 lightning sensor which uses the proximity API, while not being a true proximity sensor. Note this is marked for stable as it accompanies a fix in ABI usage to the sx9500 driver which would otherwise appear to be correct. Fixes: 614e8842ddf ("iio: ABI: add clarification for proximity") Signed-off-by: Daniel Baluta <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: inv-mpu: Specify the expected format/precision for write channelsAdriana Reus1-0/+18
The gyroscope needs IIO_VAL_INT_PLUS_NANO for the scale channel and unless specified write returns MICRO by default. This needs to be properly specified so that write operations into scale have the expected behaviour. Signed-off-by: Adriana Reus <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: twl4030-madc: Pass the IRQF_ONESHOT flagFabio Estevam1-1/+2
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. So pass the IRQF_ONESHOT flag in this case. The semantic patch that makes this change is available in scripts/coccinelle/misc/irqf_oneshot.cocci. Signed-off-by: Fabio Estevam <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19iio: adc: rockchip_saradc: add missing MODULE_* dataHeiko Stuebner1-0/+4
The module-data is currently missing. This includes the license-information which makes the driver taint the kernel and miss symbols when compiled as module. Fixes: 44d6f2ef94f9 ("iio: adc: add driver for Rockchip saradc") Signed-off-by: Heiko Stuebner <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-19hid-sensor: Fix suspend/resume delaySrinivas Pandruvada2-1/+11
By default all the sensors are runtime suspended state (lowest power state). During Linux suspend process, all the run time suspended devices are resumed and then suspended. This caused all sensors to power up and introduced delay in suspend time, when we introduced runtime PM for HID sensors. The opposite process happens during resume process. To fix this, we do powerup process of the sensors only when the request is issued from user (raw or tiggerred). In this way when runtime, resume calls for powerup it will simply return as this will not match user requested state. Note this is a regression fix as the increase in suspend / resume times can be substantial (report of 8 seconds on Len's laptop!) Signed-off-by: Srinivas Pandruvada <[email protected]> Tested-by: Len Brown <[email protected]> Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
2015-07-06staging:lustre: remove irq.h from socklnd.hJames Simmons1-1/+0
The header socklnd.h includes irq.h which is not need and doesn't exist in the OpenSFS lustre branch. Having irq.h in socklnd.h does break the build on the m68k platform. So we can safely remove it. Signed-off-by: James Simmons <[email protected]> Tested-by: Guenter Roeck <[email protected]> Tested-by: by: Geert Uytterhoeven <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2015-07-06staging: make board support depend on OF_IRQ and CLKDEV_LOOKUPPaul Gortmaker1-1/+1
Building allmodconfig for arch/cris currently fails with: drivers/built-in.o: In function `board_staging_register_clock': drivers/staging/board/board.c:131: undefined reference to `clk_add_alias' make: *** [vmlinux] Error 1 The clk_add_alias lives in drivers/clk/clkdev.c and that file is only compiled for CONFIG_CLKDEV_LOOKUP, so it would seem we need to add a dependency on that. Geert also reported seeing this in his build coverage: There seems to be another missing dependency on OF_IRQ: drivers/built-in.o: In function `board_staging_gic_fixup_resources': (.init.text+0x21c2): undefined reference to `irq_create_of_mapping' so we might as well fix that at the same time since it is on the same line. Cc: Magnus Damm <[email protected]> Cc: Simon Horman <[email protected]> Cc: Geert Uytterhoeven <[email protected]> Acked-by: Geert Uytterhoeven <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]> Signed-off-by: Chen Gang <[email protected]> Cc: Stephen Rothwell <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2015-07-05Linux 4.2-rc1Linus Torvalds1-2/+2
2015-07-05Merge tag 'platform-drivers-x86-v4.2-2' of ↵Linus Torvalds7-45/+1004
git://git.infradead.org/users/dvhart/linux-platform-drivers-x86 Pull late x86 platform driver updates from Darren Hart: "The following came in a bit later and I wanted them to bake in next a few more days before submitting, thus the second pull. A new intel_pmc_ipc driver, a symmetrical allocation and free fix in dell-laptop, a couple minor fixes, and some updated documentation in the dell-laptop comments. intel_pmc_ipc: - Add Intel Apollo Lake PMC IPC driver tc1100-wmi: - Delete an unnecessary check before the function call "kfree" dell-laptop: - Fix allocating & freeing SMI buffer page - Show info about WiGig and UWB in debugfs - Update information about wireless control" * tag 'platform-drivers-x86-v4.2-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86: intel_pmc_ipc: Add Intel Apollo Lake PMC IPC driver tc1100-wmi: Delete an unnecessary check before the function call "kfree" dell-laptop: Fix allocating & freeing SMI buffer page dell-laptop: Show info about WiGig and UWB in debugfs dell-laptop: Update information about wireless control
2015-07-04Merge branch 'for-linus' of ↵Linus Torvalds99-553/+784
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs Pull more vfs updates from Al Viro: "Assorted VFS fixes and related cleanups (IMO the most interesting in that part are f_path-related things and Eric's descriptor-related stuff). UFS regression fixes (it got broken last cycle). 9P fixes. fs-cache series, DAX patches, Jan's file_remove_suid() work" [ I'd say this is much more than "fixes and related cleanups". The file_table locking rule change by Eric Dumazet is a rather big and fundamental update even if the patch isn't huge. - Linus ] * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (49 commits) 9p: cope with bogus responses from server in p9_client_{read,write} p9_client_write(): avoid double p9_free_req() 9p: forgetting to cancel request on interrupted zero-copy RPC dax: bdev_direct_access() may sleep block: Add support for DAX reads/writes to block devices dax: Use copy_from_iter_nocache dax: Add block size note to documentation fs/file.c: __fget() and dup2() atomicity rules fs/file.c: don't acquire files->file_lock in fd_install() fs:super:get_anon_bdev: fix race condition could cause dev exceed its upper limitation vfs: avoid creation of inode number 0 in get_next_ino namei: make set_root_rcu() return void make simple_positive() public ufs: use dir_pages instead of ufs_dir_pages() pagemap.h: move dir_pages() over there remove the pointless include of lglock.h fs: cleanup slight list_entry abuse xfs: Correctly lock inode when removing suid and file capabilities fs: Call security_ops->inode_killpriv on truncate fs: Provide function telling whether file_remove_privs() will do anything ...
2015-07-04bluetooth: fix list handlingLinus Torvalds2-2/+3
Commit 835a6a2f8603 ("Bluetooth: Stop sabotaging list poisoning") thought that the code was sabotaging the list poisoning when NULL'ing out the list pointers and removed it. But what was going on was that the bluetooth code was using NULL pointers for the list as a way to mark it empty, and that commit just broke it (and replaced the test with NULL with a "list_empty()" test on a uninitialized list instead, breaking things even further). So fix it all up to use the regular and real list_empty() handling (which does not use NULL, but a pointer to itself), also making sure to initialize the list properly (the previous NULL case was initialized implicitly by the session being allocated with kzalloc()) This is a combination of patches by Marcel Holtmann and Tedd Ho-Jeong An. [ I would normally expect to get this through the bt tree, but I'm going to release -rc1, so I'm just committing this directly - Linus ] Reported-and-tested-by: Jörg Otte <[email protected]> Cc: Alexey Dobriyan <[email protected]> Original-by: Tedd Ho-Jeong An <[email protected]> Original-by: Marcel Holtmann <[email protected]>: Signed-off-by: Linus Torvalds <[email protected]>
2015-07-04Merge branch 'for-next' of ↵Linus Torvalds68-6312/+3163
git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending Pull SCSI target updates from Nicholas Bellinger: "It's been a busy development cycle for target-core in a number of different areas. The fabric API usage for se_node_acl allocation is now within target-core code, dropping the external API callers for all fabric drivers tree-wide. There is a new conversion to RCU hlists for se_node_acl and se_portal_group LUN mappings, that turns fast-past LUN lookup into a completely lockless code-path. It also removes the original hard-coded limitation of 256 LUNs per fabric endpoint. The configfs attributes for backends can now be shared between core and driver code, allowing existing drivers to use common code while still allowing flexibility for new backend provided attributes. The highlights include: - Merge sbc_verify_dif_* into common code (sagi) - Remove iscsi-target support for obsolete IFMarker/OFMarker (Christophe Vu-Brugier) - Add bidi support in target/user backend (ilias + vangelis + agover) - Move se_node_acl allocation into target-core code (hch) - Add crc_t10dif_update common helper (akinobu + mkp) - Handle target-core odd SGL mapping for data transfer memory (akinobu) - Move transport ID handling into target-core (hch) - Move task tag into struct se_cmd + support 64-bit tags (bart) - Convert se_node_acl->device_list[] to RCU hlist (nab + hch + paulmck) - Convert se_portal_group->tpg_lun_list[] to RCU hlist (nab + hch + paulmck) - Simplify target backend driver registration (hch) - Consolidate + simplify target backend attribute implementations (hch + nab) - Subsume se_port + t10_alua_tg_pt_gp_member into se_lun (hch) - Drop lun_sep_lock for se_lun->lun_se_dev RCU usage (hch + nab) - Drop unnecessary core_tpg_register TFO parameter (nab) - Use 64-bit LUNs tree-wide (hannes) - Drop left-over TARGET_MAX_LUNS_PER_TRANSPORT limit (hannes)" * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (76 commits) target: Bump core version to v5.0 target: remove target_core_configfs.h target: remove unused TARGET_CORE_CONFIG_ROOT define target: consolidate version defines target: implement WRITE_SAME with UNMAP bit using ->execute_unmap target: simplify UNMAP handling target: replace se_cmd->execute_rw with a protocol_data field target/user: Fix inconsistent kmap_atomic/kunmap_atomic target: Send UA when changing LUN inventory target: Send UA upon LUN RESET tmr completion target: Send UA on ALUA target port group change target: Convert se_lun->lun_deve_lock to normal spinlock target: use 'se_dev_entry' when allocating UAs target: Remove 'ua_nacl' pointer from se_ua structure target_core_alua: Correct UA handling when switching states xen-scsiback: Fix compile warning for 64-bit LUN target: Remove TARGET_MAX_LUNS_PER_TRANSPORT target: use 64-bit LUNs target: Drop duplicate + unused se_dev_check_wce target: Drop unnecessary core_tpg_register TFO parameter ...
2015-07-04Merge tag 'ntb-4.2' of git://github.com/jonmason/ntbLinus Torvalds23-2816/+5545
Pull NTB updates from Jon Mason: "This includes a pretty significant reworking of the NTB core code, but has already produced some significant performance improvements. An abstraction layer was added to allow the hardware and clients to be easily added. This required rewriting the NTB transport layer for this abstraction layer. This modification will allow future "high performance" NTB clients. In addition to this change, a number of performance modifications were added. These changes include NUMA enablement, using CPU memcpy instead of asyncdma, and modification of NTB layer MTU size" * tag 'ntb-4.2' of git://github.com/jonmason/ntb: (22 commits) NTB: Add split BAR output for debugfs stats NTB: Change WARN_ON_ONCE to pr_warn_once on unsafe NTB: Print driver name and version in module init NTB: Increase transport MTU to 64k from 16k NTB: Rename Intel code names to platform names NTB: Default to CPU memcpy for performance NTB: Improve performance with write combining NTB: Use NUMA memory in Intel driver NTB: Use NUMA memory and DMA chan in transport NTB: Rate limit ntb_qp_link_work NTB: Add tool test client NTB: Add ping pong test client NTB: Add parameters for Intel SNB B2B addresses NTB: Reset transport QP link stats on down NTB: Do not advance transport RX on link down NTB: Differentiate transport link down messages NTB: Check the device ID to set errata flags NTB: Enable link for Intel root port mode in probe NTB: Read peer info from local SPAD in transport NTB: Split ntb_hw_intel and ntb_transport drivers ...
2015-07-049p: cope with bogus responses from server in p9_client_{read,write}Al Viro1-0/+8
if server claims to have written/read more than we'd told it to, warn and cap the claimed byte count to avoid advancing more than we are ready to.
2015-07-04p9_client_write(): avoid double p9_free_req()Al Viro1-0/+1
Braino in "9p: switch p9_client_write() to passing it struct iov_iter *"; if response is impossible to parse and we discard the request, get the out of the loop right there. Cc: [email protected] Signed-off-by: Al Viro <[email protected]>
2015-07-049p: forgetting to cancel request on interrupted zero-copy RPCAl Viro1-1/+2
If we'd already sent a request and decide to abort it, we *must* issue TFLUSH properly and not just blindly reuse the tag, or we'll get seriously screwed when response eventually arrives and we confuse it for response to later request that had reused the same tag. Cc: [email protected] # v3.2 and later Signed-off-by: Al Viro <[email protected]>
2015-07-04dax: bdev_direct_access() may sleepMatthew Wilcox1-0/+6
The brd driver is the only in-tree driver that may sleep currently. After some discussion on linux-fsdevel, we decided that any driver may choose to sleep in its ->direct_access method. To ensure that all callers of bdev_direct_access() are prepared for this, add a call to might_sleep(). Signed-off-by: Matthew Wilcox <[email protected]> Signed-off-by: Al Viro <[email protected]>
2015-07-04block: Add support for DAX reads/writes to block devicesMatthew Wilcox2-2/+8
If a block device supports the ->direct_access methods, bypass the normal DIO path and use DAX to go straight to memcpy() instead of allocating a DIO and a BIO. Includes support for the DIO_SKIP_DIO_COUNT flag in DAX, as is done in do_blockdev_direct_IO(). Signed-off-by: Matthew Wilcox <[email protected]> Signed-off-by: Al Viro <[email protected]>
2015-07-04dax: Use copy_from_iter_nocacheMatthew Wilcox1-1/+1
When userspace does a write, there's no need for the written data to pollute the CPU cache. This matches the original XIP code. Signed-off-by: Matthew Wilcox <[email protected]> Signed-off-by: Al Viro <[email protected]>
2015-07-04dax: Add block size note to documentationMatthew Wilcox1-2/+4
For block devices which are small enough, mkfs will default to creating a filesystem with block sizes smaller than page size. Signed-off-by: Matthew Wilcox <[email protected]> Signed-off-by: Al Viro <[email protected]>
2015-07-04Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvmLinus Torvalds10-16/+54
Pull kvm fixes from Paolo Bonzini: "Except for the preempt notifiers fix, these are all small bugfixes that could have been waited for -rc2. Sending them now since I was taking care of Peter's patch anyway" * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: kvm: add hyper-v crash msrs values KVM: x86: remove data variable from kvm_get_msr_common KVM: s390: virtio-ccw: don't overwrite config space values KVM: x86: keep track of LVT0 changes under APICv KVM: x86: properly restore LVT0 KVM: x86: make vapics_in_nmi_mode atomic sched, preempt_notifier: separate notifier registration from static_key inc/dec
2015-07-04NTB: Add split BAR output for debugfs statsDave Jiang1-15/+68
When split BAR is enabled, the driver needs to dump out the split BAR registers rather than the original 64bit BAR registers. Signed-off-by: Dave Jiang <[email protected]> Signed-off-by: Jon Mason <[email protected]>
2015-07-04NTB: Change WARN_ON_ONCE to pr_warn_once on unsafeDave Jiang1-8/+16
The unsafe doorbell and scratchpad access should display reason when WARN is called. Otherwise we get a stack dump without any explanation. Signed-off-by: Dave Jiang <[email protected]> Signed-off-by: Jon Mason <[email protected]>