On Tue, Sep 09, 2008 at 11:20:41AM -0700, Stephen Hemminger wrote: > Accessing the VPD area can take a long time. The existing > VPD access code fails consistently on my hardware. There are comments > in the SysKonnect vendor driver that it can take up to 13ms per word. > > Change the access routines to: > * use a mutex rather than spinning with IRQ's disabled and lock held > * have a much longer timeout > * call cond_resched while spinning > - udelay(10); > + if (fatal_signal_pending(current)) > + return -EINTR; > + cond_resched(); We're back to the hammering on the pci bus problem again. However, cond_resched() does tell us whether we rescheduled! if (!cond_resched()) udelay(10); -- Matthew Wilcox Intel Open Source Technology Centre "Bill, look, we understand that you're interested in selling us this operating system, but compare it to ours. We can't possibly take such a retrograde step." -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html