lkml.org 
[lkml]   [2008]   [Aug]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: autosuspend for SCSI devices
Date
Am Donnerstag 28 August 2008 10:04:27 schrieb Pavel Machek:
> On Tue 2008-08-26 13:01:43, Oliver Neukum wrote:
> > Am Dienstag 26 August 2008 11:43:55 schrieb Pavel Machek:
> > > > firstly, it doesn't consider error handling before suspending.
> > >
> > > What problems do you see with error handling? This patch does not
> > > touch the error handling, and I do not think it needs to touch it.
> >
> > You'd make scsi driver writers' life easier if you made sure no autosuspends
> > happen while they recover from errors. After all, you have no idea which
> > commands will get through while the bus is in disarray.
>
> Well, they have to handle other commands while bus has problems,
> anyway, right? So I'm not creating any _new_ problems for them.
>
> Pavel


I am afraid this is not true.

Regards
Oliver
/**
* scsi_block_when_processing_errors - Prevent cmds from being queued.
* @sdev: Device on which we are performing recovery.
*
* Description:
* We block until the host is out of error recovery, and then check to
* see whether the host or the device is offline.
*
* Return value:
* 0 when dev was taken offline by error recovery. 1 OK to proceed.
*/
int scsi_block_when_processing_errors(struct scsi_device *sdev)


/**
* scsi_restart_operations - restart io operations to the specified host.
* @shost: Host we are restarting.
*
* Notes:
* When we entered the error handler, we blocked all further i/o to
* this device. we need to 'reverse' this process.
*/
static void scsi_restart_operations(struct Scsi_Host *shost)


\
 
 \ /
  Last update: 2008-08-28 23:19    [W:0.068 / U:3.736 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site