Messages in this thread | | | Subject | Re: [PATCH] netpoll: allow execution of multiple rx_hooks per interface | From | Matt Mackall <> | Date | Mon, 11 Jan 2010 17:21:48 -0600 |
| |
On Fri, 2010-01-08 at 01:20 +0100, Daniel Borkmann wrote: > Daniel Borkmann wrote: > > David Miller wrote: > >> From: Matt Mackall <mpm@selenic.com> > >> Date: Wed, 06 Jan 2010 21:54:05 -0600 > >> > >>> Please inline patches so they can be reviewed easily in reply. > >>> > >>> > >>> - struct netpoll *np = npi->rx_np; > >>> + struct netpoll **np = &npi->rx_np; > >>> > >>> - if (!np) > >>> + if (!(*np)) > >>> > >>> This makes everything horrible. Can you avoid the double indirection? > >>> Using a list head might be a good answer. > >>> > >> Agreed on all counts. > >> > > > > Agreed on the double indirection, I'll fix it. > > > > I've already considered the list_head structure, but then I was the opinion > > that a double linked list might not be necessary for this, so I did it that > > way ... (compare: kernel notifier by Alan Cox). If you insist on that I'll > > fix it of course ;) > > So, here's the list head implementation. Tested on both of my machines with several > rx_hook clients.
Looks pretty good. Dave?
Acked-by: Matt Mackall <mpm@selenic.com>
-- http://selenic.com : development and support for Mercurial and Linux
| |