[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <286AC319A985734F985F78AFA26841F73DEEC8DF@shsmsx102.ccr.corp.intel.com>
Date: Mon, 31 Dec 2018 06:03:51 +0000
From: "Wang, Wei W" <wei.w.wang@...el.com>
To: 'Halil Pasic' <pasic@...ux.ibm.com>
CC: Christian Borntraeger <borntraeger@...ibm.com>,
"virtio-dev@...ts.oasis-open.org" <virtio-dev@...ts.oasis-open.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"virtualization@...ts.linux-foundation.org"
<virtualization@...ts.linux-foundation.org>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"mst@...hat.com" <mst@...hat.com>,
"cohuck@...hat.com" <cohuck@...hat.com>,
"pbonzini@...hat.com" <pbonzini@...hat.com>,
"dgilbert@...hat.com" <dgilbert@...hat.com>
Subject: RE: [PATCH v1 0/2] Virtio: fix some vq allocation issues
On Sunday, December 30, 2018 2:06 PM, Halil Pasic wrote:
>
> I guess you are the first one trying to read virtio config from within interrupt
> context. AFAICT this never worked.
I'm not sure about "never worked". It seems to work well with virtio-pci.
But looking forward to hearing a solid reason why reading config inside
the handler is forbidden (if that's true).
> About what happens. The apidoc of ccw_device_start() says it needs to be
> called with the ccw device lock held, so ccw_io_helper() tries to take it (since
> forever I guess). OTOH do_cio_interrupt() takes the subchannel lock and
> io_subchannel_initialize_dev() makes the ccw device lock be the subchannel
> lock. That means when one tries to get virtio config form within a cio
> interrupt context we deadlock, because we try to take a lock we already have.
>
> That said, I don't think this limitation is by design (i.e. intended).
> Maybe Connie can help us with that question. AFAIK we have nothing
> documented regarding this (neither that can nor can't).
>
> Obviously, there are multiple ways around this problem, and at the moment
> I can't tell which would be my preferred one.
Yes, it's also not difficult to tweak the virtio-balloon code to avoid that issue.
But if that's just an issue with ccw itself, I think it's better to tweak ccw and
remain virtio-balloon unchanged.
Best,
Wei
Powered by blists - more mailing lists