Andrew Paprocki wrote: > Tejun, > > I'm able to break my system using this patch. I had a hunch this might > be possible.. :) In short, if you issue a sleep command while the > drive is already sleeping, it puts libata into an infinite loop > resetting the port. I've illustrated the working test and the evil > hunch below. The sleep command itself will need a short-circuit out of > this logic in order to prevent this loop. Heh... I guess you're much better a software engineer than I am. Thanks for finding it out. It was stupid of me. :-) > Also, in the working case below the hddtemp command actually blocked > until the drive was spun up before returning a valid temp. While > testing, I was able to get hddtemp to trigger the drive wake-up when > it was sleeping, but hddtemp then returned stating the drive was > sleeping. Re-running hddtemp until the drive was fully spun up > (another 5 seconds) kept returning that it was sleeping. I'll see if I > can reproduce this reliably. Am I correct in assuming the process > which triggers the wake-up should block? Yeah, it should. I'll test with hddtemp myself. Jeff, please forget about this patchset. I'll re-post updated version. -- tejun - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html