09 Oct, 2006

1 commit

  • The problem we can't take advantage of lowest priority delivery mode if
    the vectors are allocated for only one cpu at a time. Nor can we work
    around hardware that assumes lowest priority delivery mode is always
    used with several cpus.

    So this patch introduces the concept of a vector_allocation_domain. A
    set of cpus that will receive an irq on the same vector. Currently the
    code for implementing this is placed in the genapic structure so we can
    vary this depending on how we are using the io_apics.

    This allows us to restore the previous behaviour of genapic_flat without
    removing the benefits of having separate vector allocation for large
    machines.

    This should also fix the problem report where a hyperthreaded cpu was
    receving the irq on the wrong hyperthread when in logical delivery mode
    because the previous behaviour is restored.

    This patch properly records our allocation of the first 16 irqs to the
    first 16 available vectors on all cpus. This should be fine but it may
    run into problems with multiple interrupts at the same interrupt level.
    Except for some badly maintained comments in the code and the behaviour
    of the interrupt allocator I have no real understanding of that problem.

    Signed-off-by: Eric W. Biederman
    Acked-by: Muli Ben-Yehuda
    Signed-off-by: Linus Torvalds

    Eric W. Biederman
     

26 Sep, 2006

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds