code: func (c *SCSICmd) Write(b []byte) (n int, err error) {
  	toWrite := len(b)
  	boff := 0
  	for toWrite != 0 {
  		if c.vecoffset == len(c.vecs) {
  			return boff, errors.New("out of buffer scsi cmd buffer space")
  		}
  		wrote := copy(c.vecs[c.vecoffset][c.offset:], b[boff:])
  		boff += wrote
  		toWrite -= wrote
  		c.offset += wrote
  		if c.offset == len(c.vecs[c.vecoffset]) {
  			c.vecoffset++
  			c.offset = 0
  		}
  	}
  	return boff, nil
  }
docs: // Write, for a SCSICmd, is a io.Writer to the data buffer attached to this SCSI command.
  // It's writing *to* the buffer, which happens most commonly when responding to Read commands (take data and write it back to the kernel buffer)