On 12/7/18 3:00 PM, Jens Axboe wrote:
> On 12/7/18 2:59 PM, Jens Axboe wrote:
>> On 12/7/18 2:58 PM, Jens Axboe wrote:
>>> On 12/7/18 12:35 PM, Jens Axboe wrote:
>>>> On 12/7/18 12:34 PM, Jeff Moyer wrote:
>>>>> Jens Axboe <[email protected]> writes:
>>>>>
>>>>>> BTW, quick guess is that it doesn't work so well with fixed buffers, as 
>>>>>> that
>>>>>> hasn't been tested. You could try and remove IOCTX_FLAG_FIXEDBUFS from 
>>>>>> the
>>>>>> test program and see if that works.
>>>>>
>>>>> That results in a NULL pointer dereference.  I'll stick to block device
>>>>> testing for now.  :)
>>>>
>>>> Good plan :-)
>>>
>>> Took a look and fixed it up, my aio-poll branch has a fixup patch and I
>>> also updated an updated aio-ring.c in the same location.
>>>
>>> Tested XFS with polling on and off, works for me.
>>>
>>> Will take a look at FIXEDBUFS now. Note that aio-ring has some parameters
>>> at the top:
>>>
>>> static int polled = 1;          /* use IO polling */
>>> static int fixedbufs = 0;       /* use fixed user buffers */
>>>
>>> that you can change to try the various modes. Don't use fixedbufs = 1
>>> with XFS just yet :-)
>>
>> Actually, with the other fixups, that works now too. At least in a quick
>> test...
> 
> And no, it does not ;-). Will take a look, we're dropping page counts where
> we should not be.

Forgot to add the BIO_HOLD_PAGES check in iomap, it works now. Pushed out
that fix, will also need folding.

-- 
Jens Axboe

Reply via email to