From: Steve Dickson <steved@redhat.com>
To: Linux NFS Mailing list <linux-nfs@vger.kernel.org>
Subject: [PATCH 1/1] exportfs: Add the 's2sc' option allowing inter server to server copies
Date: Thu, 28 Oct 2021 10:59:39 -0400 [thread overview]
Message-ID: <20211028145939.644286-2-steved@redhat.com> (raw)
In-Reply-To: <20211028145939.644286-1-steved@redhat.com>
The new export will enable inter server to server
copies on that particular export on the destination
server
Signed-off-by: Steve Dickson <steved@redhat.com>
---
support/include/nfs/export.h | 1 +
support/nfs/exports.c | 5 +++++
utils/exportfs/exportfs.c | 2 ++
utils/exportfs/exports.man | 14 ++++++++++++++
4 files changed, 22 insertions(+)
diff --git a/support/include/nfs/export.h b/support/include/nfs/export.h
index 0eca828e..e563e7aa 100644
--- a/support/include/nfs/export.h
+++ b/support/include/nfs/export.h
@@ -28,6 +28,7 @@
#define NFSEXP_NOACL 0x8000 /* reserved for possible ACL related use */
#define NFSEXP_V4ROOT 0x10000
#define NFSEXP_PNFS 0x20000
+#define NFSEXP_S2SC 0x40000
/*
* All flags supported by the kernel before addition of the
* export_features interface:
diff --git a/support/nfs/exports.c b/support/nfs/exports.c
index 2c8f0752..7abc3e09 100644
--- a/support/nfs/exports.c
+++ b/support/nfs/exports.c
@@ -297,6 +297,7 @@ putexportent(struct exportent *ep)
if (ep->e_flags & NFSEXP_SECURITY_LABEL)
fprintf(fp, "security_label,");
fprintf(fp, "%spnfs,", (ep->e_flags & NFSEXP_PNFS)? "" : "no_");
+ fprintf(fp, "%ss2sc,", (ep->e_flags & NFSEXP_S2SC)? "" : "no_");
if (ep->e_flags & NFSEXP_FSID) {
fprintf(fp, "fsid=%d,", ep->e_fsid);
}
@@ -616,6 +617,10 @@ parseopts(char *cp, struct exportent *ep, int warn, int *had_subtree_opt_ptr)
setflags(NFSEXP_PNFS, active, ep);
else if (!strcmp(opt, "no_pnfs"))
clearflags(NFSEXP_PNFS, active, ep);
+ else if (!strcmp(opt, "s2sc"))
+ setflags(NFSEXP_S2SC, active, ep);
+ else if (!strcmp(opt, "no_s2sc"))
+ clearflags(NFSEXP_S2SC, active, ep);
else if (strncmp(opt, "anonuid=", 8) == 0) {
char *oe;
ep->e_anonuid = strtol(opt+8, &oe, 10);
diff --git a/utils/exportfs/exportfs.c b/utils/exportfs/exportfs.c
index 6ba615d1..1180d2e7 100644
--- a/utils/exportfs/exportfs.c
+++ b/utils/exportfs/exportfs.c
@@ -715,6 +715,8 @@ dump(int verbose, int export_format)
c = dumpopt(c, "no_acl");
if (ep->e_flags & NFSEXP_PNFS)
c = dumpopt(c, "pnfs");
+ if (ep->e_flags & NFSEXP_S2SC)
+ c = dumpopt(c, "s2sc");
if (ep->e_flags & NFSEXP_FSID)
c = dumpopt(c, "fsid=%d", ep->e_fsid);
if (ep->e_uuid)
diff --git a/utils/exportfs/exports.man b/utils/exportfs/exports.man
index 54b3f877..6c54d8a7 100644
--- a/utils/exportfs/exports.man
+++ b/utils/exportfs/exports.man
@@ -420,6 +420,20 @@ will only work if all clients use a consistent security policy. Note
that early kernels did not support this export option, and instead
enabled security labels by default.
+.TP
+.IR s2sc
+This option enables inter server to server
+copy on the export. The client will initiate
+the file copy with source server. The client
+will initiate the copy with destination server.
+This option will allow that initiation to be
+successful, allowing the copy to occur between
+the servers.
+
+This type of copy can be enable system-wide
+by enabling the inter_copy_offload_enable
+parameter.
+
.SS User ID Mapping
.PP
.B nfsd
--
2.31.1
prev parent reply other threads:[~2021-10-28 14:59 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-28 14:59 [PATCH 0/1] Enable inter server to server copies on a export Steve Dickson
2021-10-28 14:59 ` Steve Dickson [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211028145939.644286-2-steved@redhat.com \
--to=steved@redhat.com \
--cc=linux-nfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox