On 06/11/09 20:10, Paul B. Henson wrote:
On Thu, 11 Jun 2009, Eric Schrock wrote:
I will open a CR to track this issue.
Cool, thanks. Please let me know what the number is, at some point once it
is resolved I hope to get it backported to S10.
Interestingly enough, so far fma hasn't complained about self test failures
on the SSD since I initiated the self tests under Linux and filled up the
log. I don't know why, while previously there was garbage being returned,
currently the wrong status being returned indicates there is actually a
failure. Dunno, but I'm happy that it's not being faulted and I didn't have
to kludge it by moving the shared library for the module out of the way.
I may give you another binary to run that will pull the raw SATA data via
a pass-through command so that I can then walk through whatever the
kernel is doing.
Sure thing, let me know what else you need to get this worked out.
Hey Paul -
Sorry for not geting back to you. Can you try running the attached
script while reading the selftest log parameters? This will let me know
what the sata translation code is doing and what the raw SATA data is.
Thanks,
- Eric
--
Eric Schrock, Fishworks http://blogs.sun.com/eschrock
#!/usr/sbin/dtrace -s
#pragma D option quiet
BEGIN
{
printf("Tracing sata self test queries... \n");
}
sata_ext_smart_selftest_read_log:entry,
sata_smart_selftest_log:entry
{
self->buf = arg2;
}
sata_ext_smart_selftest_read_log:return,
sata_smart_selftest_log:return
/arg1 != 0/
{
printf("%s failed\n", probefunc);
self->buf = 0;
}
sata_ext_smart_selftest_read_log:return
/arg1 == 0/
{
printf("%s succeeded\n", probefunc);
tracemem(self->buf, sizeof (struct smart_ext_selftest_log));
self->buf = 0;
}
sata_smart_selftest_log:return
/arg1 == 0/
{
printf("%s succeeded\n", probefunc);
tracemem(self->buf, sizeof (struct smart_selftest_log));
self->buf = 0;
}
_______________________________________________
fm-discuss mailing list
fm-discuss@opensolaris.org