1. 05 Aug, 2016 22 commits
  2. 28 Jul, 2016 11 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 884316de
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - new hid-alps driver for ALPS Touchpad-Stick device, from Masaki Ota
      
       - much improved and generalized HID led handling, and merge of
         specialized hid-thingm driver into this generic hid-led one, from
         Heiner Kallweit
      
       - i2c-hid power management improvements from Fu Zhonghui and Guohua
         Zhong
      
       - uhid initialization race fix from Roderick Colenbrander
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (21 commits)
        HID: add usb device id for Apple Magic Keyboard
        HID: hid-led: fix Delcom support on big endian systems
        HID: hid-led: add support for Greynut Luxafor
        HID: hid-led: add support for Delcom Visual Signal Indicator G2
        HID: hid-led: remove report id from struct hidled_config
        HID: alps: a few cleanups
        HID: remove ThingM blink(1) driver
        HID: hid-led: add support for ThingM blink(1)
        HID: hid-led: add support for reading from LED devices
        HID: hid-led: add support for devices with multiple independent LEDs
        HID: i2c-hid: set power sleep before shutdown
        HID: alps: match alps devices in core
        HID: thingm: simplify debug output code
        HID: alps: pass correct sizes to hid_hw_raw_request()
        HID: alps: struct u1_dev *priv is internal to the driver
        HID: add Alps I2C HID Touchpad-Stick support
        HID: led: fix config
        usb: misc: remove outdated USB LED driver
        HID: migrate USB LED driver from usb misc to hid
        HID: i2c_hid: enable i2c-hid devices to suspend/resume asynchronously
        ...
      884316de
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 69c42894
      Linus Torvalds authored
      Pull trivial tree updates from Jiri Kosina.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
        fat: fix error message for bogus number of directory entries
        fat: fix typo s/supeblock/superblock/
        ASoC: max9877: Remove unused function declaration
        dw2102: don't output spurious blank lines to the kernel log
        init: fix Kconfig text
        ARM: io: fix comment grammar
        ocfs: fix ocfs2_xattr_user_get() argument name
        scsi/qla2xxx: Remove erroneous unused macro qla82xx_get_temp_val1()
      69c42894
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 76d5b28b
      Linus Torvalds authored
      Pull quota update from Jan Kara:
       "time64 support for quota"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        quota: use time64_t internally
      76d5b28b
    • Linus Torvalds's avatar
      Merge tag 'random_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random · 71e9dcc0
      Linus Torvalds authored
      Pull random driver fix from Ted Ts'o:
       "Fix a boot failure on systems with non-contiguous NUMA id's"
      
      * tag 'random_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:
        random: use for_each_online_node() to iterate over NUMA nodes
      71e9dcc0
    • Linus Torvalds's avatar
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 6784725a
      Linus Torvalds authored
      Pull vfs updates from Al Viro:
       "Assorted cleanups and fixes.
      
        Probably the most interesting part long-term is ->d_init() - that will
        have a bunch of followups in (at least) ceph and lustre, but we'll
        need to sort the barrier-related rules before it can get used for
        really non-trivial stuff.
      
        Another fun thing is the merge of ->d_iput() callers (dentry_iput()
        and dentry_unlink_inode()) and a bunch of ->d_compare() ones (all
        except the one in __d_lookup_lru())"
      
      * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (26 commits)
        fs/dcache.c: avoid soft-lockup in dput()
        vfs: new d_init method
        vfs: Update lookup_dcache() comment
        bdev: get rid of ->bd_inodes
        Remove last traces of ->sync_page
        new helper: d_same_name()
        dentry_cmp(): use lockless_dereference() instead of smp_read_barrier_depends()
        vfs: clean up documentation
        vfs: document ->d_real()
        vfs: merge .d_select_inode() into .d_real()
        unify dentry_iput() and dentry_unlink_inode()
        binfmt_misc: ->s_root is not going anywhere
        drop redundant ->owner initializations
        ufs: get rid of redundant checks
        orangefs: constify inode_operations
        missed comment updates from ->direct_IO() prototype change
        file_inode(f)->i_mapping is f->f_mapping
        trim fsnotify hooks a bit
        9p: new helper - v9fs_parent_fid()
        debugfs: ->d_parent is never NULL or negative
        ...
      6784725a
    • Linus Torvalds's avatar
      Merge branch 'salted-string-hash' · 554828ee
      Linus Torvalds authored
      This changes the vfs dentry hashing to mix in the parent pointer at the
      _beginning_ of the hash, rather than at the end.
      
      That actually improves both the hash and the code generation, because we
      can move more of the computation to the "static" part of the dcache
      setup, and do less at lookup runtime.
      
      It turns out that a lot of other hash users also really wanted to mix in
      a base pointer as a 'salt' for the hash, and so the slightly extended
      interface ends up working well for other cases too.
      
      Users that want a string hash that is purely about the string pass in a
      'salt' pointer of NULL.
      
      * merge branch 'salted-string-hash':
        fs/dcache.c: Save one 32-bit multiply in dcache lookup
        vfs: make the string hashes salt the hash
      554828ee
    • Jiri Kosina's avatar
      Merge branch 'for-4.8/hid-led' into for-linus · 8c2f421c
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/hid-thingm.c
      8c2f421c
    • Jiri Kosina's avatar
      Merge branches 'for-4.8/alps', 'for-4.8/apple', 'for-4.8/i2c-hid',... · e82a82c1
      Jiri Kosina authored
      Merge branches 'for-4.8/alps', 'for-4.8/apple', 'for-4.8/i2c-hid', 'for-4.8/uhid-offload-hid-device-add' and 'for-4.8/upstream' into for-linus
      e82a82c1
    • Theodore Ts'o's avatar
      random: use for_each_online_node() to iterate over NUMA nodes · 59b8d4f1
      Theodore Ts'o authored
      This fixes a crash on s390 with fake NUMA enabled.
      Reported-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Fixes: 1e7f583a ("random: make /dev/urandom scalable for silly userspace programs")
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      59b8d4f1
    • Linus Torvalds's avatar
      Add braces to avoid "ambiguous ‘else’" compiler warnings · 194dc870
      Linus Torvalds authored
      Some of our "for_each_xyz()" macro constructs make gcc unhappy about
      lack of braces around if-statements inside or outside the loop, because
      the loop construct itself has a "if-then-else" statement inside of it.
      
      The resulting warnings look something like this:
      
        drivers/gpu/drm/i915/i915_debugfs.c: In function ‘i915_dump_lrc’:
        drivers/gpu/drm/i915/i915_debugfs.c:2103:6: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wparentheses]
           if (ctx != dev_priv->kernel_context)
              ^
      
      even if the code itself is fine.
      
      Since the warning is fairly easy to avoid by adding a braces around the
      if-statement near the for_each_xyz() construct, do so, rather than
      disabling the otherwise potentially useful warning.
      
      (The if-then-else statements used in the "for_each_xyz()" constructs are
      designed to be inherently safe even with no braces, but in this case
      it's quite understandable that gcc isn't really able to tell that).
      
      This finally leaves the standard "allmodconfig" build with just a
      handful of remaining warnings, so new and valid warnings hopefully will
      stand out.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      194dc870
    • Linus Torvalds's avatar
      Disable "frame-address" warning · 124a3d88
      Linus Torvalds authored
      Newer versions of gcc warn about the use of __builtin_return_address()
      with a non-zero argument when "-Wall" is specified:
      
        kernel/trace/trace_irqsoff.c: In function ‘stop_critical_timings’:
        kernel/trace/trace_irqsoff.c:433:86: warning: calling ‘__builtin_return_address’ with a nonzero argument is unsafe [-Wframe-address]
           stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
        [ .. repeats a few times for other similar cases .. ]
      
      It is true that a non-zero argument is somewhat dangerous, and we do not
      actually have very many uses of that in the kernel - but the ftrace code
      does use it, and as Stephen Rostedt says:
      
       "We are well aware of the danger of using __builtin_return_address() of
        > 0.  In fact that's part of the reason for having the "thunk" code in
        x86 (See arch/x86/entry/thunk_{64,32}.S).  [..] it adds extra frames
        when tracking irqs off sections, to prevent __builtin_return_address()
        from accessing bad areas.  In fact the thunk_32.S states: 'Trampoline to
        trace irqs off.  (otherwise CALLER_ADDR1 might crash)'."
      
      For now, __builtin_return_address() with a non-zero argument is the best
      we can do, and the warning is not helpful and can end up making people
      miss other warnings for real problems.
      
      So disable the frame-address warning on compilers that need it.
      Acked-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      124a3d88
  3. 27 Jul, 2016 7 commits
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 8448cefe
      Linus Torvalds authored
      Pull HSI updates from Sebastian Reichel:
      
       - proper runtime pm support for omap-ssi and ssi-protocol
      
       - misc fixes
      
      * tag 'hsi-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi: (24 commits)
        HSI: omap_ssi: drop pm_runtime_irq_safe
        HSI: omap_ssi_port: use rpm autosuspend API
        HSI: omap_ssi: call msg->complete() from process context
        HSI: omap_ssi_port: ensure clocks are kept enabled during transfer
        HSI: omap_ssi_port: replace pm_runtime_put_sync with non-sync variant
        HSI: omap_ssi_port: avoid calling runtime_pm_*_sync inside spinlock
        HSI: omap_ssi_port: avoid pm_runtime_get_sync in ssi_start_dma and ssi_start_pio
        HSI: omap_ssi_port: switch to threaded pio irq
        HSI: omap_ssi_core: remove pm_runtime_get_sync call from tasklet
        HSI: omap_ssi_core: use pm_runtime_put instead of pm_runtime_put_sync
        HSI: omap_ssi_port: prepare start_tx/stop_tx for blocking pm_runtime calls
        HSI: core: switch port event notifier from atomic to blocking
        HSI: omap_ssi_port: replace wkin_cken with atomic bitmap operations
        HSI: omap_ssi: convert cawake irq handler to thread
        HSI: ssi_protocol: fix ssip_xmit invocation
        HSI: ssi_protocol: replace spin_lock with spin_lock_bh
        HSI: ssi_protocol: avoid ssi_waketest call with held spinlock
        HSI: omap_ssi: do not reset module
        HSI: omap_ssi_port: remove useless newline
        hsi: Only descend into hsi directory when CONFIG_HSI is set
        ...
      8448cefe
    • Linus Torvalds's avatar
      Merge tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random · 818e607b
      Linus Torvalds authored
      Pull random driver updates from Ted Ts'o:
       "A number of improvements for the /dev/random driver; the most
        important is the use of a ChaCha20-based CRNG for /dev/urandom, which
        is faster, more efficient, and easier to make scalable for
        silly/abusive userspace programs that want to read from /dev/urandom
        in a tight loop on NUMA systems.
      
        This set of patches also improves entropy gathering on VM's running on
        Microsoft Azure, and will take advantage of a hw random number
        generator (if present) to initialize the /dev/urandom pool"
      
      (It turns out that the random tree hadn't been in linux-next this time
      around, because it had been dropped earlier as being too quiet.  Oh
      well).
      
      * tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:
        random: strengthen input validation for RNDADDTOENTCNT
        random: add backtracking protection to the CRNG
        random: make /dev/urandom scalable for silly userspace programs
        random: replace non-blocking pool with a Chacha20-based CRNG
        random: properly align get_random_int_hash
        random: add interrupt callback to VMBus IRQ handler
        random: print a warning for the first ten uninitialized random users
        random: initialize the non-blocking pool via add_hwgenerator_randomness()
      818e607b
    • Linus Torvalds's avatar
      Merge tag 'media/v4.8-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · ff9a082f
      Linus Torvalds authored
      Pull media documentation updates from Mauro Carvalho Chehab:
       "This patch series does the conversion of all media documentation stuff
        to Restrutured Text markup format and add them to the
        Documentation/index.rst file.
      
        The media documentation was grouped into 4 books:
      
          - media uAPI
          - media kAPI
          - V4L driver-specific documentation
          - DVB driver-specific documentation
      
        It also contains several documentation improvements and one fixup
        patch for a core issue with cropcap.
      
        PS.  After this patch series, the media DocBook is deprecated and
        should be removed.  I'll add such patch on a future pull request"
      
      * tag 'media/v4.8-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (322 commits)
        [media] cx23885-cardlist.rst: add a new card
        [media] doc-rst: add some needed escape codes
        [media] doc-rst: kapi: use :c:func: instead of :cpp:func
        doc-rst: kernel-doc: fix a change introduced by mistake
        [media] v4l2-ioctl.h add debug info for struct v4l2_ioctl_ops
        [media] dvb_ringbuffer.h: some documentation improvements
        [media] v4l2-ctrls.h: fully document the header file
        [media] doc-rst: Fix some typedef ugly warnings
        [media] doc-rst: reorganize the kAPI v4l2 chapters
        [media] rename v4l2-framework.rst to v4l2-intro.rst
        [media] move V4L2 clocks to a separate .rst file
        [media] v4l2-fh.rst: add cross references and markups
        [media] v4l2-fh.rst: add fh contents from v4l2-framework.rst
        [media] v4l2-fh.h: add documentation for it
        [media] v4l2-event.rst: add cross-references and markups
        [media] v4l2-event.h: document all functions
        [media] v4l2-event.rst: add text from v4l2-framework.rst
        [media] v4l2-framework.rst: remove videobuf quick chapter
        [media] v4l2-dev: add cross-references and improve markup
        [media] doc-rst: move v4l2-dev doc to a separate file
        ...
      ff9a082f
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 6a492b0f
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This update includes the usual round of driver updates (fcoe, lpfc,
        ufs, qla2xxx, hisi_sas).  The most important other change is removing
        the flag to allow non-blk_mq on a per host basis (it's unused); there
        is still a global module parameter for all of SCSI just in case.
      
        The rest are an assortment of minor fixes and typo updates"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (101 commits)
        scsi:libsas: fix oops caused by assigning a freed task to ->lldd_task
        fnic: pci_dma_mapping_error() doesn't return an error code
        scsi: lpfc: avoid harmless comparison warning
        fcoe: implement FIP VLAN responder
        fcoe: Rename 'fip_frame' to 'fip_vn2vn_notify_frame'
        lpfc: call lpfc_sli_validate_fcp_iocb() with the hbalock held
        scsi: ufs: remove unnecessary goto label
        hpsa: change hpsa_passthru_ioctl timeout
        hpsa: correct skipping masked peripherals
        qla2xxx: Update driver version to 8.07.00.38-k
        qla2xxx: Fix BBCR offset
        qla2xxx: Fix duplicate message id.
        qla2xxx: Disable the adapter and skip error recovery in case of register disconnect.
        qla2xxx: Separate ISP type bits out from device type.
        qla2xxx: Correction to function qla26xx_dport_diagnostics().
        qla2xxx: Add support to handle Loop Init error Asynchronus event.
        qla2xxx: Let DPORT be enabled purely by nvram.
        qla2xxx: Add bsg interface to support statistics counter reset.
        qla2xxx: Add bsg interface to support D_Port Diagnostics.
        qla2xxx: Check for device state before unloading the driver.
        ...
      6a492b0f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · d85486d4
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
       "Updates for the input subsystem.  This contains the following new
        drivers promised in the last merge window:
      
         - driver for touchscreen controller found in Surface 3
         - driver for Pegasus Notetaker tablet
         - driver for Atmel Captouch Buttons
         - driver for Raydium I2C touchscreen controllers
         - powerkey driver for HISI 65xx SoC
      
        plus a few fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (40 commits)
        Input: tty/vt/keyboard - use memdup_user()
        Input: pegasus_notetaker - set device mode in reset_resume() if in use
        Input: pegasus_notetaker - cancel workqueue's work in suspend()
        Input: pegasus_notetaker - fix usb_autopm calls to be balanced
        Input: pegasus_notetaker - handle usb control msg errors
        Input: wacom_w8001 - handle errors from input_mt_init_slots()
        Input: wacom_w8001 - resolution wasn't set for ABS_MT_POSITION_X/Y
        Input: pixcir_ts - add support for axis inversion / swapping
        Input: icn8318 - use of_touchscreen helpers for inverting / swapping axes
        Input: edt-ft5x06 - add support for inverting / swapping axes
        Input: of_touchscreen - add support for inverted / swapped axes
        Input: synaptics-rmi4 - use the RMI_F11_REL_BYTES define in rmi_f11_rel_pos_report
        Input: synaptics-rmi4 - remove unneeded variable
        Input: synaptics-rmi4 - remove pointer to rmi_function in f12_data
        Input: synaptics-rmi4 - support regulator supplies
        Input: raydium_i2c_ts - check CRC of incoming packets
        Input: xen-kbdfront - prefer xenbus_write() over xenbus_printf() where possible
        Input: fix a double word "is is" in include/linux/input.h
        Input: add powerkey driver for HISI 65xx SoC
        Input: apanel - spelling mistake - "skiping" -> "skipping"
        ...
      d85486d4
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 66304207
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
       "Here is the I2C pull request for 4.8:
      
         - the core and i801 driver gained support for SMBus Host Notify
      
         - core support for more than one address in DT
      
         - i2c_add_adapter() has now better error messages.  We can remove all
           error messages from drivers calling it as a next step.
      
         - bigger updates to rk3x driver to support rk3399 SoC
      
         - the at24 eeprom driver got refactored and can now read special
           variants with unique serials or fixed MAC addresses.
      
        The rest is regular driver updates and bugfixes"
      
      * 'i2c/for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (66 commits)
        i2c: i801: use IS_ENABLED() instead of checking for built-in or module
        Documentation: i2c: slave: give proper example for pm usage
        Documentation: i2c: slave: describe buffer problems a bit better
        i2c: bcm2835: Don't complain on -EPROBE_DEFER from getting our clock
        i2c: i2c-smbus: drop useless stubs
        i2c: efm32: fix a failure path in efm32_i2c_probe()
        Revert "i2c: core: Cleanup I2C ACPI namespace"
        Revert "i2c: core: Add function for finding the bus speed from ACPI"
        i2c: Update the description of I2C_SMBUS
        i2c: i2c-smbus: fix i2c_handle_smbus_host_notify documentation
        eeprom: at24: tweak the loop_until_timeout() macro
        eeprom: at24: add support for at24mac series
        eeprom: at24: support reading the serial number for 24csxx
        eeprom: at24: platform_data: use BIT() macro
        eeprom: at24: split at24_eeprom_write() into specialized functions
        eeprom: at24: split at24_eeprom_read() into specialized functions
        eeprom: at24: hide the read/write loop behind a macro
        eeprom: at24: call read/write functions via function pointers
        eeprom: at24: coding style fixes
        eeprom: at24: move at24_read() below at24_eeprom_write()
        ...
      66304207
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 7ae0ae4a
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "Quite a lot of cleanup and maintainence work going on this release in
        various drivers, and also a fix for a nasty locking issue in the core:
      
         - A fix for locking issues when external drivers explicitly locked
           the bus with spi_bus_lock() - we were using the same lock to both
           control access to the physical bus in multi-threaded I/O operations
           and exclude multiple callers.
      
           Confusion between these two caused us to have scenarios where we
           were dropping locks.  These are fixed by splitting into two
           separate locks like should have been done originally, making
           everything much clearer and correct.
      
         - Support for DMA in spi_flash_read().
      
         - Support for instantiating spidev on ACPI systems, including some
           test devices used in Windows validation.
      
         - Use of the core DMA mapping functionality in the McSPI driver.
      
         - Start of support for ThunderX SPI controllers, involving a very big
           set of changes to the Cavium driver.
      
         - Support for Braswell, Exynos 5433, Kaby Lake, Merrifield, RK3036,
           RK3228, RK3368 controllers"
      
      * tag 'spi-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (64 commits)
        spi: Split bus and I/O locking
        spi: octeon: Split driver into Octeon specific and common parts
        spi: octeon: Move include file from arch/mips to drivers/spi
        spi: octeon: Put register offsets into a struct
        spi: octeon: Store system clock freqency in struct octeon_spi
        spi: octeon: Convert driver to use readq()/writeq() functions
        spi: pic32-sqi: fixup wait_for_completion_timeout return handling
        spi: pic32: fixup wait_for_completion_timeout return handling
        spi: rockchip: limit transfers to (64K - 1) bytes
        spi: xilinx: Return IRQ_NONE if no interrupts were detected
        spi: xilinx: Handle errors from platform_get_irq()
        spi: s3c64xx: restore removed comments
        spi: s3c64xx: add Exynos5433 compatible for ioclk handling
        spi: s3c64xx: use error code from clk_prepare_enable()
        spi: s3c64xx: rename goto labels to meaningful names
        spi: s3c64xx: document the clocks and the clock-name property
        spi: s3c64xx: add exynos5433 spi compatible
        spi: s3c64xx: fix reference leak to master in s3c64xx_spi_remove()
        spi: spi-sh: Remove deprecated create_singlethread_workqueue
        spi: spi-topcliff-pch: Remove deprecated create_singlethread_workqueue
        ...
      7ae0ae4a