Benjamin Herrenschmidt wrote: > net: Add __napi_synchronize() to sync with napi poll > > The EMAC driver which needs to handle multiple devices with one > NAPI instance implements its own per-channel disable bit. However, > when setting such a bit, it needs to synchronize with the poller > (that is make sure that any pending poller instance has completed, > or is started late enough to see that disable bit). > > This implements a low level __napi_synchronize() function to acheive > that. The underscores are to emphasis the low level aspect of it and > to discourage driver writers who don't know what they are doing to > use it (to please DaveM :-) > > Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]> > --- > > Switched to do a cpu_relax() spin instead and only on SMP. Not that > we have an smp_mb() in there which synchronize_irq() lacks. I believe > this is a bug in synchronize_irq() which I'll handle separately. > > Note: unfortunately, Jeff already picked up the EMAC patch without > waiting for this to be sorted out (oops...). So if you agree with > this patch, it would be nice to have it go in quickly or maybe via > Jeff's tree to avoid breakage ? Not terribly important tho.
Sorry, I thought that was the way everybody was headed. With the driver broken /anyway/, I just sorta threw it into the pile of fixes. It's upstream now, so let me know if you want to revert or move forward from here... Jeff _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev