scripts/vagrant: Allow to configure active metadata size for nvme
The argument is treated as bool and the actual value of the metadata size is set to 64B. https://trello.com/c/neiHoXlr/448-add-extra-nvme-drive-to-vms-to-accommodate-for-new-ftl-tests Signed-off-by: Michal Berger <michal.berger@intel.com> Change-Id: Icd96903a5fa186373de1c647e3885f0162ffd579 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14007 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Dong Yi <dongx.yi@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
parent
8b6fc34939
commit
c4acef02aa
5
scripts/vagrant/Vagrantfile
vendored
5
scripts/vagrant/Vagrantfile
vendored
@ -135,6 +135,8 @@ def setup_nvme_disk(libvirt, disk, index)
|
|||||||
nvme_cmbs=(ENV['NVME_CMB'] || "").split(',')
|
nvme_cmbs=(ENV['NVME_CMB'] || "").split(',')
|
||||||
nvme_pmrs=(ENV['NVME_PMR'] || "").split(',')
|
nvme_pmrs=(ENV['NVME_PMR'] || "").split(',')
|
||||||
nvme_zns=(ENV['NVME_ZNS'] || "").split(',')
|
nvme_zns=(ENV['NVME_ZNS'] || "").split(',')
|
||||||
|
nvme_ms=(ENV['NVME_MS'] || "").split(',')
|
||||||
|
|
||||||
|
|
||||||
namespace_disks = []
|
namespace_disks = []
|
||||||
pmr_cmdline = ""
|
pmr_cmdline = ""
|
||||||
@ -187,10 +189,11 @@ def setup_nvme_disk(libvirt, disk, index)
|
|||||||
next
|
next
|
||||||
end
|
end
|
||||||
zoned = nvme_zns[index].nil? ? "false" : "true"
|
zoned = nvme_zns[index].nil? ? "false" : "true"
|
||||||
|
ms = nvme_ms[index].nil? ? "" : ",ms=64"
|
||||||
libvirt.qemuargs :value => "-drive"
|
libvirt.qemuargs :value => "-drive"
|
||||||
libvirt.qemuargs :value => "format=raw,file=#{disk},if=none,id=#{nvme_disk_id}-drive#{nsid}"
|
libvirt.qemuargs :value => "format=raw,file=#{disk},if=none,id=#{nvme_disk_id}-drive#{nsid}"
|
||||||
libvirt.qemuargs :value => "-device"
|
libvirt.qemuargs :value => "-device"
|
||||||
libvirt.qemuargs :value => "nvme-ns,drive=#{nvme_disk_id}-drive#{nsid},bus=#{nvme_disk_id},nsid=#{nsid + 1},zoned=#{zoned},logical_block_size=4096,physical_block_size=4096"
|
libvirt.qemuargs :value => "nvme-ns,drive=#{nvme_disk_id}-drive#{nsid},bus=#{nvme_disk_id},nsid=#{nsid + 1},zoned=#{zoned},logical_block_size=4096,physical_block_size=4096#{ms}"
|
||||||
}
|
}
|
||||||
|
|
||||||
end
|
end
|
||||||
|
@ -30,11 +30,12 @@ display_help() {
|
|||||||
echo " If no -b option is specified then this option defaults to emulating single"
|
echo " If no -b option is specified then this option defaults to emulating single"
|
||||||
echo " NVMe with 1 namespace and assumes path: /var/lib/libvirt/images/nvme_disk.img"
|
echo " NVMe with 1 namespace and assumes path: /var/lib/libvirt/images/nvme_disk.img"
|
||||||
echo " -b option can be used multiple times for attaching multiple files to the VM"
|
echo " -b option can be used multiple times for attaching multiple files to the VM"
|
||||||
echo " Parameters for -b option: <path>,<type>,<ns_path1[:ns_path1:...]>,<cmb>,<pmr_file[:pmr_size]>"
|
echo " Parameters for -b option: <path>,<type>,<ns_path1[:ns_path1:...]>,<cmb>,<pmr_file[:pmr_size]>,<ms>"
|
||||||
echo " Available types: nvme"
|
echo " Available types: nvme"
|
||||||
echo " Default pmr size: 16M"
|
echo " Default pmr size: 16M"
|
||||||
echo " Default cmb: false"
|
echo " Default cmb: false"
|
||||||
echo " type, ns_path, cmb and pmr can be empty"
|
echo " Default ms: none"
|
||||||
|
echo " type, ns_path, cmb, pmr and ms can be empty"
|
||||||
echo " -c Create all above disk, default 0"
|
echo " -c Create all above disk, default 0"
|
||||||
echo " -H Use hugepages for allocating VM memory. Only for libvirt provider. Default: false."
|
echo " -H Use hugepages for allocating VM memory. Only for libvirt provider. Default: false."
|
||||||
echo " -u Use password authentication to the VM instead of SSH keys."
|
echo " -u Use password authentication to the VM instead of SSH keys."
|
||||||
@ -193,7 +194,7 @@ if [ -z "$NVME_FILE" ]; then
|
|||||||
else
|
else
|
||||||
TMP=""
|
TMP=""
|
||||||
for args in $NVME_FILE; do
|
for args in $NVME_FILE; do
|
||||||
while IFS=, read -r path type namespace cmb pmr zns; do
|
while IFS=, read -r path type namespace cmb pmr zns ms; do
|
||||||
TMP+="$path,"
|
TMP+="$path,"
|
||||||
if [ -z "$type" ]; then
|
if [ -z "$type" ]; then
|
||||||
type="nvme"
|
type="nvme"
|
||||||
@ -203,6 +204,7 @@ else
|
|||||||
NVME_ZNS+="$zns,"
|
NVME_ZNS+="$zns,"
|
||||||
NVME_DISKS_TYPE+="$type,"
|
NVME_DISKS_TYPE+="$type,"
|
||||||
NVME_DISKS_NAMESPACES+="$namespace,"
|
NVME_DISKS_NAMESPACES+="$namespace,"
|
||||||
|
NVME_MS+="$ms,"
|
||||||
if [ ${NVME_AUTO_CREATE} = 1 ]; then
|
if [ ${NVME_AUTO_CREATE} = 1 ]; then
|
||||||
$SPDK_DIR/scripts/vagrant/create_nvme_img.sh -n $path
|
$SPDK_DIR/scripts/vagrant/create_nvme_img.sh -n $path
|
||||||
fi
|
fi
|
||||||
@ -225,6 +227,7 @@ if [ ${VERBOSE} = 1 ]; then
|
|||||||
echo NVME_CMB=$NVME_CMB
|
echo NVME_CMB=$NVME_CMB
|
||||||
echo NVME_PMR=$NVME_PMR
|
echo NVME_PMR=$NVME_PMR
|
||||||
echo NVME_ZNS=$NVME_ZNS
|
echo NVME_ZNS=$NVME_ZNS
|
||||||
|
echo NVME_MS=$NVME_MS
|
||||||
echo SPDK_VAGRANT_DISTRO=$SPDK_VAGRANT_DISTRO
|
echo SPDK_VAGRANT_DISTRO=$SPDK_VAGRANT_DISTRO
|
||||||
echo SPDK_VAGRANT_VMCPU=$SPDK_VAGRANT_VMCPU
|
echo SPDK_VAGRANT_VMCPU=$SPDK_VAGRANT_VMCPU
|
||||||
echo SPDK_VAGRANT_VMRAM=$SPDK_VAGRANT_VMRAM
|
echo SPDK_VAGRANT_VMRAM=$SPDK_VAGRANT_VMRAM
|
||||||
@ -251,6 +254,7 @@ export DEPLOY_TEST_VM
|
|||||||
export NVME_CMB
|
export NVME_CMB
|
||||||
export NVME_PMR
|
export NVME_PMR
|
||||||
export NVME_ZNS
|
export NVME_ZNS
|
||||||
|
export NVME_MS
|
||||||
export NVME_DISKS_TYPE
|
export NVME_DISKS_TYPE
|
||||||
export NVME_DISKS_NAMESPACES
|
export NVME_DISKS_NAMESPACES
|
||||||
export NVME_FILE
|
export NVME_FILE
|
||||||
|
Loading…
Reference in New Issue
Block a user