All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Pekka Enberg <penberg@kernel.org>
Cc: Sasha Levin <levinsasha928@gmail.com>,
	mingo@elte.hu, asias.hejun@gmail.com, prasadjoshi124@gmail.com,
	kvm@vger.kernel.org
Subject: Re: [PATCH 1/2] kvm tools: Fix IRQ assignments
Date: Fri, 06 May 2011 12:08:08 +0400	[thread overview]
Message-ID: <4DC3AC68.10208@gmail.com> (raw)
In-Reply-To: <BANLkTinYQ6Yqxw=FHJKGhi=ujfBK+GH_JA@mail.gmail.com>

On 05/06/2011 12:04 PM, Pekka Enberg wrote:
> On Fri, May 6, 2011 at 11:01 AM, Sasha Levin <levinsasha928@gmail.com> wrote:
>> On Fri, 2011-05-06 at 10:43 +0300, Pekka Enberg wrote:
>>> On Fri, May 6, 2011 at 10:36 AM, Sasha Levin <levinsasha928@gmail.com> wrote:
>>>> afaik, we need to have same IRQ pins for devices which may have
>>>> different IRQ lines (All virtio-blk share same IRQ pin but different
>>>> line, I assume it'll be same with different virtio devices).
>>>>
>>>> So mptable has to manage association between device type and the
>>>> corresponding IRQ pin/line assignment, So dynamic assignment will be
>>>> more of a call with device type and return IRQ pin + line - which makes
>>>> it more complex than just allocating next free IRQ line.
>>>
>>> Well then make kvm__request_irq() return a pointer to struct irq and
>>> have a hard-coded array of IRQ pin + line pairs in irq.c, for example.
>>> That'll reduce complexity in the virtio drivers and it'll serve as a
>>> starting point for proper IRQ allocator.
>>
>> The big problem with dynamic allocations is having mptable register IRQ
>> sources properly, So I went ahead and deleted IRQ source definitions
>> from mptable.c and noticed that everything still works.
>>
>> I've spoke with Cyrill and neither him or myself were too sure if it's
>> ok to do that now and if so, would it still be correct once SMP gets
>> added.
>>
>> So here is my question: Would it be ok to drop IRQ source definitions
>> from mptable?
> 
> Now why do we need to do that? Shouldn't we pass the "device tree" to
> mptable.c and build the IRQ mappings based on that? Isn't that exactly
> what we do right now with the hard-coded enums?
> 
>                        Pekka

  Yes, that is what we do, and it seems to be the "right" way how sane bios
should behave, same time (i might be wrong since I didn't checked this
part of kernel sources) the kernel might scan memory for pci configs and
read pis/irq directly from there, I think this way kernel workaround broken
bioses but now sure if we should rely on this feature.

-- 
Thanks,
  Cyrill

  reply	other threads:[~2011-05-06  8:08 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-06  7:26 [PATCH 1/2] kvm tools: Fix IRQ assignments Sasha Levin
2011-05-06  7:26 ` [PATCH 2/2] kvm tools: Simplify search for root device Sasha Levin
2011-05-07  8:41   ` Pekka Enberg
2011-05-07  8:46     ` Sasha Levin
2011-05-07  8:49     ` Prasad Joshi
2011-05-06  7:29 ` [PATCH 1/2] kvm tools: Fix IRQ assignments Pekka Enberg
2011-05-06  7:31   ` Cyrill Gorcunov
2011-05-06  7:36   ` Sasha Levin
2011-05-06  7:43     ` Pekka Enberg
2011-05-06  8:01       ` Sasha Levin
2011-05-06  8:04         ` Pekka Enberg
2011-05-06  8:08           ` Cyrill Gorcunov [this message]
2011-05-06  8:10             ` Pekka Enberg
2011-05-06  8:16               ` Cyrill Gorcunov
2011-05-06  7:47     ` Cyrill Gorcunov
2011-05-06  7:59       ` Pekka Enberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DC3AC68.10208@gmail.com \
    --to=gorcunov@gmail.com \
    --cc=asias.hejun@gmail.com \
    --cc=kvm@vger.kernel.org \
    --cc=levinsasha928@gmail.com \
    --cc=mingo@elte.hu \
    --cc=penberg@kernel.org \
    --cc=prasadjoshi124@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.