Messages in this thread | | | Date | Fri, 2 Jun 2006 09:53:03 +0000 | From | Frederik Deweerdt <> | Subject | Re: [patch mm1-rc2] lock validator: netlink.c netlink_table_grab fix |
| |
On Fri, Jun 02, 2006 at 11:10:10AM +0800, Zhu Yi wrote: > On Thu, 2006-06-01 at 16:42 +0200, Frederik Deweerdt wrote: > > This got rid of the oops for me, is it the right fix? > > I don't think netlink will contend with hardirqs. Can you test with this > fix for ipw2200 driver? > It does work, thanks. But doesn't this add a possibility of missing some interrupts? cpu0 cpu1 ==== ==== in isr in tasklet
ipw_enable_interrupts |->priv->status |= STATUS_INT_ENABLED;
ipw_disable_interrupts |->priv->status &= ~STATUS_INT_ENABLED; |->ipw_write32(priv, IPW_INTA_MASK_R, ~IPW_INTA_MASK_ALL);
|->ipw_write32(priv, IPW_INTA_MASK_R, IPW_INTA_MASK_ALL); /* This is possible due to priv->lock no longer being taken in isr */
=>interrupt from ipw2200 in new isr if (!(priv->status & STATUS_INT_ENABLED)) return IRQ_NONE; /* we wrongfully return here because priv->status does not reflect the register's value */
Not sure this is really important at all, just curious.
Thanks, Frederik - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |