Hi Eric, On Wed, May 27, 2015 at 09:23:36AM -0700, Eric Dumazet wrote: > On Wed, 2015-05-27 at 11:23 -0400, Ido Yariv wrote: > > > Signed-off-by: Ido Yariv <idox.ya...@intel.com> > > --- > > include/net/tcp.h | 9 +++++++++ > > net/ipv4/tcp_output.c | 2 +- > > 2 files changed, 10 insertions(+), 1 deletion(-) > > > > diff --git a/include/net/tcp.h b/include/net/tcp.h > > index 2bb2bad..86090b6 100644 > > --- a/include/net/tcp.h > > +++ b/include/net/tcp.h > > @@ -1751,4 +1751,13 @@ static inline void skb_set_tcp_pure_ack(struct > > sk_buff *skb) > > skb->truesize = 2; > > } > > > > +/* Convert msecs to jiffies, ensuring that the return value is always at > > least > > + * 2. This can be used when setting tick-based timers to guarantee that > > they > > + * won't expire right away. > > + */ > > +static inline unsigned long tcp_safe_msecs_to_jiffies(const unsigned int m) > > +{ > > + return max_t(u32, 2, msecs_to_jiffies(m)); > > +} > > Note that you can do slightly better if m is a constant at compile > time ;) > > if (__builtin_constant_p(m) && m * 1000 >= 2 * HZ) > return msecs_to_jiffies(m); > return max_t(u32, 2, msecs_to_jiffies(m)); > > Or something like that ?
That's a nice optimization ;) However, I think that with Nicholas Mc Guire's recent changes to msecs_to_jiffies (http://marc.info/?l=linux-kernel&m=143195210010666), we should get this for free, no? Cheers, Ido. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html