# Re: Debugging neighbour.c: timers

- From: David S. Miller \<davem@davemloft.net\>
- Date: 2005-09-27 00:48:27 
- List: netdev
- Page: https://ratatoskr.run/netdev/2005/09/768982
- Thread: https://ratatoskr.run/netdev/2005/09/768982/t.md

```text
From: "A.N.Kuznetsov" <redacted>
Date: Tue, 27 Sep 2005 04:38:45 +0400

> Actually, when this code was written, add_timer() behaved differently,
> double add_timer() was prohibited and it printked
> "bug: kernel timer added twice at...".

Yes, it calls __mod_timer() now.  That's quite bad and
the debugging check should be re-added I think.

Is there some reason why we want add_timer() to behave like
__mod_timer(timer, timer->expires)?  I can't see any...

So perhaps we should add the simple BUG_ON(timer->pending) check to
include/linux/timer.h:add_timer()

add_timer_on() does this check btw....
```
