Meelis, can you try the patch below? It's a hack and not a proper fix, but it addresses what seems to be your culprit, given that it is the only place allocating a request from the error handler. diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c index fa7b5ec..5804ea0 100644 --- a/drivers/scsi/scsi_error.c +++ b/drivers/scsi/scsi_error.c @@ -2010,6 +2010,7 @@ static void scsi_restart_operations(struct Scsi_Host *shost) struct scsi_device *sdev; unsigned long flags; +#if 0 /* * If the door was locked, we need to insert a door lock request * onto the head of the SCSI request queue for the device. There @@ -2019,6 +2020,7 @@ static void scsi_restart_operations(struct Scsi_Host *shost) if (scsi_device_online(sdev) && sdev->locked) scsi_eh_lock_door(sdev); } +#endif /* * next free up anything directly waiting upon the host. this -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html