21 Apr, 2014

1 commit

  • Pull ext4 fixes from Ted Ts'o:
    "These are regression and bug fixes for ext4.

    We had a number of new features in ext4 during this merge window
    (ZERO_RANGE and COLLAPSE_RANGE fallocate modes, renameat, etc.) so
    there were many more regression and bug fixes this time around. It
    didn't help that xfstests hadn't been fully updated to fully stress
    test COLLAPSE_RANGE until after -rc1"

    * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (31 commits)
    ext4: disable COLLAPSE_RANGE for bigalloc
    ext4: fix COLLAPSE_RANGE failure with 1KB block size
    ext4: use EINVAL if not a regular file in ext4_collapse_range()
    ext4: enforce we are operating on a regular file in ext4_zero_range()
    ext4: fix extent merging in ext4_ext_shift_path_extents()
    ext4: discard preallocations after removing space
    ext4: no need to truncate pagecache twice in collapse range
    ext4: fix removing status extents in ext4_collapse_range()
    ext4: use filemap_write_and_wait_range() correctly in collapse range
    ext4: use truncate_pagecache() in collapse range
    ext4: remove temporary shim used to merge COLLAPSE_RANGE and ZERO_RANGE
    ext4: fix ext4_count_free_clusters() with EXT4FS_DEBUG and bigalloc enabled
    ext4: always check ext4_ext_find_extent result
    ext4: fix error handling in ext4_ext_shift_extents
    ext4: silence sparse check warning for function ext4_trim_extent
    ext4: COLLAPSE_RANGE only works on extent-based files
    ext4: fix byte order problems introduced by the COLLAPSE_RANGE patches
    ext4: use i_size_read in ext4_unaligned_aio()
    fs: disallow all fallocate operation on active swapfile
    fs: move falloc collapse range check into the filesystem methods
    ...

    Linus Torvalds
     

13 Apr, 2014

2 commits

  • The vfs merge caused a latent bug to show up:

    In file included from fs/ceph/super.h:4:0,
    from fs/ceph/ioctl.c:3:
    include/linux/ceph/ceph_debug.h:4:0: warning: "pr_fmt" redefined [enabled by default]
    #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
    ^
    In file included from include/linux/kernel.h:13:0,
    from include/linux/uio.h:12,
    from include/linux/socket.h:7,
    from include/uapi/linux/in.h:22,
    from include/linux/in.h:23,
    from fs/ceph/ioctl.c:1:
    include/linux/printk.h:214:0: note: this is the location of the previous definition
    #define pr_fmt(fmt) fmt
    ^

    where the reason is that is included much too late
    for the "pr_fmt()" define.

    The include of needs to be the first include in the
    file, but fs/ceph/ioctl.c had for some reason missed that, and it wasn't
    noticeable until some unrelated header file changes brought in an
    indirect earlier include of .

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Pull vfs updates from Al Viro:
    "The first vfs pile, with deep apologies for being very late in this
    window.

    Assorted cleanups and fixes, plus a large preparatory part of iov_iter
    work. There's a lot more of that, but it'll probably go into the next
    merge window - it *does* shape up nicely, removes a lot of
    boilerplate, gets rid of locking inconsistencie between aio_write and
    splice_write and I hope to get Kent's direct-io rewrite merged into
    the same queue, but some of the stuff after this point is having
    (mostly trivial) conflicts with the things already merged into
    mainline and with some I want more testing.

    This one passes LTP and xfstests without regressions, in addition to
    usual beating. BTW, readahead02 in ltp syscalls testsuite has started
    giving failures since "mm/readahead.c: fix readahead failure for
    memoryless NUMA nodes and limit readahead pages" - might be a false
    positive, might be a real regression..."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (63 commits)
    missing bits of "splice: fix racy pipe->buffers uses"
    cifs: fix the race in cifs_writev()
    ceph_sync_{,direct_}write: fix an oops on ceph_osdc_new_request() failure
    kill generic_file_buffered_write()
    ocfs2_file_aio_write(): switch to generic_perform_write()
    ceph_aio_write(): switch to generic_perform_write()
    xfs_file_buffered_aio_write(): switch to generic_perform_write()
    export generic_perform_write(), start getting rid of generic_file_buffer_write()
    generic_file_direct_write(): get rid of ppos argument
    btrfs_file_aio_write(): get rid of ppos
    kill the 5th argument of generic_file_buffered_write()
    kill the 4th argument of __generic_file_aio_write()
    lustre: don't open-code kernel_recvmsg()
    ocfs2: don't open-code kernel_recvmsg()
    drbd: don't open-code kernel_recvmsg()
    constify blk_rq_map_user_iov() and friends
    lustre: switch to kernel_sendmsg()
    ocfs2: don't open-code kernel_sendmsg()
    take iov_iter stuff to mm/iov_iter.c
    process_vm_access: tidy up a bit
    ...

    Linus Torvalds
     

12 Apr, 2014

2 commits


07 Apr, 2014

1 commit


05 Apr, 2014

14 commits


03 Apr, 2014

15 commits


02 Apr, 2014

2 commits


18 Feb, 2014

3 commits

  • If directory is fragmented, readdir() read its dirfrags one by one.
    After reading all dirfrags, the corresponding dentries are sorted in
    (frag_t, off) order in the dcache. If dentries of a directory are all
    cached, __dcache_readdir() can use the cached dentries to satisfy
    readdir syscall. But when checking if a given dentry is after the
    position of readdir, __dcache_readdir() compares numerical value of
    frag_t directly. This is wrong, it should use ceph_frag_compare().

    Signed-off-by: Yan, Zheng

    Yan, Zheng
     
  • Make the 'acl' option dependent on having ACL support compiled in. Make
    the 'noacl' option work even without it so that one can always ask it to
    be off and not error out on mount when it is not supported.

    Signed-off-by: Guangliang Zhao
    Signed-off-by: Sage Weil

    Sage Weil
     
  • Signed-off-by: Guangliang Zhao
    Reviewed-by: Alex Elder
    Signed-off-by: Sage Weil

    Guangliang Zhao