TMIOCMD (Direto) tmscsi Device Driver ioctl Operação

Propósito

Envia comandos SCSI diretamente para o dispositivo conectado.

Nota: Esta operação não é suportada por todos os controladores de E/S SCSI.

Descrição

Atenção: A operação TMIOCMD é uma operação muito poderosa. Os cuidados extremas devem ser tomados pelo ouvinte antes de emitir qualquer comando SCSI geral, pois isso pode afetar adversamente o dispositivo conectado, outros dispositivos SCSI no barramento SCSI ou até mesmo disponibilidade geral do sistema. Ele só deve ser usado quando nenhum outro meio estiver disponível para executar a função requerida ou funções no dispositivo conectado. Esta operação requer pelo menos dev_config autoridade para executar.

A operação TMIOCMD fornece um meio de envio de comandos SCSI diretamente para o dispositivo conectado. Essa operação só é permitida para o dispositivo do modo iniciador. Ele possibilita um chamador emitir comandos SCSI específicos que não são suportados diretamente pelo driver do dispositivo. O responsável pelo caller é responsável por qualquer e toda a recuperação de erro associada ao envio do comando SCSI. Nenhuma recuperação de erro é realizada pelo driver do dispositivo quando o comando é emitido. O driver do dispositivo não registra erros que ocorrem enquanto executa o comando.

O parâmetro arg para este comando especifica o endereço da estrutura de sc_iocmd definida no arquivo /usr/include/sys/scsi.h . O caller preenche na área de bloqueio do descritor de comando SCSI, comprimento de comando (comprimento do bloco de comando SCSI), o valor de tempo limite para o comando e umflags. Se uma transferência de dados estiver envolvida, o comprimento de dados e as áreas do ponteiro de buffer, bem como a sinalização B_READ noflagscampo, deve ser preenchido. O B_READ é configurado com um valor de 1 para indicar a transferência de dados do comando é entrada, e B_READ é configurado para um valor de 0 para indicar os dados são de saída. Se não houver transferência de dados, esses campos e bandeiras são configurados para 0 valores.

O driver de dispositivo de modo de destino constrói o bloco de comando apropriado para executar esta operação, incluindo ORing no identificador de número de unidade lógica de 3-bit bits (LUN) no comando SCSI com base nas informações de configuração para esta instância do dispositivo. A variável global retornado errno é gerada e astatus validity,SCSI bus statuseadapter statusos campos são atualizados para refletir o status de conclusão para o comando. Essas áreas de status são definidas no arquivo /usr/include/sys/scsi.h .

Arquivos

Item Descrição
/dev/tmscsi0, /dev/tmscsi1, ..., /dev/tmscsi n Suporte as comunicações do processador para processador através do driver de dispositivo de modo de destino SCSI.