Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1dfcda06a67d6ad6f890dbd1bab84be5f17ef46d
Commit:     1dfcda06a67d6ad6f890dbd1bab84be5f17ef46d
Parent:     67b2009ae26ece6a54d0b689827903f53d6d21e6
Author:     Tejun Heo <[EMAIL PROTECTED]>
AuthorDate: Wed Mar 21 16:05:16 2007 +0900
Committer:  James Bottomley <[EMAIL PROTECTED]>
CommitDate: Tue May 22 10:41:12 2007 -0500

    [SCSI] kill scsi host template suspend/resume
    
    With libata converted to use sdev->manage_start_stop for suspend and
    resume, sht->suspend/resume() has no user left and low level
    suspend/ressume should be taken care of by low level driver's
    suspend/resume callbacks (e.g. PCI or PCMCIA driver callbacks).  This
    patch removes sht->suspend/resume() callbacks.
    
    This change is suggested by Christoph Hellwig.
    
    Signed-off-by: Tejun Heo <[EMAIL PROTECTED]>
    Cc: Christoph Hellwig <[EMAIL PROTECTED]>
    Signed-off-by: James Bottomley <[EMAIL PROTECTED]>
---
 drivers/scsi/scsi_sysfs.c |   25 +++----------------------
 include/scsi/scsi_host.h  |    6 ------
 2 files changed, 3 insertions(+), 28 deletions(-)

diff --git a/drivers/scsi/scsi_sysfs.c b/drivers/scsi/scsi_sysfs.c
index 67a38a1..ed72086 100644
--- a/drivers/scsi/scsi_sysfs.c
+++ b/drivers/scsi/scsi_sysfs.c
@@ -293,30 +293,18 @@ static int scsi_bus_suspend(struct device * dev, 
pm_message_t state)
 {
        struct device_driver *drv = dev->driver;
        struct scsi_device *sdev = to_scsi_device(dev);
-       struct scsi_host_template *sht = sdev->host->hostt;
        int err;
 
        err = scsi_device_quiesce(sdev);
        if (err)
                return err;
 
-       /* call HLD suspend first */
        if (drv && drv->suspend) {
                err = drv->suspend(dev, state);
                if (err)
                        return err;
        }
 
-       /* then, call host suspend */
-       if (sht->suspend) {
-               err = sht->suspend(sdev, state);
-               if (err) {
-                       if (drv && drv->resume)
-                               drv->resume(dev);
-                       return err;
-               }
-       }
-
        return 0;
 }
 
@@ -324,21 +312,14 @@ static int scsi_bus_resume(struct device * dev)
 {
        struct device_driver *drv = dev->driver;
        struct scsi_device *sdev = to_scsi_device(dev);
-       struct scsi_host_template *sht = sdev->host->hostt;
-       int err = 0, err2 = 0;
-
-       /* call host resume first */
-       if (sht->resume)
-               err = sht->resume(sdev);
+       int err = 0;
 
-       /* then, call HLD resume */
        if (drv && drv->resume)
-               err2 = drv->resume(dev);
+               err = drv->resume(dev);
 
        scsi_device_resume(sdev);
 
-       /* favor LLD failure */
-       return err ? err : err2;;
+       return err;
 }
 
 struct bus_type scsi_bus_type = {
diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h
index 68f461b..4a2e490 100644
--- a/include/scsi/scsi_host.h
+++ b/include/scsi/scsi_host.h
@@ -339,12 +339,6 @@ struct scsi_host_template {
        enum scsi_eh_timer_return (* eh_timed_out)(struct scsi_cmnd *);
 
        /*
-        * suspend support
-        */
-       int (*resume)(struct scsi_device *);
-       int (*suspend)(struct scsi_device *, pm_message_t state);
-
-       /*
         * Name of proc directory
         */
        char *proc_name;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to