Re: tun.c patch to fix "smp_processor_id() in preemptible code"

From: Lee Revell
Date: Wed Oct 20 2004 - 05:37:08 EST


On Tue, 2004-10-19 at 17:54, Herbert Xu wrote:
> On Tue, Oct 19, 2004 at 05:51:17PM -0400, Lee Revell wrote:
> >
> > Ok, here is the correct patch. If this is really just a matter of
> > performance, and not required for correctness, disabling preemption is
> > broken, right?
>
> No if you're doing this then you should get rid of netif_rx_ni()
> altogether. But before you do that please ask all the people who
> call it.

There are not a lot of them:

drivers/s390/net/ctcmain.c
drivers/s390/net/netiucv.c
drivers/net/irda/vlsi_ir.c
drivers/net/tun.c

>From netiuvc.c:

/*
* Since receiving is always initiated from a tasklet (in iucv.c),
* we must use netif_rx_ni() instead of netif_rx()
*/

This implies that the author thought it was a matter of correctness to
use netif_rx_ni vs. netif_rx. But it looks like the only difference is
that the former sacrifices preempt-safety for performance.

I could not find maintainers for the two s390 drivers, or a specific
maintainer for vlsi_ir.

Lee

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