All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@siemens.com>
To: Alex Williamson <alex.williamson@redhat.com>,
	Flypen CloudMe <flypen@gmail.com>
Cc: kvm@vger.kernel.org
Subject: Re: Why doesn't Intel e1000 NIC work correctly in Windows XP?
Date: Wed, 15 Jun 2011 11:31:02 +0200	[thread overview]
Message-ID: <4DF87BD6.4010002@siemens.com> (raw)
In-Reply-To: <4DF86783.4060608@siemens.com>

On 2011-06-15 10:04, Jan Kiszka wrote:
> On 2011-06-15 02:54, Alex Williamson wrote:
>> On Tue, 2011-06-14 at 16:11 +0800, Flypen CloudMe wrote:
>>> Hi,
>>>
>>> I use Redhat Enterprise Linux 6, and use the KVM that is released by
>>> Redhat officially. The kernel version is 2.6.32-71.el6.x86_64.
>>>
>>> It seems that the IRQs are conflicted after reboot. The NIC and the
>>> SCSI controller have the same IRQ number. If I re-install the NIC
>>> driver, the IRQ number of the NIC will be assigned another value, then
>>> it can work normally. Do we have a way to let the NIC and the SCSI
>>> controller have different IRQ number in VM?
>>
>> I'll see if I can reproduce and figure anything out.  Windows XP isn't a
>> guest we concentrate on, especially with device assignment.  Are you
>> using an AMD or Intel host system?  Does the same thing happen if you
>> run the XP guest on an IDE controller?  It would be helpful to post the
>> guest configuration, command line used or libvirt xml.  Also, you might
>> try latest upstream qemu-kvm to see if the problem still exists.
> 
> Maybe tracking of the INTx route across reset fails. Does this help?
> 
> diff --git a/hw/device-assignment.c b/hw/device-assignment.c
> index 7eeecad..0693141 100644
> --- a/hw/device-assignment.c
> +++ b/hw/device-assignment.c
> @@ -1719,6 +1719,8 @@ static void reset_assigned_device(DeviceState *dev)
>       * disconnected from the PCI bus. This avoids further DMA transfers.
>       */
>      assigned_dev_pci_write_config(pci_dev, PCI_COMMAND, 0, 2);
> +
> +    assign_irq(adev);
>  }
>  
>  static int assigned_initfn(struct PCIDevice *pci_dev)
> 

Nonsense, can't t make a difference as the PIIX3 resets the routing to
disable - which device-assignment does not deal with, but that's unrelated.

Try assigning a different slot to the passed-through adapter and the
lsi. For me it helped to put the lsi on one slot behind the
auto-assigned (-device lsi,addr=5).

I guess classic device assignment cannot support INTx sharing as the
kernel IRQ injection path does not inform user space about the device
state /wrt IRQs. Should be catch and reject this, or try to fix it up be
moving the assigned device around, Alex?

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

  reply	other threads:[~2011-06-15  9:31 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BANLkTikfV+LBZTxNWdvd_ts-7DBSei3jRA@mail.gmail.com>
2011-06-14  2:15 ` Fwd: Why doesn't Intel e1000 NIC work correctly in Windows XP? Flypen CloudMe
2011-06-14  3:23   ` Alex Williamson
2011-06-14  8:11     ` Flypen CloudMe
2011-06-14 15:30       ` Decker, Schorschi
2011-06-15  0:54       ` Alex Williamson
2011-06-15  8:04         ` Jan Kiszka
2011-06-15  9:31           ` Jan Kiszka [this message]
2011-06-15 18:42             ` Alex Williamson
2011-06-19 12:29               ` Flypen CloudMe
2011-06-20 10:17                 ` Dor Laor
2011-06-20 14:32                 ` Alex Williamson
2011-06-20 16:07                   ` Jan Kiszka

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=4DF87BD6.4010002@siemens.com \
    --to=jan.kiszka@siemens.com \
    --cc=alex.williamson@redhat.com \
    --cc=flypen@gmail.com \
    --cc=kvm@vger.kernel.org \
    /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.