Name

ata_scmd_need_defer — Check whether we need to defer scmd

Synopsis

int ata_scmd_need_defer (struct ata_device *  dev,
 int  is_io);

Arguments

dev

ATA device to which the command is addressed

is_io

Is the command IO (and thus possibly NCQ)?

Description

NCQ and non-NCQ commands cannot run together. As upper layer only knows the queue depth, we are responsible for maintaining exclusion. This function checks whether a new command can be issued to dev.

LOCKING

spin_lock_irqsave(host_set lock)

RETURNS

1 if deferring is needed, 0 otherwise.