[ewg] [PATCH] NFS-RDMA: No proc entries for svc_rdma on RHEL backports
Jon Mason
jon at opengridcomputing.com
Thu Apr 9 11:52:10 PDT 2009
The /proc entries for svc_rdma are not being listed due to their
declarations lacking a .ctl_name definition.
Signed-Off-By: Jon Mason <jon at opengridcomputing.com>
diff --git a/kernel_patches/backport/2.6.18-EL5.1/rnfs_fs.patch b/kernel_patches/backport/2.6.18-EL5.1/rnfs_fs.patch
index 5bcc84c..a7687ad 100644
--- a/kernel_patches/backport/2.6.18-EL5.1/rnfs_fs.patch
+++ b/kernel_patches/backport/2.6.18-EL5.1/rnfs_fs.patch
@@ -2731,3 +2731,111 @@ index 6fb493c..761ad29 100644
/*
* Destroy queued, but not processed read completions. Note
* that this cleanup has to be done before destroying the
+diff --git a/net/sunrpc/xprtrdma/svc_rdma.c b/net/sunrpc/xprtrdma/svc_rdma.c
+index 8710117..ce94fa4 100644
+--- a/net/sunrpc/xprtrdma/svc_rdma.c
++++ b/net/sunrpc/xprtrdma/svc_rdma.c
+@@ -116,6 +116,7 @@ static int read_reset_stat(ctl_table *table, int write,
+ static struct ctl_table_header *svcrdma_table_header;
+ static ctl_table svcrdma_parm_table[] = {
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_requests",
+ .data = &svcrdma_max_requests,
+ .maxlen = sizeof(unsigned int),
+@@ -126,6 +127,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .extra2 = &max_max_requests
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_req_size",
+ .data = &svcrdma_max_req_size,
+ .maxlen = sizeof(unsigned int),
+@@ -136,6 +138,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .extra2 = &max_max_inline
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_outbound_read_requests",
+ .data = &svcrdma_ord,
+ .maxlen = sizeof(unsigned int),
+@@ -147,6 +150,7 @@ static ctl_table svcrdma_parm_table[] = {
+ },
+
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_read",
+ .data = &rdma_stat_read,
+ .maxlen = sizeof(atomic_t),
+@@ -154,6 +158,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_recv",
+ .data = &rdma_stat_recv,
+ .maxlen = sizeof(atomic_t),
+@@ -161,6 +166,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_write",
+ .data = &rdma_stat_write,
+ .maxlen = sizeof(atomic_t),
+@@ -168,6 +174,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_starve",
+ .data = &rdma_stat_sq_starve,
+ .maxlen = sizeof(atomic_t),
+@@ -175,6 +182,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_starve",
+ .data = &rdma_stat_rq_starve,
+ .maxlen = sizeof(atomic_t),
+@@ -182,6 +190,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_poll",
+ .data = &rdma_stat_rq_poll,
+ .maxlen = sizeof(atomic_t),
+@@ -189,6 +198,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_prod",
+ .data = &rdma_stat_rq_prod,
+ .maxlen = sizeof(atomic_t),
+@@ -196,6 +206,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_poll",
+ .data = &rdma_stat_sq_poll,
+ .maxlen = sizeof(atomic_t),
+@@ -203,6 +214,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_prod",
+ .data = &rdma_stat_sq_prod,
+ .maxlen = sizeof(atomic_t),
+@@ -216,6 +228,7 @@ static ctl_table svcrdma_parm_table[] = {
+
+ static ctl_table svcrdma_table[] = {
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "svc_rdma",
+ .mode = 0555,
+ .child = svcrdma_parm_table
diff --git a/kernel_patches/backport/2.6.18-EL5.2/rnfs_fs.patch b/kernel_patches/backport/2.6.18-EL5.2/rnfs_fs.patch
index 7610c66..1d6512f 100644
--- a/kernel_patches/backport/2.6.18-EL5.2/rnfs_fs.patch
+++ b/kernel_patches/backport/2.6.18-EL5.2/rnfs_fs.patch
@@ -2698,3 +2698,111 @@ index 6fb493c..761ad29 100644
/*
* Destroy queued, but not processed read completions. Note
* that this cleanup has to be done before destroying the
+diff --git a/net/sunrpc/xprtrdma/svc_rdma.c b/net/sunrpc/xprtrdma/svc_rdma.c
+index 8710117..ce94fa4 100644
+--- a/net/sunrpc/xprtrdma/svc_rdma.c
++++ b/net/sunrpc/xprtrdma/svc_rdma.c
+@@ -116,6 +116,7 @@ static int read_reset_stat(ctl_table *table, int write,
+ static struct ctl_table_header *svcrdma_table_header;
+ static ctl_table svcrdma_parm_table[] = {
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_requests",
+ .data = &svcrdma_max_requests,
+ .maxlen = sizeof(unsigned int),
+@@ -126,6 +127,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .extra2 = &max_max_requests
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_req_size",
+ .data = &svcrdma_max_req_size,
+ .maxlen = sizeof(unsigned int),
+@@ -136,6 +138,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .extra2 = &max_max_inline
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_outbound_read_requests",
+ .data = &svcrdma_ord,
+ .maxlen = sizeof(unsigned int),
+@@ -147,6 +150,7 @@ static ctl_table svcrdma_parm_table[] = {
+ },
+
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_read",
+ .data = &rdma_stat_read,
+ .maxlen = sizeof(atomic_t),
+@@ -154,6 +158,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_recv",
+ .data = &rdma_stat_recv,
+ .maxlen = sizeof(atomic_t),
+@@ -161,6 +166,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_write",
+ .data = &rdma_stat_write,
+ .maxlen = sizeof(atomic_t),
+@@ -168,6 +174,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_starve",
+ .data = &rdma_stat_sq_starve,
+ .maxlen = sizeof(atomic_t),
+@@ -175,6 +182,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_starve",
+ .data = &rdma_stat_rq_starve,
+ .maxlen = sizeof(atomic_t),
+@@ -182,6 +190,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_poll",
+ .data = &rdma_stat_rq_poll,
+ .maxlen = sizeof(atomic_t),
+@@ -189,6 +198,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_prod",
+ .data = &rdma_stat_rq_prod,
+ .maxlen = sizeof(atomic_t),
+@@ -196,6 +206,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_poll",
+ .data = &rdma_stat_sq_poll,
+ .maxlen = sizeof(atomic_t),
+@@ -203,6 +214,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_prod",
+ .data = &rdma_stat_sq_prod,
+ .maxlen = sizeof(atomic_t),
+@@ -216,6 +228,7 @@ static ctl_table svcrdma_parm_table[] = {
+
+ static ctl_table svcrdma_table[] = {
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "svc_rdma",
+ .mode = 0555,
+ .child = svcrdma_parm_table
diff --git a/kernel_patches/backport/2.6.18-EL5.3/rnfs_fs.patch b/kernel_patches/backport/2.6.18-EL5.3/rnfs_fs.patch
index c773b6f..e7dfe61 100644
--- a/kernel_patches/backport/2.6.18-EL5.3/rnfs_fs.patch
+++ b/kernel_patches/backport/2.6.18-EL5.3/rnfs_fs.patch
@@ -2632,3 +2632,111 @@ index 6fb493c..761ad29 100644
/*
* Destroy queued, but not processed read completions. Note
* that this cleanup has to be done before destroying the
+diff --git a/net/sunrpc/xprtrdma/svc_rdma.c b/net/sunrpc/xprtrdma/svc_rdma.c
+index 8710117..ce94fa4 100644
+--- a/net/sunrpc/xprtrdma/svc_rdma.c
++++ b/net/sunrpc/xprtrdma/svc_rdma.c
+@@ -116,6 +116,7 @@ static int read_reset_stat(ctl_table *table, int write,
+ static struct ctl_table_header *svcrdma_table_header;
+ static ctl_table svcrdma_parm_table[] = {
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_requests",
+ .data = &svcrdma_max_requests,
+ .maxlen = sizeof(unsigned int),
+@@ -126,6 +127,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .extra2 = &max_max_requests
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_req_size",
+ .data = &svcrdma_max_req_size,
+ .maxlen = sizeof(unsigned int),
+@@ -136,6 +138,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .extra2 = &max_max_inline
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "max_outbound_read_requests",
+ .data = &svcrdma_ord,
+ .maxlen = sizeof(unsigned int),
+@@ -147,6 +150,7 @@ static ctl_table svcrdma_parm_table[] = {
+ },
+
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_read",
+ .data = &rdma_stat_read,
+ .maxlen = sizeof(atomic_t),
+@@ -154,6 +158,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_recv",
+ .data = &rdma_stat_recv,
+ .maxlen = sizeof(atomic_t),
+@@ -161,6 +166,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_write",
+ .data = &rdma_stat_write,
+ .maxlen = sizeof(atomic_t),
+@@ -168,6 +174,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_starve",
+ .data = &rdma_stat_sq_starve,
+ .maxlen = sizeof(atomic_t),
+@@ -175,6 +182,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_starve",
+ .data = &rdma_stat_rq_starve,
+ .maxlen = sizeof(atomic_t),
+@@ -182,6 +190,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_poll",
+ .data = &rdma_stat_rq_poll,
+ .maxlen = sizeof(atomic_t),
+@@ -189,6 +198,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_rq_prod",
+ .data = &rdma_stat_rq_prod,
+ .maxlen = sizeof(atomic_t),
+@@ -196,6 +206,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_poll",
+ .data = &rdma_stat_sq_poll,
+ .maxlen = sizeof(atomic_t),
+@@ -203,6 +214,7 @@ static ctl_table svcrdma_parm_table[] = {
+ .proc_handler = &read_reset_stat,
+ },
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "rdma_stat_sq_prod",
+ .data = &rdma_stat_sq_prod,
+ .maxlen = sizeof(atomic_t),
+@@ -216,6 +228,7 @@ static ctl_table svcrdma_parm_table[] = {
+
+ static ctl_table svcrdma_table[] = {
+ {
++ .ctl_name = CTL_UNNUMBERED,
+ .procname = "svc_rdma",
+ .mode = 0555,
+ .child = svcrdma_parm_table
More information about the ewg
mailing list