(Moving this to freebsd-smp, Bcc'ing current)

:What about shared interrupts? How are they going to be treated? With the
:spl leaving the arena it somehow looks feasible to run one interrupt
:source on two different threads if there are two pieces of hardware
:attached to the same interrupt line.
:>From what I understood from dfr, when switching away from an interrupt
:handler it is converted into a full thread. When the second piece of
:hardware fires an interrupt it could then run at the same time.

    This came up at the meeting and the conclusion was that shared
    interrupts would run serially.  That is, each 'bit' in the cpl
    (spl*(), also represented by ipending, the vector table dispatch, and
    so forth) would be treated as a single interrupt thread.  If there 
    are N interrupts hanging off that IRQ, then each of the N would
    be run serially from a single interrupt thread.

    This also came up a few months ago, you can probably find the discussion
    in the archives.

    What it comes down to is complexity and convenience.  In almost all
    systems it is possible to rearrange the PCI boards such that you do
    not have two critical interrupts on the same IRQ.

    We are not precluding being able to schedule shared interrupts separately,
    but if we are going to do it it will probably be much later when things
    are more stable and not now.  The KISS principle applies here.

                                        Matthew Dillon 
                                        <[EMAIL PROTECTED]>

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to