diff options
| author | Alexander Aring <aahringo@redhat.com> | 2025-08-14 11:22:14 -0400 |
|---|---|---|
| committer | David Teigland <teigland@redhat.com> | 2025-08-14 15:16:05 -0500 |
| commit | 8e40210788636619404871df07445fa4590138b4 (patch) | |
| tree | e9177d8fe60f51d800dd0c6cb3d27d0089be98a4 | |
| parent | 8d90041a0d285044b89629f539ca0685e156848b (diff) | |
dlm: check for undefined release_option values
Checking on all undefined release_option values to return -EINVAL in
case a user is providing them to dlm_release_lockspace().
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
| -rw-r--r-- | fs/dlm/lockspace.c | 3 | ||||
| -rw-r--r-- | include/linux/dlm.h | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/fs/dlm/lockspace.c b/fs/dlm/lockspace.c index 8eadbf0fdf17..ddaa76558706 100644 --- a/fs/dlm/lockspace.c +++ b/fs/dlm/lockspace.c @@ -797,6 +797,9 @@ int dlm_release_lockspace(void *lockspace, unsigned int release_option) struct dlm_ls *ls; int error; + if (release_option > __DLM_RELEASE_MAX) + return -EINVAL; + ls = dlm_find_lockspace_local(lockspace); if (!ls) return -EINVAL; diff --git a/include/linux/dlm.h b/include/linux/dlm.h index 34015a008b80..7e7b45b0d097 100644 --- a/include/linux/dlm.h +++ b/include/linux/dlm.h @@ -113,6 +113,7 @@ int dlm_new_lockspace(const char *name, const char *cluster, #define DLM_RELEASE_NORMAL 2 #define DLM_RELEASE_NO_EVENT 3 #define DLM_RELEASE_RECOVER 4 +#define __DLM_RELEASE_MAX DLM_RELEASE_RECOVER /* * dlm_release_lockspace |
