Dont panic if only one disk on a channel can do tagged queueing.
MFC: asap
This commit is contained in:
parent
576c87ab62
commit
949e9d36aa
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=97162
@ -675,17 +675,17 @@ ad_service(struct ad_softc *adp, int change)
|
||||
int device = adp->device->unit;
|
||||
|
||||
if (adp->device->unit == ATA_MASTER) {
|
||||
if (adp->device->channel->devices & ATA_ATA_SLAVE &&
|
||||
((struct ad_softc *)
|
||||
(adp->device->channel->
|
||||
device[ATA_DEV(ATA_SLAVE)].driver))->flags&AD_F_TAG_ENABLED)
|
||||
if ((adp->device->channel->devices & ATA_ATA_SLAVE) &&
|
||||
(adp->device->channel->device[SLAVE].driver) &&
|
||||
((struct ad_softc *) (adp->device->channel->
|
||||
device[SLAVE].driver))->flags & AD_F_TAG_ENABLED)
|
||||
device = ATA_SLAVE;
|
||||
}
|
||||
else {
|
||||
if (adp->device->channel->devices & ATA_ATA_MASTER &&
|
||||
((struct ad_softc *)
|
||||
(adp->device->channel->
|
||||
device[ATA_DEV(ATA_MASTER)].driver))->flags&AD_F_TAG_ENABLED)
|
||||
if ((adp->device->channel->devices & ATA_ATA_MASTER) &&
|
||||
(adp->device->channel->device[MASTER].driver) &&
|
||||
((struct ad_softc *) (adp->device->channel->
|
||||
device[MASTER].driver))->flags & AD_F_TAG_ENABLED)
|
||||
device = ATA_MASTER;
|
||||
}
|
||||
if (device != adp->device->unit &&
|
||||
|
Loading…
Reference in New Issue
Block a user