Hi David While browsing include/net/inet_timewait_sock.h, I found this buggy definition of twcal_jiffie.
int twcal_jiffie; I wonder how inet_twdr_twcal_tick() can really works on x86_64 This seems quite an old bug, it was there before introduction of inet_timewait_death_row made by Arnaldo Carvalho de Melo. [PATCH] twcal_jiffie should be unsigned long, not int Signed-off-by: Eric Dumazet <[EMAIL PROTECTED]>
diff --git a/include/net/inet_timewait_sock.h b/include/net/inet_timewait_sock.h index f7be1ac..09a2532 100644 --- a/include/net/inet_timewait_sock.h +++ b/include/net/inet_timewait_sock.h @@ -66,7 +66,7 @@ #define INET_TWDR_TWKILL_QUOTA 100 struct inet_timewait_death_row { /* Short-time timewait calendar */ int twcal_hand; - int twcal_jiffie; + unsigned long twcal_jiffie; struct timer_list twcal_timer; struct hlist_head twcal_row[INET_TWDR_RECYCLE_SLOTS];