cifs: allow caller to specify completion op when allocating writedata
We'll need a different set of write completion ops when not writing out of the pagecache. Signed-off-by: Jeff Layton <jlayton@redhat.com> Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru>
This commit is contained in:
@@ -2035,7 +2035,7 @@ cifs_writev_requeue(struct cifs_writedata *wdata)
|
||||
kref_put(&wdata->refcount, cifs_writedata_release);
|
||||
}
|
||||
|
||||
static void
|
||||
void
|
||||
cifs_writev_complete(struct work_struct *work)
|
||||
{
|
||||
struct cifs_writedata *wdata = container_of(work,
|
||||
@@ -2065,7 +2065,7 @@ cifs_writev_complete(struct work_struct *work)
|
||||
}
|
||||
|
||||
struct cifs_writedata *
|
||||
cifs_writedata_alloc(unsigned int nr_pages)
|
||||
cifs_writedata_alloc(unsigned int nr_pages, work_func_t complete)
|
||||
{
|
||||
struct cifs_writedata *wdata;
|
||||
|
||||
@@ -2079,7 +2079,7 @@ cifs_writedata_alloc(unsigned int nr_pages)
|
||||
wdata = kzalloc(sizeof(*wdata) +
|
||||
sizeof(struct page *) * (nr_pages - 1), GFP_NOFS);
|
||||
if (wdata != NULL) {
|
||||
INIT_WORK(&wdata->work, cifs_writev_complete);
|
||||
INIT_WORK(&wdata->work, complete);
|
||||
kref_init(&wdata->refcount);
|
||||
}
|
||||
return wdata;
|
||||
|
Reference in New Issue
Block a user