07 Mar, 2010

1 commit

  • * 'for-2.6.34' of git://linux-nfs.org/~bfields/linux: (22 commits)
    nfsd4: fix minor memory leak
    svcrpc: treat uid's as unsigned
    nfsd: ensure sockets are closed on error
    Revert "sunrpc: move the close processing after do recvfrom method"
    Revert "sunrpc: fix peername failed on closed listener"
    sunrpc: remove unnecessary svc_xprt_put
    NFSD: NFSv4 callback client should use RPC_TASK_SOFTCONN
    xfs_export_operations.commit_metadata
    commit_metadata export operation replacing nfsd_sync_dir
    lockd: don't clear sm_monitored on nsm_reboot_lookup
    lockd: release reference to nsm_handle in nlm_host_rebooted
    nfsd: Use vfs_fsync_range() in nfsd_commit
    NFSD: Create PF_INET6 listener in write_ports
    SUNRPC: NFS kernel APIs shouldn't return ENOENT for "transport not found"
    SUNRPC: Bury "#ifdef IPV6" in svc_create_xprt()
    NFSD: Support AF_INET6 in svc_addsock() function
    SUNRPC: Use rpc_pton() in ip_map_parse()
    nfsd: 4.1 has an rfc number
    nfsd41: Create the recovery entry for the NFSv4.1 client
    nfsd: use vfs_fsync for non-directories
    ...

    Linus Torvalds
     

06 Mar, 2010

13 commits


05 Mar, 2010

2 commits

  • Resolve merge conflict in fs/xfs/linux-2.6/xfs_export.c.

    J. Bruce Fields
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (52 commits)
    init: Open /dev/console from rootfs
    mqueue: fix typo "failues" -> "failures"
    mqueue: only set error codes if they are really necessary
    mqueue: simplify do_open() error handling
    mqueue: apply mathematics distributivity on mq_bytes calculation
    mqueue: remove unneeded info->messages initialization
    mqueue: fix mq_open() file descriptor leak on user-space processes
    fix race in d_splice_alias()
    set S_DEAD on unlink() and non-directory rename() victims
    vfs: add NOFOLLOW flag to umount(2)
    get rid of ->mnt_parent in tomoyo/realpath
    hppfs can use existing proc_mnt, no need for do_kern_mount() in there
    Mirror MS_KERNMOUNT in ->mnt_flags
    get rid of useless vfsmount_lock use in put_mnt_ns()
    Take vfsmount_lock to fs/internal.h
    get rid of insanity with namespace roots in tomoyo
    take check for new events in namespace (guts of mounts_poll()) to namespace.c
    Don't mess with generic_permission() under ->d_lock in hpfs
    sanitize const/signedness for udf
    nilfs: sanitize const/signedness in dealing with ->d_name.name
    ...

    Fix up fairly trivial (famous last words...) conflicts in
    drivers/infiniband/core/uverbs_main.c and security/tomoyo/realpath.c

    Linus Torvalds
     

04 Mar, 2010

2 commits


03 Mar, 2010

8 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
    percpu: add __percpu sparse annotations to what's left
    percpu: add __percpu sparse annotations to fs
    percpu: add __percpu sparse annotations to core kernel subsystems
    local_t: Remove leftover local.h
    this_cpu: Remove pageset_notifier
    this_cpu: Page allocator conversion
    percpu, x86: Generic inc / dec percpu instructions
    local_t: Move local.h include to ringbuffer.c and ring_buffer_benchmark.c
    module: Use this_cpu_xx to dynamically allocate counters
    local_t: Remove cpu_local_xx macros
    percpu: refactor the code in pcpu_[de]populate_chunk()
    percpu: remove compile warnings caused by __verify_pcpu_ptr()
    percpu: make accessors check for percpu pointer in sparse
    percpu: add __percpu for sparse.
    percpu: make access macros universal
    percpu: remove per_cpu__ prefix.

    Linus Torvalds
     
  • Signed-off-by: Andy Adamson
    Signed-off-by: Benny Halevy
    Signed-off-by: Trond Myklebust

    Andy Adamson
     
  • sunrpc_cache_update() will always call detail->update() from inside the
    detail->hash_lock, so it cannot allocate memory.

    Signed-off-by: Trond Myklebust
    Cc: stable@kernel.org

    Trond Myklebust
     
  • Ensure that we change the EXCHANGE_ID verifier (i.e. clp->cl_boot_time)
    when we want to reset all state. This is mainly needed when the server
    tells us that it is revoking our open or lock stateids.

    Handle revoking of recallable state by expiring the delegations.

    Handle callback path issues by expiring the delegations and then resetting
    the session.

    Signed-off-by: Trond Myklebust

    Trond Myklebust
     
  • renewd sends RENEW requests to the NFS server in order to renew state.
    As the request is asynchronous, renewd should take a reference to the
    nfs_client to prevent concurrent umounts from freeing the client

    Signed-off-by: Alexandros Batsakis
    Signed-off-by: Trond Myklebust

    Alexandros Batsakis
     
  • renewd sends SEQUENCE requests to the NFS server in order to renew state.
    As the request is asynchronous, renewd should take a reference to the
    nfs_client to prevent concurrent umounts from freeing the session/client

    Signed-off-by: Alexandros Batsakis
    Signed-off-by: Trond Myklebust

    Alexandros Batsakis
     
  • If the renewd send queue gets backlogged (e.g., if the server goes down),
    we will keep filling the queue with periodic RENEW/SEQUENCE requests.

    This patch schedules a new renewd request if and only if the previous one
    returns (either success or failure)

    Signed-off-by: Alexandros Batsakis
    [Trond.Myklebust@netapp.com: moved nfs4_schedule_state_renewal() into
    separate nfs4_renew_release() and nfs41_sequence_release() callbacks
    to ensure correct behaviour on call setup failure]
    Signed-off-by: Trond Myklebust

    Alexandros Batsakis
     
  • renewd should be synchronously killed before we destroy the session in
    nfs4_clear_minor_version

    Signed-off-by: Alexandros Batsakis
    [Trond.Myklebust@netapp.com: clean up to remove 'unused function
    warning when !CONFIG_NFS_V4]
    Signed-off-by: Trond Myklebust

    Alexandros Batsakis
     

27 Feb, 2010

1 commit

  • There's currently an open Ubuntu bug[0], with the intent to compile NFS_FSCACHE
    (and possibly AFS_FSCACHE, 9P_FSCACHE) into the standard Ubuntu kernel.
    However, since *_FSCACHE still depends on EXPERIMENTAL, this won't happen.

    As Arjan van de Ven pointed out[1], the EXPERIMENTAL flag doesn't mean that
    much any more, I propose the following patch to fs/nfs/Kconfig. I'd do the
    same for fs/9p/Kconfig and fs/afs/Kconfig, but as I did not test 9p or AFS, I
    feel it would not be appropriate for me to remove the flag.

    [0] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/440522/comments/5
    [1] http://lkml.org/lkml/2010/1/23/145

    Signed-off-by: Christian Kujau
    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    Christian Kujau
     

17 Feb, 2010

1 commit

  • Add __percpu sparse annotations to fs.

    These annotations are to make sparse consider percpu variables to be
    in a different address space and warn if accessed without going
    through percpu accessors. This patch doesn't affect normal builds.

    Signed-off-by: Tejun Heo
    Cc: "Theodore Ts'o"
    Cc: Trond Myklebust
    Cc: Alex Elder
    Cc: Christoph Hellwig
    Cc: Alexander Viro

    Tejun Heo
     

16 Feb, 2010

1 commit

  • The cached read and write paths initialize fattr->time_start in their
    setup procedures. The value of fattr->time_start is propagated to
    read_cache_jiffies by nfs_update_inode(). Subsequent calls to
    nfs_attribute_timeout() will then use a good time stamp when
    computing the attribute cache timeout, and squelch unneeded GETATTR
    calls.

    Since the direct I/O paths erroneously leave the inode's
    fattr->time_start field set to zero, read_cache_jiffies for that inode
    is set to zero after any direct read or write operation. This
    triggers an otw GETATTR or ACCESS call to update the file's attribute
    and access caches properly, even when the NFS READ or WRITE replies
    have usable post-op attributes.

    Make sure the direct read and write setup code performs the same fattr
    initialization as the cached I/O paths to prevent unnecessary GETATTR
    calls.

    This was likely introduced by commit 0e574af1 in 2.6.15, which appears
    to add new nfs_fattr_init() call sites in the cached read and write
    paths, but not in the equivalent places in fs/nfs/direct.c. A
    subsequent commit in the same series, 33801147, introduces the
    fattr->time_start field.

    Interestingly, the direct write reschedule path already has a call to
    nfs_fattr_init() in the right place.

    Reported-by: Quentin Barnes
    Signed-off-by: Chuck Lever
    Cc: stable@kernel.org
    Signed-off-by: Trond Myklebust
    Signed-off-by: Linus Torvalds

    Chuck Lever
     

10 Feb, 2010

11 commits