Re: [PATCH] libata: add human-readable error value decoding

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tejun Heo wrote:
+    if (ehc->i.serror)
+        ata_port_printk(ap, KERN_ERR,
+          "SError: {%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s}\n",
+          ehc->i.serror & SERR_DATA_RECOVERED ? "RecovDataErr " : "",
+          ehc->i.serror & SERR_COMM_RECOVERED ? "RecovCommErr " : "",
+          ehc->i.serror & SERR_DATA ? "UnrecovDataErr " : "",
+          ehc->i.serror & SERR_PERSISTENT ? "PersistErr " : "",
+          ehc->i.serror & SERR_PROTOCOL ? "ProtocolErr " : "",
+          ehc->i.serror & SERR_INTERNAL ? "HostInternalErr " : "",
+          ehc->i.serror & SERR_PHYRDY_CHG ? "PHYRdyChg " : "",
+          ehc->i.serror & SERR_PHY_INT_ERR ? "PHYInternalErr " : "",
+          ehc->i.serror & SERR_COMM_WAKE ? "CommWake " : "",
+          ehc->i.serror & SERR_10B_8B_ERR ? "10B8BErr " : "",
+          ehc->i.serror & SERR_DISPARITY ? "Disparity " : "",
+          ehc->i.serror & SERR_CRC ? "CRCErr " : "",
+          ehc->i.serror & SERR_HANDSHAKE ? "HandshakeErr " : "",
+          ehc->i.serror & SERR_LINK_SEQ_ERR ? "LinkSeqErr " : "",
+          ehc->i.serror & SERR_TRANS_ST_ERROR ? "TransStatTransErr " : "",
+          ehc->i.serror & SERR_UNRECOG_FIS ? "UnrecogFIS " : "",
+          ehc->i.serror & SERR_DEV_XCHG ? "DevExchanged " : "" );

I'm not really convinced whether this is necessary.  The human readable
form is also a bit cryptic and can get quite long.  So, mild NACK from me.


It certainly seems useful when debugging hotplug issues or random SATA problems which end up being caused by communication problems. Without this output, Joe User stands no chance of figuring out what's going on, and neither does Joe libata Developer unless they really care to dig through the spec and count bits to figure out what they mean. At least with this you can see that there was a CRC error, etc. and go from that..

--
Robert Hancock      Saskatoon, SK, Canada
To email, remove "nospam" from [email protected]
Home Page: http://www.roberthancock.com/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux