+ struct ahci_hba* hba;
+ struct ahci_driver *pos, *n;
+ struct llist_header* ahcis;
+
+ ahcis = irq_payload(irq, struct llist_header);
+ llist_for_each(pos, n, ahcis, ahci_drvs)
+ {
+ if (pos->id == hart_vector_stamp(hstate)) {
+ hba = &pos->hba;
+ goto proceed;
+ }
+ }
+
+ return;
+
+proceed: