Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/ddi/irq.c

    r0db0df2 rb169619  
    7575static size_t irq_ht_key_hash(const void *);
    7676static bool irq_ht_equal(const ht_link_t *, const ht_link_t *);
    77 static bool irq_ht_key_equal(const void *, size_t, const ht_link_t *);
     77static bool irq_ht_key_equal(const void *, const ht_link_t *);
    7878
    7979static const hash_table_ops_t irq_ht_ops = {
     
    141141{
    142142        irq_spinlock_lock(l, false);
    143 
    144         hash_table_foreach(h, &inr, link, irq_t, irq) {
     143        ht_link_t *first = hash_table_find(h, &inr);
     144        for (ht_link_t *lnk = first; lnk;
     145            lnk = hash_table_find_next(h, first, lnk)) {
     146                irq_t *irq = hash_table_get_inst(lnk, irq_t, link);
    145147                irq_spinlock_lock(&irq->lock, false);
    146148                if (irq->claim(irq) == IRQ_ACCEPT) {
     
    151153                irq_spinlock_unlock(&irq->lock, false);
    152154        }
    153 
    154155        irq_spinlock_unlock(l, false);
    155156
     
    222223
    223224/** Return true if the key is equal to the item's lookup key. */
    224 bool irq_ht_key_equal(const void *key, size_t hash, const ht_link_t *item)
     225bool irq_ht_key_equal(const void *key, const ht_link_t *item)
    225226{
    226227        const inr_t *inr = key;
Note: See TracChangeset for help on using the changeset viewer.