Herbert Xu <[EMAIL PROTECTED]> wrote: > > Since rate_last can also be zero if jiffies == 0 (OK that's > extremely unlikely but I'm feeling picky today :), how about > checking rate_tokens instead? The value of rate_last can only > be relevant if rate_tokens is non-zero. > > BTW, please also check the other spots where rate_last/rate_token > is used. They might need a similar fix. > > Cheers,
Mr Herbert Xu According to your advice, I have made another patch for the redirect bug. I have also checked other spots where rate_last/rate_tokens is used. Those places need not be fixed. Following is my patch: signed-off-by: Li Yewang<[EMAIL PROTECTED]> --- linux-2.6.19.1/net/ipv4/route.c 2006-12-12 03:32:54.000000000 +0800 +++ linux-2.6.19.1/net/ipv4/route.org.c 2006-11-29 16:14:34.592058480 +0800 @@ -1327,7 +1327,8 @@ void ip_rt_send_redirect(struct sk_buff /* Check for load limit; set rate_last to the latest sent * redirect. */ - if (time_after(jiffies, + if (rt->u.dst.rate_tokens == 0 || + time_after(jiffies, (rt->u.dst.rate_last + (ip_rt_redirect_load << rt- >u.dst.rate_tokens)))) { icmp_send(skb, ICMP_REDIRECT, ICMP_REDIR_HOST, rt- >rt_gateway); - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html