Re: uninterruptible sleep lockups
From: Chris Friesen
Date: Tue Feb 22 2005 - 18:23:32 EST
linux-os wrote:
Now, somebody needs a resource. It executes down(&semaphore);
once it gets control again, it has that resource. It attempts
to use that resource through a driver. The driver waits forever.
The resource is now permanently dorked --forever because its
driver is waiting forever. The user code never returns from
the driver so it can never execute up(&semaphore).
What about something like a "robust mutex" (in OSDL terminology)? The
guy holding it too long gets killed, and the mutex gets marked as dirty.
The next guy to aquire the mutex is responsable for re-initializing
the resource (resetting the device to a known state, for instance).
Chris
-
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/