Commit f418c64b authored by Anna Schumaker's avatar Anna Schumaker Committed by Trond Myklebust

NFS: Unconditionally enable commit code

The goal is to create a generic NFS module with code that does not
depend on what versions of NFS are enabled.
Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
parent 164ae58c
...@@ -178,7 +178,6 @@ static int nfs_direct_set_or_cmp_hdr_verf(struct nfs_direct_req *dreq, ...@@ -178,7 +178,6 @@ static int nfs_direct_set_or_cmp_hdr_verf(struct nfs_direct_req *dreq,
return memcmp(verfp, &hdr->verf, sizeof(struct nfs_writeverf)); return memcmp(verfp, &hdr->verf, sizeof(struct nfs_writeverf));
} }
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
/* /*
* nfs_direct_cmp_commit_data_verf - compare verifier for commit data * nfs_direct_cmp_commit_data_verf - compare verifier for commit data
* @dreq - direct request possibly spanning multiple servers * @dreq - direct request possibly spanning multiple servers
...@@ -197,7 +196,6 @@ static int nfs_direct_cmp_commit_data_verf(struct nfs_direct_req *dreq, ...@@ -197,7 +196,6 @@ static int nfs_direct_cmp_commit_data_verf(struct nfs_direct_req *dreq,
WARN_ON_ONCE(verfp->committed < 0); WARN_ON_ONCE(verfp->committed < 0);
return memcmp(verfp, &data->verf, sizeof(struct nfs_writeverf)); return memcmp(verfp, &data->verf, sizeof(struct nfs_writeverf));
} }
#endif
/** /**
* nfs_direct_IO - NFS address space operation for direct I/O * nfs_direct_IO - NFS address space operation for direct I/O
...@@ -576,7 +574,6 @@ ssize_t nfs_file_direct_read(struct kiocb *iocb, struct iov_iter *iter, ...@@ -576,7 +574,6 @@ ssize_t nfs_file_direct_read(struct kiocb *iocb, struct iov_iter *iter,
return result; return result;
} }
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
static void nfs_direct_write_reschedule(struct nfs_direct_req *dreq) static void nfs_direct_write_reschedule(struct nfs_direct_req *dreq)
{ {
struct nfs_pageio_descriptor desc; struct nfs_pageio_descriptor desc;
...@@ -700,17 +697,6 @@ static void nfs_direct_write_complete(struct nfs_direct_req *dreq, struct inode ...@@ -700,17 +697,6 @@ static void nfs_direct_write_complete(struct nfs_direct_req *dreq, struct inode
schedule_work(&dreq->work); /* Calls nfs_direct_write_schedule_work */ schedule_work(&dreq->work); /* Calls nfs_direct_write_schedule_work */
} }
#else
static void nfs_direct_write_schedule_work(struct work_struct *work)
{
}
static void nfs_direct_write_complete(struct nfs_direct_req *dreq, struct inode *inode)
{
nfs_direct_complete(dreq, true);
}
#endif
static void nfs_direct_write_completion(struct nfs_pgio_header *hdr) static void nfs_direct_write_completion(struct nfs_pgio_header *hdr)
{ {
struct nfs_direct_req *dreq = hdr->dreq; struct nfs_direct_req *dreq = hdr->dreq;
......
...@@ -720,7 +720,6 @@ nfs_mark_request_dirty(struct nfs_page *req) ...@@ -720,7 +720,6 @@ nfs_mark_request_dirty(struct nfs_page *req)
__set_page_dirty_nobuffers(req->wb_page); __set_page_dirty_nobuffers(req->wb_page);
} }
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
/* /*
* nfs_page_search_commits_for_head_request_locked * nfs_page_search_commits_for_head_request_locked
* *
...@@ -870,43 +869,6 @@ int nfs_write_need_commit(struct nfs_pgio_header *hdr) ...@@ -870,43 +869,6 @@ int nfs_write_need_commit(struct nfs_pgio_header *hdr)
return hdr->verf.committed != NFS_FILE_SYNC; return hdr->verf.committed != NFS_FILE_SYNC;
} }
#else
static struct nfs_page *
nfs_page_search_commits_for_head_request_locked(struct nfs_inode *nfsi,
struct page *page)
{
return NULL;
}
static void nfs_init_cinfo_from_inode(struct nfs_commit_info *cinfo,
struct inode *inode)
{
}
void nfs_init_cinfo(struct nfs_commit_info *cinfo,
struct inode *inode,
struct nfs_direct_req *dreq)
{
}
void
nfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg,
struct nfs_commit_info *cinfo)
{
}
static void
nfs_clear_request_commit(struct nfs_page *req)
{
}
int nfs_write_need_commit(struct nfs_pgio_header *hdr)
{
return 0;
}
#endif
static void nfs_write_completion(struct nfs_pgio_header *hdr) static void nfs_write_completion(struct nfs_pgio_header *hdr)
{ {
struct nfs_commit_info cinfo; struct nfs_commit_info cinfo;
...@@ -942,7 +904,6 @@ static void nfs_write_completion(struct nfs_pgio_header *hdr) ...@@ -942,7 +904,6 @@ static void nfs_write_completion(struct nfs_pgio_header *hdr)
hdr->release(hdr); hdr->release(hdr);
} }
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
unsigned long unsigned long
nfs_reqs_to_commit(struct nfs_commit_info *cinfo) nfs_reqs_to_commit(struct nfs_commit_info *cinfo)
{ {
...@@ -999,19 +960,6 @@ nfs_scan_commit(struct inode *inode, struct list_head *dst, ...@@ -999,19 +960,6 @@ nfs_scan_commit(struct inode *inode, struct list_head *dst,
return ret; return ret;
} }
#else
unsigned long nfs_reqs_to_commit(struct nfs_commit_info *cinfo)
{
return 0;
}
int nfs_scan_commit(struct inode *inode, struct list_head *dst,
struct nfs_commit_info *cinfo)
{
return 0;
}
#endif
/* /*
* Search for an existing write request, and attempt to update * Search for an existing write request, and attempt to update
* it to reflect a new dirty region on a given page. * it to reflect a new dirty region on a given page.
...@@ -1404,7 +1352,6 @@ static int nfs_writeback_done(struct rpc_task *task, ...@@ -1404,7 +1352,6 @@ static int nfs_writeback_done(struct rpc_task *task,
return status; return status;
nfs_add_stats(inode, NFSIOS_SERVERWRITTENBYTES, hdr->res.count); nfs_add_stats(inode, NFSIOS_SERVERWRITTENBYTES, hdr->res.count);
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
if (hdr->res.verf->committed < hdr->args.stable && if (hdr->res.verf->committed < hdr->args.stable &&
task->tk_status >= 0) { task->tk_status >= 0) {
/* We tried a write call, but the server did not /* We tried a write call, but the server did not
...@@ -1426,7 +1373,6 @@ static int nfs_writeback_done(struct rpc_task *task, ...@@ -1426,7 +1373,6 @@ static int nfs_writeback_done(struct rpc_task *task,
complain = jiffies + 300 * HZ; complain = jiffies + 300 * HZ;
} }
} }
#endif
/* Deal with the suid/sgid bit corner case */ /* Deal with the suid/sgid bit corner case */
if (nfs_should_remove_suid(inode)) if (nfs_should_remove_suid(inode))
...@@ -1479,7 +1425,6 @@ static void nfs_writeback_result(struct rpc_task *task, ...@@ -1479,7 +1425,6 @@ static void nfs_writeback_result(struct rpc_task *task,
} }
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
static int nfs_commit_set_lock(struct nfs_inode *nfsi, int may_wait) static int nfs_commit_set_lock(struct nfs_inode *nfsi, int may_wait)
{ {
int ret; int ret;
...@@ -1803,12 +1748,6 @@ static int nfs_commit_unstable_pages(struct inode *inode, struct writeback_contr ...@@ -1803,12 +1748,6 @@ static int nfs_commit_unstable_pages(struct inode *inode, struct writeback_contr
__mark_inode_dirty(inode, I_DIRTY_DATASYNC); __mark_inode_dirty(inode, I_DIRTY_DATASYNC);
return ret; return ret;
} }
#else
static int nfs_commit_unstable_pages(struct inode *inode, struct writeback_control *wbc)
{
return 0;
}
#endif
int nfs_write_inode(struct inode *inode, struct writeback_control *wbc) int nfs_write_inode(struct inode *inode, struct writeback_control *wbc)
{ {
......
...@@ -529,17 +529,9 @@ extern int nfs_updatepage(struct file *, struct page *, unsigned int, unsigned ...@@ -529,17 +529,9 @@ extern int nfs_updatepage(struct file *, struct page *, unsigned int, unsigned
extern int nfs_wb_all(struct inode *inode); extern int nfs_wb_all(struct inode *inode);
extern int nfs_wb_page(struct inode *inode, struct page* page); extern int nfs_wb_page(struct inode *inode, struct page* page);
extern int nfs_wb_page_cancel(struct inode *inode, struct page* page); extern int nfs_wb_page_cancel(struct inode *inode, struct page* page);
#if IS_ENABLED(CONFIG_NFS_V3) || IS_ENABLED(CONFIG_NFS_V4)
extern int nfs_commit_inode(struct inode *, int); extern int nfs_commit_inode(struct inode *, int);
extern struct nfs_commit_data *nfs_commitdata_alloc(void); extern struct nfs_commit_data *nfs_commitdata_alloc(void);
extern void nfs_commit_free(struct nfs_commit_data *data); extern void nfs_commit_free(struct nfs_commit_data *data);
#else
static inline int
nfs_commit_inode(struct inode *inode, int how)
{
return 0;
}
#endif
static inline int static inline int
nfs_have_writebacks(struct inode *inode) nfs_have_writebacks(struct inode *inode)
......
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