Since we've moved to delayed SMART attribute updates we need to set
initial_attributes after we first check the SMART data instead of at
object creation time.
This was needed twofold. First is that it was not working as expected
for some time. Second is that it conflicts with the delayed attribute
updating needed for faster WKClone menus.
- Use results from self-test log rather than self-test details
- Include more result details in more scenarios
- Only add self-test results to the report to avoid
duplicate/conflicting info
- Add check if test started but didn't finish (again?)
This new design uses copy.deepcopy() to avoid erroneous thresholds being
applied to drives during diags. This also reduces the number of lookups
to one per Disk.