Messages in this thread | | | Date | Fri, 7 Mar 2008 01:02:28 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH RFC] add time_after_now and other macros which compare with jiffies |
| |
On Fri, 7 Mar 2008 11:09:01 +0800 Dave Young <hidave.darkstar@gmail.com> wrote:
> Most of time_after like macros users just compare jiffies and > another number, so here add some other _now macros to do it. > > Another aproach is changing original time_ macros to use jiffies to compare, > add a generic compare macro like time_compare(a, b) > > Signed-off-by: Dave Young <hidave.darkstar@gmail.com> > > --- > jiffies.h | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff -upr linux/include/linux/jiffies.h linux.new/include/linux/jiffies.h > --- linux/include/linux/jiffies.h 2008-03-07 10:40:04.000000000 +0800 > +++ linux.new/include/linux/jiffies.h 2008-03-07 10:50:12.000000000 +0800 > @@ -134,6 +134,14 @@ static inline u64 get_jiffies_64(void) > ((__s64)(a) - (__s64)(b) >= 0)) > #define time_before_eq64(a,b) time_after_eq64(b,a) > > +#define time_after_now(a) time_after(jiffies, a) > + > +#define time_before_now(a) time_before(jiffies, a) > + > +#define time_after_eq_now(a) time_after_eq(jiffies, a) > + > +#define time_before_eq_now(a) time_before_eq(jiffies, a) > + > /* > * Have the 32 bit jiffies value wrap 5 minutes after boot > * so jiffies wrap bugs show up earlier.
time_after() and friends drive me nutty. I *always* have to go and look at the definition to make sure that people got the args the right way around.
(does that)
> * time_after(a,b) returns true if the time a is after time b.
so, umm, I think you got it backwards. Your time_after_now(a) will return true if jiffies (ie: now) is after `a'. ie: if a is before or equal to "now".
All this shouldn't be as hard as it is.
One lesson we can learn from this: whatever we do, it needs careful commenting. Your change doesn't do that.
| |