Re: [PATCH] kvm tools: Process virito blk requests in separate thread

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 5, 2012 at 4:03 AM, Asias He <asias.hejun@xxxxxxxxx> wrote:
> On Tue, Jun 5, 2012 at 12:07 AM, Sasha Levin <levinsasha928@xxxxxxxxx> wrote:
>> On Mon, 2012-06-04 at 23:40 +0800, Asias He wrote:
>>> All blk requests are processed in notify_vq() which is in the context of
>>> ioeventfd thread: ioeventfd__thread(). The processing in notify_vq() may
>>> take a long time to complete and all devices share the single ioeventfd
>>> thead, so this might block other device's notify_vq() being called and
>>> starve other devices.
>>
>> We're using native vectored AIO for for processing blk requests, so I'm
>> not certain if theres any point in giving the blk device it's own thread
>> for handling that.
>
> We discussed this last year. Search the same subject. Pekka suggested
> improving the thead pool API to support dedicated thead support. I'd
> prefer to merge this patch for now since that support is till not
> there.
>
> Recently, I added some debug code to see how many loops
> virtio_blk_do_io() will do until it finishes the processing.
> I am seeing something like this:
>
>   Info: virtio_blk_do_io max_nr_loop=8427
>
> The processing takes a very long time.

Ingo, any comments on the thread-per-blk-device model?
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux