mmc_da: Queued CCBs need a priority other than CAM_PRIORITY_NONE

Queued CCBs usually are queued at CAM_PRIORITY_NORMAL, unless they are
doing error recovery, or device enumeration of some kind. They should
never be queued at CAM_PRIORITY_NONE, which should only be used for CCBs
that are immediate. For sdda_start_init_task(), we allocate a ccb,
initialize it then use it to talk to the SD/MMC card to query it,
negotiate the speed and lane sizes, etc. Most of these commands are
queued, so use the normal priority.

Sponsored by:		Netflix
This commit is contained in:
Warner Losh
2025-07-21 21:38:55 -06:00
parent 73e1bd7142
commit 7cbf41ef60
+1 -1
View File
@@ -1081,7 +1081,7 @@ sdda_start_init_task(void *context, int pending)
CAM_DEBUG(periph->path, CAM_DEBUG_TRACE, ("sdda_start_init_task\n"));
new_ccb = xpt_alloc_ccb();
xpt_setup_ccb(&new_ccb->ccb_h, periph->path,
CAM_PRIORITY_NONE);
CAM_PRIORITY_NORMAL);
cam_periph_lock(periph);
cam_periph_hold(periph, PRIBIO|PCATCH);