Hi,

Please make sure to include sockperf-...@googlegroups.com 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.ta...@linux.intel.com] 
Sent: Wednesday, June 12, 2013 14:20
To: David Miller
Cc: linux-kernel@vger.kernel.org; net...@vger.kernel.org; Jesse Brandeburg; Don 
Skidmore; e1000-de...@lists.sourceforge.net; 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.ta...@linux.intel.com>
---

 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
 

Reply via email to