--- a/sys/bus/pccard/pccard_cis.c +++ b/sys/bus/pccard/pccard_cis.c @@ -1050,6 +1050,10 @@ DPRINTF(("too many io " "spaces %d", cfe->num_iospace)); + /* DF-5360: don't leave the poisoned count on + * the queued cfe (or on default_cfe, which is + * copied into later entries at :914). */ + cfe->num_iospace = 0; state->card->error++; break; } @@ -1170,6 +1174,8 @@ DPRINTF(("too many mem " "spaces %d", cfe->num_memspace)); + /* DF-5360: same as the iospace case. */ + cfe->num_memspace = 0; state->card->error++; break; }