1. NAME

scsi_mode_sense - issue a mode sense, falling back from 10 to six bytes if necessary.

2. SYNOPSIS

int scsi_mode_sense(struct scsi_device *  sdev , int  dbd , int  modepage , unsigned char *  buffer , int  len , int  timeout , int  retries , struct scsi_mode_data *  data , struct scsi_sense_hdr *  sshdr );

3. ARGUMENTS

sdev
    SCSI device to be queried

dbd
    set if mode sense will allow block descriptors to be returned

modepage
    mode page being requested

buffer
    request buffer (may not be smaller than eight bytes)

len
    length of request buffer.

timeout
    command timeout

retries
    number of retries before failing

data
    returns a structure abstracting the mode header data

sshdr
    place to put sense data (or NULL if no sense to be collected). must be SCSI_SENSE_BUFFERSIZE big.

4. DESCRIPTION

Returns zero if unsuccessful, or the header offset (either 4 or 8 depending on whether a six or ten byte command was issued) if successful.

5. AUTHORS

James Bottomley <>
    Author.

Rob Landley <>
    Author.

6. COPYRIGHT