Commit ef311537 authored by Andy Adamson's avatar Andy Adamson Committed by Trond Myklebust

NFSv4.1 convert layoutcommit sync to boolean

Signed-off-by: default avatarAndy Adamson <andros@netapp.com>
Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent de4b15c7
...@@ -328,7 +328,7 @@ nfs_file_fsync(struct file *file, int datasync) ...@@ -328,7 +328,7 @@ nfs_file_fsync(struct file *file, int datasync)
ret = status; ret = status;
if (!ret && !datasync) if (!ret && !datasync)
/* application has asked for meta-data sync */ /* application has asked for meta-data sync */
ret = pnfs_layoutcommit_inode(inode, 1); ret = pnfs_layoutcommit_inode(inode, true);
return ret; return ret;
} }
......
...@@ -263,7 +263,7 @@ extern int nfs4_init_session(struct nfs_server *server); ...@@ -263,7 +263,7 @@ extern int nfs4_init_session(struct nfs_server *server);
extern int nfs4_proc_get_lease_time(struct nfs_client *clp, extern int nfs4_proc_get_lease_time(struct nfs_client *clp,
struct nfs_fsinfo *fsinfo); struct nfs_fsinfo *fsinfo);
extern int nfs4_proc_layoutcommit(struct nfs4_layoutcommit_data *data, extern int nfs4_proc_layoutcommit(struct nfs4_layoutcommit_data *data,
int sync); bool sync);
static inline bool static inline bool
is_ds_only_client(struct nfs_client *clp) is_ds_only_client(struct nfs_client *clp)
......
...@@ -5671,7 +5671,7 @@ static const struct rpc_call_ops nfs4_layoutcommit_ops = { ...@@ -5671,7 +5671,7 @@ static const struct rpc_call_ops nfs4_layoutcommit_ops = {
}; };
int int
nfs4_proc_layoutcommit(struct nfs4_layoutcommit_data *data, int sync) nfs4_proc_layoutcommit(struct nfs4_layoutcommit_data *data, bool sync)
{ {
struct rpc_message msg = { struct rpc_message msg = {
.rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_LAYOUTCOMMIT], .rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_LAYOUTCOMMIT],
...@@ -5699,7 +5699,7 @@ nfs4_proc_layoutcommit(struct nfs4_layoutcommit_data *data, int sync) ...@@ -5699,7 +5699,7 @@ nfs4_proc_layoutcommit(struct nfs4_layoutcommit_data *data, int sync)
task = rpc_run_task(&task_setup_data); task = rpc_run_task(&task_setup_data);
if (IS_ERR(task)) if (IS_ERR(task))
return PTR_ERR(task); return PTR_ERR(task);
if (!sync) if (sync == false)
goto out; goto out;
status = nfs4_wait_for_completion_rpc_task(task); status = nfs4_wait_for_completion_rpc_task(task);
if (status != 0) if (status != 0)
......
...@@ -991,7 +991,7 @@ EXPORT_SYMBOL_GPL(pnfs_set_layoutcommit); ...@@ -991,7 +991,7 @@ EXPORT_SYMBOL_GPL(pnfs_set_layoutcommit);
* if WRITEs to a data server return NFS_DATA_SYNC. * if WRITEs to a data server return NFS_DATA_SYNC.
*/ */
int int
pnfs_layoutcommit_inode(struct inode *inode, int sync) pnfs_layoutcommit_inode(struct inode *inode, bool sync)
{ {
struct nfs4_layoutcommit_data *data; struct nfs4_layoutcommit_data *data;
struct nfs_inode *nfsi = NFS_I(inode); struct nfs_inode *nfsi = NFS_I(inode);
......
...@@ -155,7 +155,7 @@ void pnfs_roc_release(struct inode *ino); ...@@ -155,7 +155,7 @@ void pnfs_roc_release(struct inode *ino);
void pnfs_roc_set_barrier(struct inode *ino, u32 barrier); void pnfs_roc_set_barrier(struct inode *ino, u32 barrier);
bool pnfs_roc_drain(struct inode *ino, u32 *barrier); bool pnfs_roc_drain(struct inode *ino, u32 *barrier);
void pnfs_set_layoutcommit(struct nfs_write_data *wdata); void pnfs_set_layoutcommit(struct nfs_write_data *wdata);
int pnfs_layoutcommit_inode(struct inode *inode, int sync); int pnfs_layoutcommit_inode(struct inode *inode, bool sync);
static inline int lo_fail_bit(u32 iomode) static inline int lo_fail_bit(u32 iomode)
{ {
...@@ -328,7 +328,7 @@ static inline void pnfs_clear_request_commit(struct nfs_page *req) ...@@ -328,7 +328,7 @@ static inline void pnfs_clear_request_commit(struct nfs_page *req)
{ {
} }
static inline int pnfs_layoutcommit_inode(struct inode *inode, int sync) static inline int pnfs_layoutcommit_inode(struct inode *inode, bool sync)
{ {
return 0; return 0;
} }
......
...@@ -1566,10 +1566,12 @@ int nfs_write_inode(struct inode *inode, struct writeback_control *wbc) ...@@ -1566,10 +1566,12 @@ int nfs_write_inode(struct inode *inode, struct writeback_control *wbc)
ret = nfs_commit_unstable_pages(inode, wbc); ret = nfs_commit_unstable_pages(inode, wbc);
if (ret >= 0 && test_bit(NFS_INO_LAYOUTCOMMIT, &NFS_I(inode)->flags)) { if (ret >= 0 && test_bit(NFS_INO_LAYOUTCOMMIT, &NFS_I(inode)->flags)) {
int status, sync = wbc->sync_mode; int status;
bool sync = true;
if (wbc->nonblocking || wbc->for_background) if (wbc->sync_mode == WB_SYNC_NONE || wbc->nonblocking ||
sync = 0; wbc->for_background)
sync = false;
status = pnfs_layoutcommit_inode(inode, sync); status = pnfs_layoutcommit_inode(inode, sync);
if (status < 0) if (status < 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment