mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
Merge branch 'nfs-for-2.6.36' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6
* 'nfs-for-2.6.36' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (42 commits) NFS: NFSv4.1 is no longer a "developer only" feature NFS: NFS_V4 is no longer an EXPERIMENTAL feature NFS: Fix /proc/mount for legacy binary interface NFS: Fix the locking in nfs4_callback_getattr SUNRPC: Defer deleting the security context until gss_do_free_ctx() SUNRPC: prevent task_cleanup running on freed xprt SUNRPC: Reduce asynchronous RPC task stack usage SUNRPC: Move the bound cred to struct rpc_rqst SUNRPC: Clean up of rpc_bindcred() SUNRPC: Move remaining RPC client related task initialisation into clnt.c SUNRPC: Ensure that rpc_exit() always wakes up a sleeping task SUNRPC: Make the credential cache hashtable size configurable SUNRPC: Store the hashtable size in struct rpc_cred_cache NFS: Ensure the AUTH_UNIX credcache is allocated dynamically NFS: Fix the NFS users of rpc_restart_call() SUNRPC: The function rpc_restart_call() should return success/failure NFSv4: Get rid of the bogus RPC_ASSASSINATED(task) checks NFSv4: Clean up the process of renewing the NFSv4 lease NFSv4.1: Handle NFS4ERR_DELAY on SEQUENCE correctly NFS: nfs_rename() should not have to flush out writebacks ...
This commit is contained in:
commit
5df6b8e65a
41 changed files with 964 additions and 648 deletions
|
@ -700,7 +700,9 @@ int nfs_flush_incompatible(struct file *file, struct page *page)
|
|||
req = nfs_page_find_request(page);
|
||||
if (req == NULL)
|
||||
return 0;
|
||||
do_flush = req->wb_page != page || req->wb_context != ctx;
|
||||
do_flush = req->wb_page != page || req->wb_context != ctx ||
|
||||
req->wb_lock_context->lockowner != current->files ||
|
||||
req->wb_lock_context->pid != current->tgid;
|
||||
nfs_release_request(req);
|
||||
if (!do_flush)
|
||||
return 0;
|
||||
|
@ -824,6 +826,7 @@ static int nfs_write_rpcsetup(struct nfs_page *req,
|
|||
data->args.pages = data->pagevec;
|
||||
data->args.count = count;
|
||||
data->args.context = get_nfs_open_context(req->wb_context);
|
||||
data->args.lock_context = req->wb_lock_context;
|
||||
data->args.stable = NFS_UNSTABLE;
|
||||
if (how & FLUSH_STABLE) {
|
||||
data->args.stable = NFS_DATA_SYNC;
|
||||
|
@ -1047,9 +1050,9 @@ out:
|
|||
void nfs_write_prepare(struct rpc_task *task, void *calldata)
|
||||
{
|
||||
struct nfs_write_data *data = calldata;
|
||||
struct nfs_client *clp = (NFS_SERVER(data->inode))->nfs_client;
|
||||
|
||||
if (nfs4_setup_sequence(clp, &data->args.seq_args,
|
||||
if (nfs4_setup_sequence(NFS_SERVER(data->inode),
|
||||
&data->args.seq_args,
|
||||
&data->res.seq_res, 1, task))
|
||||
return;
|
||||
rpc_call_start(task);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue