diff -Nru linux-2.6-a/include/net/pkt_sched.h linux-2.6-b/include/net/pkt_sched.h --- linux-2.6-a/include/net/pkt_sched.h 2005-04-26 15:45:07.000000000 +0200 +++ linux-2.6-b/include/net/pkt_sched.h 2005-04-27 09:36:23.421634576 +0200 @@ -140,7 +140,7 @@ if (bound <= 1000000 || delta_sec > (0x7FFFFFFF/1000000)-1) return bound; delta = delta_sec * 1000000; - if (delta > bound) + if (delta > bound || delta < 0) delta = bound; return delta; } @@ -156,7 +156,8 @@ __delta += 1000000; \ case 1: \ __delta += 1000000; \ - case 0: ; \ + case 0: \ + __delta = abs(__delta); \ } \ __delta; \ })