Changes between Version 8 and Version 9 of SAT-with-UAS-Linux
- Timestamp:
- Aug 9, 2019, 2:58:49 PM (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SAT-with-UAS-Linux
v8 v9 81 81 file. (As far as smartmontools/SAT passthrough is concerned, only the NO_ATA_1X flag is significant.) 82 82 83 There doesn't seem to be a definitive way to confirm that the NO_ATA_1X flag is in fact in effect for a particular device, but if it is the symptom will be that commands which rely on SAT show invalid data, e.g.83 For the uas driver, there doesn't seem to be a definitive way to confirm that the NO_ATA_1X flag is in fact in effect for a particular device (see [#proc_scsi_usb-storage note on /proc/scsi/usb-storage]), but if it is the symptom will be that commands which rely on SAT show invalid data, e.g. 84 84 85 85 {{{ … … 233 233 * The full list of flag bits is defined in the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/linux/usb_usual.h include/linux/usb_usual.h] file in the kernel source (while the quirks-option flag letters and fuller explanations of each flag's meaning are found in the `usb-storage.quirks=` section of the [https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html Kernel Parameters] documentation). 234 234 * The "Quirks match" line will be output if quirks are found in either the compiled-in quirks list or a list is specified using one of the kernel-module override methods, and thus can be used to check which set of flags is actually getting applied. However, the blanket application of the NO_ATA_1X flag for all Seagate devices (USB vendor ID of 0x0bc2) is coded separately and does not generate any kern.log output indicating it has been applied. Also, if you specify an empty flag list (e.g. "`0bc2:231a:`") in an override and thus have no flag bits being set, no "Quirks match" log line will be generated. 235 236 [=#proc_scsi_usb-storage] Using /proc/scsi/usb-storage/[HOSTNUMBER} to display active flag bits: 237 238 * If a device is attached to the usb-storage driver, there will be an associated file under `/proc/scsi/usb-storage` which will display information related to that particular device driver instance's internal state -- including a list of the active flag bits. 239 240 For example, after setting the quirks for this particular USB ID to ":u" and pugging in the device, the kernel detected it with a `scsi host4: usb-storage 2-1:1.0` message, and the /proc info file showed: 241 {{{ 242 ============ 243 # cat /proc/scsi/usb-storage/4 244 Host scsi4: usb-storage 245 Vendor: Seagate 246 Product: Backup+ RD 247 Serial Number: NA5CGDGD 248 Protocol: Transparent SCSI 249 Transport: Bulk 250 Quirks: IGNORE_UAS 251 ============ 252 }}} 253 254 * Unfortunately the uas driver does not create an equivalent `/proc/scsi/uas/*` file... so when a device does get attached to that driver, one can't use this method to determine if it has (for example) the NO_ATA_1X flag set.... 255