All of lore.kernel.org
 help / color / mirror / Atom feed
* conntrackd: questions about the new alarm implementation
@ 2008-01-21  6:20 Max Kellermann
  2008-01-21 12:55 ` Pablo Neira Ayuso
  0 siblings, 1 reply; 6+ messages in thread
From: Max Kellermann @ 2008-01-21  6:20 UTC (permalink / raw)
  To: pablo, netfilter-devel

Hi Pablo,

I have had a look at your new alarm.c.  I have a few questions about
it:

- Please explain why you now have 2048 (!) alarm queues, where the
  correct one is determined by hashing the alarm struct.  I fail to
  imagine how this hashing might be useful.  I can only see that it
  makes the code more complex and 2048 times slower - except for
  add_alarm(), which becomes a little bit faster, but there are only
  few add_alarm() invocations compared with get_next_alarm_run() and
  do_alarm_run().

- __run() is again bugged regarding due alarms: when an alarm is due,
  all readied file descriptors are ignored (l 193).  This is
  automatically recovered in the next select() call, so you didn't
  notice it.  Why do you keep screwing up this piece of code over and
  over? ;-)

- why this overcomplicated new __run() prototype with an int pointer
  parameter?  Its returned value is never used.  Its input value is
  only used to set next_alarm to NULL - why not just pass NULL as
  next_alarm in the first place (my patches did exactly that)?  Why
  does __run() have a return value?

Max


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-01-21 13:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-21  6:20 conntrackd: questions about the new alarm implementation Max Kellermann
2008-01-21 12:55 ` Pablo Neira Ayuso
2008-01-21 13:05   ` Max Kellermann
2008-01-21 13:18     ` Pablo Neira Ayuso
2008-01-21 13:33       ` Max Kellermann
2008-01-21 13:52         ` Pablo Neira Ayuso

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.