Lines Matching +full:i +full:- +full:drive
1 .. SPDX-License-Identifier: GPL-2.0
17 The driver is generic, i.e., it does not contain any code tailored
18 to any specific tape drive. The tape parameters can be specified with
23 flexible method and applicable to single-user workstations. However,
30 new tape is loaded into the drive or if writing begins at the
32 drive performs auto-detection of the tape format well (like some
33 QIC-drives). The result is that any tape can be read, writing can be
36 for the first time). The first method is applicable if the drive
37 does not perform auto-detection well enough and there is a single
38 "sensible" mode for the device. An example is a DAT drive that is
39 used only in variable block mode (I don't know if this is sensible
40 or not :-).
57 between formats in multi-tape operations (the explicitly overridden
72 limits). Both the auto-rewind (minor equals device number) and
73 non-rewind devices (minor is 128 + device number) are implemented.
76 of the physical block on tape. When reading, the drive reads the next
80 In fixed block mode, the data transfer between the drive and the
96 as a synchronization point, i.e., all remaining data form the drive buffers is
100 write the filemarks without flushing the drive buffer. Writing filemark at
101 close() is always flushing the drive buffers. However, if the previous
112 drive is not ready. If O_NONBLOCK is not used, the driver waits for
113 the drive to become ready. If this does not happen in ST_BLOCK_SECONDS
116 tape in the drive (commands trying to write something return error if
124 each drive are used.
128 dev_upper non-rew mode dev-lower
129 20 - 8 7 6 5 4 0
131 The non-rewind bit is always bit 7 (the uppermost bit in the lowermost
132 byte). The bits defining the mode are below the non-rewind bit. The
143 and non-rewind entries for each mode. The names are stxy and nstxy, where x
151 the defaults set by the user. The value -1 means the default is not set. The
161 directory corresponding to the mode 0 auto-rewind device (e.g., st0).
174 regular expression "^st[0-9]+$"
180 pointing to the same tape drive use the same statistics. That means
186 - The number of I/Os currently outstanding to this device.
188 - The amount of time spent waiting (in nanoseconds) for all I/O
193 - The number of I/Os issued to the tape drive other than read or
195 following calculation io_ms-read_ms-write_ms.
197 - The number of bytes read from the tape drive.
199 - The number of read requests issued to the tape drive.
201 - The amount of time (in nanoseconds) spent waiting for read
204 - The number of bytes written to the tape drive.
206 - The number of write requests issued to the tape drive.
208 - The amount of time (in nanoseconds) spent waiting for write
211 - The number of times during a read or write we found
212 the residual amount to be non-zero. This should mean that a program
218 The in_flight value is incremented when an I/O starts the I/O
223 I/O issued via the st module.
225 When read the statistics may not be temporally consistent while I/O is in
228 updated when starting an I/O or when it is completed.
231 updated and decremented when an I/O completes after updating statistics.
232 The value of in_flight is 0 when there are no I/Os outstanding that are
234 I/O performed via the sg device.
252 is not possible, a driver buffer allocated at run-time is used. If
253 direct i/o is not possible for the whole transfer, the driver buffer
254 is used (i.e., bounce buffers for individual pages are not
255 used). Direct i/o can be impossible because of several reasons, e.g.:
257 - one or more pages are at addresses not reachable by the HBA
258 - the number of pages in the transfer exceeds the number of
260 - one or more pages can't be locked into memory (should not happen in
268 allowed if ST_BUFFER_WRITES is non-zero and direct i/o is not used.
273 NOTE that if direct i/o is used, the small writes are not buffered. This may
275 -b option) may have had good throughput but this is not true any more with
276 2.6. Direct i/o can be turned off to solve this problem but a better solution
277 is to use bigger write() byte counts (e.g., tar -b 64).
282 direct i/o and not in fixed block mode.
286 tape after the early-warning mark to flush the driver buffer.
293 Scatter/gather buffers (buffers that consist of chunks non-contiguous
312 are used to extend the buffer at run-time if this is necessary. The
325 returns -1 and errno is set to ENOSPC. To enable writing a trailer,
327 bytes is returned. After this, -1 and the number of bytes are
344 tape drive if this is non-zero
348 set, the write threshold is set to the new buffer size - 2 kB.
363 the driver as module. If several parameters are set, the keyword-value
376 - aa is the buffer size for fixed block mode in 1024 byte units
377 - bb is the write threshold in 1024 byte units
378 - dd is the maximum number of scatter/gather segments
384 The tape is positioned and the drive parameters are set with ioctls
388 (look for a package mt-st* from the Linux ftp sites; the GNU mt does
415 Write count filemarks with immediate bit set (i.e., does not
426 Re-tension tape.
434 Seek to tape block count. Uses Tandberg-compatible seek (QFA)
435 for SCSI-1 drives and SCSI-2 seek for SCSI-2 drives. The file and
438 Set the drive block size. Setting to zero sets the drive into
441 Sets the drive density code to arg. See drive
444 Explicitly lock/unlock the tape drive door.
449 drive with the command and it selects the tape slot to use of
452 Sets compressing or uncompressing drive mode using the
469 partitions (argument non-zero). If the argument is positive,
475 LTO drives from LTO-5 upwards. The drive has to support partitions
485 The drive buffer option is set to the argument. Zero means
504 automatic locking of the drive door (global)
512 from the drive (block size can be changed only to
519 the MTSEEK and MTIOCPOS for SCSI-2 drives instead of
526 enables immediate mode (i.e., don't wait for
529 enables immediate filemark mode (i.e. when
537 if you are sure that the drive supports SILI and the HBA
552 Used to set or clear the density (8 bits), and drive buffer
560 contains the new default. If the bits 8-15 are set to a
561 non-zero number, and this number is not 0xff, the number is
580 more bits in the extended sense data when the drive needs
581 cleaning. The bits are device-dependent. The driver is
583 bits of the argument; must be >= 18 (values 1 - 17
585 a mask to select the relevant bits (the bits 9-16), and the
586 bit pattern (bits 17-23). If the bit pattern is zero, one
588 the pattern is non-zero, the pattern must match the masked
598 Reads the current position from the drive. Uses
599 Tandberg-compatible QFA for SCSI-1 drives and the SCSI-2
600 command for the SCSI-2 drives.
607 block is -1 when it can't be determined (e.g., after MTBSF).
608 The drive type is either MTISSCSI1 or MTISSCSI2.
614 The GMT_xxx status bits reflect the drive status. GMT_DR_OPEN
615 is set if there is no tape in the drive. GMT_EOD means either
633 gracefully, but some drive/adapter combinations are known to hang the
646 time or the MT_ST_CAN_BSR bit is set for the drive with an ioctl.
662 If the tape seems to hang, I would be very interested to hear where
663 the driver is waiting. With the command 'ps -l' you can see the state
667 /boot for the procps I use) or have updated /etc/psdatabase (for kmem