2023-09-12 21:56:08

by Alexander Aring

[permalink] [raw]
Subject: [PATCHv2 nfsd/master 7/7] dlm: implement EXPORT_OP_ASYNC_LOCK

This patch is activating the EXPORT_OP_ASYNC_LOCK export flag to
signal lockd that both filesystems are able to handle async lock
requests. The cluster filesystems gfs2 and ocfs2 will redirect their
lock requests to DLMs plock implementation that can handle async lock
requests.

Signed-off-by: Alexander Aring <[email protected]>
---
fs/gfs2/export.c | 1 +
fs/ocfs2/export.c | 1 +
2 files changed, 2 insertions(+)

diff --git a/fs/gfs2/export.c b/fs/gfs2/export.c
index cf40895233f5..ef1013eff936 100644
--- a/fs/gfs2/export.c
+++ b/fs/gfs2/export.c
@@ -192,5 +192,6 @@ const struct export_operations gfs2_export_ops = {
.fh_to_parent = gfs2_fh_to_parent,
.get_name = gfs2_get_name,
.get_parent = gfs2_get_parent,
+ .flags = EXPORT_OP_ASYNC_LOCK,
};

diff --git a/fs/ocfs2/export.c b/fs/ocfs2/export.c
index eaa8c80ace3c..b8b6a191b5cb 100644
--- a/fs/ocfs2/export.c
+++ b/fs/ocfs2/export.c
@@ -280,4 +280,5 @@ const struct export_operations ocfs2_export_ops = {
.fh_to_dentry = ocfs2_fh_to_dentry,
.fh_to_parent = ocfs2_fh_to_parent,
.get_parent = ocfs2_get_parent,
+ .flags = EXPORT_OP_ASYNC_LOCK,
};
--
2.31.1


2023-09-14 10:34:14

by Jeffrey Layton

[permalink] [raw]
Subject: Re: [PATCHv2 nfsd/master 7/7] dlm: implement EXPORT_OP_ASYNC_LOCK

On Tue, 2023-09-12 at 17:53 -0400, Alexander Aring wrote:
> This patch is activating the EXPORT_OP_ASYNC_LOCK export flag to
> signal lockd that both filesystems are able to handle async lock
> requests. The cluster filesystems gfs2 and ocfs2 will redirect their
> lock requests to DLMs plock implementation that can handle async lock
> requests.
>
> Signed-off-by: Alexander Aring <[email protected]>
> ---
> fs/gfs2/export.c | 1 +
> fs/ocfs2/export.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/fs/gfs2/export.c b/fs/gfs2/export.c
> index cf40895233f5..ef1013eff936 100644
> --- a/fs/gfs2/export.c
> +++ b/fs/gfs2/export.c
> @@ -192,5 +192,6 @@ const struct export_operations gfs2_export_ops = {
> .fh_to_parent = gfs2_fh_to_parent,
> .get_name = gfs2_get_name,
> .get_parent = gfs2_get_parent,
> + .flags = EXPORT_OP_ASYNC_LOCK,
> };
>
> diff --git a/fs/ocfs2/export.c b/fs/ocfs2/export.c
> index eaa8c80ace3c..b8b6a191b5cb 100644
> --- a/fs/ocfs2/export.c
> +++ b/fs/ocfs2/export.c
> @@ -280,4 +280,5 @@ const struct export_operations ocfs2_export_ops = {
> .fh_to_dentry = ocfs2_fh_to_dentry,
> .fh_to_parent = ocfs2_fh_to_parent,
> .get_parent = ocfs2_get_parent,
> + .flags = EXPORT_OP_ASYNC_LOCK,
> };

Reviewed-by: Jeff Layton <[email protected]>