• Johannes Berg's avatar
    um: Simplify IRQ handling code · 3032b945
    Johannes Berg authored
    Reduce dynamic allocations (and thereby cache misses) by simply
    embedding the registration data for IRQs in the irq_entry, we
    never supported these being really dynamic anyway as only one
    was ever allowed ("Trying to reregister ...").
    
    Lockless behaviour is preserved by removing the FD from the poll
    set appropriately, but we use reg->events to indicate whether or
    not this entry is used, rather than dynamically allocating them.
    
    Also port the list of IRQ entries to list_head instead of the
    current open-coded singly-linked list implementation, just for
    sanity.
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    Acked-By: default avatarAnton Ivanov <anton.ivanov@cambridgegreys.com>
    Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
    3032b945
irq.c 11.9 KB