[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-comment] Re: [virtio] Re: [PATCH v10 04/10] admin: introduce virtio admin virtqueues
On Thu, Mar 09, 2023 at 08:55:15AM -0500, Michael S. Tsirkin wrote: > On Thu, Mar 09, 2023 at 07:35:42AM -0500, Stefan Hajnoczi wrote: > > On Wed, Mar 08, 2023 at 12:21:46PM -0500, Michael S. Tsirkin wrote: > > > On Wed, Mar 08, 2023 at 12:15:23PM -0500, Stefan Hajnoczi wrote: > > > > > > > > Or we could say that admin commands must complete within bounded time, > > > > > > > > but I'm not sure that is implementable for some device types like > > > > > > > > virtio-blk, virtio-scsi, and virtiofs. > > > > > > > > > > > > > > No we can't. > > > > > > > Some commands, for example FW upgrade can take 10 minutes and it's perfectly > > > > > > > fine. Other commands like setting feature bit will take 1 millisec. > > > > > > > Each device implements commands in a different internal logic so we can't > > > > > > > expect to complete after X time. > > > > > > > > > > > > When I say bounded time, I mean that it finishes in a finite amount of > > > > > > time. I'm not saying there is a specific time X that all device > > > > > > implementations must satisfy. Unbounded means it might never finish. > > > > > > > > > > There might be a chance that any command for any virtio device type will > > > > > never finish. Nothing new here in the adminq. > > > > > > > > > > what one can do is to set a timeout for himself and if this timeout expire - > > > > > check the device status. If it needs_reset - do a reset. if status is ok, > > > > > then wait some more time. > > > > > After X retries, unmap buffers or reset the adminq. > > > > > > > > Michael: What effect does resetting the group owner device have on group > > > > member devices? > > > > > > virtio level reset? It's a good question. I'd expect them all to be > > > reset no? > > > > > > > I'm concerned that this approach disrupts all group member devices. For > > > > example, you try to add a new device but the command hangs. In order to > > > > recover you now have to reset the group owner device and this breaks all > > > > the group member devices. > > > > > > > > > I agree. How about a VQ level reset though? Seems like exactly > > > what's needed here? > > > > Yes, a new virtqueue-level reset feature would take care of this case. > > > > Stefan > > Why would we need a new one? We already have VIRTIO_F_RING_RESET. I was unaware :). Stefan
Attachment:
signature.asc
Description: PGP signature
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]