Re: [PATCH] netpoll: allow execution of multiple rx_hooks perinterface

From: Matt Mackall
Date: Wed Jan 06 2010 - 22:54:26 EST


On Wed, 2010-01-06 at 21:54 +0100, Daniel Borkmann wrote:
> Hi,
>
> this patch allows the registration and _execution_ of multiple netpoll
> rx_hooks per interface. Currently, it is possible to register multiple
> netpoll structures to one interface, _but_ only one single rx_hook (from
> the netpoll struct that has been registered last) can be executed, which
> was an oversight in the implementation [1].
> So, this patch fixes it. I've sucessfully tested it within 2.6.32.2 with
> the registration of multiple rx_hook clients for several times. I'd
> appreciate comments / feedback.

(grumbles about cc:)

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.

--
http://selenic.com : development and support for Mercurial and Linux


--
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/