1. 01 Apr, 2016 5 commits
    • Jessica Yu's avatar
      Documentation: livepatch: outline Elf format and requirements for patch modules · 3b812ecc
      Jessica Yu authored
      Document livepatch module requirements and the special Elf constants patch
      modules use.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Acked-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      3b812ecc
    • Jessica Yu's avatar
      livepatch: reuse module loader code to write relocations · 425595a7
      Jessica Yu authored
      Reuse module loader code to write relocations, thereby eliminating the need
      for architecture specific relocation code in livepatch. Specifically, reuse
      the apply_relocate_add() function in the module loader to write relocations
      instead of duplicating functionality in livepatch's arch-dependent
      klp_write_module_reloc() function.
      
      In order to accomplish this, livepatch modules manage their own relocation
      sections (marked with the SHF_RELA_LIVEPATCH section flag) and
      livepatch-specific symbols (marked with SHN_LIVEPATCH symbol section
      index). To apply livepatch relocation sections, livepatch symbols
      referenced by relocs are resolved and then apply_relocate_add() is called
      to apply those relocations.
      
      In addition, remove x86 livepatch relocation code and the s390
      klp_write_module_reloc() function stub. They are no longer needed since
      relocation work has been offloaded to module loader.
      
      Lastly, mark the module as a livepatch module so that the module loader
      canappropriately identify and initialize it.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Reviewed-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com>   # for s390 changes
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      425595a7
    • Jessica Yu's avatar
      module: s390: keep mod_arch_specific for livepatch modules · f31e0960
      Jessica Yu authored
      Livepatch needs to utilize the symbol information contained in the
      mod_arch_specific struct in order to be able to call the s390
      apply_relocate_add() function to apply relocations. Keep a reference to
      syminfo if the module is a livepatch module. Remove the redundant vfree()
      in module_finalize() since module_arch_freeing_init() (which also frees
      those structures) is called in do_init_module(). If the module isn't a
      livepatch module, we free the structures in module_arch_freeing_init() as
      usual.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Reviewed-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Acked-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      f31e0960
    • Jessica Yu's avatar
      module: preserve Elf information for livepatch modules · 1ce15ef4
      Jessica Yu authored
      For livepatch modules, copy Elf section, symbol, and string information
      from the load_info struct in the module loader. Persist copies of the
      original symbol table and string table.
      
      Livepatch manages its own relocation sections in order to reuse module
      loader code to write relocations. Livepatch modules must preserve Elf
      information such as section indices in order to apply livepatch relocation
      sections using the module loader's apply_relocate_add() function.
      
      In order to apply livepatch relocation sections, livepatch modules must
      keep a complete copy of their original symbol table in memory. Normally, a
      stripped down copy of a module's symbol table (containing only "core"
      symbols) is made available through module->core_symtab. But for livepatch
      modules, the symbol table copied into memory on module load must be exactly
      the same as the symbol table produced when the patch module was compiled.
      This is because the relocations in each livepatch relocation section refer
      to their respective symbols with their symbol indices, and the original
      symbol indices (and thus the symtab ordering) must be preserved in order
      for apply_relocate_add() to find the right symbol.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Reviewed-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Acked-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Reviewed-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      1ce15ef4
    • Jessica Yu's avatar
      Elf: add livepatch-specific Elf constants · 8d98e96b
      Jessica Yu authored
      Livepatch manages its own relocation sections and symbols in order to be
      able to reuse module loader code to write relocations. This removes
      livepatch's dependence on separate "dynrela" sections to write relocations
      and also allows livepatch to patch modules that are not yet loaded.
      
      The livepatch Elf relocation section flag (SHF_RELA_LIVEPATCH),
      and symbol section index (SHN_LIVEPATCH) allow both livepatch and the
      module loader to identity livepatch relocation sections and livepatch
      symbols.
      
      Livepatch relocation sections are marked with SHF_RELA_LIVEPATCH to
      indicate to the module loader that it should not apply that relocation
      section and that livepatch will handle them.
      
      The SHN_LIVEPATCH shndx marks symbols that will be resolved by livepatch.
      The module loader ignores these symbols and does not attempt to resolve
      them.
      
      The values of these Elf constants were selected from OS-specific
      ranges according to the definitions from glibc.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Reviewed-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      8d98e96b
  2. 18 Mar, 2016 7 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching · 0f49fc95
      Linus Torvalds authored
      Pull livepatching update from Jiri Kosina:
      
       - cleanup of module notifiers; this depends on a module.c cleanup which
         has been acked by Rusty; from Jessica Yu
      
       - small assorted fixes and MAINTAINERS update
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
        livepatch/module: remove livepatch module notifier
        modules: split part of complete_formation() into prepare_coming_module()
        livepatch: Update maintainers
        livepatch: Fix the error message about unresolvable ambiguity
        klp: remove CONFIG_LIVEPATCH dependency from klp headers
        klp: remove superfluous errors in asm/livepatch.h
      0f49fc95
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 49dc2b71
      Linus Torvalds authored
      Pull trivial tree updates from Jiri Kosina.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
        drivers/rtc: broken link fix
        drm/i915 Fix typos in i915_gem_fence.c
        Docs: fix missing word in REPORTING-BUGS
        lib+mm: fix few spelling mistakes
        MAINTAINERS: add git URL for APM driver
        treewide: Fix typo in printk
      49dc2b71
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · d66435cc
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - functionally equivalent cleanups for wacom driver, making the code
         more readable, from Benjamin Tissoires
      
       - a bunch of improvements and fixes for thingm driver from Heiner
         Kallweit
      
       - bugfixes to out-of-bound access for generic parsing functions (which
         have been there since ever) extract() and implement(), from Dmitry
         Torokhov
      
       - a lot of added / improved device support in sony, wacom, microsoft,
         multitouch and logitech driver, from various people
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (44 commits)
        HID: microsoft: Add ID for MS Wireless Comfort Keyboard
        hid: thingm: reorder calls in thingm_probe
        HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report()
        HID: multitouch: Release all touch slots on reset_resume
        HID: usbhid: enable NO_INIT_REPORTS quirk for Semico USB Keykoard2
        HID: penmount: report only one button for PenMount 6000 USB touchscreen controller
        HID: i2c-hid: Fix suspend/resume when already runtime suspended
        HID: i2c-hid: Add hid-over-i2c name to i2c id table
        HID: multitouch: force retrieving of Win8 signature blob
        HID: Support for CMedia CM6533 HID audio jack controls
        HID: thingm: improve locking
        HID: thingm: switch to managed version of led_classdev_register
        HID: thingm: remove workqueue
        HID: corsair: fix mapping of non-keyboard usages
        HID: wacom: close the wireless receiver on remove()
        HID: wacom: cleanup input devices
        HID: wacom: reuse wacom_parse_and_register() in wireless_work
        HID: wacom: move down wireless_work()
        HID: wacom: break out parsing of device and registering of input
        HID: wacom: break out wacom_intuos_get_tool_type
        ...
      d66435cc
    • Linus Torvalds's avatar
      Merge tag 'gpio-v4.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 1a46712a
      Linus Torvalds authored
      Pull GPIO updates from Linus Walleij:
       "This is the bulk of GPIO changes for kernel v4.6.  There is quite a
        lot of interesting stuff going on.
      
        The patches to other subsystems and arch-wide are ACKed as far as
        possible, though I consider things like per-arch <asm/gpio.h> as
        essentially a part of the GPIO subsystem so it should not be needed.
      
        Core changes:
      
         - The gpio_chip is now a *real device*.  Until now the gpio chips
           were just piggybacking the parent device or (gasp) floating in
           space outside of the device model.
      
           We now finally make GPIO chips devices.  The gpio_chip will create
           a gpio_device which contains a struct device, and this gpio_device
           struct is kept private.  Anything that needs to be kept private
           from the rest of the kernel will gradually be moved over to the
           gpio_device.
      
         - As a result of making the gpio_device a real device, we have added
           resource management, so devm_gpiochip_add_data() will cut down on
           overhead and reduce code lines.  A huge slew of patches convert
           almost all drivers in the subsystem to use this.
      
         - Building on making the GPIO a real device, we add the first step of
           a new userspace ABI: the GPIO character device.  We take small
           steps here, so we first add a pure *information* ABI and the tool
           "lsgpio" that will list all GPIO devices on the system and all
           lines on these devices.
      
           We can now discover GPIOs properly from userspace.  We still have
           not come up with a way to actually *use* GPIOs from userspace.
      
         - To encourage people to use the character device for the future, we
           have it always-enabled when using GPIO.  The old sysfs ABI is still
           opt-in (and can be used in parallel), but is marked as deprecated.
      
           We will keep it around for the foreseeable future, but it will not
           be extended to cover ever more use cases.
      
        Cleanup:
      
         - Bjorn Helgaas removed a whole slew of per-architecture <asm/gpio.h>
           includes.
      
           This dates back to when GPIO was an opt-in feature and no shared
           library even existed: just a header file with proper prototypes was
           provided and all semantics were up to the arch to implement.  These
           patches make the GPIO chip even more a proper device and cleans out
           leftovers of the old in-kernel API here and there.
      
           Still some cruft is left but it's very little now.
      
         - There is still some clamping of return values for .get() going on,
           but we now return sane values in the vast majority of drivers and
           the errorpath is sanitized.  Some patches for powerpc, blackfin and
           unicore still drop in.
      
         - We continue to switch the ARM, MIPS, blackfin, m68k local GPIO
           implementations to use gpiochip_add_data() and cut down on code
           lines.
      
         - MPC8xxx is converted to use the generic GPIO helpers.
      
         - ATH79 is converted to use the generic GPIO helpers.
      
        New drivers:
      
         - WinSystems WS16C48
      
         - Acces 104-DIO-48E
      
         - F81866 (a F7188x variant)
      
         - Qoric (a MPC8xxx variant)
      
         - TS-4800
      
         - SPI serializers (pisosr): simple 74xx shift registers connected to
           SPI to obtain a dirt-cheap output-only GPIO expander.
      
         - Texas Instruments TPIC2810
      
         - Texas Instruments TPS65218
      
         - Texas Instruments TPS65912
      
         - X-Gene (ARM64) standby GPIO controller"
      
      * tag 'gpio-v4.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (194 commits)
        Revert "Share upstreaming patches"
        gpio: mcp23s08: Fix clearing of interrupt.
        gpiolib: Fix comment referring to gpio_*() in gpiod_*()
        gpio: pca953x: Fix pca953x_gpio_set_multiple() on 64-bit
        gpio: xgene: Fix kconfig for standby GIPO contoller
        gpio: Add generic serializer DT binding
        gpio: uapi: use 0xB4 as ioctl() major
        gpio: tps65912: fix bad merge
        Revert "gpio: lp3943: Drop pin_used and lp3943_gpio_request/lp3943_gpio_free"
        gpio: omap: drop dev field from gpio_bank structure
        gpio: mpc8xxx: Slightly update the code for better readability
        gpio: mpc8xxx: Remove *read_reg and *write_reg from struct mpc8xxx_gpio_chip
        gpio: mpc8xxx: Fixup setting gpio direction output
        gpio: mcp23s08: Add support for mcp23s18
        dt-bindings: gpio: altera: Fix altr,interrupt-type property
        gpio: add driver for MEN 16Z127 GPIO controller
        gpio: lp3943: Drop pin_used and lp3943_gpio_request/lp3943_gpio_free
        gpio: timberdale: Switch to devm_ioremap_resource()
        gpio: ts4800: Add IMX51 dependency
        gpiolib: rewrite gpiodev_add_to_list
        ...
      1a46712a
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 82b666ee
      Linus Torvalds authored
      Pull m68knommu updates from Greg Ungerer:
       "The main change is the removal of the bit-rotten 68360 support.  Also
        a fix to always make the ethernet FEC platform info available"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68knommu: remove obsolete 68360 support
        m68knommu: fix FEC platform device registration when driver is modular
      82b666ee
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 588ab3f9
      Linus Torvalds authored
      Pull arm64 updates from Catalin Marinas:
       "Here are the main arm64 updates for 4.6.  There are some relatively
        intrusive changes to support KASLR, the reworking of the kernel
        virtual memory layout and initial page table creation.
      
        Summary:
      
         - Initial page table creation reworked to avoid breaking large block
           mappings (huge pages) into smaller ones.  The ARM architecture
           requires break-before-make in such cases to avoid TLB conflicts but
           that's not always possible on live page tables
      
         - Kernel virtual memory layout: the kernel image is no longer linked
           to the bottom of the linear mapping (PAGE_OFFSET) but at the bottom
           of the vmalloc space, allowing the kernel to be loaded (nearly)
           anywhere in physical RAM
      
         - Kernel ASLR: position independent kernel Image and modules being
           randomly mapped in the vmalloc space with the randomness is
           provided by UEFI (efi_get_random_bytes() patches merged via the
           arm64 tree, acked by Matt Fleming)
      
         - Implement relative exception tables for arm64, required by KASLR
           (initial code for ARCH_HAS_RELATIVE_EXTABLE added to lib/extable.c
           but actual x86 conversion to deferred to 4.7 because of the merge
           dependencies)
      
         - Support for the User Access Override feature of ARMv8.2: this
           allows uaccess functions (get_user etc.) to be implemented using
           LDTR/STTR instructions.  Such instructions, when run by the kernel,
           perform unprivileged accesses adding an extra level of protection.
           The set_fs() macro is used to "upgrade" such instruction to
           privileged accesses via the UAO bit
      
         - Half-precision floating point support (part of ARMv8.2)
      
         - Optimisations for CPUs with or without a hardware prefetcher (using
           run-time code patching)
      
         - copy_page performance improvement to deal with 128 bytes at a time
      
         - Sanity checks on the CPU capabilities (via CPUID) to prevent
           incompatible secondary CPUs from being brought up (e.g.  weird
           big.LITTLE configurations)
      
         - valid_user_regs() reworked for better sanity check of the
           sigcontext information (restored pstate information)
      
         - ACPI parking protocol implementation
      
         - CONFIG_DEBUG_RODATA enabled by default
      
         - VDSO code marked as read-only
      
         - DEBUG_PAGEALLOC support
      
         - ARCH_HAS_UBSAN_SANITIZE_ALL enabled
      
         - Erratum workaround Cavium ThunderX SoC
      
         - set_pte_at() fix for PROT_NONE mappings
      
         - Code clean-ups"
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (99 commits)
        arm64: kasan: Fix zero shadow mapping overriding kernel image shadow
        arm64: kasan: Use actual memory node when populating the kernel image shadow
        arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission
        arm64: Fix misspellings in comments.
        arm64: efi: add missing frame pointer assignment
        arm64: make mrs_s prefixing implicit in read_cpuid
        arm64: enable CONFIG_DEBUG_RODATA by default
        arm64: Rework valid_user_regs
        arm64: mm: check at build time that PAGE_OFFSET divides the VA space evenly
        arm64: KVM: Move kvm_call_hyp back to its original localtion
        arm64: mm: treat memstart_addr as a signed quantity
        arm64: mm: list kernel sections in order
        arm64: lse: deal with clobbered IP registers after branch via PLT
        arm64: mm: dump: Use VA_START directly instead of private LOWEST_ADDR
        arm64: kconfig: add submenu for 8.2 architectural features
        arm64: kernel: acpi: fix ioremap in ACPI parking protocol cpu_postboot
        arm64: Add support for Half precision floating point
        arm64: Remove fixmap include fragility
        arm64: Add workaround for Cavium erratum 27456
        arm64: mm: Mark .rodata as RO
        ...
      588ab3f9
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.6-rc1' of... · 3d15cfdb
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull Kselftest updates from Shuah Khan:
       "This update for Kselftest adds:
      
         - A new feature to create test-specific kconfig fragments.  This
           feature helps configure Kselftests to test specific Kernel
           Configuration options as opposed to defconfig.
      
         - A new test for Media Controller API
      
         - A few fixes"
      
      * tag 'linux-kselftest-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests: media_dcevice_test fix usage information
        selftests: media_dcevice_test fix to handle ioctl failure case
        selftests: add missing .gitignore file or entry
        Makefile: add kselftest-merge
        selftests: create test-specific kconfig fragments
        selftests: breakpoint: add step_after_suspend_test
        selftests: add a new test for Media Controller API
      3d15cfdb
  3. 17 Mar, 2016 27 commits
    • Linus Torvalds's avatar
      Merge tag 'please-pull-pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · 5cd0911a
      Linus Torvalds authored
      Pull pstore update from Tony Luck:
       "Allow ram backend to be configured with addresses above 4GB"
      
      * tag 'please-pull-pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        pstore: Add support for 64 Bit address space
      5cd0911a
    • Linus Torvalds's avatar
      Merge tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 1ca80a0a
      Linus Torvalds authored
      Pull GFS2 updates from Bob Peterson:
       "We only have six patches ready for this merge window:
      
         - Arnd Bergmann contributed a patch that fixes an uninitialized
           variable warning.
      
         - The second patch avoids a kernel panic due to referencing an iopen
           glock that may not be held, in an error path.
      
         - The third patch fixes a rounding error that caused xfs_tests direct
           IO write "fsx" tests to fail on GFS2.
      
         - The fourth patch tidies up the code path when glocks are being
           reused to recreate a dinode that was recently deleted.
      
         - The fifth reverts an ages-old patch that should no longer be
           needed, and which interfered with the transition of dinodes from
           unlinked to free.
      
         - And lastly, a patch to eliminate a function parameter that's not
           needed"
      
      * tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        GFS2: Eliminate parameter non_block on gfs2_inode_lookup
        GFS2: Don't filter out I_FREEING inodes anymore
        GFS2: Prevent delete work from occurring on glocks used for create
        GFS2: Fix direct IO write rounding error
        gfs2: avoid uninitialized variable warning
        GFS2: Check if iopen is held when deleting inode
      1ca80a0a
    • Linus Torvalds's avatar
      Merge tag 'dlm-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · d77bed0d
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
       "Previous changes introduced the use of socket error reporting for dlm
        sockets.  This set includes two fixes in how the socket error
        callbacks are used"
      
      * tag 'dlm-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
        DLM: Save and restore socket callbacks properly
        DLM: Replace nodeid_to_addr with kernel_getpeername
      d77bed0d
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · faeb20ec
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "Performance improvements in SEEK_DATA and xattr scalability
        improvements, plus a lot of clean ups and bug fixes"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (38 commits)
        ext4: clean up error handling in the MMP support
        jbd2: do not fail journal because of frozen_buffer allocation failure
        ext4: use __GFP_NOFAIL in ext4_free_blocks()
        ext4: fix compile error while opening the macro DOUBLE_CHECK
        ext4: print ext4 mount option data_err=abort correctly
        ext4: fix NULL pointer dereference in ext4_mark_inode_dirty()
        ext4: drop unneeded BUFFER_TRACE in ext4_delete_inline_entry()
        ext4: fix misspellings in comments.
        jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path
        ext4: more efficient SEEK_DATA implementation
        ext4: cleanup handling of bh->b_state in DAX mmap
        ext4: return hole from ext4_map_blocks()
        ext4: factor out determining of hole size
        ext4: fix setting of referenced bit in ext4_es_lookup_extent()
        ext4: remove i_ioend_count
        ext4: simplify io_end handling for AIO DIO
        ext4: move trans handling and completion deferal out of _ext4_get_block
        ext4: rename and split get blocks functions
        ext4: use i_mutex to serialize unaligned AIO DIO
        ext4: pack ioend structure better
        ...
      faeb20ec
    • Linus Torvalds's avatar
      Merge tag 'configfs-for-linus' of git://git.infradead.org/users/hch/configfs · 364e8dd9
      Linus Torvalds authored
      Pull configfs updates from Christoph Hellwig:
      
       - A large patch from me to simplify setting up the list of default
         groups by actually implementing it as a list instead of an array.
      
       - a small Y2083 prep patch from Deepa Dinamani.  Probably doesn't
         matter on it's own, but it seems like he is trying to get rid of all
         CURRENT_TIME uses in file systems, which is a worthwhile goal.
      
      * tag 'configfs-for-linus' of git://git.infradead.org/users/hch/configfs:
        configfs: switch ->default groups to a linked list
        configfs: Replace CURRENT_TIME by current_fs_time()
      364e8dd9
    • Linus Torvalds's avatar
      Merge tag 'usb-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 48d10bda
      Linus Torvalds authored
      Pull USB updates from Greg KH:
       "Here is the big USB patchset for 4.6-rc1.
      
        The normal mess is here, gadget and xhci fixes and updates, and lots
        of other driver updates and cleanups as well.  Full details are in the
        shortlog.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'usb-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (266 commits)
        USB: core: let USB device know device node
        usb: devio: Add ioctl to disallow detaching kernel USB drivers.
        usb: gadget: f_acm: Fix configfs attr name
        usb: udc: lpc32xx: remove USB PLL and USB OTG clock management
        usb: udc: lpc32xx: remove direct access to clock controller registers
        usb: udc: lpc32xx: switch to clock prepare/unprepare model
        usb: renesas_usbhs: gadget: fix giveback status code in usbhsg_pipe_disable()
        usb: gadget: renesas_usb3: Use ARCH_RENESAS
        usb: dwc2: Fix issues in dwc2_complete_non_isoc_xfer_ddma()
        usb: dwc2: Add support for Lantiq ARX and XRX SoCs
        usb: phy: generic: Handle late registration of gadget
        usb: gadget: bdc_udc: fix race condition in bdc_udc_exit()
        usb: musb: core: added missing const qualifier to musb_hdrc_platform_data::config
        usb: dwc2: Move host-specific core functions into hcd.c
        usb: dwc2: Move register save and restore functions
        usb: dwc2: Use kmem_cache_free()
        usb: dwc2: host: If using uframe scheduler, end splits better
        usb: dwc2: host: Totally redo the microframe scheduler
        usb: dwc2: host: Properly set even/odd frame
        usb: dwc2: host: Add dwc2_hcd_get_future_frame_number() call
        ...
      48d10bda
    • Linus Torvalds's avatar
      Merge tag 'tty-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 96b9b1c9
      Linus Torvalds authored
      Pull tty/serial updates from Greg KH:
       "Here's the big tty/serial driver pull request for 4.6-rc1.
      
        Lots of changes in here, Peter has been on a tear again, with lots of
        refactoring and bugs fixes, many thanks to the great work he has been
        doing.  Lots of driver updates and fixes as well, full details in the
        shortlog.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'tty-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (220 commits)
        serial: 8250: describe CONFIG_SERIAL_8250_RSA
        serial: samsung: optimize UART rx fifo access routine
        serial: pl011: add mark/space parity support
        serial: sa1100: make sa1100_register_uart_fns a function
        tty: serial: 8250: add MOXA Smartio MUE boards support
        serial: 8250: convert drivers to use up_to_u8250p()
        serial: 8250/mediatek: fix building with SERIAL_8250=m
        serial: 8250/ingenic: fix building with SERIAL_8250=m
        serial: 8250/uniphier: fix modular build
        Revert "drivers/tty/serial: make 8250/8250_ingenic.c explicitly non-modular"
        Revert "drivers/tty/serial: make 8250/8250_mtk.c explicitly non-modular"
        serial: mvebu-uart: initial support for Armada-3700 serial port
        serial: mctrl_gpio: Add missing module license
        serial: ifx6x60: avoid uninitialized variable use
        tty/serial: at91: fix bad offset for UART timeout register
        tty/serial: at91: restore dynamic driver binding
        serial: 8250: Add hardware dependency to RT288X option
        TTY, devpts: document pty count limiting
        tty: goldfish: support platform_device with id -1
        drivers: tty: goldfish: Add device tree bindings
        ...
      96b9b1c9
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 8eee93e2
      Linus Torvalds authored
      Pull char/misc updates from Greg KH:
       "Here is the big char/misc driver update for 4.6-rc1.
      
        The majority of the patches here is hwtracing and some new mic
        drivers, but there's a lot of other driver updates as well.  Full
        details in the shortlog.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'char-misc-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (238 commits)
        goldfish: Fix build error of missing ioremap on UM
        nvmem: mediatek: Fix later provider initialization
        nvmem: imx-ocotp: Fix return value of imx_ocotp_read
        nvmem: Fix dependencies for !HAS_IOMEM archs
        char: genrtc: replace blacklist with whitelist
        drivers/hwtracing: make coresight-etm-perf.c explicitly non-modular
        drivers: char: mem: fix IS_ERROR_VALUE usage
        char: xillybus: Fix internal data structure initialization
        pch_phub: return -ENODATA if ROM can't be mapped
        Drivers: hv: vmbus: Support kexec on ws2012 r2 and above
        Drivers: hv: vmbus: Support handling messages on multiple CPUs
        Drivers: hv: utils: Remove util transport handler from list if registration fails
        Drivers: hv: util: Pass the channel information during the init call
        Drivers: hv: vmbus: avoid unneeded compiler optimizations in vmbus_wait_for_unload()
        Drivers: hv: vmbus: remove code duplication in message handling
        Drivers: hv: vmbus: avoid wait_for_completion() on crash
        Drivers: hv: vmbus: don't loose HVMSG_TIMER_EXPIRED messages
        misc: at24: replace memory_accessor with nvmem_device_read
        eeprom: 93xx46: extend driver to plug into the NVMEM framework
        eeprom: at25: extend driver to plug into the NVMEM framework
        ...
      8eee93e2
    • Linus Torvalds's avatar
      Merge tag 'driver-core-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 1a4ab084
      Linus Torvalds authored
      Pull driver core updates from Greg KH:
       "Just a few patches this time around for the 4.6-rc1 merge window.
        Largest is a new firmware driver, but there are some other updates to
        the driver core in here as well, the shortlog has the details.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'driver-core-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        Revert "driver-core: platform: probe of-devices only using list of compatibles"
        firmware: qemu config needs I/O ports
        firmware: qemu_fw_cfg.c: fix typo FW_CFG_DATA_OFF
        driver-core: platform: probe of-devices only using list of compatibles
        driver-core: platform: fix typo in documentation for multi-driver helper
        component: remove impossible condition
        drivers: dma-coherent: simplify dma_init_coherent_memory return value
        devicetree: update documentation for fw_cfg ARM bindings
        firmware: create directory hierarchy for sysfs fw_cfg entries
        firmware: introduce sysfs driver for QEMU's fw_cfg device
        kobject: export kset_find_obj() for module use
        driver core: bus: use to_subsys_private and to_device_private_bus
        driver core: bus: use list_for_each_entry*
        debugfs: Add stub function for debugfs_create_automount().
        kernfs: make kernfs_walk_ns() use kernfs_pr_cont_buf[]
      1a4ab084
    • Linus Torvalds's avatar
      Merge tag 'vfio-v4.6-rc1' of git://github.com/awilliam/linux-vfio · 45cb5230
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
       "Various enablers for assignment of Intel graphics devices and future
        support of vGPU devices (Alex Williamson).  This includes
      
         - Handling the vfio type1 interface as an API rather than a specific
           implementation, allowing multiple type1 providers.
      
         - Capability chains, similar to PCI device capabilities, that allow
           extending ioctls.  Extensions here include device specific regions
           and sparse mmap descriptions.  The former is used to expose non-PCI
           regions for IGD, including the OpRegion (particularly the Video
           BIOS Table), and read only PCI config access to the host and LPC
           bridge as drivers often depend on identifying those devices.
      
           Sparse mmaps here are used to describe the MSIx vector table, which
           vfio has always protected from mmap, but never had an API to
           explicitly define that protection.  In future vGPU support this is
           expected to allow the description of PCI BARs that may mix direct
           access and emulated access within a single region.
      
         - The ability to expose the shadow ROM as an option ROM as IGD use
           cases may rely on the ROM even though the physical device does not
           make use of a PCI option ROM BAR"
      
      * tag 'vfio-v4.6-rc1' of git://github.com/awilliam/linux-vfio:
        vfio/pci: return -EFAULT if copy_to_user fails
        vfio/pci: Expose shadow ROM as PCI option ROM
        vfio/pci: Intel IGD host and LCP bridge config space access
        vfio/pci: Intel IGD OpRegion support
        vfio/pci: Enable virtual register in PCI config space
        vfio/pci: Add infrastructure for additional device specific regions
        vfio: Define device specific region type capability
        vfio/pci: Include sparse mmap capability for MSI-X table regions
        vfio: Define sparse mmap capability for regions
        vfio: Add capability chain helpers
        vfio: Define capability chains
        vfio: If an IOMMU backend fails, keep looking
        vfio/pci: Fix unsigned comparison overflow
      45cb5230
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 3c0b8d1c
      Linus Torvalds authored
      Pull HSI updates from Sebastian Reichel:
       "nokia-modem: add N950 and N9 support"
      
      * tag 'hsi-for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: ssi-protocol: Use handshake logic from n950
        HSI: nokia-modem: add n950 and n9 support
      3c0b8d1c
    • Linus Torvalds's avatar
      Merge tag 'for-v4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 9cc984e4
      Linus Torvalds authored
      Pull power supply and reset changes from Sebastian Reichel:
       - add types for USB Type C and PD chargers
       - add act8945a charger driver
       - add ACPI/DT bindings for goldfish-battery
       - add support for versatile reset controller
       - misc fixes
      
      * tag 'for-v4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (24 commits)
        power: pm2301-charger: use __maybe_unused to hide pm functions
        power: ipaq-micro-battery: use __maybe_unused to hide pm functions
        power_supply: 88pm860x_charger: do not pass NULL to power_supply_put
        jz4740-battery: Correct voltage change check
        power_supply: lp8788-charger: initialize boolean 'found'
        goldfish: Enable ACPI-based enumeration for goldfish battery
        power: goldfish_battery: add devicetree bindings
        power: act8945a: add charger driver for ACT8945A
        power: add documentation for ACT8945A's charger DT bindings
        ARM: dts: n900: Rename isp1704 to isp1707 to match correct name
        power_supply: bq27xxx_battery: Add of modalias and match table when CONFIG_OF is enabled
        power_supply: bq2415x_charger: Add of modalias and match table when CONFIG_OF is enabled
        power_supply: bq2415x_charger: Do not add acpi modalias when CONFIG_ACPI is not enabled
        power_supply: isp1704_charger: Add compatible of match for nxp,isp1707
        power_supply: isp1704_charger: Error messages when probe fail
        power_supply: Add types for USB Type C and PD chargers
        power: bq24735-charger: add 'ti,external-control' option
        power: bq24735-charger: document 'ti,external-control' option
        power: bq24735-charger: fix failed i2c with ac-detect
        power: reset: Fix dependencies for !HAS_IOMEM archs
        ...
      9cc984e4
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-4.6-rc1' of git://git.infradead.org/users/vkoul/slave-dma · b5b131c7
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
       "This is smallish update with minor changes to core and new driver and
        usual updates.  Nothing super exciting here..
      
         - We have made slave address as physical to enable driver to do the
           mapping.
      
         - We now expose the maxburst for slave dma as new capability so
           clients can know this and program accordingly
      
         - addition of device synchronize callbacks on omap and edma.
      
         - pl330 updates to support DMAFLUSHP for Rockchip platforms.
      
         - Updates and improved sg handling in Xilinx VDMA driver.
      
         - New hidma qualcomm dma driver, though some bits are still in
           progress"
      
      * tag 'dmaengine-4.6-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (40 commits)
        dmaengine: IOATDMA: revise channel reset workaround on CB3.3 platforms
        dmaengine: add Qualcomm Technologies HIDMA channel driver
        dmaengine: add Qualcomm Technologies HIDMA management driver
        dmaengine: hidma: Add Device Tree binding
        dmaengine: qcom_bam_dma: move to qcom directory
        dmaengine: tegra: Move of_device_id table near to its user
        dmaengine: xilinx_vdma: Remove unnecessary variable initializations
        dmaengine: sirf: use __maybe_unused to hide pm functions
        dmaengine: rcar-dmac: clear pertinence number of channels
        dmaengine: sh: shdmac: don't open code of_device_get_match_data()
        dmaengine: tegra: don't open code of_device_get_match_data()
        dmaengine: qcom_bam_dma: Make driver work for BE
        dmaengine: sun4i: support module autoloading
        dma/mic_x100_dma: IS_ERR() vs PTR_ERR() typo
        dmaengine: xilinx_vdma: Use readl_poll_timeout instead of do while loop's
        dmaengine: xilinx_vdma: Simplify spin lock handling
        dmaengine: xilinx_vdma: Fix issues with non-parking mode
        dmaengine: xilinx_vdma: Improve SG engine handling
        dmaengine: pl330: fix to support the burst mode
        dmaengine: make slave address physical
        ...
      b5b131c7
    • Linus Torvalds's avatar
      Merge tag 'rproc-v4.6' of git://github.com/andersson/remoteproc · c7eec380
      Linus Torvalds authored
      Pull remoteproc updates from Bjorn Andersson:
       "New driver for controlling ST's remote processors and a couple of
        minor fixes.  Also includes the addition of myself as co-maintainer"
      Acked-by: default avatarOhad Ben-Cohen <ohad@wizery.com>
      
      * tag 'rproc-v4.6' of git://github.com/andersson/remoteproc:
        MAINTAINERS: Add co-maintainer for remoteproc subsystems
        remoteproc: Supply controller driver for ST's Remote Processors
        remoteproc: debugfs: Add ability to boot remote processor using debugfs
        remoteproc: dt: Provide bindings for ST's Remote Processor Controller driver
        remoteproc: debugfs: Return error on invalid 'count' value
        remoteproc/wkup_m3: Use MODULE_DEVICE_TABLE to export alias
        remoteproc: report error if resource table doesn't exist
      c7eec380
    • Linus Torvalds's avatar
      Merge tag 'docs-for-linus' of git://git.lwn.net/linux · 37aa7319
      Linus Torvalds authored
      Pul documentation update from Jon Corbet:
       "Another relatively boring cycle for the docs tree: typo fixes,
        translation updates, etc"
      
      * tag 'docs-for-linus' of git://git.lwn.net/linux:
        modsign: Fix documentation on module signing enforcement parameter.
        Doc: nfs: Fix typos in Documentation/filesystems/nfs
        Documentation: kselftest: Remove duplicate word
        doc: fix grammar
        Documentation: Howto: Fixed subtitles style
        Doc: ARM: Fix a typo in clksrc-change-registers.awk
        Documentation/ko_KR: update maintainer information
        Documentation: Fix int/unsigned int comparison
        Documentation: Chinese translation of arm64/silicon-errata.txt
        Documentation:Update Documentation/zh_CN/arm64/booting.txt
        Documentation: HOWTO: remove obsolete info about regression postings
        Doc: ja_JP: Fix a typo in HOWTO
        Doc: i2c: Fix typo in Documentation/i2c
        Doc: DocBook: Fix a typo in device-drivers.tmpl
        Remove "arch" usage in Documentation/features/list-arch.sh
        README: cosmetic fixes
        Documentation/CodingStyle: add space before parenthesis in example macro
        SubmittingPatches: fix spelling of "git send-email"
      37aa7319
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · bb7aeae3
      Linus Torvalds authored
      Pull security layer updates from James Morris:
       "There are a bunch of fixes to the TPM, IMA, and Keys code, with minor
        fixes scattered across the subsystem.
      
        IMA now requires signed policy, and that policy is also now measured
        and appraised"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (67 commits)
        X.509: Make algo identifiers text instead of enum
        akcipher: Move the RSA DER encoding check to the crypto layer
        crypto: Add hash param to pkcs1pad
        sign-file: fix build with CMS support disabled
        MAINTAINERS: update tpmdd urls
        MODSIGN: linux/string.h should be #included to get memcpy()
        certs: Fix misaligned data in extra certificate list
        X.509: Handle midnight alternative notation in GeneralizedTime
        X.509: Support leap seconds
        Handle ISO 8601 leap seconds and encodings of midnight in mktime64()
        X.509: Fix leap year handling again
        PKCS#7: fix unitialized boolean 'want'
        firmware: change kernel read fail to dev_dbg()
        KEYS: Use the symbol value for list size, updated by scripts/insert-sys-cert
        KEYS: Reserve an extra certificate symbol for inserting without recompiling
        modsign: hide openssl output in silent builds
        tpm_tis: fix build warning with tpm_tis_resume
        ima: require signed IMA policy
        ima: measure and appraise the IMA policy itself
        ima: load policy using path
        ...
      bb7aeae3
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 70477371
      Linus Torvalds authored
      Pull crypto update from Herbert Xu:
       "Here is the crypto update for 4.6:
      
        API:
         - Convert remaining crypto_hash users to shash or ahash, also convert
           blkcipher/ablkcipher users to skcipher.
         - Remove crypto_hash interface.
         - Remove crypto_pcomp interface.
         - Add crypto engine for async cipher drivers.
         - Add akcipher documentation.
         - Add skcipher documentation.
      
        Algorithms:
         - Rename crypto/crc32 to avoid name clash with lib/crc32.
         - Fix bug in keywrap where we zero the wrong pointer.
      
        Drivers:
         - Support T5/M5, T7/M7 SPARC CPUs in n2 hwrng driver.
         - Add PIC32 hwrng driver.
         - Support BCM6368 in bcm63xx hwrng driver.
         - Pack structs for 32-bit compat users in qat.
         - Use crypto engine in omap-aes.
         - Add support for sama5d2x SoCs in atmel-sha.
         - Make atmel-sha available again.
         - Make sahara hashing available again.
         - Make ccp hashing available again.
         - Make sha1-mb available again.
         - Add support for multiple devices in ccp.
         - Improve DMA performance in caam.
         - Add hashing support to rockchip"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (116 commits)
        crypto: qat - remove redundant arbiter configuration
        crypto: ux500 - fix checks of error code returned by devm_ioremap_resource()
        crypto: atmel - fix checks of error code returned by devm_ioremap_resource()
        crypto: qat - Change the definition of icp_qat_uof_regtype
        hwrng: exynos - use __maybe_unused to hide pm functions
        crypto: ccp - Add abstraction for device-specific calls
        crypto: ccp - CCP versioning support
        crypto: ccp - Support for multiple CCPs
        crypto: ccp - Remove check for x86 family and model
        crypto: ccp - memset request context to zero during import
        lib/mpi: use "static inline" instead of "extern inline"
        lib/mpi: avoid assembler warning
        hwrng: bcm63xx - fix non device tree compatibility
        crypto: testmgr - allow rfc3686 aes-ctr variants in fips mode.
        crypto: qat - The AE id should be less than the maximal AE number
        lib/mpi: Endianness fix
        crypto: rockchip - add hash support for crypto engine in rk3288
        crypto: xts - fix compile errors
        crypto: doc - add skcipher API documentation
        crypto: doc - update AEAD AD handling
        ...
      70477371
    • Jiri Kosina's avatar
      Merge branches 'for-4.5/upstream-fixes', 'for-4.6/cmedia', 'for-4.6/i2c-hid',... · e1c9b9ff
      Jiri Kosina authored
      Merge branches 'for-4.5/upstream-fixes', 'for-4.6/cmedia', 'for-4.6/i2c-hid', 'for-4.6/logitech', 'for-4.6/multitouch', 'for-4.6/penmount', 'for-4.6/sony', 'for-4.6/thingm', 'for-4.6/upstream' and 'for-4.6/wacom' into for-linus
      e1c9b9ff
    • Jessica Yu's avatar
      livepatch/module: remove livepatch module notifier · 7e545d6e
      Jessica Yu authored
      Remove the livepatch module notifier in favor of directly enabling and
      disabling patches to modules in the module loader. Hard-coding the
      function calls ensures that ftrace_module_enable() is run before
      klp_module_coming() during module load, and that klp_module_going() is
      run before ftrace_release_mod() during module unload. This way, ftrace
      and livepatch code is run in the correct order during the module
      load/unload sequence without dependence on the module notifier call chain.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Reviewed-by: default avatarPetr Mladek <pmladek@suse.cz>
      Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Acked-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      7e545d6e
    • Jessica Yu's avatar
      modules: split part of complete_formation() into prepare_coming_module() · 4c973d16
      Jessica Yu authored
      Put all actions in complete_formation() that are performed after
      module->state is set to MODULE_STATE_COMING into a separate function
      prepare_coming_module(). This split prepares for the removal of the
      livepatch module notifiers in favor of hard-coding function calls to
      klp_module_{coming,going} in the module loader.
      
      The complete_formation -> prepare_coming_module split will also make error
      handling easier since we can jump to the appropriate error label to do any
      module GOING cleanup after all the COMING-actions have completed.
      Signed-off-by: default avatarJessica Yu <jeyu@redhat.com>
      Reviewed-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Reviewed-by: default avatarPetr Mladek <pmladek@suse.cz>
      Acked-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      4c973d16
    • Linus Walleij's avatar
      Revert "Share upstreaming patches" · ccbd805a
      Linus Walleij authored
      This reverts commit a101ad94.
      ccbd805a
    • Linus Torvalds's avatar
      Merge tag 'fbdev-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · 09fd671c
      Linus Torvalds authored
      Pull fbdev updates from Tomi Valkeinen:
      
       - Miscallaneous small fixes to various fbdev drivers
      
       - Remove fb_rotate, which was never used
      
       - pmag fb improvements
      
      * tag 'fbdev-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (21 commits)
        xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND"
        video: fbdev: sis: remove unused variable
        drivers/video: make fbdev/sunxvr2500.c explicitly non-modular
        drivers/video: make fbdev/sunxvr1000.c explicitly non-modular
        drivers/video: make fbdev/sunxvr500.c explicitly non-modular
        video: exynos: fix modular build
        fbdev: da8xx-fb: fix videomodes of lcd panels
        fbdev: kill fb_rotate
        video: fbdev: bt431: Correct cursor format control macro
        video: fbdev: pmag-ba-fb: Optimize Bt455 colormap addressing
        video: fbdev: pmag-ba-fb: Fix and rework Bt455 colormap handling
        video: fbdev: bt455: Remove unneeded colormap helpers for cursor support
        video: fbdev: pmag-aa-fb: Report video timings
        video: fbdev: pmag-aa-fb: Enable building as a module
        video: fbdev: pmag-aa-fb: Adapt to current APIs
        video: fbdev: pmag-ba-fb: Fix the lower margin size
        fbdev: sh_mobile_lcdc: Use ARCH_RENESAS
        fbdev: n411: check return value
        fbdev: exynos: fix IS_ERR_VALUE usage
        video: Use bool instead int pointer for get_opt_bool() argument
        ...
      09fd671c
    • Linus Torvalds's avatar
      Merge tag 'media/v4.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · bace3db5
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
       - Added support for some new video formats
       - mn88473 DVB frontend driver got promoted from staging
       - several improvements at the VSP1 driver
       - several cleanups and improvements at the Media Controller
       - added Media Controller support to snd-usb-audio.  Currently, enabled
         only for au0828-based V4L2/DVB boards
       - Several improvements at nuvoton-cir: it now supports wake up codes
       - Add media controller support to em28xx and saa7134 drivers
       - coda driver now accepts NXP distributed firmware files
       - Some legacy SoC camera drivers will be moving to staging, as they're
         outdated and nobody so far is willing to fix and convert them to use
         the current media framework
       - As usual, lots of cleanups, improvements and new board additions.
      
      * tag 'media/v4.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (381 commits)
        media: au0828 disable tuner to demod link in au0828_media_device_register()
        [media] touptek: cast char types on %x printk
        [media] touptek: don't DMA at the stack
        [media] mceusb: use %*ph for small buffer dumps
        [media] v4l: exynos4-is: Drop unneeded check when setting up fimc-lite links
        [media] v4l: vsp1: Check if an entity is a subdev with the right function
        [media] hide unused functions for !MEDIA_CONTROLLER
        [media] em28xx: fix Terratec Grabby AC97 codec detection
        [media] media: add prefixes to interface types
        [media] media: rc: nuvoton: switch attribute wakeup_data to text
        [media] v4l2-ioctl: fix YUV422P pixel format description
        [media] media: fix null pointer dereference in v4l_vb2q_enable_media_source()
        [media] v4l2-mc.h: fix yet more compiler errors
        [media] staging/media: add missing TODO files
        [media] media.h: always start with 1 for the audio entities
        [media] sound/usb: Use meaninful names for goto labels
        [media] v4l2-mc.h: fix compiler warnings
        [media] media: au0828 audio mixer isn't connected to decoder
        [media] sound/usb: Use Media Controller API to share media resources
        [media] dw2102: add support for TeVii S662
        ...
      bace3db5
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 8759957b
      Linus Torvalds authored
      Pull libnvdimm updates from Dan Williams:
      
       - Asynchronous address range scrub:
      
           Given the capacities of next generation persistent memory devices a
           scrub operation to find all poison may take 10s of seconds.  We
           want this scrub work to be done asynchronously with the rest of
           system initialization, so we move it out of line from the NFIT
           probing, i.e. acpi_nfit_add().
      
       - Clear poison:
      
           ACPI 6.1 introduces the ability to send "clear error" commands to
           the ACPI0012:00 device representing the root of an "nvdimm bus".
           Similar to relocating a bad block on a disk, this support clears
           media errors in response to a write.
      
       - Persistent memory resource tracking:
      
           A persistent memory range may be designated as simply "reserved" by
           platform firmware in the efi/e820 memory map.  Later when the NFIT
           driver loads it discovers that the range is "Persistent Memory".
      
           The NFIT bus driver inserts a resource to advertise that
           "persistent" attribute in the system resource tree for /proc/iomem
           and kernel-internal usages.
      
       - Miscellaneous cleanups and fixes:
      
           Workaround section misaligned pmem ranges when allocating a struct
           page memmap, fix handling of the read-only case in the ioctl path,
           and clean up block device major number allocation.
      
      * tag 'libnvdimm-for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (26 commits)
        libnvdimm, pmem: clear poison on write
        libnvdimm, pmem: fix kmap_atomic() leak in error path
        nvdimm/btt: don't allocate unused major device number
        nvdimm/blk: don't allocate unused major device number
        pmem: don't allocate unused major device number
        ACPI: Change NFIT driver to insert new resource
        resource: Export insert_resource and remove_resource
        resource: Add remove_resource interface
        resource: Change __request_region to inherit from immediate parent
        libnvdimm, pmem: fix ia64 build, use PHYS_PFN
        nfit, libnvdimm: clear poison command support
        libnvdimm, pfn: 'resource'-address and 'size' attributes for pfn devices
        libnvdimm, pmem: adjust for section collisions with 'System RAM'
        libnvdimm, pmem: fix 'pfn' support for section-misaligned namespaces
        libnvdimm: Fix security issue with DSM IOCTL.
        libnvdimm: Clean-up access mode check.
        tools/testing/nvdimm: expand ars unit testing
        nfit: disable userspace initiated ars during scrub
        nfit: scrub and register regions in a workqueue
        nfit, libnvdimm: async region scrub workqueue
        ...
      8759957b
    • Linus Torvalds's avatar
      Merge tag 'dm-4.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm · 6968e6f8
      Linus Torvalds authored
      Pull device mapper updates from Mike Snitzer:
      
       - Most attention this cycle went to optimizing blk-mq request-based DM
         (dm-mq) that is used exclussively by DM multipath:
      
           - A stable fix for dm-mq that eliminates excessive context
             switching offers the biggest performance improvement (for both
             IOPs and throughput).
      
           - But more work is needed, during the next cycle, to reduce
             spinlock contention in DM multipath on large NUMA systems.
      
       - A stable fix for a NULL pointer seen when DM stats is enabled on a DM
         multipath device that must requeue an IO due to path failure.
      
       - A stable fix for DM snapshot to disallow the COW and origin devices
         from being identical.  This amounts to graceful failure in the face
         of userspace error because these devices shouldn't ever be identical.
      
       - Stable fixes for DM cache and DM thin provisioning to address crashes
         seen if/when their respective metadata device experiences failures
         that cause the transition to 'fail_io' mode.
      
       - The DM cache 'mq' policy is now an alias for the 'smq' policy.  The
         'smq' policy proved to be consistently better than 'mq'.  As such
         'mq', with all its complex user-facing tunables, has been eliminated.
      
       - Improve DM thin provisioning to consistently return -ENOSPC once the
         thin-pool's data volume is out of space.
      
       - Improve DM core to properly handle error propagation if
         bio_integrity_clone() fails in clone_bio().
      
       - Other small cleanups and improvements to DM core.
      
      * tag 'dm-4.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (41 commits)
        dm: fix rq_end_stats() NULL pointer in dm_requeue_original_request()
        dm thin: consistently return -ENOSPC if pool has run out of data space
        dm cache: bump the target version
        dm cache: make sure every metadata function checks fail_io
        dm: add missing newline between DM_DEBUG_BLOCK_STACK_TRACING and DM_BUFIO
        dm cache policy smq: clarify that mq registration failure was for 'mq'
        dm: return error if bio_integrity_clone() fails in clone_bio()
        dm thin metadata: don't issue prefetches if a transaction abort has failed
        dm snapshot: disallow the COW and origin devices from being identical
        dm cache: make the 'mq' policy an alias for 'smq'
        dm: drop unnecessary assignment of md->queue
        dm: reorder 'struct mapped_device' members to fix alignment and holes
        dm: remove dummy definition of 'struct dm_table'
        dm: add 'dm_numa_node' module parameter
        dm thin metadata: remove needless newline from subtree_dec() DMERR message
        dm mpath: cleanup reinstate_path() et al based on code review
        dm mpath: remove __pgpath_busy forward declaration, rename to pgpath_busy
        dm mpath: switch from 'unsigned' to 'bool' for flags where appropriate
        dm round robin: use percpu 'repeat_count' and 'current_path'
        dm path selector: remove 'repeat_count' return from .select_path hook
        ...
      6968e6f8
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · cae8da04
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This pull includes driver updates from the usual suspects (stex, hpsa,
        ncr5380, scsi_dh, qla2xxx, be2iscsi, hisi_sas, cxlflash, aacraid,
        mp3sas, megaraid_sas, ibmvscsi, ufs) plus an assortment of
        miscellaneous fixes.
      
        The major user visible change of this pull is that we've moved from
        monotonically increasing host number to an ida allocated one (meaning
        the numbers get re-used) because someone managed to wrap the count in
        an iscsi system.  We don't believe there will be any adverse
        consequences of this"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (230 commits)
        MAINTAINERS: use new email address for James Bottomley
        mpt3sas: Remove unnecessary synchronize_irq() before free_irq()
        sg: fix dxferp in from_to case
        cxlflash: Increase cmd_per_lun for better throughput
        cxlflash: Fix to avoid unnecessary scan with internal LUNs
        cxlflash: Reorder user context initialization
        cxlflash: Simplify attach path error cleanup
        cxlflash: Split out context initialization
        cxlflash: Unmap problem state area before detaching master context
        cxlflash: Simplify PCI registration
        scsi: storvsc: fix SRB_STATUS_ABORTED handling
        be2iscsi: set the boot_kset pointer to NULL in case of failure
        sd: Fix discard granularity when LBPRZ=1
        be2iscsi: Remove unnecessary synchronize_irq() before free_irq()
        scsi_sysfs: call 'device_add' after attaching device handler
        scsi_dh_emc: update 'access_state' field
        scsi_dh_rdac: update 'access_state' field
        scsi_dh_alua: update 'access_state' field
        scsi_dh_alua: use common definitions for ALUA state
        scsi: Add 'access_state' and 'preferred_path' attribute
        ...
      cae8da04
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft · 7bb7a748
      Linus Torvalds authored
      Pull iscsi_ibft update from Konrad Rzeszutek Wilk:
       "A simple patch that had been rattling around in SuSE repo"
      
      * 'stable/for-linus-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft:
        iscsi_ibft: Add prefix-len attr and display netmask
      7bb7a748
  4. 16 Mar, 2016 1 commit