Alexander Motin wrote: > Kamigishi Rei wrote: >> Alexander Motin wrote: >>> Sorry, my fault, it is the different bug, due to disabled invariants >>> I have missed two locking issues. Here is regenerated patch, >>> including this fix and all previous fixes and improvements: >>> http://people.freebsd.org/~mav/cam-ata.20090629.patch >> >> OK, a question about the module: sometimes I'm getting loads (20+) of >> messages like >> >> ahcich1: ALL SLOTS BUSY! >> >> Is it purely informational or does it indicate a problem? (I'm using >> Intel Q35+ICH9 in AHCI mode.) > > It is bad. It must never happen. It means that driver got more commands > then it has empty slots available. Results can be unpredictable. > > How have you manage it? Were there any other messages around? I think I have found possible bug triggering condition. Apply this patch please: --- ahci.c.prev 2009-06-29 12:48:45.000000000 +0300 +++ ahci.c 2009-06-29 17:25:29.000000000 +0300 _at__at_ -986,7 +986,7 _at__at_ ahci_begin_transaction(device_t dev, uni if (ch->slot[tag].state == AHCI_SLOT_EMPTY) break; } while (tag != ch->lastslot); - if (tag == ch->lastslot) + if (ch->slot[tag].state != AHCI_SLOT_EMPTY) device_printf(ch->dev, "ALL SLOTS BUSY!\n"); ch->lastslot = tag; /* Occupy chosen slot. */ -- Alexander MotinReceived on Mon Jun 29 2009 - 12:31:14 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:50 UTC