DORMANTno replies

[Patch] Incorrect time conversion in TIPC

From: Eric Sesterhenn <hidden>
Date: 2007-12-08 12:49:59

hi,

the timeouts in tipc/socket.c dont match if HZ is not 1000,
this patch changes it to use the proper conversion functions.

Signed-off-by: Eric Sesterhenn <redacted>
--- linux-2.6.24-rc3/net/tipc/socket.c.orig	2007-12-07 20:07:11.000000000 +0100
+++ linux-2.6.24-rc3/net/tipc/socket.c	2007-12-07 20:11:15.000000000 +0100
@@ -209,7 +209,7 @@ static int tipc_create(struct net *net, 
 
 	sock_init_data(sock, sk);
 	init_waitqueue_head(sk->sk_sleep);
-	sk->sk_rcvtimeo = 8 * HZ;   /* default connect timeout = 8s */
+	sk->sk_rcvtimeo = msecs_to_jiffies(8000);   /* default connect timeout = 8s */
 
 	tsock = tipc_sk(sk);
 	port = tipc_get_port(ref);
@@ -1535,7 +1535,7 @@ static int setsockopt(struct socket *soc
 		res = tipc_set_portunreturnable(tsock->p->ref, value);
 		break;
 	case TIPC_CONN_TIMEOUT:
-		sock->sk->sk_rcvtimeo = (value * HZ / 1000);
+		sock->sk->sk_rcvtimeo = msecs_to_jiffies(value);
 		break;
 	default:
 		res = -EINVAL;
@@ -1588,7 +1588,7 @@ static int getsockopt(struct socket *soc
 		res = tipc_portunreturnable(tsock->p->ref, &value);
 		break;
 	case TIPC_CONN_TIMEOUT:
-		value = (sock->sk->sk_rcvtimeo * 1000) / HZ;
+		value = jiffies_to_msecs(sock->sk->sk_rcvtimeo);
 		break;
 	default:
 		res = -EINVAL;
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help