Oh, I found the bug ...
> static int activate_fd(int irq, int fd, enum um_irq_type type, void *dev_id)
> {
[...]
> + irq_entry->reg[type].irq = irq;
> + irq_entry->reg[type].active = true;
> + irq_entry->reg[type].events = events;
Obviously, here we need
irq_entry->reg[type].id = dev_id;
:-)
johannes