Messages in this thread | | | Subject | Re: [PATCH 4/6] myri10ge - First half of the driver | From | Lee Revell <> | Date | Mon, 15 May 2006 13:02:34 -0400 |
| |
On Fri, 2006-05-12 at 01:53 +0200, Brice Goglin wrote: > Francois Romieu wrote: > > > >> + spin_lock(&mgp->cmd_lock); > >> + response->result = 0xffffffff; > >> + mb(); > >> + myri10ge_pio_copy((void __iomem *) cmd_addr, buf, sizeof (*buf)); > >> + > >> + /* wait up to 2 seconds */ > >> > > > > You must not hold a spinlock for up to 2 seconds. > > > > We are working on reducing the delay to about 15ms. It only occurs when > the driver is loaded or the link brought up.
I think 15ms is quite a long time to hold a spinlock also - most spinlocks in the kernel are held for less than 500 microseconds.
Can't you use a mutex?
Lee
- 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/
| |