OPTION(bdev_debug_inflight_ios, OPT_BOOL, false)
OPTION(bdev_inject_crash, OPT_INT, 0) // if N>0, then ~ 1/N IOs will complete before we crash on flush.
+OPTION(bdev_aio, OPT_BOOL, true)
+OPTION(bdev_aio_poll_ms, OPT_INT, 250) // milliseconds
+OPTION(bdev_aio_max_queue_depth, OPT_INT, 4096)
OPTION(bluefs_alloc_size, OPT_U64, 1048576)
OPTION(bluefs_max_prefetch, OPT_U64, 1048576)
OPTION(bluestore_overlay_max, OPT_INT, 0)
OPTION(bluestore_open_by_handle, OPT_BOOL, true)
OPTION(bluestore_o_direct, OPT_BOOL, true)
-OPTION(bluestore_aio, OPT_BOOL, true)
-OPTION(bluestore_aio_poll_ms, OPT_INT, 250) // milliseconds
-OPTION(bluestore_aio_max_queue_depth, OPT_INT, 4096)
OPTION(kstore_max_ops, OPT_U64, 512)
OPTION(kstore_max_bytes, OPT_U64, 64*1024*1024)
size(0), block_size(0),
fs(NULL), aio(false), dio(false),
debug_lock("BlockDevice::debug_lock"),
- aio_queue(g_conf->bluestore_aio_max_queue_depth),
+ aio_queue(g_conf->bdev_aio_max_queue_depth),
aio_callback(cb),
aio_callback_priv(cbpriv),
aio_stop(false),
}
dio = true;
#ifdef HAVE_LIBAIO
- aio = g_conf->bluestore_aio;
+ aio = g_conf->bdev_aio;
+ if (!aio) {
+ assert(0 == "non-aio not supported");
+ }
#endif
int r = _lock();
int BlockDevice::_aio_start()
{
- if (g_conf->bluestore_aio) {
+ if (g_conf->bdev_aio) {
dout(10) << __func__ << dendl;
int r = aio_queue.init();
if (r < 0)
void BlockDevice::_aio_stop()
{
- if (g_conf->bluestore_aio) {
+ if (g_conf->bdev_aio) {
dout(10) << __func__ << dendl;
aio_stop = true;
aio_thread.join();
dout(40) << __func__ << " polling" << dendl;
int max = 16;
FS::aio_t *aio[max];
- int r = aio_queue.get_next_completed(g_conf->bluestore_aio_poll_ms,
+ int r = aio_queue.get_next_completed(g_conf->bdev_aio_poll_ms,
aio, max);
if (r < 0) {
derr << __func__ << " got " << cpp_strerror(r) << dendl;