1. 11 Jan, 2018 5 commits
  2. 10 Jan, 2018 5 commits
  3. 08 Jan, 2018 1 commit
  4. 07 Jan, 2018 4 commits
    • Jan Kara's avatar
      ext4: fix ENOSPC handling in DAX page fault handler · 22446423
      Jan Kara authored
      When allocation of underlying block for a page fault fails, we fail the
      fault with SIGBUS. However we may well hit ENOSPC just due to lots of
      free blocks being held by the running / committing transaction. So
      propagate the error from ext4_iomap_begin() and implement do standard
      allocation retry loop in ext4_dax_huge_fault().
      Reviewed-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      22446423
    • Jan Kara's avatar
      dax: pass detailed error code from dax_iomap_fault() · c0b24625
      Jan Kara authored
      Ext4 needs to pass through error from its iomap handler to the page
      fault handler so that it can properly detect ENOSPC and force
      transaction commit and retry the fault (and block allocation). Add
      argument to dax_iomap_fault() for passing such error.
      Reviewed-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      c0b24625
    • Eric Biggers's avatar
      mbcache: revert "fs/mbcache.c: make count_objects() more robust" · bbe45d24
      Eric Biggers authored
      This reverts commit d5dabd63.
      
      This patch did absolutely nothing, because ->c_entry_count is unsigned.
      
      In addition if there is a bug in how mbcache maintains its entry count,
      it needs to be fixed, not just hacked around.  (There is no obvious bug,
      though.)
      
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jiang Biao <jiang.biao2@zte.com.cn>
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      bbe45d24
    • Alexander Potapenko's avatar
      mbcache: initialize entry->e_referenced in mb_cache_entry_create() · 3876bbe2
      Alexander Potapenko authored
      KMSAN reported use of uninitialized |entry->e_referenced| in a condition
      in mb_cache_shrink():
      
      ==================================================================
      BUG: KMSAN: use of uninitialized memory in mb_cache_shrink+0x3b4/0xc50 fs/mbcache.c:287
      CPU: 2 PID: 816 Comm: kswapd1 Not tainted 4.11.0-rc5+ #2877
      Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs
      01/01/2011
      Call Trace:
       __dump_stack lib/dump_stack.c:16 [inline]
       dump_stack+0x172/0x1c0 lib/dump_stack.c:52
       kmsan_report+0x12a/0x180 mm/kmsan/kmsan.c:927
       __msan_warning_32+0x61/0xb0 mm/kmsan/kmsan_instr.c:469
       mb_cache_shrink+0x3b4/0xc50 fs/mbcache.c:287
       mb_cache_scan+0x67/0x80 fs/mbcache.c:321
       do_shrink_slab mm/vmscan.c:397 [inline]
       shrink_slab+0xc3d/0x12d0 mm/vmscan.c:500
       shrink_node+0x208f/0x2fd0 mm/vmscan.c:2603
       kswapd_shrink_node mm/vmscan.c:3172 [inline]
       balance_pgdat mm/vmscan.c:3289 [inline]
       kswapd+0x160f/0x2850 mm/vmscan.c:3478
       kthread+0x46c/0x5f0 kernel/kthread.c:230
       ret_from_fork+0x29/0x40 arch/x86/entry/entry_64.S:430
      chained origin:
       save_stack_trace+0x37/0x40 arch/x86/kernel/stacktrace.c:59
       kmsan_save_stack_with_flags mm/kmsan/kmsan.c:302 [inline]
       kmsan_save_stack mm/kmsan/kmsan.c:317 [inline]
       kmsan_internal_chain_origin+0x12a/0x1f0 mm/kmsan/kmsan.c:547
       __msan_store_shadow_origin_1+0xac/0x110 mm/kmsan/kmsan_instr.c:257
       mb_cache_entry_create+0x3b3/0xc60 fs/mbcache.c:95
       ext4_xattr_cache_insert fs/ext4/xattr.c:1647 [inline]
       ext4_xattr_block_set+0x4c82/0x5530 fs/ext4/xattr.c:1022
       ext4_xattr_set_handle+0x1332/0x20a0 fs/ext4/xattr.c:1252
       ext4_xattr_set+0x4d2/0x680 fs/ext4/xattr.c:1306
       ext4_xattr_trusted_set+0x8d/0xa0 fs/ext4/xattr_trusted.c:36
       __vfs_setxattr+0x703/0x790 fs/xattr.c:149
       __vfs_setxattr_noperm+0x27a/0x6f0 fs/xattr.c:180
       vfs_setxattr fs/xattr.c:223 [inline]
       setxattr+0x6ae/0x790 fs/xattr.c:449
       path_setxattr+0x1eb/0x380 fs/xattr.c:468
       SYSC_lsetxattr+0x8d/0xb0 fs/xattr.c:490
       SyS_lsetxattr+0x77/0xa0 fs/xattr.c:486
       entry_SYSCALL_64_fastpath+0x13/0x94
      origin:
       save_stack_trace+0x37/0x40 arch/x86/kernel/stacktrace.c:59
       kmsan_save_stack_with_flags mm/kmsan/kmsan.c:302 [inline]
       kmsan_internal_poison_shadow+0xb1/0x1a0 mm/kmsan/kmsan.c:198
       kmsan_kmalloc+0x7f/0xe0 mm/kmsan/kmsan.c:337
       kmem_cache_alloc+0x1c2/0x1e0 mm/slub.c:2766
       mb_cache_entry_create+0x283/0xc60 fs/mbcache.c:86
       ext4_xattr_cache_insert fs/ext4/xattr.c:1647 [inline]
       ext4_xattr_block_set+0x4c82/0x5530 fs/ext4/xattr.c:1022
       ext4_xattr_set_handle+0x1332/0x20a0 fs/ext4/xattr.c:1252
       ext4_xattr_set+0x4d2/0x680 fs/ext4/xattr.c:1306
       ext4_xattr_trusted_set+0x8d/0xa0 fs/ext4/xattr_trusted.c:36
       __vfs_setxattr+0x703/0x790 fs/xattr.c:149
       __vfs_setxattr_noperm+0x27a/0x6f0 fs/xattr.c:180
       vfs_setxattr fs/xattr.c:223 [inline]
       setxattr+0x6ae/0x790 fs/xattr.c:449
       path_setxattr+0x1eb/0x380 fs/xattr.c:468
       SYSC_lsetxattr+0x8d/0xb0 fs/xattr.c:490
       SyS_lsetxattr+0x77/0xa0 fs/xattr.c:486
       entry_SYSCALL_64_fastpath+0x13/0x94
      ==================================================================
      Signed-off-by: default avatarAlexander Potapenko <glider@google.com>
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Cc: stable@vger.kernel.org # v4.6
      3876bbe2
  5. 18 Dec, 2017 2 commits
    • Theodore Ts'o's avatar
      ext4: fix up remaining files with SPDX cleanups · f5166768
      Theodore Ts'o authored
      A number of ext4 source files were skipped due because their copyright
      permission statements didn't match the expected text used by the
      automated conversion utilities.  I've added SPDX tags for the rest.
      
      While looking at some of these files, I've noticed that we have quite
      a bit of variation on the licenses that were used --- in particular
      some of the Red Hat licenses on the jbd2 files use a GPL2+ license,
      and we have some files that have a LGPL-2.1 license (which was quite
      surprising).
      
      I've not attempted to do any license changes.  Even if it is perfectly
      legal to relicense to GPL 2.0-only for consistency's sake, that should
      be done with ext4 developer community discussion.
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      
      f5166768
    • Linus Torvalds's avatar
      Linux 4.15-rc4 · 1291a0d5
      Linus Torvalds authored
      1291a0d5
  6. 17 Dec, 2017 20 commits
  7. 16 Dec, 2017 3 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · f3b5ad89
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "More fixes from testing done on the rc kernel, including more SELinux
        testing. Looking forward, lockdep found regression today in ipoib
        which is still being fixed.
      
        Summary:
      
         - Fix for SELinux on the umad SMI path. Some old hardware does not
           fill the PKey properly exposing another bug in the newer SELinux
           code.
      
         - Check the input port as we can exceed array bounds from this user
           supplied value
      
         - Users are unable to use the hash field support as they want due to
           incorrect checks on the field restrictions, correct that so the
           feature works as intended
      
         - User triggerable oops in the NETLINK_RDMA handler
      
         - cxgb4 driver fix for a bad interaction with CQ flushing in iser
           caused by patches in this merge window, and bad CQ flushing during
           normal close.
      
         - Unbalanced memalloc_noio in ipoib in an error path"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        IB/ipoib: Restore MM behavior in case of tx_ring allocation failure
        iw_cxgb4: only insert drain cqes if wq is flushed
        iw_cxgb4: only clear the ARMED bit if a notification is needed
        RDMA/netlink: Fix general protection fault
        IB/mlx4: Fix RSS hash fields restrictions
        IB/core: Don't enforce PKey security on SMI MADs
        IB/core: Bound check alternate path port number
      f3b5ad89
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · f25e2295
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "Two bugfixes for the AT24 I2C eeprom driver and some minor corrections
        for I2C bus drivers"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: piix4: Fix port number check on release
        i2c: stm32: Fix copyrights
        i2c-cht-wc: constify platform_device_id
        eeprom: at24: change nvmem stride to 1
        eeprom: at24: fix I2C device selection for runtime PM
      f25e2295
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.15-3' of git://git.linux-nfs.org/projects/anna/linux-nfs · d025fbf1
      Linus Torvalds authored
      Pull NFS client fixes from Anna Schumaker:
       "This has two stable bugfixes, one to fix a BUG_ON() when
        nfs_commit_inode() is called with no outstanding commit requests and
        another to fix a race in the SUNRPC receive codepath.
      
        Additionally, there are also fixes for an NFS client deadlock and an
        xprtrdma performance regression.
      
        Summary:
      
        Stable bugfixes:
         - NFS: Avoid a BUG_ON() in nfs_commit_inode() by not waiting for a
           commit in the case that there were no commit requests.
         - SUNRPC: Fix a race in the receive code path
      
        Other fixes:
         - NFS: Fix a deadlock in nfs client initialization
         - xprtrdma: Fix a performance regression for small IOs"
      
      * tag 'nfs-for-4.15-3' of git://git.linux-nfs.org/projects/anna/linux-nfs:
        SUNRPC: Fix a race in the receive code path
        nfs: don't wait on commit in nfs_commit_inode() if there were no commit requests
        xprtrdma: Spread reply processing over more CPUs
        nfs: fix a deadlock in nfs client initialization
      d025fbf1