On 2014-07-10 17:11, Jeff Moyer wrote:
Benjamin LaHaise <bcrl@xxxxxxxxx> writes:
[ 186.339064] ioctx_alloc: nr_events=-2 aio_max_nr=65536
[ 186.339065] ioctx_alloc: nr_events=-2 aio_max_nr=65536
[ 186.339067] ioctx_alloc: nr_events=-2 aio_max_nr=65536
[ 186.339068] ioctx_alloc: nr_events=-2 aio_max_nr=65536
[ 186.339069] ioctx_alloc: nr_events=-2 aio_max_nr=65536
Something is horribly wrong here. There is no way that value for nr_events
should be passed in to ioctx_alloc(). This implies that userland is calling
io_setup() with an impossibly large value for nr_events. Can you post the
actual diff for your fs/aio.c relative to linus' tree?
fio does exactly this! it passes INT_MAX.
That's correct, I had actually forgotten about this. It was a change
made a few years back, in correlation with the aio optimizations posted
then, basically telling aio to ignore that silly (and broken) user ring.
--
Jens Axboe
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html