summaryrefslogtreecommitdiffstats
path: root/fs/nfs/pnfs.h
diff options
context:
space:
mode:
authorAndy Adamson2011-05-22 18:53:10 +0200
committerBoaz Harrosh2011-05-29 19:54:37 +0200
commit04a555498e03b3804e2dec916a4669f5f560e503 (patch)
tree4fab39683df70cee7f7aea7d7718072a811ad153 /fs/nfs/pnfs.h
parentpnfs: layoutret_on_setattr (diff)
downloadkernel-qcow2-linux-04a555498e03b3804e2dec916a4669f5f560e503.tar.gz
kernel-qcow2-linux-04a555498e03b3804e2dec916a4669f5f560e503.tar.xz
kernel-qcow2-linux-04a555498e03b3804e2dec916a4669f5f560e503.zip
pnfs: encode_layoutreturn
Add a layout driver method to encode the layout type specific opaque part of layout return in-line in the xdr stream. Currently the pnfs-objects layout driver uses it to encode i/o error information on LAYOUTRETURN. Signed-off-by: Andy Adamson <andros@netapp.com> [fixup layout header pointer for encode_layoutreturn] Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Diffstat (limited to 'fs/nfs/pnfs.h')
-rw-r--r--fs/nfs/pnfs.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/nfs/pnfs.h b/fs/nfs/pnfs.h
index af3967a893a1..1b6b207a8806 100644
--- a/fs/nfs/pnfs.h
+++ b/fs/nfs/pnfs.h
@@ -104,6 +104,10 @@ struct pnfs_layoutdriver_type {
enum pnfs_try_status (*write_pagelist) (struct nfs_write_data *nfs_data, int how);
void (*free_deviceid_node) (struct nfs4_deviceid_node *);
+
+ void (*encode_layoutreturn) (struct pnfs_layout_hdr *layoutid,
+ struct xdr_stream *xdr,
+ const struct nfs4_layoutreturn_args *args);
};
struct pnfs_layout_hdr {