(BUG?) round_jiffies() is non-monotonic on SMP
From: Alan Stern
Date: Sat Nov 01 2008 - 12:14:52 EST
Is it generally recognized that round_jiffies() can be non-monotonic on
SMP systems? By this, I mean that if cpu-a and cpu-b respectively do:
ra = round_jiffies(ja);
and
rb = round_jiffies(jb);
then the ordering of ra and rb can be opposite the ordering of ja and
jb.
If this is known, is it regarded as a potential problem? It certainly
seems likely that some code somewhere depends on timeouts expiring in
the correct order.
Alan Stern
P.S.: As a related matter, it seems very odd that we don't have a
round_jiffies_up() routine. Surely there are plenty of places where it
doesn't matter if an event is a little late but where the event must
not be early. (I know two such places offhand.) Any objection to
having one added?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/