libata: remove the done callback from ata_scsi_args
authorChristoph Hellwig <hch@lst.de>
Tue, 10 Jan 2017 08:41:45 +0000 (09:41 +0100)
committerTejun Heo <tj@kernel.org>
Tue, 10 Jan 2017 15:55:40 +0000 (10:55 -0500)
It's always the scsi_done callback, and we can get at that easily
in the place where ->done is called.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ata/libata-scsi.c

index 43694f5f2c89c5f32c883f73b54809a7a9f2e8a3..28e2530b9cd391feca8f5fdb7de845c0bba93f8f 100644 (file)
@@ -2061,7 +2061,6 @@ struct ata_scsi_args {
        struct ata_device       *dev;
        u16                     *id;
        struct scsi_cmnd        *cmd;
-       void                    (*done)(struct scsi_cmnd *);
 };
 
 /**
@@ -2140,7 +2139,7 @@ static void ata_scsi_rbuf_fill(struct ata_scsi_args *args,
 
        if (rc == 0)
                cmd->result = SAM_STAT_GOOD;
-       args->done(cmd);
+       cmd->scsi_done(cmd);
 }
 
 /**
@@ -4357,7 +4356,6 @@ void ata_scsi_simulate(struct ata_device *dev, struct scsi_cmnd *cmd)
        args.dev = dev;
        args.id = dev->id;
        args.cmd = cmd;
-       args.done = cmd->scsi_done;
 
        switch(scsicmd[0]) {
        case INQUIRY: