From: Christian Borntraeger <borntraeger-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
To: Rusty Russell <rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
Cc: kvm-devel
<kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org
Subject: Re: virtio_net and SMP guests
Date: Thu, 10 Jan 2008 13:37:40 +0100 [thread overview]
Message-ID: <200801101337.40433.borntraeger@de.ibm.com> (raw)
In-Reply-To: <200712181751.24692.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
Am Dienstag, 18. Dezember 2007 schrieb Rusty Russell:
> To me this points to doing interrupt suppression a different way. If we
> have a ->disable_cb() virtio function, and call it before we call
> netif_rx_schedule, does that fix it?
The fix looks good and I agree with it.
There is one problem that I try to find for some days, but the following
BUG_ON triggers:
static void vring_disable_cb(struct virtqueue *_vq)
{
struct vring_virtqueue *vq = to_vvq(_vq);
START_USE(vq);
----> BUG_ON(vq->vring.avail->flags & VRING_AVAIL_F_NO_INTERRUPT);
vq->vring.avail->flags |= VRING_AVAIL_F_NO_INTERRUPT;
END_USE(vq);
}
The funny thing is, that this bit is correct during probe but changes later
before open. It seems that there is still something fishy on s390 and
virtio.
I looked several times at the virtio_ring code and it really seems to be ok.
Any ideas?
Christian
-------- the oops that I cannot explain -------------
kernel BUG at /space/kvm/drivers/virtio/virtio_ring.c:232!
illegal operation: 0001 [#1]
Modules linked in:
CPU: 0 Not tainted
Process ip (pid: 1583, task: 000000000eee7038, ksp: 000000000ec4beb8)
Krnl PSW : 0704300180000000 000000000045dcd4 (vring_disable_cb+0x30/0x34)
R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:3 PM:0 EA:3
Krnl GPRS: 000003ff00000002 0000000000000001 0000000010001800
000000000045dca4
000000000f054800 0000000000595a80 0000000000000000
0000000000000000
0000000000897768 000003ff00001002 000000000f09c920
000000000ec4bbf8
000000000f09c900 0000000000596b20 000000000045c9c6
000000000ec4bbf8
Krnl Code: 000000000045dcc8: e3b0b0700004 lg %r11,112(%r11)
000000000045dcce: 07fe bcr 15,%r14
000000000045dcd0: a7f40001 brc 15,45dcd2
>000000000045dcd4: a7f4fff6 brc 15,45dcc0
000000000045dcd8: eb7ff0500024 stmg %r7,%r15,80(%r15)
000000000045dcde: a7f13e00 tmll %r15,15872
000000000045dce2: b90400ef lgr %r14,%r15
000000000045dce6: a7840001 brc 8,45dce8
Call Trace:
([<000000000045c95e>] virtnet_open+0x32/0x114)
[<000000000048cbac>] dev_open+0xb0/0xe8
[<000000000048b6a2>] dev_change_flags+0x156/0x1cc
[<00000000004ead02>] devinet_ioctl+0x5ae/0x728
[<00000000004eb564>] inet_ioctl+0xa4/0xf0
[<00000000004798dc>] sock_ioctl+0x90/0x2e4
[<00000000001b8bd2>] do_ioctl+0x4a/0xd4
[<00000000001b8cda>] vfs_ioctl+0x7e/0x3c8
[<00000000001b90b6>] sys_ioctl+0x92/0xa4
[<0000000000112e7c>] sysc_noemu+0x10/0x16
[<000002000012c7e6>] 0x2000012c7e6
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
next prev parent reply other threads:[~2008-01-10 12:37 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-14 12:12 virtio_net and SMP guests Christian Borntraeger
[not found] ` <200712141312.05562.borntraeger-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-12-16 11:55 ` Dor Laor
2007-12-18 6:51 ` Rusty Russell
[not found] ` <200712181751.24692.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2007-12-23 23:19 ` Dor Laor
[not found] ` <476EECF7.9000204-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-12-24 0:54 ` Rusty Russell
[not found] ` <200712241154.20885.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2007-12-25 12:22 ` Dor Laor
[not found] ` <4770F60D.4010904-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-12-26 0:48 ` Rusty Russell
2008-01-10 12:37 ` Christian Borntraeger [this message]
[not found] ` <200801101337.40433.borntraeger-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2008-01-10 15:39 ` Christian Borntraeger
2008-01-10 15:51 ` Christian Borntraeger
2008-01-11 9:53 ` Rusty Russell
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=200801101337.40433.borntraeger@de.ibm.com \
--to=borntraeger-ta70fqpds9bqt0dzr+alfa@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org \
--cc=virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox