Name

ata_scsi_rbuf_fill — wrapper for SCSI command simulators

Synopsis

void ata_scsi_rbuf_fill (struct ata_scsi_args * args,
 unsigned int (*actor) (struct ata_scsi_args *args, u8 *rbuf));
 

Arguments

struct ata_scsi_args * args

device IDENTIFY data / SCSI command of interest.

unsigned int (*)(struct ata_scsi_args *args, u8 *rbuf) actor

Callback hook for desired SCSI command simulator

Description

Takes care of the hard work of simulating a SCSI command... Mapping the response buffer, calling the command's handler, and handling the handler's return value. This return value indicates whether the handler wishes the SCSI command to be completed successfully (0), or not (in which case cmd->result and sense buffer are assumed to be set).

LOCKING: spin_lock_irqsave(host lock)