Changeset 82cbf8c6 in mainline for kernel/generic/src/ipc


Ignore:
Timestamp:
2017-10-08T19:37:24Z (8 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
2fd26bb
Parents:
81b9d3e
Message:

Replace the old hash table implementation in the kernel with the newer one

This replaces the original hash table implementation with the resizable one
already used in uspace. Along the way, the IRQ hash table code was streamlined
and cleaned up.

File:
1 edited

Legend:

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

    r81b9d3e r82cbf8c6  
    298298    irq_code_t *ucode)
    299299{
    300         sysarg_t key[] = {
    301                 [IRQ_HT_KEY_INR] = (sysarg_t) inr,
    302                 [IRQ_HT_KEY_MODE] = (sysarg_t) IRQ_HT_MODE_NO_CLAIM
    303         };
    304        
    305300        if ((inr < 0) || (inr > last_inr))
    306301                return ELIMIT;
     
    351346       
    352347        irq->notif_cfg.hashed_in = true;
    353         hash_table_insert(&irq_uspace_hash_table, key, &irq->link);
     348        hash_table_insert(&irq_uspace_hash_table, &irq->link);
    354349       
    355350        irq_spinlock_unlock(&irq->lock, false);
     
    388383        }
    389384
    390         /* kobj->irq->lock unlocked by the hash table remove_callback */
     385        irq_spinlock_unlock(&kobj->irq->lock, false);
    391386        irq_spinlock_unlock(&irq_uspace_hash_table_lock, true);
    392387
Note: See TracChangeset for help on using the changeset viewer.