On Wed, 18 May 2011 17:14:56 PDT, Jian Peng said: > > @@ -1353,6 +1332,8 @@ > > > > > > ahci_start_engine(ap); > > > > + msleep(5); > > + > > if (online) > > > > *class = ahci_dev_classify(ap); > > It may very well be that adding a magic msleep(5) here just Makes It Work, but I have a gut feeling that it's in the wrong place (for starters, 'online' can't change during the msleep() unless somebody *else* sets it - in which case the locking is screwed up as we're not forcing a re-read of the value). The msleep() probably needs to be before something else further down in the code (but I have no idea exactly what).
Attachment:
pgpeFS7WYH45T.pgp
Description: PGP signature