RE: [PATCH v2 net-next 2/3] net: change sysctl_net_ll_poll into anunsigned int
From: Avner Ben Hanoch
Date: Wed Jun 12 2013 - 08:06:18 EST
Hi,
Please make sure to include sockperf-dev@xxxxxxxxxxxxxxxx among the recipients of this thread (I just added).
Maybe better, I suggest opening an issue in sockperf issue system - https://code.google.com/p/sockperf/issues/list . Then anyone can add notes or read/receive them.
You can see an example for similar issue (patch for supporting IP_TOS) here: https://code.google.com/p/sockperf/issues/detail?id=44
Cheers,
Avner
-----Original Message-----
From: Eliezer Tamir [mailto:eliezer.tamir@xxxxxxxxxxxxxxx]
Sent: Wednesday, June 12, 2013 14:20
To: David Miller
Cc: linux-kernel@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; Jesse Brandeburg; Don Skidmore; e1000-devel@xxxxxxxxxxxxxxxxxxxxx; Willem de Bruijn; Eric Dumazet; Ben Hutchings; Andi Kleen; HPA; Eilon Greenstien; Or Gerlitz; Amir Vadai; Alex Rosenbaum; Avner Ben Hanoch; Or Kehati; Eliezer Tamir
Subject: [PATCH v2 net-next 2/3] net: change sysctl_net_ll_poll into an unsigned int
There is no reason for sysctl_net_ll_poll to be an unsigned long.
Change it into an unsigned int.
Fix the proc handler.
Add a cast in ll_end_time()
Signed-off-by: Eliezer Tamir <eliezer.tamir@xxxxxxxxxxxxxxx>
---
include/net/ll_poll.h | 5 +++--
net/core/sysctl_net_core.c | 4 ++--
net/socket.c | 2 +-
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/include/net/ll_poll.h b/include/net/ll_poll.h index bc262f8..d20508d 100644
--- a/include/net/ll_poll.h
+++ b/include/net/ll_poll.h
@@ -34,7 +34,7 @@
#ifdef CONFIG_NET_LL_RX_POLL
struct napi_struct;
-extern unsigned long sysctl_net_ll_poll __read_mostly;
+extern unsigned int sysctl_net_ll_poll __read_mostly;
/* return values from ndo_ll_poll */
#define LL_FLUSH_FAILED -1
@@ -45,7 +45,8 @@ extern unsigned long sysctl_net_ll_poll __read_mostly;
static inline cycles_t ll_end_time(void) {
- return TSC_MHZ * ACCESS_ONCE(sysctl_net_ll_poll) + get_cycles();
+ return (cycles_t)TSC_MHZ * ACCESS_ONCE(sysctl_net_ll_poll)
+ + get_cycles();
}
static inline bool sk_valid_ll(struct sock *sk) diff --git a/net/core/sysctl_net_core.c b/net/core/sysctl_net_core.c index 4b48f39..3c78b75 100644
--- a/net/core/sysctl_net_core.c
+++ b/net/core/sysctl_net_core.c
@@ -289,9 +289,9 @@ static struct ctl_table net_core_table[] = {
{
.procname = "low_latency_poll",
.data = &sysctl_net_ll_poll,
- .maxlen = sizeof(unsigned long),
+ .maxlen = sizeof(unsigned int),
.mode = 0644,
- .proc_handler = proc_doulongvec_minmax
+ .proc_handler = proc_dointvec
},
#endif
#endif /* CONFIG_NET */
diff --git a/net/socket.c b/net/socket.c index 21fd29f..caaffa1 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -107,7 +107,7 @@
#include <net/ll_poll.h>
#ifdef CONFIG_NET_LL_RX_POLL
-unsigned long sysctl_net_ll_poll __read_mostly;
+unsigned int sysctl_net_ll_poll __read_mostly;
EXPORT_SYMBOL_GPL(sysctl_net_ll_poll);
#endif
¢éì®&Þ~º&¶¬+-±éÝ¥w®Ë±Êâmébìdz¹Þ)í
æèw*jg¬±¨¶Ýj/êäz¹Þà2Þ¨èÚ&¢)ß«a¶Úþø®G«éh®æj:+v¨wèÙ>W±êÞiÛaxPjØm¶ÿÃ-»+ùd_