{
  "subsystems": [
    {
      "subsystem": "accel",
      "config": null
    },
    {
      "subsystem": "interface",
      "config": null
    },
    {
      "subsystem": "net_framework",
      "config": null
    },
    {
      "subsystem": "bdev",
      "config": [
        {
          "params": {
            "bdev_io_pool_size": 65536,
            "bdev_io_cache_size": 256
          },
          "method": "bdev_set_options"
        },
        {
          "params": {
            "base_bdev": "Nvme0n1",
            "split_size_mb": 0,
            "split_count": 8
          },
          "method": "bdev_split_create"
        },
        {
          "params": {
            "retry_count": 4,
            "timeout_us": 0,
            "nvme_adminq_poll_period_us": 100000,
            "nvme_ioq_poll_period_us": 0,
            "action_on_timeout": "none"
          },
          "method": "bdev_nvme_set_options"
        },
        {
          "params": {
            "trtype": "PCIe",
            "name": "Nvme0",
            "traddr": "0000:00:04.0"
          },
          "method": "bdev_nvme_attach_controller"
        },
        {
          "params": {
            "enable": true,
            "period_us": 10000000
          },
          "method": "bdev_nvme_set_hotplug"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc0"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc1"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc2"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc3"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc4"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc5"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc6"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 4096,
            "num_blocks": 32768,
            "name": "Malloc7"
          },
          "method": "bdev_malloc_create"
        },
        {
          "params": {
            "block_size": 2048,
            "name": "AIO0",
            "filename": "/tmp/sample_aio0"
          },
          "method": "bdev_aio_create"
        },
        {
          "params": {
            "block_size": 2048,
            "name": "AIO1",
            "filename": "/tmp/sample_aio1"
          },
          "method": "bdev_aio_create"
        },
        {
          "params": {
            "block_size": 2048,
            "name": "AIO2",
            "filename": "/tmp/sample_aio2"
          },
          "method": "bdev_aio_create"
        },
        {
          "params": {
            "block_size": 2048,
            "name": "AIO3",
            "filename": "/tmp/sample_aio1"
          },
          "method": "bdev_aio_create"
        },
        {
          "params": {
            "block_size": 2048,
            "name": "AIO4",
            "filename": "/tmp/sample_aio2"
          },
          "method": "bdev_aio_create"
        },
        {
          "params": {
            "name": "Pmem0",
            "pmem_file": "/tmp/sample_pmem"
          },
          "method": "bdev_pmem_create"
        }
      ]
    },
    {
      "subsystem": "scsi",
      "config": null
    },
    {
      "subsystem": "nvmf",
      "config": [
        {
          "params": {
            "acceptor_poll_rate": 10000
          },
          "method": "nvmf_set_config"
        },
        {
          "params": {
            "max_subsystems": 1024
          },
          "method": "nvmf_set_max_subsystems"
        },
        {
          "params": {
            "max_namespaces": 20,
            "allow_any_host": false,
            "serial_number": "SPDK00000000000001",
            "model_number": "SPDK_Controller1",
            "nqn": "nqn.2016-06.io.spdk:cnode1"
          },
          "method": "nvmf_create_subsystem"
        },
        {
          "params": {
            "listen_address": {
              "adrfam": "IPv4",
              "traddr": "10.0.2.15",
              "trsvcid": "4420",
              "trtype": "RDMA"
            },
            "nqn": "nqn.2016-06.io.spdk:cnode1"
          },
          "method": "nvmf_subsystem_add_listener"
        },
        {
          "params": {
            "host": "nqn.2016-06.io.spdk:init",
            "nqn": "nqn.2016-06.io.spdk:cnode1"
          },
          "method": "nvmf_subsystem_add_host"
        },
        {
          "params": {
            "namespace": {
              "bdev_name": "Nvme0n1p5",
              "nsid": 1
            },
            "nqn": "nqn.2016-06.io.spdk:cnode1"
          },
          "method": "nvmf_subsystem_add_ns"
        },
        {
          "params": {
            "namespace": {
              "bdev_name": "Nvme0n1p6",
              "nsid": 2
            },
            "nqn": "nqn.2016-06.io.spdk:cnode1"
          },
          "method": "nvmf_subsystem_add_ns"
        },
        {
          "params": {
            "allow_any_host": false,
            "serial_number": "SPDK00000000000002",
            "model_number": "SPDK_Controller2",
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          },
          "method": "nvmf_create_subsystem"
        },
        {
          "method": "nvmf_subsystem_add_listener",
          "params": {
            "listen_address": {
              "adrfam": "IPv4",
              "traddr": "10.0.2.15",
              "trsvcid": "4421",
              "trtype": "RDMA"
            },
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          }
        },
        {
          "method": "nvmf_subsystem_add_host",
          "params": {
            "host": "nqn.2016-06.io.spdk:init",
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          }
        },
        {
          "method": "nvmf_subsystem_add_ns",
          "params": {
            "namespace": {
              "bdev_name": "Malloc1",
              "nsid": 1
            },
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          }
        },
        {
          "method": "nvmf_subsystem_add_ns",
          "params": {
            "namespace": {
              "bdev_name": "Malloc2",
              "nsid": 2
            },
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          }
        },
        {
          "method": "nvmf_subsystem_add_ns",
          "params": {
            "namespace": {
              "bdev_name": "AIO0",
              "nsid": 3
            },
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          }
        },
        {
          "method": "nvmf_subsystem_add_ns",
          "params": {
            "namespace": {
              "bdev_name": "AIO1",
              "nsid": 4
            },
            "nqn": "nqn.2016-06.io.spdk:cnode2"
          }
        }
      ]
    },
    {
      "subsystem": "nbd",
      "config": []
    },
    {
      "subsystem": "vhost",
      "config": [
        {
          "params": {
            "cpumask": "1",
            "ctrlr": "naa.vhost.0"
          },
          "method": "vhost_create_scsi_controller"
        },
        {
          "params": {
            "scsi_target_num": 0,
            "bdev_name": "Malloc4",
            "ctrlr": "naa.vhost.0"
          },
          "method": "vhost_scsi_controller_add_target"
        },
        {
          "params": {
            "scsi_target_num": 1,
            "bdev_name": "AIO3",
            "ctrlr": "naa.vhost.0"
          },
          "method": "vhost_scsi_controller_add_target"
        },
        {
          "params": {
            "scsi_target_num": 2,
            "bdev_name": "Nvme0n1p2",
            "ctrlr": "naa.vhost.0"
          },
          "method": "vhost_scsi_controller_add_target"
        },
        {
          "params": {
            "cpumask": "1",
            "ctrlr": "naa.vhost.1"
          },
          "method": "vhost_create_scsi_controller"
        },
        {
          "params": {
            "scsi_target_num": 0,
            "bdev_name": "AIO4",
            "ctrlr": "naa.vhost.1"
          },
          "method": "vhost_scsi_controller_add_target"
        },
        {
          "params": {
            "dev_name": "Malloc6",
            "readonly": true,
            "ctrlr": "vhost.1",
            "cpumask": "1"
          },
          "method": "vhost_create_blk_controller"
        },
        {
          "params": {
            "dev_name": "Malloc5",
            "readonly": false,
            "ctrlr": "naa.vhost.2",
            "cpumask": "1"
          },
          "method": "vhost_create_blk_controller"
        },
        {
          "params": {
            "cpumask": "1",
            "io_queues": 2,
            "ctrlr": "naa.vhost.3"
          },
          "method": "vhost_create_nvme_controller"
        },
        {
          "params": {
            "bdev_name": "Nvme0n1p0",
            "ctrlr": "naa.vhost.3"
          },
          "method": "vhost_nvme_controller_add_ns"
        },
        {
          "params": {
            "bdev_name": "Nvme0n1p1",
            "ctrlr": "naa.vhost.3"
          },
          "method": "vhost_nvme_controller_add_ns"
        }
      ]
    },
    {
      "subsystem": "iscsi",
      "config": [
        {
          "params": {
            "allow_duplicated_isid": true,
            "default_time2retain": 20,
            "mutual_chap": false,
            "require_chap": false,
            "immediate_data": true,
            "node_base": "iqn.2016-06.io.spdk",
            "nop_in_interval": 10,
            "max_connections_per_session": 2,
            "first_burst_length": 8192,
            "max_queue_depth": 64,
            "nop_timeout": 30,
            "chap_group": 1,
            "max_sessions": 16,
            "error_recovery_level": 0,
            "disable_chap": false,
            "auth_file": "/usr/local/etc/spdk/auth.conf",
            "default_time2wait": 2
          },
          "method": "iscsi_set_options"
        },
        {
          "params": {
            "portals": [
              {
                "cpumask": "0x1",
                "host": "127.0.0.1",
                "port": "4000"
              },
              {
                "cpumask": "0x1",
                "host": "127.0.0.1",
                "port": "4001"
              }
            ],
            "tag": 1
          },
          "method": "iscsi_create_portal_group"
        },
        {
          "params": {
            "initiators": [
              "ANY"
            ],
            "tag": 1,
            "netmasks": [
              "127.0.0.1/32"
            ]
          },
          "method": "iscsi_create_initiator_group"
        },
        {
          "params": {
            "luns": [
              {
                "lun_id": 0,
                "bdev_name": "Malloc0"
              },
              {
                "lun_id": 1,
                "bdev_name": "AIO2"
              },
              {
                "lun_id": 2,
                "bdev_name": "AIO3"
              },
              {
                "lun_id": 3,
                "bdev_name": "AIO4"
              }
            ],
            "mutual_chap": false,
            "name": "iqn.2016-06.io.spdk:disk1",
            "alias_name": "Data Disk1",
            "require_chap": false,
            "chap_group": 1,
            "pg_ig_maps": [
              {
                "ig_tag": 1,
                "pg_tag": 1
              }
            ],
            "data_digest": false,
            "disable_chap": false,
            "header_digest": false,
            "queue_depth": 64
          },
          "method": "iscsi_create_target_node"
        },
        {
          "params": {
            "luns": [
              {
                "lun_id": 0,
                "bdev_name": "Nvme0n1p3"
              }
            ],
            "mutual_chap": false,
            "name": "iqn.2016-06.io.spdk:disk2",
            "alias_name": "Data Disk2",
            "require_chap": false,
            "chap_group": 1,
            "pg_ig_maps": [
              {
                "ig_tag": 1,
                "pg_tag": 1
              }
            ],
            "data_digest": false,
            "disable_chap": false,
            "header_digest": false,
            "queue_depth": 32
          },
          "method": "iscsi_create_target_node"
        }
      ]
    }
  ]
}
