Author: markj
Date: Sun May 10 22:21:00 2015
New Revision: 282743
URL: https://svnweb.freebsd.org/changeset/base/282743
Log:
msecs_to_jiffies() is implemented using tvtohz(9), which always returns a
positive value since it adds the current tick to its result. This differs
from the behaviour in Linux, whose implementation does not add the extra
tick, so subtract the extra tick in the OFED compat layer implementation.
This addresses some incorrect handling of IB MAD timeouts, since some IB
code depends on msecs_to_jiffies(0) returning 0.
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
Modified:
head/sys/ofed/include/linux/jiffies.h
Modified: head/sys/ofed/include/linux/jiffies.h
==============================================================================
--- head/sys/ofed/include/linux/jiffies.h Sun May 10 22:07:53 2015
(r282742)
+++ head/sys/ofed/include/linux/jiffies.h Sun May 10 22:21:00 2015
(r282743)
@@ -42,7 +42,7 @@ msecs_to_jiffies(int msec)
tv.tv_sec = msec / 1000;
tv.tv_usec = (msec % 1000) * 1000;
- return (tvtohz(&tv));
+ return (tvtohz(&tv) - 1);
}
#define jiffies ticks
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"