[lkml]   [1999]   [Jul]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: PCI irq sharing and X on Linux
    Javier Vizcaino wrote:
    > Because of a bunch of reasons (find the PC composition
    > below), I need to share IRQ11 between the PCI graphics card
    > and the PCI lan card, but I get genuine Linux crashes:
    > -If having done 'ifconfig ...' I start X.
    > -If having started X ('ifconfig ...' commented where
    > appropiate on rc.d), I do 'ifconfig ...'.
    > A hard reset is needed. I use ne2k-pci as module to support
    > the lan card (clone based on Realtek 8029AS chip). The
    > relevant line is:
    > if (request_irq(dev->irq, ei_interrupt, SA_SHIRQ, dev->name,
    > dev)) return -EAGAIN;
    > But I have no idea if X servers (SVGA for Elsa Victory
    > Erazor with Riva 128) are well behaved about interrupt
    > sharing. Do you know about this? Or do you guess if I miss
    > something?

    That's a problem of the Riva server. It doesn't (and can't)
    install an interrupt handler. Unfortunately, it sometimes
    generates interrupts. As long as there is no kernel driver
    using this interrupt there's _no_ interrupt handler so the
    kernel disables the line and everything works well.

    If there is a handler (i.e. for the network card) the line is
    enabled and the false irq from the RIVA card is delivered.
    Because no handler resets the interrupt condition, it is
    delivered on and on and the system is stuck.

    Btw, an SMP system will only get very slow *g*

    Conclusion: You have to use a single IRQ for the Riva.
    Try to share interrupts between devices that have
    appropriate interrupt handlers.

    #ifdef FLAME
    I bet, if there were public data sheets for the riva
    the bug would have been slain long ago...

    Ciao, ET.

    PS: I had this problems about 1.5 years ago. IIRC, the second
    version of the Riva server still had this problem. Don't know
    if there are newer versions. Don't have a Riva any more ;)

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:52    [W:0.020 / U:6.668 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site