1. 15 Nov, 2015 1 commit
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · b84da9fa
      Linus Torvalds authored
      Pull MIPS updates from Ralf Baechle:
       "These are the highlists of the main MIPS pull request for 4.4:
      
         - Add latencytop support
         - Support appended DTBs
         - VDSO support and initially use it for gettimeofday.
         - Drop the .MIPS.abiflags and ELF NOTE sections from vmlinux
         - Support for the 5KE, an internal test core.
         - Switch all MIPS platfroms to libata drivers.
         - Improved support, cleanups for ralink and Lantiq platforms.
         - Support for the new xilfpga platform.
         - A number of DTB improvments for BMIPS.
         - Improved support for CM and CPS.
         - Minor JZ4740 and BCM47xx enhancements"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (120 commits)
        MIPS: idle: add case for CPU_5KE
        MIPS: Octeon: Support APPENDED_DTB
        MIPS: vmlinux: create a section for appended DTB
        MIPS: Clean up compat_siginfo_t
        MIPS: Fix PAGE_MASK definition
        MIPS: BMIPS: Enable GZIP ramdisk and timed printks
        MIPS: Add xilfpga defconfig
        MIPS: xilfpga: Add mipsfpga platform code
        MIPS: xilfpga: Add xilfpga device tree files.
        dt-bindings: MIPS: Document xilfpga bindings and boot style
        MIPS: Make MIPS_CMDLINE_DTB default
        MIPS: Make the kernel arguments from dtb available
        MIPS: Use USE_OF as the guard for appended dtb
        MIPS: BCM63XX: Use pr_* instead of printk
        MIPS: Loongson: Cleanup CONFIG_LOONGSON_SUSPEND.
        MIPS: lantiq: Disable xbar fpi burst mode
        MIPS: lantiq: Force the crossbar to big endian
        MIPS: lantiq: Initialize the USB core on boot
        MIPS: lantiq: Return correct value for fpi clock on ar9
        MIPS: ralink: Add missing clock on rt305x
        ...
      b84da9fa
  2. 14 Nov, 2015 26 commits
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-4.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 12b76f3b
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Here are a collection of small fixes tha have been gathered for
        4.4-rc1.  The only significant changes are those in PCI drivers
        Kconfig, to use "depends on" instead of "select" for CONFIG_ZONE_DMA.
        A reverse select is often more user-friendly, but in this case, it
        makes hard to manage with the conflict with ZONE_DEVICE, so changed in
        such a way for now.
      
        Others are all small fixes and quirks: an error check in soundcore
        reigster_chrdev(), HD-audio HDMI/DP phantom jack fix, Intel Broxton DP
        quirk, USB-audio DSD device quirk, some constifications, etc"
      
      * tag 'sound-fix-4.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: pci: depend on ZONE_DMA
        ALSA: hda - Simplify phantom jack handling for HDMI/DP
        ALSA: hda/hdmi - apply Skylake fix-ups to Broxton display codec
        ALSA: ctxfi: constify rsc ops structures
        ALSA: usb: Add native DSD support for Aune X1S
        ALSA: oxfw: add an comment to Kconfig for TASCAM FireOne
        sound: fix check for error condition of register_chrdev()
      12b76f3b
    • Linus Torvalds's avatar
      Merge tag 'arc-4.4-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · b3a0d9a2
      Linus Torvalds authored
      Pull ARC fixes from Vineet Gupta:
       "Found a couple of brown paper bag bugs with the prev pull request
        (including a SMP build breakage report from Guenter).  Since these are
        urgent I also decided to send over a bunch of other pending fixes
        which could have otherwise waited an rc or two.
      
        Summary:
      
         - A bunch of brown paper bag bugs (MAINTAINERS list email, SMP build
           failure)
         - cpu_relax() now compiler barrier for UP as well
         - handling of userspace Bus Errors for ARCompact builds"
      
      * tag 'arc-4.4-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: Fix silly typo in MAINTAINERS file
        ARC: cpu_relax() to be compiler barrier even for UP
        ARC: use ASL assembler mnemonic
        ARC: [arcompact] Handle bus error from userspace as Interrupt not exception
        ARC: remove extraneous header include
        ARCv2: lib: memcpy: use local symbols
      b3a0d9a2
    • Vineet Gupta's avatar
      ARC: Fix silly typo in MAINTAINERS file · 30b9dbee
      Vineet Gupta authored
      30b9dbee
    • Vineet Gupta's avatar
      ARC: cpu_relax() to be compiler barrier even for UP · 1cfc05cb
      Vineet Gupta authored
      cpu_relax() on ARC has been barrier only for SMP (and no-op for UP). Per
      recent discussions, it is safer to make it a compiler barrier
      unconditionally.
      
      Link: http://lkml.kernel.org/r/53A7D3AA.9020100@synopsys.comAcked-by: default avatarPeter Zijlstra <peterz@infradead.org>
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      1cfc05cb
    • Vineet Gupta's avatar
      ARC: use ASL assembler mnemonic · a6416f57
      Vineet Gupta authored
      ARCompact and ARCv2 only have ASL, while binutils used to support LSL as
      a alias mnemonic.
      
      Newer binutils (upstream) don't want to do that so replace it.
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      a6416f57
    • Vineet Gupta's avatar
      ARC: [arcompact] Handle bus error from userspace as Interrupt not exception · 541366da
      Vineet Gupta authored
      Bus errors from userspace on ARCompact based cores are handled by core
      as a high priority L2 interrupt but current code treated it as interrupt
      Handling an interrupt like exception is certainly not going to go unnoticed.
      (and it worked so far as we never saw a Bus error from userspace until
      IPPK guys tested a DDR controller with ECC error detection etc hence
      needed to explicitly trigger/handle such errors)
      
       - So move mem_service exception handler from common code into ARCv2 code.
       - In ARCompact code, define  mem_service as L2 interrupt handler which
         just drops down to pure kernel mode and goes of to enqueue SIGBUS
      Reported-by: default avatarNelson Pereira <npereira@synopsys.com>
      Tested-by: default avatarAna Martins <amartins@synopsys.com>
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      541366da
    • Vineet Gupta's avatar
      ARC: remove extraneous header include · 76a8c40c
      Vineet Gupta authored
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      76a8c40c
    • Linus Torvalds's avatar
      Merge tag 'chrome-platform-4.4' of... · 63f4f7e8
      Linus Torvalds authored
      Merge tag 'chrome-platform-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/chrome-platform
      
      Pull chrome platform updates from Olof Johansson:
       "Here's the branch of chrome platform changes for v4.4.  Some have been
        queued up for the full 4.3 release cycle since I forgot to send them
        in for that round (rebased early on to deal with fixes conflicts).
      
        Most of these enable EC communication stuff -- Pixel 2015 support,
        enabling building for ARM64 platforms, and a few fixes for memory
        leaks.
      
        There's also a patch in here to allow reading/writing the verified
        boot context, which depends on a sysfs patch acked by Greg"
      
      * tag 'chrome-platform-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/chrome-platform:
        platform/chrome: Fix i2c-designware adapter name
        platform/chrome: Support reading/writing the vboot context
        sysfs: Support is_visible() on binary attributes
        platform/chrome: cros_ec: Fix possible leak in led_rgb_store()
        platform/chrome: cros_ec: Fix leak in sequence_store()
        platform/chrome: Enable Chrome platforms on 64-bit ARM
        platform/chrome: cros_ec_dev - Add a platform device ID table
        platform/chrome: cros_ec_lpc - Add support for Google Pixel 2
        platform/chrome: cros_ec_lpc - Use existing function to check EC result
        platform/chrome: Make depends on MFD_CROS_EC instead CROS_EC_PROTO
        Revert "platform/chrome: Don't make CHROME_PLATFORMS depends on X86 || ARM"
      63f4f7e8
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v4.4-2' of... · 4bfc89d2
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v4.4-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
      
      Pull another x86 platform driver update from Darren Hart:
       "Support for the unfortunately rather unique ESC key on the Ideapad
        Yoga 3 and two DMI matches for rfkill support.  Solitary fix for
        potential missed errors for asus-wmi.  Downgrade a thinkpad_acpi
        message to info.
      
        asus-wmi:
         - fix error handling in store_sys_wmi()
      
        ideapad-laptop:
         - Add Lenovo Yoga 900 to no_hw_rfkill dmi list
         - include Yoga 3 1170 in add rfkill whitelist
         - add support for Yoga 3 ESC key
      
        thinkpad_acpi:
         - Don't yell on unsupported brightness interfaces"
      
      * tag 'platform-drivers-x86-v4.4-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86:
        asus-wmi: fix error handling in store_sys_wmi()
        ideapad-laptop: Add Lenovo Yoga 900 to no_hw_rfkill dmi list
        ideapad-laptop: include Yoga 3 1170 in add rfkill whitelist
        ideapad-laptop: add support for Yoga 3 ESC key
        thinkpad_acpi: Don't yell on unsupported brightness interfaces
      4bfc89d2
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · a30b7ca2
      Linus Torvalds authored
      Pull more input updates from Dmitry Torokhov:
       "An update to the tsc2005 driver that allows it to also support tsc2004
        (basically the same controller, but uses i2c instead of spi bus), and
        a couple of bug fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: parkbd - drop bogus __init from parkbd_allocate_serio()
        Input: elantech - add Fujitsu Lifebook U745 to force crc_enabled
        Input: tsc2004 - add support for tsc2004
        Input: tsc200x-core - rename functions and variables
        Input: tsc2005 - separate SPI and core functions
      a30b7ca2
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · d83763f4
      Linus Torvalds authored
      Pull final round of SCSI updates from James Bottomley:
       "Sorry for the delay in this patch which was mostly caused by getting
        the merger of the mpt2/mpt3sas driver, which was seen as an essential
        item of maintenance work to do before the drivers diverge too much.
        Unfortunately, this caused a compile failure (detected by linux-next),
        which then had to be fixed up and incubated.
      
        In addition to the mpt2/3sas rework, there are updates from pm80xx,
        lpfc, bnx2fc, hpsa, ipr, aacraid, megaraid_sas, storvsc and ufs plus
        an assortment of changes including some year 2038 issues, a fix for a
        remove before detach issue in some drivers and a couple of other minor
        issues"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (141 commits)
        mpt3sas: fix inline markers on non inline function declarations
        sd: Clear PS bit before Mode Select.
        ibmvscsi: set max_lun to 32
        ibmvscsi: display default value for max_id, max_lun and max_channel.
        mptfusion: don't allow negative bytes in kbuf_alloc_2_sgl()
        scsi: pmcraid: replace struct timeval with ktime_get_real_seconds()
        mvumi: 64bit value for seconds_since1970
        be2iscsi: Fix bogus WARN_ON length check
        scsi_scan: don't dump trace when scsi_prep_async_scan() is called twice
        mpt3sas: Bump mpt3sas driver version to 09.102.00.00
        mpt3sas: Single driver module which supports both SAS 2.0 & SAS 3.0 HBAs
        mpt2sas, mpt3sas: Update the driver versions
        mpt3sas: setpci reset kernel oops fix
        mpt3sas: Added OEM Gen2 PnP ID branding names
        mpt3sas: Refcount fw_events and fix unsafe list usage
        mpt3sas: Refcount sas_device objects and fix unsafe list usage
        mpt3sas: sysfs attribute to report Backup Rail Monitor Status
        mpt3sas: Ported WarpDrive product SSS6200 support
        mpt3sas: fix for driver fails EEH, recovery from injected pci bus error
        mpt3sas: Manage MSI-X vectors according to HBA device type
        ...
      d83763f4
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 9aa3d651
      Linus Torvalds authored
      Pull SCSI target updates from Nicholas Bellinger:
       "This series contains HCH's changes to absorb configfs attribute
        ->show() + ->store() function pointer usage from it's original
        tree-wide consumers, into common configfs code.
      
        It includes usb-gadget, target w/ drivers, netconsole and ocfs2
        changes to realize the improved simplicity, that now renders the
        original include/target/configfs_macros.h CPP magic for fabric drivers
        and others, unnecessary and obsolete.
      
        And with common code in place, new configfs attributes can be added
        easier than ever before.
      
        Note, there are further improvements in-flight from other folks for
        v4.5 code in configfs land, plus number of target fixes for post -rc1
        code"
      
      In the meantime, a new user of the now-removed old configfs API came in
      through the char/misc tree in commit 7bd1d409 ("stm class: Introduce
      an abstraction for System Trace Module devices").
      
      This merge resolution comes from Alexander Shishkin, who updated his stm
      class tracing abstraction to account for the removal of the old
      show_attribute and store_attribute methods in commit 51798222
      ("configfs: remove old API") from this pull.  As Alexander says about
      that patch:
      
       "There's no need to keep an extra wrapper structure per item and the
        awkward show_attribute/store_attribute item ops are no longer needed.
      
        This patch converts policy code to the new api, all the while making
        the code quite a bit smaller and easier on the eyes.
      
        Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>"
      
      That patch was folded into the merge so that the tree should be fully
      bisectable.
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (23 commits)
        configfs: remove old API
        ocfs2/cluster: use per-attribute show and store methods
        ocfs2/cluster: move locking into attribute store methods
        netconsole: use per-attribute show and store methods
        target: use per-attribute show and store methods
        spear13xx_pcie_gadget: use per-attribute show and store methods
        dlm: use per-attribute show and store methods
        usb-gadget/f_serial: use per-attribute show and store methods
        usb-gadget/f_phonet: use per-attribute show and store methods
        usb-gadget/f_obex: use per-attribute show and store methods
        usb-gadget/f_uac2: use per-attribute show and store methods
        usb-gadget/f_uac1: use per-attribute show and store methods
        usb-gadget/f_mass_storage: use per-attribute show and store methods
        usb-gadget/f_sourcesink: use per-attribute show and store methods
        usb-gadget/f_printer: use per-attribute show and store methods
        usb-gadget/f_midi: use per-attribute show and store methods
        usb-gadget/f_loopback: use per-attribute show and store methods
        usb-gadget/ether: use per-attribute show and store methods
        usb-gadget/f_acm: use per-attribute show and store methods
        usb-gadget/f_hid: use per-attribute show and store methods
        ...
      9aa3d651
    • Linus Torvalds's avatar
      Merge branch 'for-linus-3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 5d2eb548
      Linus Torvalds authored
      Pull vfs xattr cleanups from Al Viro.
      
      * 'for-linus-3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        f2fs: xattr simplifications
        squashfs: xattr simplifications
        9p: xattr simplifications
        xattr handlers: Pass handler to operations instead of flags
        jffs2: Add missing capability check for listing trusted xattrs
        hfsplus: Remove unused xattr handler list operations
        ubifs: Remove unused security xattr handler
        vfs: Fix the posix_acl_xattr_list return value
        vfs: Check attribute names in posix acl xattr handers
      5d2eb548
    • Linus Torvalds's avatar
      Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 2870f6c4
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
      
       - three fixes tagged for -stable including a crash fix, simple
         performance tweak, and an invalid i/o error.
      
       - build regression fix for the nvdimm unit tests
      
       - nvdimm documentation update
      
      * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        dax: fix __dax_pmd_fault crash
        libnvdimm: documentation clarifications
        libnvdimm, pmem: fix size trim in pmem_direct_access()
        libnvdimm, e820: fix numa node for e820-type-12 pmem ranges
        tools/testing/nvdimm, acpica: fix flag rename build breakage
      2870f6c4
    • Andreas Gruenbacher's avatar
      f2fs: xattr simplifications · 29608d20
      Andreas Gruenbacher authored
      Now that the xattr handler is passed to the xattr handler operations, we
      have access to the attribute name prefix, so simplify
      f2fs_xattr_generic_list.
      
      Also, f2fs_xattr_advise_list is only ever called for
      f2fs_xattr_advise_handler; there is no need to double check for that.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Cc: Jaegeuk Kim <jaegeuk@kernel.org>
      Cc: Changman Lee <cm224.lee@samsung.com>
      Cc: Chao Yu <chao2.yu@samsung.com>
      Cc: linux-f2fs-devel@lists.sourceforge.net
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      29608d20
    • Andreas Gruenbacher's avatar
      squashfs: xattr simplifications · 0ddaf72c
      Andreas Gruenbacher authored
      Now that the xattr handler is passed to the xattr handler operations, we
      have access to the attribute name prefix, so simplify the squashfs xattr
      handlers a bit.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Cc: Phillip Lougher <phillip@squashfs.org.uk>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      0ddaf72c
    • Andreas Gruenbacher's avatar
      9p: xattr simplifications · e409de99
      Andreas Gruenbacher authored
      Now that the xattr handler is passed to the xattr handler operations, we
      can use the same get and set operations for the user, trusted, and security
      xattr namespaces.  In those namespaces, we can access the full attribute
      name by "reattaching" the name prefix the vfs has skipped for us.  Add a
      xattr_full_name helper to make this obvious in the code.
      
      For the "system.posix_acl_access" and "system.posix_acl_default"
      attributes, handler->prefix is the full attribute name; the suffix is the
      empty string.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Cc: Eric Van Hensbergen <ericvh@gmail.com>
      Cc: Ron Minnich <rminnich@sandia.gov>
      Cc: Latchesar Ionkov <lucho@ionkov.net>
      Cc: v9fs-developer@lists.sourceforge.net
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      e409de99
    • Andreas Gruenbacher's avatar
      xattr handlers: Pass handler to operations instead of flags · d9a82a04
      Andreas Gruenbacher authored
      The xattr_handler operations are currently all passed a file system
      specific flags value which the operations can use to disambiguate between
      different handlers; some file systems use that to distinguish the xattr
      namespace, for example.  In some oprations, it would be useful to also have
      access to the handler prefix.  To allow that, pass a pointer to the handler
      to operations instead of the flags value alone.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      d9a82a04
    • Andreas Gruenbacher's avatar
      jffs2: Add missing capability check for listing trusted xattrs · bf781714
      Andreas Gruenbacher authored
      The vfs checks if a task has the appropriate access for get and set
      operations, but it cannot do that for the list operation; the file system
      must check for that itself.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: linux-mtd@lists.infradead.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      bf781714
    • Andreas Gruenbacher's avatar
      hfsplus: Remove unused xattr handler list operations · e282fb7f
      Andreas Gruenbacher authored
      The list operations can never be called; they are even documented to be
      unused.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      e282fb7f
    • Andreas Gruenbacher's avatar
      ubifs: Remove unused security xattr handler · 13d3408f
      Andreas Gruenbacher authored
      Ubifs installs a security xattr handler in sb->s_xattr but doesn't use the
      generic_{get,set,list,remove}xattr inode operations needed for processing
      this list of attribute handlers; the handler is never called.  Instead,
      ubifs uses its own xattr handlers which also process security xattrs.
      
      Remove the dead code.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Reviewed-by: default avatarRichard Weinberger <richard@nod.at>
      Cc: Artem Bityutskiy <dedekind1@gmail.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: linux-mtd@lists.infradead.org
      Cc: Subodh Nijsure <snijsure@grid-net.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      13d3408f
    • Andreas Gruenbacher's avatar
      vfs: Fix the posix_acl_xattr_list return value · dae5f57a
      Andreas Gruenbacher authored
      When a filesystem that contains POSIX ACLs is mounted without ACL support
      (-o noacl), the appropriate behavior is not to list any existing POSIX ACL
      xattrs.  The return value for list xattr handlers in this case is 0, not an
      error code: several filesystems that use the POSIX ACL xattr handlers do
      not expect the list operation to fail.
      
      Symlinks cannot have ACLs, so posix_acl_xattr_list will never be called for
      symlinks in the first place.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      dae5f57a
    • Andreas Gruenbacher's avatar
      vfs: Check attribute names in posix acl xattr handers · c361016a
      Andreas Gruenbacher authored
      The get and set operations of the POSIX ACL xattr handlers failed to check
      the attribute names, so all names with "system.posix_acl_access" or
      "system.posix_acl_default" as a prefix were accepted.  Reject invalid names
      from now on.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      c361016a
    • Linus Torvalds's avatar
      Merge tag 'vfio-v4.4-rc1' of git://github.com/awilliam/linux-vfio · 934f98d7
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
       - Use kernel interfaces for VPD emulation (Alex Williamson)
       - Platform fix for releasing IRQs (Eric Auger)
       - Type1 IOMMU always advertises PAGE_SIZE support when smaller mapping
         sizes are available (Eric Auger)
       - Platform fixes for incorrectly using copies of structures rather than
         pointers to structures (James Morse)
       - Rework platform reset modules, fix leak, and add AMD xgbe reset
         module (Eric Auger)
       - Fix vfio_device_get_from_name() return value (Joerg Roedel)
       - No-IOMMU interface (Alex Williamson)
       - Fix potential out of bounds array access in PCI config handling (Dan
         Carpenter)
      
      * tag 'vfio-v4.4-rc1' of git://github.com/awilliam/linux-vfio:
        vfio/pci: make an array larger
        vfio: Include No-IOMMU mode
        vfio: Fix bug in vfio_device_get_from_name()
        VFIO: platform: reset: AMD xgbe reset module
        vfio: platform: reset: calxedaxgmac: fix ioaddr leak
        vfio: platform: add dev_info on device reset
        vfio: platform: use list of registered reset function
        vfio: platform: add compat in vfio_platform_device
        vfio: platform: reset: calxedaxgmac: add reset function registration
        vfio: platform: introduce module_vfio_reset_handler macro
        vfio: platform: add capability to register a reset function
        vfio: platform: introduce vfio-platform-base module
        vfio/platform: store mapped memory in region, instead of an on-stack copy
        vfio/type1: handle case where IOMMU does not support PAGE_SIZE size
        VFIO: platform: clear IRQ_NOAUTOEN when de-assigning the IRQ
        vfio/pci: Use kernel VPD access functions
        vfio: Whitelist PCI bridges
      934f98d7
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · f3996e6a
      Linus Torvalds authored
      Pull SMB3 updates from Steve French:
       "A collection of SMB3 patches adding some reliability features
        (persistent and resilient handles) and improving SMB3 copy offload.
      
        I will have some additional patches for SMB3 encryption and SMB3.1.1
        signing (important security features), and also for improving SMB3
        persistent handle reconnection (setting ChannelSequence number e.g.)
        that I am still working on but wanted to get this set in since they
        can stand alone"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        Allow copy offload (CopyChunk) across shares
        Add resilienthandles mount parm
        [SMB3] Send durable handle v2 contexts when use of persistent handles required
        [SMB3] Display persistenthandles in /proc/mounts for SMB3 shares if enabled
        [SMB3] Enable checking for continuous availability and persistent handle support
        [SMB3] Add parsing for new mount option controlling persistent handles
        Allow duplicate extents in SMB3 not just SMB3.1.1
      f3996e6a
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · e75cdf98
      Linus Torvalds authored
      Pull btrfs fixes and cleanups from Chris Mason:
       "Some of this got cherry-picked from a github repo this week, but I
        verified the patches.
      
        We have three small scrub cleanups and a collection of fixes"
      
      * 'for-linus-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        btrfs: Use fs_info directly in btrfs_delete_unused_bgs
        btrfs: Fix lost-data-profile caused by balance bg
        btrfs: Fix lost-data-profile caused by auto removing bg
        btrfs: Remove len argument from scrub_find_csum
        btrfs: Reduce unnecessary arguments in scrub_recheck_block
        btrfs: Use scrub_checksum_data and scrub_checksum_tree_block for scrub_recheck_block_checksum
        btrfs: Reset sblock->xxx_error stats before calling scrub_recheck_block_checksum
        btrfs: scrub: setup all fields for sblock_to_check
        btrfs: scrub: set error stats when tree block spanning stripes
        Btrfs: fix race when listing an inode's xattrs
        Btrfs: fix race leading to BUG_ON when running delalloc for nodatacow
        Btrfs: fix race leading to incorrect item deletion when dropping extents
        Btrfs: fix sleeping inside atomic context in qgroup rescan worker
        Btrfs: fix race waiting for qgroup rescan worker
        btrfs: qgroup: exit the rescan worker during umount
        Btrfs: fix extent accounting for partial direct IO writes
      e75cdf98
  3. 13 Nov, 2015 9 commits
    • Dmitry Torokhov's avatar
      Merge branch 'next' into for-linus · bbdb5c22
      Dmitry Torokhov authored
      Prepare second round of input updates for 4.3 merge window.
      bbdb5c22
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · ca4ba96e
      Linus Torvalds authored
      Pull Ceph updates from Sage Weil:
       "There are several patches from Ilya fixing RBD allocation lifecycle
        issues, a series adding a nocephx_sign_messages option (and associated
        bug fixes/cleanups), several patches from Zheng improving the
        (directory) fsync behavior, a big improvement in IO for direct-io
        requests when striping is enabled from Caifeng, and several other
        small fixes and cleanups"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        libceph: clear msg->con in ceph_msg_release() only
        libceph: add nocephx_sign_messages option
        libceph: stop duplicating client fields in messenger
        libceph: drop authorizer check from cephx msg signing routines
        libceph: msg signing callouts don't need con argument
        libceph: evaluate osd_req_op_data() arguments only once
        ceph: make fsync() wait unsafe requests that created/modified inode
        ceph: add request to i_unsafe_dirops when getting unsafe reply
        libceph: introduce ceph_x_authorizer_cleanup()
        ceph: don't invalidate page cache when inode is no longer used
        rbd: remove duplicate calls to rbd_dev_mapping_clear()
        rbd: set device_type::release instead of device::release
        rbd: don't free rbd_dev outside of the release callback
        rbd: return -ENOMEM instead of pool id if rbd_dev_create() fails
        libceph: use local variable cursor instead of &msg->cursor
        libceph: remove con argument in handle_reply()
        ceph: combine as many iovec as possile into one OSD request
        ceph: fix message length computation
        ceph: fix a comment typo
        rbd: drop null test before destroy functions
      ca4ba96e
    • Linus Torvalds's avatar
      Merge tag '4.4-additional' of git://git.lwn.net/linux · 4aeabc6b
      Linus Torvalds authored
      Pull more documentation updates from Jon Corbet:
       "A few more documentation patches that wandered in and have no reason
        to wait; these include some improvements to the suggestions for email
        clients and patch submission"
      
      * tag '4.4-additional' of git://git.lwn.net/linux:
        Documentation: Add minimal Mutt config for using Gmail
        Documentation: Add note on sending files directly with Mutt
        Documentation: dontdiff: remove media from dontdiff
        Documentation/SubmittingPatches: discuss In-Reply-To
        Remove email address from Documentation/filesystems/overlayfs.txt
        can-doc: Add missing semicolon to example
      4aeabc6b
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · be4773e6
      Linus Torvalds authored
      Pull drm sti driver updates from Dave Airlie:
       "The sti driver had a requirement on some patches in Greg's tree, they
        are in, so I see no problems just merging this one now"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux:
        drm/sti: load HQVDP firmware the first time HQVDP's plane is used
        drm/sti: fix typo issue in sti_mode_config_init
        drm/sti: set mixer background color through module param
        drm/sti: Remove local fbdev emulation Kconfig option
        drm/sti: remove redundant sign extensions
        drm/sti: hdmi use of_get_i2c_adapter_by_node interface
        drm/sti: hdmi fix i2c adapter device refcounting
        drm/sti: Do not export symbols
        drm/sti: Build monolithic driver
        drm/sti: Use drm_crtc_vblank_*() API
        drm/sti: Store correct CRTC index in events
        drm/sti: Select FW_LOADER
        drm/sti: Constify function pointer structs
      be4773e6
    • Stephen Rothwell's avatar
      mpt3sas: fix inline markers on non inline function declarations · 0a5149ba
      Stephen Rothwell authored
      After merging the scsi tree, today's linux-next build (powerpc
      allyesconfig) failed like this:
      
      In file included from drivers/scsi/mpt3sas/mpt3sas_scsih.c:59:0:
      drivers/scsi/mpt3sas/mpt3sas_scsih.c: In function '_scsih_io_done':
      drivers/scsi/mpt3sas/mpt3sas_base.h:1414:1: error: inlining failed in call to always_inline 'mpt3sas_scsi_direct_io_get': function body not available
       mpt3sas_scsi_direct_io_get(struct MPT3SAS_ADAPTER *ioc, u16 smid);
       ^
      drivers/scsi/mpt3sas/mpt3sas_scsih.c:4448:6: error: called from here
        if (mpt3sas_scsi_direct_io_get(ioc, smid) &&
            ^
      In file included from drivers/scsi/mpt3sas/mpt3sas_scsih.c:59:0:
      drivers/scsi/mpt3sas/mpt3sas_base.h:1416:1: error: inlining failed in call to always_inline 'mpt3sas_scsi_direct_io_set': function body not available
       mpt3sas_scsi_direct_io_set(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 direct_io);
       ^
      drivers/scsi/mpt3sas/mpt3sas_scsih.c:4454:3: error: called from here
         mpt3sas_scsi_direct_io_set(ioc, smid, 0);
         ^
      In file included from drivers/scsi/mpt3sas/mpt3sas_scsih.c:5
      9:0:
      drivers/scsi/mpt3sas/mpt3sas_base.h:1416:1: error: inlining failed in call to always_inline 'mpt3sas_scsi_direct_io_set': function body not available
       mpt3sas_scsi_direct_io_set(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 direct_io);
       ^
      drivers/scsi/mpt3sas/mpt3sas_scsih.c:4454:3: error: called from here
         mpt3sas_scsi_direct_io_set(ioc, smid, 0);
         ^
      
      Presumably caused by commit
      
        c84b06a4 ("mpt3sas: Single driver module which supports both SAS 2.0 & SAS 3.0 HBAs")
      Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarJames Bottomley <JBottomley@Odin.com>
      0a5149ba
    • Dan Williams's avatar
      dax: fix __dax_pmd_fault crash · 152d7bd8
      Dan Williams authored
      Since 4.3 introduced devm_memremap_pages() the pfns handled by DAX may
      optionally have a struct page backing.  When a mapped pfn reaches
      vmf_insert_pfn_pmd() it fails with a crash signature like the following:
      
       kernel BUG at mm/huge_memory.c:905!
       [..]
       Call Trace:
        [<ffffffff812a73ba>] __dax_pmd_fault+0x2ea/0x5b0
        [<ffffffffa01a4182>] xfs_filemap_pmd_fault+0x92/0x150 [xfs]
        [<ffffffff811fbe02>] handle_mm_fault+0x312/0x1b50
      
      Fix this by falling back to 4K mappings in the pfn_valid() case.  Longer
      term, vmf_insert_pfn_pmd() needs to grow support for architectures that
      can provide a 'pmd_special' capability.
      
      Cc: <stable@vger.kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Reported-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      152d7bd8
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · f6d07dfc
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "One urgent fix for an oops under console lock in some drivers, one
        uapi fix, and one revert to fix rockchip regression"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        Revert "drm/rockchip: Convert the probe function to the generic drm_of_component_probe()"
        drm: Don't oops in drm_calc_timestamping_constants() if drm_vblank_init() wasn't called
        drm: Use userspace compatible type in fourcc_mod_code macro
      f6d07dfc
    • Linus Torvalds's avatar
      Merge tag 'trace-v4.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 0e976064
      Linus Torvalds authored
      Pull trace cleanups from Steven Rostedt:
       "This contains three more clean up patches.
      
        One patch is needed to make tracing work without debugfs now that
        tracing uses its own tracefs.
      
        The second is removing an unused variable.
      
        The third is fixing a warning about unused variables when MAX_TRACER
        is not configured.  Note, this warning shows up in gcc 6.0, but does
        not show up in gcc 4.9, as it seems that gcc does not complain about
        constants not being used"
      
      * tag 'trace-v4.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: #ifdef out uses of max trace when CONFIG_TRACER_MAX_TRACE is not set
        tracing: Remove unused ftrace_cpu_disabled per cpu variable
        tracing: Make tracing work when debugfs is not configured in
      0e976064
    • Dave Airlie's avatar
      Merge branch 'drm-sti-next-2015-11-03' of... · f20780f3
      Dave Airlie authored
      Merge branch 'drm-sti-next-2015-11-03' of http://git.linaro.org/people/benjamin.gaignard/kernel into drm-next
      
      sti/drm changes
      
      Add better support for firmware loading
      lots of fixes.
      
      * 'drm-sti-next-2015-11-03' of http://git.linaro.org/people/benjamin.gaignard/kernel:
        drm/sti: load HQVDP firmware the first time HQVDP's plane is used
        drm/sti: fix typo issue in sti_mode_config_init
        drm/sti: set mixer background color through module param
        drm/sti: Remove local fbdev emulation Kconfig option
        drm/sti: remove redundant sign extensions
        drm/sti: hdmi use of_get_i2c_adapter_by_node interface
        drm/sti: hdmi fix i2c adapter device refcounting
        drm/sti: Do not export symbols
        drm/sti: Build monolithic driver
        drm/sti: Use drm_crtc_vblank_*() API
        drm/sti: Store correct CRTC index in events
        drm/sti: Select FW_LOADER
        drm/sti: Constify function pointer structs
      f20780f3
  4. 12 Nov, 2015 4 commits
    • Mark Yao's avatar
      Revert "drm/rockchip: Convert the probe function to the generic drm_of_component_probe()" · 5bad7d29
      Mark Yao authored
      This reverts commit 52f5eb60.
      
      Rockchip drm can't work with generic drm_of_component_probe now
      Signed-off-by: default avatarMark Yao <mark.yao@rock-chips.com>
      Acked-by: default avatarLiviu Dudau <Liviu.Dudau@arm.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      5bad7d29
    • Ville Syrjälä's avatar
      drm: Don't oops in drm_calc_timestamping_constants() if drm_vblank_init() wasn't called · 0c545ac4
      Ville Syrjälä authored
      Seems the crtc helpers call drm_calc_timestamping_constants()
      unconditionally even if the driver didn't initialize vblank support by
      calling drm_vblank_init(). That used to be OK since the constants were
      stored under drm_crtc.
      
      However I broke this with
      commit eba1f35d ("drm: Move timestamping constants into drm_vblank_crtc")
      when I moved the constants to live inside the drm_vblank_crtc struct
      instead. If drm_vblank_init() isn't called, we don't allocate these
      structures, and so drm_calc_timestamping_constants() will oops.
      
      Fix it by adding a check into drm_calc_timestamping_constants() to see
      if vblank support was initialized at all. And to keep in line with other
      such checks, also toss in a check and warn for the case where vblank
      support was initialized, but the wrong number of crtcs was specified.
      
      Fixes the following sort of oops:
       BUG: unable to handle kernel NULL pointer dereference at 00000000000000b0
       IP: [<ffffffffa014b266>] drm_calc_timestamping_constants+0x86/0x130 [drm]
       PGD 0
       Oops: 0002 [#1] SMP
       Modules linked in: sr_mod cdrom mgag200(+) i2c_algo_bit drm_kms_helper ahci syscopyarea sysfillrect sysimgblt libahci fb_sys_fops bnx2x ttm tg3(+) mdio drm ptp sd_mod libata i2c_core pps_core libcrc32c hpsa dm_mirror dm_region_hash dm_log dm_mod
       CPU: 0 PID: 418 Comm: kworker/0:2 Not tainted 4.3.0+ #1
       Hardware name: HP ProLiant DL380 Gen9, BIOS P89 06/09/2015
       Workqueue: events work_for_cpu_fn
       task: ffff88046ca95500 ti: ffff88007830c000 task.ti: ffff88007830c000
       RIP: 0010:[<ffffffffa014b266>]  [<ffffffffa014b266>] drm_calc_timestamping_constants+0x86/0x130 [drm]
       RSP: 0018:ffff88007830f4e8  EFLAGS: 00010246
       RAX: 0000000000fe4c00 RBX: ffff88006a849160 RCX: 0000000000000540
       RDX: 0000000000000000 RSI: 000000000000fde8 RDI: ffff88006a849000
       RBP: ffff88007830f518 R08: ffff88007830c000 R09: 00000001b87e3712
       R10: 00000000000050c4 R11: 0000000000000000 R12: 0000000000fe4c00
       R13: ffff88006a849000 R14: 0000000000000000 R15: 000000000000fde8
       FS:  0000000000000000(0000) GS:ffff88046f800000(0000) knlGS:0000000000000000
       CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
       CR2: 00000000000000b0 CR3: 00000000019d6000 CR4: 00000000001406f0
       Stack:
        ffff88007830f518 ffff88006a849000 ffff880c69b90340 ffff880c69b90000
        ffff880c69b90348 ffff880c69b90340 ffff88007830f748 ffffffffa042f7e7
        ffff88006a849090 0000000000000000 ffff88006a849160 0000000000000000
       Call Trace:
        [<ffffffffa042f7e7>] drm_crtc_helper_set_mode+0x3d7/0x4b0 [drm_kms_helper]
        [<ffffffffa04307d4>] drm_crtc_helper_set_config+0x8d4/0xb10 [drm_kms_helper]
        [<ffffffffa01548d4>] drm_mode_set_config_internal+0x64/0x100 [drm]
        [<ffffffffa043c342>] drm_fb_helper_pan_display+0xa2/0x280 [drm_kms_helper]
        [<ffffffff81392c7b>] fb_pan_display+0xbb/0x170
        [<ffffffff8138cf70>] bit_update_start+0x20/0x50
        [<ffffffff8138b81b>] fbcon_switch+0x39b/0x590
        [<ffffffff8140a3d0>] redraw_screen+0x1a0/0x240
        [<ffffffff8140b30e>] do_bind_con_driver+0x2ee/0x310
        [<ffffffff8140b651>] do_take_over_console+0x141/0x1b0
        [<ffffffff81387377>] do_fbcon_takeover+0x57/0xb0
        [<ffffffff8138c98b>] fbcon_event_notify+0x60b/0x750
        [<ffffffff810a5599>] notifier_call_chain+0x49/0x70
        [<ffffffff810a58dd>] __blocking_notifier_call_chain+0x4d/0x70
        [<ffffffff810a5916>] blocking_notifier_call_chain+0x16/0x20
        [<ffffffff8139282b>] fb_notifier_call_chain+0x1b/0x20
        [<ffffffff81394881>] register_framebuffer+0x1f1/0x330
        [<ffffffffa043d9aa>] drm_fb_helper_initial_config+0x27a/0x3d0 [drm_kms_helper]
        [<ffffffffa0469b4d>] mgag200_fbdev_init+0xdd/0xf0 [mgag200]
        [<ffffffffa0468586>] mgag200_modeset_init+0x176/0x1e0 [mgag200]
        [<ffffffffa0464659>] mgag200_driver_load+0x3f9/0x580 [mgag200]
        [<ffffffffa014e067>] drm_dev_register+0xa7/0xb0 [drm]
        [<ffffffffa015054f>] drm_get_pci_dev+0x8f/0x1e0 [drm]
        [<ffffffffa046937b>] mga_pci_probe+0x9b/0xc0 [mgag200]
        [<ffffffff813662d5>] local_pci_probe+0x45/0xa0
        [<ffffffff8109afe4>] work_for_cpu_fn+0x14/0x20
        [<ffffffff8109e13c>] process_one_work+0x14c/0x3c0
        [<ffffffff8109eaa4>] worker_thread+0x244/0x470
        [<ffffffff8168bfba>] ? __schedule+0x2aa/0x760
        [<ffffffff8109e860>] ? rescuer_thread+0x310/0x310
        [<ffffffff810a4438>] kthread+0xd8/0xf0
        [<ffffffff810a4360>] ? kthread_park+0x60/0x60
        [<ffffffff8169030f>] ret_from_fork+0x3f/0x70
        [<ffffffff810a4360>] ? kthread_park+0x60/0x60
       Code: f6 31 d2 41 89 c2 8b 83 b4 00 00 00 0f af c1 48 98 48 69 c0 40 42 0f 00 48 f7 f6 f6 43 74 10 41 89 c4 75 26 f6 05 9a 6f 03 00 01 <45> 89 96 b0 00 00 00 45 89 a6 ac 00 00 00 75 35 48 83 c4 08 5b
       RIP  [<ffffffffa014b266>] drm_calc_timestamping_constants+0x86/0x130 [drm]
        RSP <ffff88007830f4e8>
       CR2: 00000000000000b0
      
      Cc: Jeff Moyer <jmoyer@redhat.com>
      Reported-by: default avatarJeff Moyer <jmoyer@redhat.com>
      References: http://lists.freedesktop.org/archives/dri-devel/2015-November/094217.html
      Fixes: eba1f35d ("drm: Move timestamping constants into drm_vblank_crtc")
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      0c545ac4
    • Dave Airlie's avatar
      Merge tag 'topic/drm-fixes-2015-11-11' of git://anongit.freedesktop.org/drm-intel into drm-fixes · 9589fcde
      Dave Airlie authored
      Single fix for uapi.
      
      * tag 'topic/drm-fixes-2015-11-11' of git://anongit.freedesktop.org/drm-intel:
        drm: Use userspace compatible type in fourcc_mod_code macro
      9589fcde
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 5e2078b2
      Linus Torvalds authored
      Pull misc block fixes from Jens Axboe:
       "Stuff that got collected after the merge window opened.  This
        contains:
      
         - NVMe:
              - Fix for non-striped transfer size setting for NVMe from
                Sathyavathi.
              - (Some) support for the weird Apple nvme controller in the
                macbooks. From Stephan Günther.
      
         - The error value leak for dax from Al.
      
         - A few minor blk-mq tweaks from me.
      
         - Add the new linux-block@vger.kernel.org mailing list to the
           MAINTAINERS file.
      
         - Discard fix for brd, from Jan.
      
         - A kerneldoc warning for block core from Randy.
      
         - An older fix from Vivek, converting a WARN_ON() to a rate limited
           printk when a device is hot removed with dirty inodes"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: don't hardcode blk_qc_t -> tag mask
        dax_io(): don't let non-error value escape via retval instead of EFAULT
        block: fix blk-core.c kernel-doc warning
        fs/block_dev.c: Remove WARN_ON() when inode writeback fails
        NVMe: add support for Apple NVMe controller
        NVMe: use split lo_hi_{read,write}q
        blk-mq: mark __blk_mq_complete_request() static
        MAINTAINERS: add reference to new linux-block list
        NVMe: Increase the max transfer size when mdts is 0
        brd: Refuse improperly aligned discard requests
      5e2078b2