On Wed, Jul 13, 2016 at 9:43 AM, Paolo Bonzini wrote:
>
>
> On 12/07/2016 19:51, Roman Pen wrote:
>> +if (s->io_q.in_flight >= MAX_EVENTS)
>> +break;
>> QSIMPLEQ_FOREACH(aiocb, &s->io_q.pending, next) {
>> iocbs[len++] = &aiocb->iocb;
>> -if (l
On 12/07/2016 19:51, Roman Pen wrote:
> +if (s->io_q.in_flight >= MAX_EVENTS)
> +break;
> QSIMPLEQ_FOREACH(aiocb, &s->io_q.pending, next) {
> iocbs[len++] = &aiocb->iocb;
> -if (len == MAX_QUEUED_IO) {
> +if (s->io_q.in_flight + le
On Tue, 07/12 19:51, Roman Pen wrote:
> Invoking io_setup(MAX_EVENTS) we ask kernel to create ring buffer for us
> with specified number of events. But kernel ring buffer allocation logic
> is a bit tricky (ring buffer is page size aligned + some percpu allocation
> are required) so eventually mor
Invoking io_setup(MAX_EVENTS) we ask kernel to create ring buffer for us
with specified number of events. But kernel ring buffer allocation logic
is a bit tricky (ring buffer is page size aligned + some percpu allocation
are required) so eventually more than requested events number is allocated.