Messages in this thread | | | Subject | Re: [PATCH] SCSI: Replace semaphores with wait_even | From | James Bottomley <> | Date | 24 Oct 2004 19:01:23 -0400 |
| |
On Sun, 2004-10-24 at 16:06, Thomas Gleixner wrote: > Hmm, strange. It works on two systems here and others using this > modification had no problem either. > I will check again.
Yes, very strange given what the mistake is:
- down_interruptible(&sem); + wait_event_interruptible(eh_wait, shost->eh_kill || + (shost->host_busy == shost->host_failed));
This condition is always true when the eh thread first starts because the default quiescent state of a scsi host is
shost->host_busy = shost->host_failed = 0
so your change makes the eh_thread spin forever locking everything else off the CPU. On a UP system, this is a complete hang.
James
- 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/
| |