On Mon, Mar 01, 2004 at 09:05:31PM +0000, Joe Thornber wrote: > The event handling should be working; fail_path() uses a work queue to > schedule trigger_event() being called (we can't call it directly from > interrupt context). Aha! Missed this. > dm has a very simple model for events: > > - Userland issues the wait for event ioctl, which blocks until an event occurs Ok, creates an extra wait point, and provides an argument for (ugh) threads. > - Userland returns from the wait for event ioctl. At this point it > should query the status of the device to work out what happened. Which is actually returned from the wait ioctl. So we have to have one process in charge of the entire multipath. Ok. > An event number is passed into 'wait for event' to indicate the last > known event. This way we can avoid missing events while previous > events are being processed. Only recent versions of dmsetup support > this event number handling. We don't 'miss' the event, no, but we still get the most current status, not the intermediate status, right? Joel -- Life's Little Instruction Book #198 "Feed a stranger's expired parking meter." Joel Becker Senior Member of Technical Staff Oracle Corporation E-mail: joel.becker@xxxxxxxxxx Phone: (650) 506-8127