Permalink
Commits on Dec 10, 2016
  1. Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git…

    …/herbert/crypto-2.6
    
    Pull crypto fixes from Herbert Xu:
     "This fixes the following issues:
    
       - Fix pointer size when caam is used with AArch64 boot loader on
         AArch32 kernel.
    
       - Fix ahash state corruption in marvell driver.
    
       - Fix buggy algif_aed tag handling.
    
       - Prevent mcryptd from being used with incompatible algorithms which
         can cause crashes"
    
    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      crypto: algif_aead - fix uninitialized variable warning
      crypto: mcryptd - Check mcryptd algorithm compatibility
      crypto: algif_aead - fix AEAD tag memory handling
      crypto: caam - fix pointer size for AArch64 boot loader, AArch32 kernel
      crypto: marvell - Don't corrupt state of an STD req for re-stepped ahash
      crypto: marvell - Don't copy hash operation twice into the SRAM
    committed Dec 10, 2016
  2. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

    Pull networking fixes from David Miller:
    
     1) Limit the number of can filters to avoid > MAX_ORDER allocations.
        Fix from Marc Kleine-Budde.
    
     2) Limit GSO max size in netvsc driver to avoid problems with NVGRE
        configurations. From Stephen Hemminger.
    
     3) Return proper error when memory allocation fails in
        ser_gigaset_init(), from Dan Carpenter.
    
     4) Missing linkage undo in error paths of ipvlan_link_new(), from Gao
        Feng.
    
     5) Missing necessayr SET_NETDEV_DEV in lantiq and cpmac drivers, from
        Florian Fainelli.
    
     6) Handle probe deferral properly in smsc911x driver.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
      net: mlx5: Fix Kconfig help text
      net: smsc911x: back out silently on probe deferrals
      ibmveth: set correct gso_size and gso_type
      net: ethernet: cpmac: Call SET_NETDEV_DEV()
      net: ethernet: lantiq_etop: Call SET_NETDEV_DEV()
      vhost-vsock: fix orphan connection reset
      cxgb4/cxgb4vf: Assign netdev->dev_port with port ID
      driver: ipvlan: Unlink the upper dev when ipvlan_link_new failed
      ser_gigaset: return -ENOMEM on error instead of success
      NET: usb: cdc_mbim: add quirk for supporting Telit LE922A
      can: peak: fix bad memory access and free sequence
      phy: Don't increment MDIO bus refcount unless it's a different owner
      netvsc: reduce maximum GSO size
      drivers: net: cpsw-phy-sel: Clear RGMII_IDMODE on "rgmii" links
      can: raw: raw_setsockopt: limit number of can_filter that can be set
    committed Dec 10, 2016
  3. net: mlx5: Fix Kconfig help text

    Since the following commit, Infiniband and Ethernet have not been
    mutually exclusive.
    
    Fixes: 4aa17b2 mlx5: Enable mutual support for IB and Ethernet
    Signed-off-by: Christopher Covington <cov@codeaurora.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Christopher Covington committed with davem330 Dec 9, 2016
  4. net: smsc911x: back out silently on probe deferrals

    When trying to get a regulator we may get deferred and we see
    this noise:
    
    smsc911x 1b800000.ethernet-ebi2 (unnamed net_device) (uninitialized):
       couldn't get regulators -517
    
    Then the driver continues anyway. Which means that the regulator
    may not be properly retrieved and reference counted, and may be
    switched off in case noone else is using it.
    
    Fix this by returning silently on deferred probe and let the
    system work it out.
    
    Cc: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    linusw committed with davem330 Dec 9, 2016
  5. ibmveth: set correct gso_size and gso_type

    This patch is based on an earlier one submitted
    by Jon Maxwell with the following commit message:
    
    "We recently encountered a bug where a few customers using ibmveth on the
    same LPAR hit an issue where a TCP session hung when large receive was
    enabled. Closer analysis revealed that the session was stuck because the
    one side was advertising a zero window repeatedly.
    
    We narrowed this down to the fact the ibmveth driver did not set gso_size
    which is translated by TCP into the MSS later up the stack. The MSS is
    used to calculate the TCP window size and as that was abnormally large,
    it was calculating a zero window, even although the sockets receive buffer
    was completely empty."
    
    We rely on the Virtual I/O Server partition in a pseries
    environment to provide the MSS through the TCP header checksum
    field. The stipulation is that users should not disable checksum
    offloading if rx packet aggregation is enabled through VIOS.
    
    Some firmware offerings provide the MSS in the RX buffer.
    This is signalled by a bit in the RX queue descriptor.
    
    Reviewed-by: Brian King <brking@linux.vnet.ibm.com>
    Reviewed-by: Pradeep Satyanarayana <pradeeps@linux.vnet.ibm.com>
    Reviewed-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
    Reviewed-by: Jonathan Maxwell <jmaxwell37@gmail.com>
    Reviewed-by: David Dai <zdai@us.ibm.com>
    Signed-off-by: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    tlfalcon committed with davem330 Dec 8, 2016
Commits on Dec 9, 2016
  1. Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/nvdimm/nvdimm
    
    Pull libnvdimm fixes from Dan Williams:
     "Several fixes to the DSM (ACPI device specific method) marshaling
      implementation.
    
      I consider these urgent enough to send for 4.9 consideration since
      they fix the kernel's handling of ARS (Address Range Scrub) commands.
      Especially for platforms without machine-check-recovery capabilities,
      successful execution of ARS commands enables the platform to
      potentially break out of an infinite reboot problem if a media error
      is present in the boot path. There is also a one line fix for a
      device-dax read-only mapping regression.
    
      Commits 9a901f5 ("acpi, nfit: fix extended status translations
      for ACPI DSMs") and 325896f ("device-dax: fix private mapping
      restriction, permit read-only") are true regression fixes for changes
      introduced this cycle.
    
      Commit efda1b5 ("acpi, nfit, libnvdimm: fix / harden ars_status
      output length handling") fixes the kernel's handling of zero-length
      results, this never would have worked in the past, but we only just
      recently discovered a BIOS implementation that emits this arguably
      spec non-compliant result.
    
      The remaining two commits are additional fall out from thinking
      through the implications of a zero / truncated length result of the
      ARS Status command.
    
      In order to mitigate the risk that these changes introduce yet more
      regressions they are backstopped by a new unit test in commit
      a7de92d ("tools/testing/nvdimm: unit test acpi_nfit_ctl()") that
      mocks up inputs to acpi_nfit_ctl()"
    
    * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
      device-dax: fix private mapping restriction, permit read-only
      tools/testing/nvdimm: unit test acpi_nfit_ctl()
      acpi, nfit: fix bus vs dimm confusion in xlat_status
      acpi, nfit: validate ars_status output buffer size
      acpi, nfit, libnvdimm: fix / harden ars_status output length handling
      acpi, nfit: fix extended status translations for ACPI DSMs
    committed Dec 9, 2016
  2. Merge branch 'for-4.9-fixes' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/tj/libata
    
    Pull libata fixes from Tejun Heo:
     "This is quite late but SCT Write Same support added during this cycle
      is broken subtly but seriously and it'd be best to disable it before
      v4.9 gets released.
    
      This contains two commits - one low impact sata_mv fix and the
      mentioned disabling of SCT Write Same"
    
    * 'for-4.9-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
      libata-scsi: disable SCT Write Same for the moment
      ata: sata_mv: check for errors when parsing nr-ports from dt
    committed Dec 9, 2016
  3. Merge tag 'ceph-for-4.9-rc9' of git://github.com/ceph/ceph-client

    Pull ceph fix from Ilya Dryomov:
     "A fix for an issue with ->d_revalidate() in ceph, causing frequent
      kernel crashes.
    
      Marked for stable - it goes back to 4.6, but started popping up only
      in 4.8"
    
    * tag 'ceph-for-4.9-rc9' of git://github.com/ceph/ceph-client:
      ceph: don't set req->r_locked_dir in ceph_d_revalidate
    committed Dec 9, 2016
  4. Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/arm/arm-soc
    
    Pull ARM SoC fixes from Olof Johansson:
     "Final batch of SoC fixes
    
      A few fixes that have trickled in over the last week, all fixing minor
      errors in devicetrees -- UART pin assignment on Allwinner H3,
      correcting number of SATA ports on a Marvell-based Linkstation
      platform and a display clock fix for Freescale/NXP i.MX7D that fixes a
      freeze when starting up X"
    
    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
      ARM: dts: orion5x: fix number of sata port for linkstation ls-gl
      ARM: dts: imx7d: fix LCDIF clock assignment
      dts: sun8i-h3: correct UART3 pin definitions
    committed Dec 9, 2016
  5. Merge tag 'm68k-for-v4.9-tag2' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/geert/linux-m68k
    
    Pull m68k fixes from Geert Uytterhoeven:
    
     - build fix for drivers calling ndelay() in a conditional block without
       curly braces
    
     - defconfig updates
    
    * tag 'm68k-for-v4.9-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
      m68k: Fix ndelay() macro
      m68k/defconfig: Update defconfigs for v4.9-rc1
    committed Dec 9, 2016
  6. Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

    Pull drm fix from Dave Airlie:
     "Just a single fix for amdgpu to just suspend the gpu on 'shutdown'
      instead of shutting it down fully, as for some reason the hw was
      getting upset in some situations"
    
    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
      drm/amdgpu: just suspend the hw on pci shutdown
    committed Dec 9, 2016
  7. Revert "radix tree test suite: fix compilation"

    This reverts commit 53855d1.
    
    It shouldn't have come in yet - it depends on the changes in linux-next
    that will come in during the next merge window.  As Matthew Wilcox says,
    the test suite is broken with the current state without the revert.
    
    Requested-by: Matthew Wilcox <mawilcox@microsoft.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    committed Dec 9, 2016
  8. Merge branch 'ethernet-missing-netdev-parent'

    Florian Fainelli says:
    
    ====================
    net: ethernet: Make sure we set dev->dev.parent
    
    This patch series builds atop:
    
    ec988ad ("phy: Don't increment MDIO
    bus refcount unless it's a different owner")
    
    FMAN is the one that potentially needs patching as well (call
    SET_NETDEV_DEV), but there appears to be no way that init_phy is
    called right now, or there is not such an in-tree user. Madalin, can
    you comment on that?
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Dec 9, 2016
  9. net: ethernet: cpmac: Call SET_NETDEV_DEV()

    The TI CPMAC driver calls into PHYLIB which now checks for
    net_device->dev.parent, so make sure we do set it before calling into
    any MDIO/PHYLIB related function.
    
    Fixes: ec988ad ("phy: Don't increment MDIO bus refcount unless it's a different owner")
    Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    ffainelli committed with davem330 Dec 8, 2016
  10. net: ethernet: lantiq_etop: Call SET_NETDEV_DEV()

    The Lantiq Etop driver calls into PHYLIB which now checks for
    net_device->dev.parent, so make sure we do set it before calling into
    any MDIO/PHYLIB related function.
    
    Fixes: ec988ad ("phy: Don't increment MDIO bus refcount unless it's a different owner")
    Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    ffainelli committed with davem330 Dec 8, 2016
  11. vhost-vsock: fix orphan connection reset

    local_addr.svm_cid is host cid. We should check guest cid instead,
    which is remote_addr.svm_cid. Otherwise we end up resetting all
    connections to all guests.
    
    Cc: stable@vger.kernel.org [4.8+]
    Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
    Signed-off-by: Peng Tao <bergwolf@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    bergwolf committed with davem330 Dec 8, 2016
Commits on Dec 8, 2016
  1. Merge branch 'parisc-4.9-5' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/deller/parisc-linux
    
    Pull parisc fixes from Helge Deller:
     "Three important fixes for the parisc architecture.
    
      Dave provided two patches: One which purges the TLB before setting a
      PTE entry and a second one which drops unnecessary TLB flushes. Both
      patches have been tested for one week on the debian buildd servers and
      prevent random segmentation faults.
    
      The patch from me fixes a crash at boot inside the TLB measuring code
      on SMP machines with PA8000-PA8700 CPUs (specifically A500-44 and
      J5000 servers)"
    
    * 'parisc-4.9-5' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
      parisc: Fix TLB related boot crash on SMP machines
      parisc: Remove unnecessary TLB purges from flush_dcache_page_asm and flush_icache_page_asm
      parisc: Purge TLB before setting PTE
    committed Dec 8, 2016
  2. Merge tag 'linux-can-fixes-for-4.9-20161208' of git://git.kernel.org/…

    …pub/scm/linux/kernel/git/mkl/linux-can
    
    Marc Kleine-Budde says:
    
    ====================
    pull-request: can 2016-12-08
    
    this is a pull request for one patch.
    
    Jiho Chu found and fixed a use-after-free error in the cleanup path in
    the peak pcan USB CAN driver.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Dec 8, 2016
  3. cxgb4/cxgb4vf: Assign netdev->dev_port with port ID

    Added missing dev_port assignment in cxgb4vf driver.
    Also made dev_port assignment of cxgb4 in sync with cxgb4vf driver.
    
    Signed-off-by: Casey Leedom <leedom@chelsio.com>
    Signed-off-by: Arjun V <arjun@chelsio.com>
    Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
    Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Arjun V committed with davem330 Dec 8, 2016
  4. parisc: Fix TLB related boot crash on SMP machines

    At bootup we run measurements to calculate the best threshold for when we
    should be using full TLB flushes instead of just flushing a specific amount of
    TLB entries.  This performance test is run over the kernel text segment.
    
    But running this TLB performance test on the kernel text segment turned out to
    crash some SMP machines when the kernel text pages were mapped as huge pages.
    
    To avoid those crashes this patch simply skips this test on some SMP machines
    and calculates an optimal threshold based on the maximum number of available
    TLB entries and number of online CPUs.
    
    On a technical side, this seems to happen:
    The TLB measurement code uses flush_tlb_kernel_range() to flush specific TLB
    entries with a page size of 4k (pdtlb 0(sr1,addr)). On UP systems this purge
    instruction seems to work without problems even if the pages were mapped as
    huge pages.  But on SMP systems the TLB purge instruction is broadcasted to
    other CPUs. Those CPUs then crash the machine because the page size is not as
    expected.  C8000 machines with PA8800/PA8900 CPUs were not affected by this
    problem, because the required cache coherency prohibits to use huge pages at
    all.  Sadly I didn't found any documentation about this behaviour, so this
    finding is purely based on testing with phyiscal SMP machines (A500-44 and
    J5000, both were 2-way boxes).
    
    Cc: <stable@vger.kernel.org> # v3.18+
    Signed-off-by: Helge Deller <deller@gmx.de>
    Helge Deller committed Dec 8, 2016
  5. Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/jejb/scsi
    
    Pull SCSI fix from James Bottomley:
     "One small fix for a regression in a prior fix (again).
    
      This time the condition in the prior fix BUG_ON proved to be wrong
      under certain circumstances causing a BUG to trigger where it
      shouldn't in the lpfc driver"
    
    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
      scsi: lpfc: fix oops/BUG in lpfc_sli_ringtxcmpl_put()
    committed Dec 8, 2016
  6. driver: ipvlan: Unlink the upper dev when ipvlan_link_new failed

    When netdev_upper_dev_unlink failed in ipvlan_link_new, need to
    unlink the ipvlan dev with upper dev.
    
    Signed-off-by: Gao Feng <fgao@ikuai8.com>
    Acked-by: Mahesh Bandewar <maheshb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    gfreewind committed with davem330 Dec 8, 2016
  7. ser_gigaset: return -ENOMEM on error instead of success

    If we can't allocate the resources in gigaset_initdriver() then we
    should return -ENOMEM instead of zero.
    
    Fixes: 2869b23 ("[PATCH] drivers/isdn/gigaset: new M101 driver (v2)")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Dan Carpenter committed with davem330 Dec 7, 2016
  8. ARM: dts: orion5x: fix number of sata port for linkstation ls-gl

    Bug report from Debian [0] shows there's minor changed model of
    Linkstation LS-GL that uses the 2nd SATA port of the SoC.
    So it's necessary to enable two SATA ports, though for that specific
    model only the 2nd one is used.
    
    [0] https://bugs.debian.org/845611
    
    Fixes: b1742ff ("ARM: dts: orion5x: add device tree for buffalo linkstation ls-gl")
    Reported-by: Ryan Tandy <ryan@nardis.ca>
    Tested-by: Ryan Tandy <ryan@nardis.ca>
    Signed-off-by: Roger Shimizu <rogershimizu@gmail.com>
    Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
    rogers0 committed with olofj Dec 1, 2016
  9. NET: usb: cdc_mbim: add quirk for supporting Telit LE922A

    Telit LE922A MBIM based composition does not work properly
    with altsetting toggle done in cdc_ncm_bind_common.
    
    This patch adds CDC_MBIM_FLAG_AVOID_ALTSETTING_TOGGLE quirk
    to avoid this procedure that, instead, is mandatory for
    other modems.
    
    Signed-off-by: Daniele Palmas <dnlplm@gmail.com>
    Reviewed-by: Bjørn Mork <bjorn@mork.no>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    dnlplm committed with davem330 Dec 7, 2016
  10. can: peak: fix bad memory access and free sequence

    Fix for bad memory access while disconnecting. netdev is freed before
    private data free, and dev is accessed after freeing netdev.
    
    This makes a slub problem, and it raise kernel oops with slub debugger
    config.
    
    Signed-off-by: Jiho Chu <jiho.chu@samsung.com>
    Cc: linux-stable <stable@vger.kernel.org>
    Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
    추지호 committed with marckleinebudde Dec 8, 2016
  11. ceph: don't set req->r_locked_dir in ceph_d_revalidate

    This function sets req->r_locked_dir which is supposed to indicate to
    ceph_fill_trace that the parent's i_rwsem is locked for write.
    Unfortunately, there is no guarantee that the dir will be locked when
    d_revalidate is called, so we really don't want ceph_fill_trace to do
    any dcache manipulation from this context. Clear req->r_locked_dir since
    it's clearly not safe to do that.
    
    What we really want to know with d_revalidate is whether the dentry
    still points to the same inode. ceph_fill_trace installs a pointer to
    the inode in req->r_target_inode, so we can just compare that to
    d_inode(dentry) to see if it's the same one after the lookup.
    
    Also, since we aren't generally interested in the parent here, we can
    switch to using a GETATTR to hint that to the MDS, which also means that
    we only need to reserve one cap.
    
    Finally, just remove the d_unhashed check. That's really outside the
    purview of a filesystem's d_revalidate. If the thing became unhashed
    while we're checking it, then that's up to the VFS to handle anyway.
    
    Fixes: 200fd27 ("ceph: use lookup request to revalidate dentry")
    Link: http://tracker.ceph.com/issues/18041
    Reported-by: Donatas Abraitis <donatas.abraitis@gmail.com>
    Signed-off-by: Jeff Layton <jlayton@redhat.com>
    Reviewed-by: "Yan, Zheng" <zyan@redhat.com>
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    jtlayton committed with idryomov Nov 30, 2016
  12. crypto: algif_aead - fix uninitialized variable warning

    In case the user provided insufficient data, the code may return
    prematurely without any operation. In this case, the processed
    data indicated with outlen is zero.
    
    Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Stephan Mueller <smueller@chronox.de>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    smuellerDD committed with herbertx Dec 8, 2016
  13. Merge branch 'akpm' (patches from Andrew)

    Merge more fixes from Andrew Morton:
     "3 fixes"
    
    * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
      kcov: add missing #include <linux/sched.h>
      radix tree test suite: fix compilation
      zram: restrict add/remove attributes to root only
    committed Dec 8, 2016
  14. kcov: add missing #include <linux/sched.h>

    In __sanitizer_cov_trace_pc we use task_struct and fields within it, but
    as we haven't included <linux/sched.h>, it is not guaranteed to be
    defined.  While we usually happen to acquire the definition through a
    transitive include, this is fragile (and hasn't been true in the past,
    causing issues with backports).
    
    Include <linux/sched.h> to avoid any fragility.
    
    [mark.rutland@arm.com: rewrote changelog]
    Link: http://lkml.kernel.org/r/1481007384-27529-1-git-send-email-wangkefeng.wang@huawei.com
    Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
    Acked-by: Mark Rutland <mark.rutland@arm.com>
    Cc: Dmitry Vyukov <dvyukov@google.com>
    Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
    Cc: James Morse <james.morse@arm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Kefeng Wang committed with Dec 7, 2016
  15. radix tree test suite: fix compilation

    Patch "lib/radix-tree: Convert to hotplug state machine" breaks the test
    suite as it adds a call to cpuhp_setup_state_nocalls() which is not
    currently emulated in the test suite.  Add it, and delete the emulation
    of the old CPU hotplug mechanism.
    
    Link: http://lkml.kernel.org/r/1480369871-5271-36-git-send-email-mawilcox@linuxonhyperv.com
    Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
    Tested-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
    Cc: Konstantin Khlebnikov <koct9i@gmail.com>
    Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
    Cc: Matthew Wilcox <mawilcox@microsoft.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Matthew Wilcox committed with Dec 7, 2016
  16. zram: restrict add/remove attributes to root only

    zram hot_add sysfs attribute is a very 'special' attribute - reading
    from it creates a new uninitialized zram device.  This file, by a
    mistake, can be read by a 'normal' user at the moment, while only root
    must be able to create a new zram device, therefore hot_add attribute
    must have S_IRUSR mode, not S_IRUGO.
    
    [akpm@linux-foundation.org: s/sence/sense/, reflow comment to use 80 cols]
    Fixes: 6566d1a ("zram: add dynamic device add/remove functionality")
    Link: http://lkml.kernel.org/r/20161205155845.20129-1-sergey.senozhatsky@gmail.com
    Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
    Reported-by: Steven Allen <steven@stebalien.com>
    Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: Minchan Kim <minchan@kernel.org>
    Cc: <stable@vger.kernel.org>    [4.2+]
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    sergey-senozhatsky committed with Dec 7, 2016
  17. Merge branch 'drm-fixes-4.9' of git://people.freedesktop.org/~agd5f/l…

    …inux into drm-fixes
    
    another regression fix for the shutdown stuff.
    
    * 'drm-fixes-4.9' of git://people.freedesktop.org/~agd5f/linux:
      drm/amdgpu: just suspend the hw on pci shutdown
    Dave Airlie committed Dec 8, 2016
Commits on Dec 7, 2016
  1. libata-scsi: disable SCT Write Same for the moment

    SCT Write Same support had been introduced with
    commit 7b20309 ("libata: Add support for SCT Write Same")
    
    Some problems, namely excessive userspace segfaults, had been reported at
    
      http://lkml.kernel.org/r/20160908192736.GA4356@gmail.com
    
    This lead to commit 0ce1b18 ("libata: Some drives failing on
    SCT Write Same") which strived to disable SCT Write Same on !ZAC devices.
    Due to the way this was done and to the logic in sd_config_write_same(),
    this didn't work for those devices that have
    ->max_ws_blocks > SD_MAX_WS10_BLOCKS: for these, ->no_write_same and
    ->max_write_same_sectors would still be non-zero,
    but ->ws10 == ->ws16 == 0. This would cause sd_setup_write_same_cmnd() to
    demultiplex REQ_OP_WRITE_SAME requests to WRITE_SAME, and these in turn
    aren't supported by libata-scsi:
    
      EXT4-fs (dm-1): Delayed block allocation failed for inode 2625094 at
                      logical offset 2032 with max blocks 2 with error 121
      EXT4-fs (dm-1): This should not happen!! Data will be lost
    
    121 == EREMOTEIO is what scsi_io_completion() asserts in case of
    invalid opcodes.
    
    Back to the original problem of userspace segfaults: this can be tracked
    down to ata_format_sct_write_same() overwriting the input page. Sometimes,
    this page is ZERO_PAGE(0) which ceases to be filled with zeros from that
    point on. Since ZERO_PAGE(0) is used for userspace .bss mappings, code of
    the following is doomed:
    
      static char *a = NULL; /* .bss */
      ...
      if (a)
        *a = 'a';
    
    This problem is not solved by disabling SCT Write Same for !ZAC devices
    only.
    
    It can certainly be fixed, but the final release is quite close -- so
    disable SCT Write Same for all ATA devices rather than introducing some
    SCT key buffer allocation schemes at this point.
    
    Fixes: 7b20309 ("libata: Add support for SCT Write Same")
    Signed-off-by: Nicolai Stange <nicstange@gmail.com>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    nicstange committed with htejun Dec 7, 2016
  2. ARM: dts: imx7d: fix LCDIF clock assignment

    The eLCDIF IP of the i.MX 7 SoC knows multiple clocks and lists them
    separately:
    
    Clock      Clock Root              Description
    apb_clk    MAIN_AXI_CLK_ROOT       AXI clock
    pix_clk    LCDIF_PIXEL_CLK_ROOT    Pixel clock
    ipg_clk_s  MAIN_AXI_CLK_ROOT       Peripheral access clock
    
    All of them are switched by a single gate, which is part of the
    IMX7D_LCDIF_PIXEL_ROOT_CLK clock. Hence using that clock also for
    the AXI bus clock (clock-name "axi") makes sure the gate gets
    enabled when accessing registers.
    
    There seem to be no separate AXI display clock, and the clock is
    optional. Hence remove the dummy clock.
    
    This fixes kernel freezes when starting the X-Server (which
    disables/re-enables the display controller).
    
    Fixes: e8ed73f ("ARM: dts: imx7d: add lcdif support")
    Signed-off-by: Stefan Agner <stefan@agner.ch>
    Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
    Acked-by: Shawn Guo <shawnguo@kernel.org>
    Signed-off-by: Olof Johansson <olof@lixom.net>
    falstaff84 committed with olofj Nov 23, 2016