aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/objlayout
diff options
context:
space:
mode:
authorWeston Andros Adamson <dros@primarydata.com>2014-09-10 15:48:01 -0400
committerTom Haynes <loghyr@primarydata.com>2015-02-03 14:06:44 -0500
commit180bb5ec06ce3a95dccc751fbf6bf11d3003da98 (patch)
treee73fcf03e30e0bdb6b2e97767782fa53a0912ff7 /fs/nfs/objlayout
parent2176bf4269a37a7742230ed6c91668241bfe1b2b (diff)
pnfs: release lseg in pnfs_generic_pg_cleanup
This is needed to support mirrored writes - the first write can't just trash the lseg, we need to keep it around until all mirrors have written. Signed-off-by: Weston Andros Adamson <dros@primarydata.com>
Diffstat (limited to 'fs/nfs/objlayout')
-rw-r--r--fs/nfs/objlayout/objio_osd.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/objlayout/objio_osd.c b/fs/nfs/objlayout/objio_osd.c
index 9e5bc42180e4..d00778077df1 100644
--- a/fs/nfs/objlayout/objio_osd.c
+++ b/fs/nfs/objlayout/objio_osd.c
@@ -607,12 +607,14 @@ static const struct nfs_pageio_ops objio_pg_read_ops = {
607 .pg_init = objio_init_read, 607 .pg_init = objio_init_read,
608 .pg_test = objio_pg_test, 608 .pg_test = objio_pg_test,
609 .pg_doio = pnfs_generic_pg_readpages, 609 .pg_doio = pnfs_generic_pg_readpages,
610 .pg_cleanup = pnfs_generic_pg_cleanup,
610}; 611};
611 612
612static const struct nfs_pageio_ops objio_pg_write_ops = { 613static const struct nfs_pageio_ops objio_pg_write_ops = {
613 .pg_init = objio_init_write, 614 .pg_init = objio_init_write,
614 .pg_test = objio_pg_test, 615 .pg_test = objio_pg_test,
615 .pg_doio = pnfs_generic_pg_writepages, 616 .pg_doio = pnfs_generic_pg_writepages,
617 .pg_cleanup = pnfs_generic_pg_cleanup,
616}; 618};
617 619
618static struct pnfs_layoutdriver_type objlayout_type = { 620static struct pnfs_layoutdriver_type objlayout_type = {