libata-eh.c (8048b8358031ae742c1c8f16f196f6d8070bb09f) | libata-eh.c (461ec040677127510d018c06e64d868e5e91be75) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * libata-eh.c - libata error handling 4 * 5 * Copyright 2006 Tejun Heo <htejun@gmail.com> 6 * 7 * libata documentation is available via 'make {ps|pdf}docs', 8 * as Documentation/driver-api/libata.rst --- 1561 unchanged lines hidden (view full) --- 1570 if (stat & ATA_DF) 1571 stat &= ~ATA_SENSE; 1572 } else { 1573 return 0; 1574 } 1575 1576 switch (qc->dev->class) { 1577 case ATA_DEV_ZAC: | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * libata-eh.c - libata error handling 4 * 5 * Copyright 2006 Tejun Heo <htejun@gmail.com> 6 * 7 * libata documentation is available via 'make {ps|pdf}docs', 8 * as Documentation/driver-api/libata.rst --- 1561 unchanged lines hidden (view full) --- 1570 if (stat & ATA_DF) 1571 stat &= ~ATA_SENSE; 1572 } else { 1573 return 0; 1574 } 1575 1576 switch (qc->dev->class) { 1577 case ATA_DEV_ZAC: |
1578 if (stat & ATA_SENSE) | 1578 /* 1579 * Fetch the sense data explicitly if: 1580 * -It was a non-NCQ command that failed, or 1581 * -It was a NCQ command that failed, but the sense data 1582 * was not included in the NCQ command error log 1583 * (i.e. NCQ autosense is not supported by the device). 1584 */ 1585 if (!(qc->flags & ATA_QCFLAG_SENSE_VALID) && (stat & ATA_SENSE)) |
1579 ata_eh_request_sense(qc); 1580 fallthrough; 1581 case ATA_DEV_ATA: 1582 if (err & ATA_ICRC) 1583 qc->err_mask |= AC_ERR_ATA_BUS; 1584 if (err & (ATA_UNC | ATA_AMNF)) 1585 qc->err_mask |= AC_ERR_MEDIA; 1586 if (err & ATA_IDNF) --- 2406 unchanged lines hidden --- | 1586 ata_eh_request_sense(qc); 1587 fallthrough; 1588 case ATA_DEV_ATA: 1589 if (err & ATA_ICRC) 1590 qc->err_mask |= AC_ERR_ATA_BUS; 1591 if (err & (ATA_UNC | ATA_AMNF)) 1592 qc->err_mask |= AC_ERR_MEDIA; 1593 if (err & ATA_IDNF) --- 2406 unchanged lines hidden --- |