Skip to content
  1. Oct 13, 2019
  2. Oct 12, 2019
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-5.4-2' of git://git.linux-nfs.org/projects/anna/linux-nfs · 1c0cc5f1
      Linus Torvalds authored
      Pull NFS client bugfixes from Anna Schumaker:
       "Stable bugfixes:
         - Fix O_DIRECT accounting of number of bytes read/written # v4.1+
      
        Other fixes:
         - Fix nfsi->nrequests count error on nfs_inode_remove_request()
         - Remove redundant mirror tracking in O_DIRECT
         - Fix leak of clp->cl_acceptor string
         - Fix race to sk_err after xs_error_report"
      
      * tag 'nfs-for-5.4-2' of git://git.linux-nfs.org/projects/anna/linux-nfs:
        SUNRPC: fix race to sk_err after xs_error_report
        NFSv4: Fix leak of clp->cl_acceptor string
        NFS: Remove redundant mirror tracking in O_DIRECT
        NFS: Fix O_DIRECT accounting of number of bytes read/written
        nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request
      1c0cc5f1
    • Linus Torvalds's avatar
      Merge tag '5.4-rc2-smb3' of git://git.samba.org/sfrench/cifs-2.6 · c6ad7c3c
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Eight small SMB3 fixes, four for stable, and important fix for the
        recent regression introduced by filesystem timestamp range patches"
      
      * tag '5.4-rc2-smb3' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: Force reval dentry if LOOKUP_REVAL flag is set
        CIFS: Force revalidate inode when dentry is stale
        smb3: Fix regression in time handling
        smb3: remove noisy debug message and minor cleanup
        CIFS: Gracefully handle QueryInfo errors during open
        cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic
        fs: cifs: mute -Wunused-const-variable message
        smb3: cleanup some recent endian errors spotted by updated sparse
      c6ad7c3c
    • Linus Torvalds's avatar
      Merge tag 'modules-for-v5.4-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux · c6f6ebd7
      Linus Torvalds authored
      Pull module fixes from Jessica Yu:
       "Code cleanups and kbuild/namespace related fixups from Masahiro.
      
        Most importantly, it fixes a namespace-related modpost issue for
        external module builds
      
         - Fix broken external module builds due to a modpost bug in
           read_dump(), where the namespace was not being strdup'd and
           sym->namespace would be set to bogus data.
      
         - Various namespace-related kbuild fixes and cleanups thanks to
           Masahiro Yamada"
      
      * tag 'modules-for-v5.4-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
        doc: move namespaces.rst from kbuild/ to core-api/
        nsdeps: make generated patches independent of locale
        nsdeps: fix hashbang of scripts/nsdeps
        kbuild: fix build error of 'make nsdeps' in clean tree
        module: rename __kstrtab_ns_* to __kstrtabns_* to avoid symbol conflict
        modpost: fix broken sym->namespace for external module builds
        module: swap the order of symbol.namespace
        scripts: add_namespace: Fix coccicheck failed
      c6f6ebd7
    • Linus Torvalds's avatar
      Merge tag 'hyperv-fixes-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux · 56c642e2
      Linus Torvalds authored
      Pull Hyper-V fixes from Sasha Levin:
       "Two fixes from Dexuan Cui:
      
         - Fix a (harmless) warning when building vmbus without
           CONFIG_PM_SLEEP
      
         - Fix for a memory leak (and optimization) in the hyperv mouse code"
      
      * tag 'hyperv-fixes-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux:
        Drivers: hv: vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP
        HID: hyperv: Use in-place iterator API in the channel callback
      56c642e2
    • Joe Perches's avatar
      Documentation/process: Add fallthrough pseudo-keyword · b9918bdc
      Joe Perches authored
      
      
      Describe the fallthrough pseudo-keyword.
      
      Convert the coding-style.rst example to the keyword style.
      Add description and links to deprecated.rst.
      
      Miguel Ojeda comments on the eventual [[fallthrough]] syntax:
       "Note that C17/C18 does not have [[fallthrough]].
      
        C++17 introduced it, as it is mentioned above. I would keep the
        __attribute__((fallthrough)) -> [[fallthrough]] change you did,
        though, since that is indeed the standard syntax (given the paragraph
        references C++17).
      
        I was told by Aaron Ballman (who is proposing them for C) that it is
        more or less likely that it becomes standardized in C2x. However, it
        is still not added to the draft (other attributes are already,
        though). See N2268 and N2269:
      
           http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2268.pdf (fallthrough)
           http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2269.pdf (attributes in general)"
      
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Acked-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b9918bdc
    • Joe Perches's avatar
      compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use · 294f69e6
      Joe Perches authored
      
      
      Reserve the pseudo keyword 'fallthrough' for the ability to convert the
      various case block /* fallthrough */ style comments to appear to be an
      actual reserved word with the same gcc case block missing fallthrough
      warning capability.
      
      All switch/case blocks now should end in one of:
      
      	break;
      	fallthrough;
      	goto <label>;
      	return [expression];
      	continue;
      
      In C mode, GCC supports the __fallthrough__ attribute since 7.1,
      the same time the warning and the comment parsing were introduced.
      
      fallthrough devolves to an empty "do {} while (0)" if the compiler
      version (any version less than gcc 7) does not support the attribute.
      
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Suggested-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Cc: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      294f69e6
    • Joe Perches's avatar
      net: sctp: Rename fallthrough label to unhandled · 48f9bcf9
      Joe Perches authored
      
      
      fallthrough will become a pseudo reserved keyword so this only use of
      fallthrough is better renamed to allow it.
      
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Reviewed-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      Acked-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      48f9bcf9
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2019-10-11' of git://anongit.freedesktop.org/drm/drm · 9892f9f6
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "The regular fixes pull for rc3. The i915 team found some fixes they
        (or I) missed for rc1, which is why this is a bit bigger than usual,
        otherwise there is a single amdgpu fix, some spi panel aliases, and a
        bridge fix.
      
        i915:
         - execlist access fixes
         - list deletion fix
         - CML display fix
         - HSW workaround extension to GT2
         - chicken bit whitelist
         - GGTT resume issue
         - SKL GPU hangs for Vulkan compute
      
        amdgpu:
         - memory leak fix
      
        panel:
         - spi aliases
      
        tc358767:
         - bridge artifacts fix"
      
      * tag 'drm-fixes-2019-10-11' of git://anongit.freedesktop.org/drm/drm: (22 commits)
        drm/bridge: tc358767: fix max_tu_symbol value
        drm/i915/gt: execlists->active is serialised by the tasklet
        drm/i915/execlists: Protect peeking at execlists->active
        drm/i915: Fixup preempt-to-busy vs reset of a virtual request
        drm/i915: Only enqueue already completed requests
        drm/i915/execlists: Drop redundant list_del_init(&rq->sched.link)
        drm/i915/cml: Add second PCH ID for CMP
        drm/amdgpu: fix memory leak
        drm/panel: tpo-td043mtea1: Fix SPI alias
        drm/panel: tpo-td028ttec1: Fix SPI alias
        drm/panel: sony-acx565akm: Fix SPI alias
        drm/panel: nec-nl8048hl11: Fix SPI alias
        drm/panel: lg-lb035q02: Fix SPI alias
        drm/i915: Mark contents as dirty on a write fault
        drm/i915: Prevent bonded requests from overtaking each other on preemption
        drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled
        drm/i915: Verify the engine after acquiring the active.lock
        drm/i915: Extend Haswell GT1 PSMI workaround to all
        drm/i915: Don't mix srcu tag and negative error codes
        drm/i915: Whitelist COMMON_SLICE_CHICKEN2
        ...
      9892f9f6
  3. Oct 11, 2019
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20191010' of git://git.kernel.dk/linux-block · 297cbccc
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - Fix wbt performance regression introduced with the blk-rq-qos
         refactoring (Harshad)
      
       - Fix io_uring fileset removal inadvertently killing the workqueue (me)
      
       - Fix io_uring typo in linked command nonblock submission (Pavel)
      
       - Remove spurious io_uring wakeups on request free (Pavel)
      
       - Fix null_blk zoned command error return (Keith)
      
       - Don't use freezable workqueues for backing_dev, also means we can
         revert a previous libata hack (Mika)
      
       - Fix nbd sysfs mutex dropped too soon at removal time (Xiubo)
      
      * tag 'for-linus-20191010' of git://git.kernel.dk/linux-block:
        nbd: fix possible sysfs duplicate warning
        null_blk: Fix zoned command return code
        io_uring: only flush workqueues on fileset removal
        io_uring: remove wait loop spurious wakeups
        blk-wbt: fix performance regression in wbt scale_up/scale_down
        Revert "libata, freezer: avoid block device removal while system is frozen"
        bdi: Do not use freezable workqueue
        io_uring: fix reversed nonblock flag for link submission
      297cbccc
    • Christian Borntraeger's avatar
      s390/uaccess: avoid (false positive) compiler warnings · 062795fc
      Christian Borntraeger authored
      
      
      Depending on inlining decisions by the compiler, __get/put_user_fn
      might become out of line. Then the compiler is no longer able to tell
      that size can only be 1,2,4 or 8 due to the check in __get/put_user
      resulting in false positives like
      
      ./arch/s390/include/asm/uaccess.h: In function ‘__put_user_fn’:
      ./arch/s390/include/asm/uaccess.h:113:9: warning: ‘rc’ may be used uninitialized in this function [-Wmaybe-uninitialized]
        113 |  return rc;
            |         ^~
      ./arch/s390/include/asm/uaccess.h: In function ‘__get_user_fn’:
      ./arch/s390/include/asm/uaccess.h:143:9: warning: ‘rc’ may be used uninitialized in this function [-Wmaybe-uninitialized]
        143 |  return rc;
            |         ^~
      
      These functions are supposed to be always inlined. Mark it as such.
      
      Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      062795fc
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2019-10-10' of... · 4adbcff2
      Dave Airlie authored
      
      Merge tag 'drm-intel-fixes-2019-10-10' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes
      
      - Fix CML display by adding a missing ID.
      - Drop redundant list_del_init
      - Only enqueue already completed requests to avoid races
      - Fixup preempt-to-busy vs reset of a virtual request
      - Protect peeking at execlists->active
      - execlists->active is serialised by the tasklet
      
      drm-intel-next-fixes-2019-09-19:
      - Extend old HSW workaround to fix some GPU hangs on Haswell GT2
      - Fix return error code on GEM mmap.
      - White list a chicken bit register for push constants legacy mode on Mesa
      - Fix resume issue related to GGTT restore
      - Remove incorrect BUG_ON on execlist's schedule-out
      - Fix unrecoverable GPU hangs with Vulkan compute workloads on SKL
      
      drm-intel-next-fixes-2019-09-26:
      - Fix concurrence on cases where requests where getting retired at same time as resubmitted to HW
      - Fix gen9 display resolutions by setting the right max plane width
      - Fix GPU hang on preemption
      - Mark contents as dirty on a write fault. This was breaking cursor sprite with dumb buffers.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191010143039.GA15313@intel.com
      4adbcff2
    • Dave Airlie's avatar
      Merge tag 'drm-fixes-5.4-2019-10-09' of git://people.freedesktop.org/~agd5f/linux into drm-fixes · 46fe219d
      Dave Airlie authored
      
      
      drm-fixes-5.4-2019-10-09:
      
      amdgpu:
      - fix memory leak in bo_list ioctl error path
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexdeucher@gmail.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191010031023.23359-1-alexander.deucher@amd.com
      46fe219d
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2019-10-10' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · 437c5a15
      Dave Airlie authored
      
      
      Short summary of fixes pull (less than what git shortlog provides):
      - SPI Aliases fixes for panels
      - One fix for the tc358767 bridge dealing with visual artifacts
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Maxime Ripard <mripard@kernel.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191010105137.j6juxht5dsobgxph@gilmour
      437c5a15
    • Benjamin Coddington's avatar
      SUNRPC: fix race to sk_err after xs_error_report · af84537d
      Benjamin Coddington authored
      Since commit 4f8943f8
      
       ("SUNRPC: Replace direct task wakeups from
      softirq context") there has been a race to the value of the sk_err if both
      XPRT_SOCK_WAKE_ERROR and XPRT_SOCK_WAKE_DISCONNECT are set.  In that case,
      we may end up losing the sk_err value that existed when xs_error_report was
      called.
      
      Fix this by reverting to the previous behavior: instead of using SO_ERROR
      to retrieve the value at a later time (which might also return sk_err_soft),
      copy the sk_err value onto struct sock_xprt, and use that value to wake
      pending tasks.
      
      Signed-off-by: default avatarBenjamin Coddington <bcodding@redhat.com>
      Fixes: 4f8943f8
      
       ("SUNRPC: Replace direct task wakeups from softirq context")
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      af84537d
    • Chuck Lever's avatar
      NFSv4: Fix leak of clp->cl_acceptor string · 1047ec86
      Chuck Lever authored
      Our client can issue multiple SETCLIENTID operations to the same
      server in some circumstances. Ensure that calls to
      nfs4_proc_setclientid() after the first one do not overwrite the
      previously allocated cl_acceptor string.
      
      unreferenced object 0xffff888461031800 (size 32):
        comm "mount.nfs", pid 2227, jiffies 4294822467 (age 1407.749s)
        hex dump (first 32 bytes):
          6e 66 73 40 6b 6c 69 6d 74 2e 69 62 2e 31 30 31  nfs@klimt.ib.101
          35 67 72 61 6e 67 65 72 2e 6e 65 74 00 00 00 00  5granger.net....
        backtrace:
          [<00000000ab820188>] __kmalloc+0x128/0x176
          [<00000000eeaf4ec8>] gss_stringify_acceptor+0xbd/0x1a7 [auth_rpcgss]
          [<00000000e85e3382>] nfs4_proc_setclientid+0x34e/0x46c [nfsv4]
          [<000000003d9cf1fa>] nfs40_discover_server_trunking+0x7a/0xed [nfsv4]
          [<00000000b81c3787>] nfs4_discover_server_trunking+0x81/0x244 [nfsv4]
          [<000000000801b55f>] nfs4_init_client+0x1b0/0x238 [nfsv4]
          [<00000000977daf7f>] nfs4_set_client+0xfe/0x14d [nfsv4]
          [<0000000053a68a2a>] nfs4_create_server+0x107/0x1db [nfsv4]
          [<0000000088262019>] nfs4_remote_mount+0x2c/0x59 [nfsv4]
          [<00000000e84a2fd0>] legacy_get_tree+0x2d/0x4c
          [<00000000797e947c>] vfs_get_tree+0x20/0xc7
          [<00000000ecabaaa8>] fc_mount+0xe/0x36
          [<00000000f15fafc2>] vfs_kern_mount+0x74/0x8d
          [<00000000a3ff4e26>] nfs_do_root_mount+0x8a/0xa3 [nfsv4]
          [<00000000d1c2b337>] nfs4_try_mount+0x58/0xad [nfsv4]
          [<000000004c9bddee>] nfs_fs_mount+0x820/0x869 [nfs]
      
      Fixes: f11b2a1c
      
       ("nfs4: copy acceptor name from context ... ")
      Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      1047ec86
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.4-fixes-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 9e208aa0
      Linus Torvalds authored
      Pull xfs fixes from Darrick Wong:
       "A couple of small code cleanups and bug fixes for rounding errors,
        metadata logging errors, and an extra layer of safeguards against
        leaking memory contents.
      
         - Fix a rounding error in the fallocate code
      
         - Minor code cleanups
      
         - Make sure to zero memory buffers before formatting metadata blocks
      
         - Fix a few places where we forgot to log an inode metadata update
      
         - Remove broken error handling that tried to clean up after a failure
           but still got it wrong"
      
      * tag 'xfs-5.4-fixes-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: move local to extent inode logging into bmap helper
        xfs: remove broken error handling on failed attr sf to leaf change
        xfs: log the inode on directory sf to block format change
        xfs: assure zeroed memory buffers for certain kmem allocations
        xfs: removed unused error variable from xchk_refcountbt_rec
        xfs: remove unused flags arg from xfs_get_aghdr_buf()
        xfs: Fix tail rounding in xfs_alloc_file_space()
      9e208aa0
  4. Oct 10, 2019
    • Xiubo Li's avatar
      nbd: fix possible sysfs duplicate warning · 86248810
      Xiubo Li authored
      
      
      1. nbd_put takes the mutex and drops nbd->ref to 0. It then does
      idr_remove and drops the mutex.
      
      2. nbd_genl_connect takes the mutex. idr_find/idr_for_each fails
      to find an existing device, so it does nbd_dev_add.
      
      3. just before the nbd_put could call nbd_dev_remove or not finished
      totally, but if nbd_dev_add try to add_disk, we can hit:
      
      debugfs: Directory 'nbd1' with parent 'block' already present!
      
      This patch will make sure all the disk add/remove stuff are done
      by holding the nbd_index_mutex lock.
      
      Reported-by: default avatarMike Christie <mchristi@redhat.com>
      Reviewed-by: default avatarJosef Bacik <josef@toxicpanda.com>
      Signed-off-by: default avatarXiubo Li <xiubli@redhat.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      86248810
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · fb20da6a
      Linus Torvalds authored
      Pull crypto fixes from Herbert Xu:
       "Fix build issues in arm/aes-ce"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: arm/aes-ce - add dependency on AES library
        crypto: arm/aes-ce - build for v8 architecture explicitly
      fb20da6a
    • Linus Torvalds's avatar
      Merge tag 'for-5.4-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · f8779876
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
       "A few more stabitly fixes, one build warning fix.
      
         - fix inode allocation under NOFS context
      
         - fix leak in fiemap due to concurrent append writes
      
         - fix log-root tree updates
      
         - fix balance convert of single profile on 32bit architectures
      
         - silence false positive warning on old GCCs (code moved in rc1)"
      
      * tag 'for-5.4-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: silence maybe-uninitialized warning in clone_range
        btrfs: fix uninitialized ret in ref-verify
        btrfs: allocate new inode in NOFS context
        btrfs: fix balance convert to single on 32-bit host CPUs
        btrfs: fix incorrect updating of log root tree
        Btrfs: fix memory leak due to concurrent append writes with fiemap
      f8779876
    • Linus Torvalds's avatar
      Merge branch 'work.dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · ad338d05
      Linus Torvalds authored
      Pull dcache_readdir() fixes from Al Viro:
       "The couple of patches you'd been OK with; no hlist conversion yet, and
        cursors are still in the list of children"
      
      [ Al is referring to future work to avoid some nasty O(n**2) behavior
        with the readdir cursors when you have lots of concurrent readdirs.
      
        This is just a fix for a race with a trivial cleanup   - Linus ]
      
      * 'work.dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        libfs: take cursors out of list when moving past the end of directory
        Fix the locking in dcache_readdir() and friends
      ad338d05
    • Linus Torvalds's avatar
      Merge branch 'work.mount3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 015c21ba
      Linus Torvalds authored
      Pull mount fixes from Al Viro:
       "A couple of regressions from the mount series"
      
      * 'work.mount3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        vfs: add missing blkdev_put() in get_tree_bdev()
        shmem: fix LSM options parsing
      015c21ba
    • Geert Uytterhoeven's avatar
      MAINTAINERS: Remove Simon as Renesas SoC Co-Maintainer · 5e48e55f
      Geert Uytterhoeven authored
      
      
      At the end of the v5.3 upstream kernel development cycle, Simon stepped
      down from his role as Renesas SoC maintainer.
      
      Remove his maintainership, git repository, and branch from the
      MAINTAINERS file, and add an entry to the CREDITS file to honor his
      work.
      
      Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5e48e55f
    • Tomi Valkeinen's avatar
      drm/bridge: tc358767: fix max_tu_symbol value · fd70c775
      Tomi Valkeinen authored
      
      
      max_tu_symbol was programmed to TU_SIZE_RECOMMENDED - 1, which is not
      what the spec says. The spec says:
      
      roundup ((input active video bandwidth in bytes/output active video
      bandwidth in bytes) * tu_size)
      
      It is not quite clear what the above means, but calculating
      max_tu_symbol = (input Bps / output Bps) * tu_size seems to work and
      fixes the issues seen.
      
      This fixes artifacts in some videomodes (e.g. 1024x768@60 on 2-lanes &
      1.62Gbps was pretty bad for me).
      
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Tested-by: default avatarJyri Sarha <jsarha@ti.com>
      Signed-off-by: default avatarAndrzej Hajda <a.hajda@samsung.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190924131702.9988-1-tomi.valkeinen@ti.com
      fd70c775
    • Halil Pasic's avatar
      s390/cio: fix virtio-ccw DMA without PV · 05668e1d
      Halil Pasic authored
      Commit 37db8985
      
       ("s390/cio: add basic protected virtualization
      support") breaks virtio-ccw devices with VIRTIO_F_IOMMU_PLATFORM for non
      Protected Virtualization (PV) guests. The problem is that the dma_mask
      of the ccw device, which is used by virtio core, gets changed from 64 to
      31 bit, because some of the DMA allocations do require 31 bit
      addressable memory. For PV the only drawback is that some of the virtio
      structures must end up in ZONE_DMA because we have the bounce the
      buffers mapped via DMA API anyway.
      
      But for non PV guests we have a problem: because of the 31 bit mask
      guests bigger than 2G are likely to try bouncing buffers. The swiotlb
      however is only initialized for PV guests, because we don't want to
      bounce anything for non PV guests. The first such map kills the guest.
      
      Since the DMA API won't allow us to specify for each allocation whether
      we need memory from ZONE_DMA (31 bit addressable) or any DMA capable
      memory will do, let us use coherent_dma_mask (which is used for
      allocations) to force allocating form ZONE_DMA while changing dma_mask
      to DMA_BIT_MASK(64) so that at least the streaming API will regard
      the whole memory DMA capable.
      
      Signed-off-by: default avatarHalil Pasic <pasic@linux.ibm.com>
      Reported-by: default avatarMarc Hartmayer <mhartmay@linux.ibm.com>
      Suggested-by: default avatarRobin Murphy <robin.murphy@arm.com>
      Fixes: 37db8985
      
       ("s390/cio: add basic protected virtualization support")
      Link: https://lore.kernel.org/lkml/20190930153803.7958-1-pasic@linux.ibm.com
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarCornelia Huck <cohuck@redhat.com>
      Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      05668e1d
    • Keith Busch's avatar
      null_blk: Fix zoned command return code · 79a85e21
      Keith Busch authored
      The return code from null_handle_zoned() sets the cmd->error value.
      Returning OK status when an error occured overwrites the intended
      cmd->error. Return the appropriate error code instead of setting the
      error in the cmd.
      
      Fixes: fceb5d1b
      
       ("null_blk: create a helper for zoned devices")
      Cc: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
      Signed-off-by: default avatarKeith Busch <kbusch@kernel.org>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      79a85e21
    • Al Viro's avatar
      libfs: take cursors out of list when moving past the end of directory · 26b6c984
      Al Viro authored
      
      
      that eliminates the last place where we accessed the tail of ->d_subdirs
      
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      26b6c984
    • Ian Kent's avatar
      vfs: add missing blkdev_put() in get_tree_bdev() · 6fcf0c72
      Ian Kent authored
      
      
      Is there are a couple of missing blkdev_put() in get_tree_bdev()?
      
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      6fcf0c72
    • Al Viro's avatar
      shmem: fix LSM options parsing · 33f37c64
      Al Viro authored
      
      
      ->parse_monolithic() there forgets to call security_sb_eat_lsm_opts()
      
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      33f37c64
    • Chris Wilson's avatar
      drm/i915/gt: execlists->active is serialised by the tasklet · e137d3ab
      Chris Wilson authored
      The active/pending execlists is no longer protected by the
      engine->active.lock, but is serialised by the tasklet instead. Update
      the locking around the debug and stats to follow suit.
      
      v2: local_bh_disable() to prevent recursing into the tasklet in case we
      trigger a softirq (Tvrtko)
      
      Fixes: df403069
      
       ("drm/i915/execlists: Lift process_csb() out of the irq-off spinlock")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191009160906.16195-1-chris@chris-wilson.co.uk
      (cherry picked from commit c36eebd9ba5d70b84e1e7408ccc7632566f285c4)
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      e137d3ab
    • Chris Wilson's avatar
      drm/i915/execlists: Protect peeking at execlists->active · 749085a2
      Chris Wilson authored
      Now that we dropped the engine->active.lock serialisation from around
      process_csb(), direct submission can run concurrently to the interrupt
      handler. As such execlists->active may be advanced as we dequeue,
      dropping the reference to the request. We need to employ our RCU request
      protection to ensure that the request is not freed too early.
      
      Fixes: df403069
      
       ("drm/i915/execlists: Lift process_csb() out of the irq-off spinlock")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191009100955.21477-1-chris@chris-wilson.co.uk
      (cherry picked from commit c949ae43
      
      )
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      749085a2
    • Chris Wilson's avatar
      drm/i915: Fixup preempt-to-busy vs reset of a virtual request · 68184eb7
      Chris Wilson authored
      Due to the nature of preempt-to-busy the execlists active tracking and
      the schedule queue may become temporarily desync'ed (between resubmission
      to HW and its ack from HW). This means that we may have unwound a
      request and passed it back to the virtual engine, but it is still
      inflight on the HW and may even result in a GPU hang. If we detect that
      GPU hang and try to reset, the hanging request->engine will no longer
      match the current engine, which means that the request is not on the
      execlists active list and we should not try to find an older incomplete
      request. Given that we have deduced this must be a request on a virtual
      engine, it is the single active request in the context and so must be
      guilty (as the context is still inflight, it is prevented from being
      executed on another engine as we process the reset).
      
      Fixes: 22b7a426
      
       ("drm/i915/execlists: Preempt-to-busy")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190923152844.8914-2-chris@chris-wilson.co.uk
      (cherry picked from commit cb2377a9
      
      )
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      68184eb7
    • Jens Axboe's avatar
      io_uring: only flush workqueues on fileset removal · 8a997340
      Jens Axboe authored
      We should not remove the workqueue, we just need to ensure that the
      workqueues are synced. The workqueues are torn down on ctx removal.
      
      Cc: stable@vger.kernel.org
      Fixes: 6b06314c
      
       ("io_uring: add file set registration")
      Reported-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      8a997340
    • Chris Wilson's avatar
      drm/i915: Only enqueue already completed requests · a8385f0c
      Chris Wilson authored
      
      
      If we are asked to submit a completed request, just move it onto the
      active-list without modifying it's payload. If we try to emit the
      modified payload of a completed request, we risk racing with the
      ring->head update during retirement which may advance the head past our
      breadcrumb and so we generate a warning for the emission being behind
      the RING_HEAD.
      
      v2: Commentary for the sneaky, shared responsibility between functions.
      v3: Spelling mistakes and bonus assertion
      
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190923110056.15176-3-chris@chris-wilson.co.uk
      (cherry picked from commit c0bb487d
      
      )
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      a8385f0c
    • Chris Wilson's avatar
      drm/i915/execlists: Drop redundant list_del_init(&rq->sched.link) · 6535a4b3
      Chris Wilson authored
      Since amalgamating the queued and active lists in commit 422d7df4
      ("drm/i915: Replace engine->timeline with a plain list"), performing a
      i915_request_submit() will remove the request from the execlists
      priority queue.
      
      References: 422d7df4
      
       ("drm/i915: Replace engine->timeline with a plain list")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190923110056.15176-2-chris@chris-wilson.co.uk
      (cherry picked from commit 3231f8c0
      
      )
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      6535a4b3
    • Matt Roper's avatar
      drm/i915/cml: Add second PCH ID for CMP · a8064d57
      Matt Roper authored
      The CMP PCH ID we have in the driver is correct for the CML-U machines we have
      in our CI system, but the CML-S and CML-H CI machines appear to use a
      different PCH ID, leading our driver to detect no PCH for them.
      
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: Anusha Srivatsa <anusha.srivatsa@intel.com>
      References: 729ae330
      
       ("drm/i915/cml: Introduce Comet Lake PCH")
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111461
      Signed-off-by: default avatarMatt Roper <matthew.d.roper@intel.com>
      Acked-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190916233251.387-1-matthew.d.roper@intel.com
      Fixes: 729ae330 ("drm/i915/cml: Introduce Comet Lake PCH")
      (cherry picked from commit 8698ba53
      
      )
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      a8064d57
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 8a8c600d
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "The usual collection of driver bug fixes, and a few regressions from
        the merge window. Nothing particularly worrisome.
      
         - Various missed memory frees and error unwind bugs
      
         - Fix regressions in a few iwarp drivers from 5.4 patches
      
         - A few regressions added in past kernels
      
         - Squash a number of races in mlx5 ODP code"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        RDMA/mlx5: Add missing synchronize_srcu() for MW cases
        RDMA/mlx5: Put live in the correct place for ODP MRs
        RDMA/mlx5: Order num_pending_prefetch properly with synchronize_srcu
        RDMA/odp: Lift umem_mutex out of ib_umem_odp_unmap_dma_pages()
        RDMA/mlx5: Fix a race with mlx5_ib_update_xlt on an implicit MR
        RDMA/mlx5: Do not allow rereg of a ODP MR
        IB/core: Fix wrong iterating on ports
        RDMA/nldev: Reshuffle the code to avoid need to rebind QP in error path
        RDMA/cxgb4: Do not dma memory off of the stack
        RDMA/cm: Fix memory leak in cm_add/remove_one
        RDMA/core: Fix an error handling path in 'res_get_common_doit()'
        RDMA/i40iw: Associate ibdev to netdev before IB device registration
        RDMA/iwcm: Fix a lock inversion issue
        RDMA/iw_cxgb4: fix SRQ access from dump_qp()
        RDMA/hfi1: Prevent memory leak in sdma_init
        RDMA/core: Fix use after free and refcnt leak on ndev in_device in iwarp_query_port
        RDMA/siw: Fix serialization issue in write_space()
        RDMA/vmw_pvrdma: Free SRQ only once
      8a8c600d
    • Nirmoy Das's avatar
      drm/amdgpu: fix memory leak · 083164db
      Nirmoy Das authored
      
      
      cleanup error handling code and make sure temporary info array
      with the handles are freed by amdgpu_bo_list_put() on
      idr_replace()'s failure.
      
      Signed-off-by: default avatarNirmoy Das <nirmoy.das@amd.com>
      Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      083164db
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · e60329c9
      Linus Torvalds authored
      
      
      Pull arm64 fixes from Will Deacon:
       "A larger-than-usual batch of arm64 fixes for -rc3.
      
        The bulk of the fixes are dealing with a bunch of issues with the
        build system from the compat vDSO, which unfortunately led to some
        significant Makefile rework to manage the horrible combinations of
        toolchains that we can end up needing to drive simultaneously.
      
        We came close to disabling the thing entirely, but Vincenzo was quick
        to spin up some patches and I ended up picking up most of the bits
        that were left [*]. Future work will look at disentangling the header
        files properly.
      
        Other than that, we have some important fixes all over, including one
        papering over the miscompilation fallout from forcing
        CONFIG_OPTIMIZE_INLINING=y, which I'm still unhappy about. Harumph.
      
        We've still got a couple of open issues, so I'm expecting to have some
        more fixes later this cycle.
      
        Summary:
      
         - Numerous fixes to the compat vDSO build system, especially when
           combining gcc and clang
      
         - Fix parsing of PAR_EL1 in spurious kernel fault detection
      
         - Partial workaround for Neoverse-N1 erratum #1542419
      
         - Fix IRQ priority masking on entry from compat syscalls
      
         - Fix advertisment of FRINT HWCAP to userspace
      
         - Attempt to workaround inlining breakage with '__always_inline'
      
         - Fix accidental freeing of parent SVE state on fork() error path
      
         - Add some missing NULL pointer checks in instruction emulation init
      
         - Some formatting and comment fixes"
      
      [*] Will's final fixes were
      
      Reviewed-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      Tested-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      
          but they were already in linux-next by then and he didn't rebase
          just to add those.
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (21 commits)
        arm64: armv8_deprecated: Checking return value for memory allocation
        arm64: Kconfig: Make CONFIG_COMPAT_VDSO a proper Kconfig option
        arm64: vdso32: Rename COMPATCC to CC_COMPAT
        arm64: vdso32: Pass '--target' option to clang via VDSO_CAFLAGS
        arm64: vdso32: Don't use KBUILD_CPPFLAGS unconditionally
        arm64: vdso32: Move definition of COMPATCC into vdso32/Makefile
        arm64: Default to building compat vDSO with clang when CONFIG_CC_IS_CLANG
        lib: vdso: Remove CROSS_COMPILE_COMPAT_VDSO
        arm64: vdso32: Remove jump label config option in Makefile
        arm64: vdso32: Detect binutils support for dmb ishld
        arm64: vdso: Remove stale files from old assembly implementation
        arm64: vdso32: Fix broken compat vDSO build warnings
        arm64: mm: fix spurious fault detection
        arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419
        arm64: Fix incorrect irqflag restore for priority masking for compat
        arm64: mm: avoid virt_to_phys(init_mm.pgd)
        arm64: cpufeature: Effectively expose FRINT capability to userspace
        arm64: Mark functions using explicit register variables as '__always_inline'
        docs: arm64: Fix indentation and doc formatting
        arm64/sve: Fix wrong free for task->thread.sve_state
        ...
      e60329c9
  5. Oct 09, 2019