Discussion:
[PATCH] pnfsd: Correct the buffer size of ds_list in dlm_device_entry
(too old to reply)
y***@public.gmane.org
2013-01-04 10:43:43 UTC
Permalink
Raw Message
From: Yanchuan Nian <ycnian-***@public.gmane.org>

In nfsd4_set_pnfs_dlm_device(), if there is a device with the same disk_name as
the new device, pnfsd will clear the memory of ds_list, and then update it with
ds list from the new device. The size of ds_list in struct dlm_device_entry is
NFSD_DLM_DS_LIST_MAX, but not DISK_NAME_LEN.

Signed-off-by: Yanchuan Nian <ycnian-***@public.gmane.org>
---
fs/nfsd/nfs4pnfsdlm.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/nfsd/nfs4pnfsdlm.c b/fs/nfsd/nfs4pnfsdlm.c
index e8423e0..c138d41 100644
--- a/fs/nfsd/nfs4pnfsdlm.c
+++ b/fs/nfsd/nfs4pnfsdlm.c
@@ -187,7 +187,7 @@ nfsd4_set_pnfs_dlm_device(char *pnfs_dlm_device, int len)
dprintk("%s pnfs_dlm_device %s:%s already in cache "
" replace ds_list with new ds_list %s\n", __func__,
found->disk_name, found->ds_list, new->ds_list);
- memset(found->ds_list, 0, DISK_NAME_LEN);
+ memset(found->ds_list, 0, NFSD_DLM_DS_LIST_MAX);
memcpy(found->ds_list, new->ds_list, strlen(new->ds_list));
found->num_ds = new->num_ds;
kfree(new);
--
1.7.4.4

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-***@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Benny Halevy
2013-01-07 13:19:44 UTC
Permalink
Raw Message
Post by y***@public.gmane.org
In nfsd4_set_pnfs_dlm_device(), if there is a device with the same disk_name as
the new device, pnfsd will clear the memory of ds_list, and then update it with
ds list from the new device. The size of ds_list in struct dlm_device_entry is
NFSD_DLM_DS_LIST_MAX, but not DISK_NAME_LEN.
Thanks. committed

Benny
Post by y***@public.gmane.org
---
fs/nfsd/nfs4pnfsdlm.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/fs/nfsd/nfs4pnfsdlm.c b/fs/nfsd/nfs4pnfsdlm.c
index e8423e0..c138d41 100644
--- a/fs/nfsd/nfs4pnfsdlm.c
+++ b/fs/nfsd/nfs4pnfsdlm.c
@@ -187,7 +187,7 @@ nfsd4_set_pnfs_dlm_device(char *pnfs_dlm_device, int len)
dprintk("%s pnfs_dlm_device %s:%s already in cache "
" replace ds_list with new ds_list %s\n", __func__,
found->disk_name, found->ds_list, new->ds_list);
- memset(found->ds_list, 0, DISK_NAME_LEN);
+ memset(found->ds_list, 0, NFSD_DLM_DS_LIST_MAX);
memcpy(found->ds_list, new->ds_list, strlen(new->ds_list));
found->num_ds = new->num_ds;
kfree(new);
--
1.7.4.4
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-***@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Loading...