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 <axboe@xxxxxxxxx> 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. -- Jens Axboe