fix comment

This commit is contained in:
fanlirong
2025-12-13 20:23:20 +08:00
parent 480231bb98
commit a0ef9be5f2
27 changed files with 233 additions and 85 deletions

View File

@@ -1,20 +1,32 @@
{
"path": "${OET_PATH}/testcases/smoke-test/smoke-memlink",
"machine type": "physical",
"machine num": 1,
"cases": [
{
"name": "oe_test_memlink_balloon"
"name": "oe_test_memlink_balloon",
"machine type": "physical",
"machine num": 1
},
{
"name": "oe_test_memlink_fpr"
"name": "oe_test_memlink_fpr",
"machine type": "physical",
"machine num": 1
},
{
"name": "oe_test_memlink_dumpxml_proportion"
"name": "oe_test_memlink_dumpxml_proportion",
"machine type": "physical",
"machine num": 1
},
{
"name": "oe_test_memlink_oom_running"
"name": "oe_test_memlink_oom_running",
"machine type": "physical",
"machine num": 1
},
{
"name": "oe_test_memlink_oom_start"
"name": "oe_test_memlink_oom_start",
"machine type": "physical",
"machine num": 1
}
]
}

View File

@@ -1,26 +1,42 @@
{
"path": "${OET_PATH}/testcases/smoke-test/smoke-migrate",
"machine type": "physical",
"machine num": 2,
"cases": [
{
"name": "oe_test_migrate_content_hugepage"
"name": "oe_test_migrate_content_hugepage",
"machine type": "physical",
"machine num": 2
},
{
"name": "oe_test_migrate_memlink_balloon"
"name": "oe_test_migrate_memlink_balloon",
"machine type": "physical",
"machine num": 2
},
{
"name": "oe_test_migrate_memlink_fpr"
"name": "oe_test_migrate_memlink_fpr",
"machine type": "physical",
"machine num": 2
},
{
"name": "oe_test_migrate_mode_iterative"
"name": "oe_test_migrate_mode_iterative",
"machine type": "physical",
"machine num": 2
},
{
"name": "oe_test_migrate_mode_onecopy"
"name": "oe_test_migrate_mode_onecopy",
"machine type": "physical",
"machine num": 2
},
{
"name": "oe_test_migrate_mode_tcp"
"name": "oe_test_migrate_mode_tcp",
"machine type": "physical",
"machine num": 2
},
{
"name": "oe_test_migrate_status_circle"
"name": "oe_test_migrate_status_circle",
"machine type": "physical",
"machine num": 2
}
]
}

View File

@@ -1,11 +1,14 @@
{
"path": "${OET_PATH}/testcases/smoke-test/smoke-ubnative",
"machine type": "physical",
"cases": [
{
"name": "oe_test_ubnative_ping"
"name": "oe_test_ubnative_ping",
"machine type": "physical"
},
{
"name": "oe_test_ubnative_vmlife"
"name": "oe_test_ubnative_vmlife",
"machine type": "physical"
}
]
}

View File

@@ -91,8 +91,7 @@ function pre_init() {
# vm clean
vm_clean "local"
vm_clean "remote"
rm -rf /var/log/libvirt/libvirtd.log*
rm -rf /var/log/libvirt/qemu/*
rm -rf /var/log/libvirt/libvirtd.log*; rm -rf /var/log/libvirt/qemu/*
SSH_CMD "rm -rf /var/log/libvirt/libvirtd.log*;
rm -rf /var/log/libvirt/qemu/*" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
}
@@ -123,11 +122,11 @@ function set_huge_mem() {
if [ "${flag}" = "local" ]; then
echo 3 > /proc/sys/vm/drop_caches
echo "$huge_size" > "$huge_2M"
sleep 10
SLEEP_WAIT 10
output=$(grep HugePages_ /proc/meminfo)
elif [ "${flag}" = "remote" ]; then
SSH_CMD "echo 3 > /proc/sys/vm/drop_caches; echo $huge_size > $huge_2M" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
sleep 10
SLEEP_WAIT 10
output=$(SSH_CMD "grep HugePages_ /proc/meminfo" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER")
fi
total_local=$(echo "$output" | grep "HugePages_Total:" | sed 's/\r//' | awk '{print int($2)}')
@@ -151,7 +150,7 @@ function wait_exec() {
for ((i = 1; i <= count; i++)); do
LOG_INFO "[$i] wait in cmd: ${cmd}..."
eval "${cmd}" &> /dev/null && return 0
sleep 2
SLEEP_WAIT 2
done
LOG_WARN "${cmd} timeout failed"
return 1
@@ -168,7 +167,7 @@ function create_vm_waiting_running() {
sed -i "s|IMAGE_PATH|${qcow2_path}|g" "${xml_path}"
LOG_INFO "vm xml save dir: $xml_path; image dir is: $qcow2_path"
virsh create "$xml_path" || return 1
sleep 60
SLEEP_WAIT 60
virsh list | grep -iq "$vm_name"
return $?
}
@@ -231,13 +230,13 @@ function check_memlink_recycle() {
# allocing 1G
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_memory.sh" || return 1
sh "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_memory.sh" "$vm_name"
sleep 30
SLEEP_WAIT 30
os_used_running="$(get_hugepage_used "local")"
LOG_INFO "os_used_running: $os_used_running"
# kill stress
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/unset_memory.sh" || return 1
sh "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/unset_memory.sh" "$vm_name"
sleep 80
SLEEP_WAIT 80
os_used_free="$(get_hugepage_used "local")"
LOG_INFO "os_used_free: $os_used_free"
# check
@@ -254,7 +253,7 @@ function check_memlink_recycle() {
function destroy_vm() {
local vm_name=$1
virsh destroy "$vm_name" && sleep 3
virsh destroy "$vm_name" && SLEEP_WAIT 3
virsh undefine "$vm_name" --nvram
virsh list --all
}
@@ -266,4 +265,6 @@ function memlink_post() {
vm_clean "remote"
set_huge_mem 0
set_huge_mem 0 "remote"
setenforce 1
SSH_CMD "setenforce 1" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
}

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Prepare packages
#####################################
yum install -y qemu
yum install -y edk2

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Set memory
#####################################
VM_NAME=$1
TMPFS_SIZE=${2:-1}

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Unset memory
#####################################
VM_NAME=$1

View File

@@ -36,12 +36,12 @@ function run_test() {
max="50" # default
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
check_memlink_recycle "$vm_total" "$vm_used" "$used" "$max" "pass"
CHECK_RESULT $? 0 0 "check memlink recycle failed"

View File

@@ -35,7 +35,7 @@ function run_test() {
LOG_INFO "Test $vm_name proportion:"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
virsh dumpxml "$vm_name" &> "$vm_name".xml
grep "proportion=" "$vm_name".xml
@@ -44,7 +44,7 @@ function run_test() {
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
check_memlink_recycle "2" "1.5" "130" "50" "pass"
CHECK_RESULT $? 0 0 "check memlink recycle failed"

View File

@@ -32,12 +32,12 @@ function run_test() {
vm_name="2u2g_memlink_fpr"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
check_memlink_recycle "2" "1.5" "130" "50" "pass"
CHECK_RESULT $? 0 0 "check memlink recycle failed"

View File

@@ -32,18 +32,18 @@ function run_test() {
vm_name="2u2g_memlink_balloon"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_memory.sh"
sh "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_memory.sh" "$vm_name" "4"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/unset_memory.sh"
sh "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/unset_memory.sh" "$vm_name"

View File

@@ -32,14 +32,14 @@ function run_test() {
vm_name="2u2g_memlink_balloon"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
set_huge_mem 1024
sleep 60
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 50
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
check_memlink_recycle "2" "1.5" "130" "50" "pass"
CHECK_RESULT $? 0 0 "check memlink recycle failed"

View File

@@ -86,8 +86,7 @@ function pre_init() {
# vm clean
vm_clean "local"
vm_clean "remote"
rm -rf /var/log/libvirt/libvirtd.log*
rm -rf /var/log/libvirt/qemu/*
rm -rf /var/log/libvirt/libvirtd.log*; rm -rf /var/log/libvirt/qemu/*
SSH_CMD "rm -rf /var/log/libvirt/libvirtd.log*;
rm -rf /var/log/libvirt/qemu/*" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
}
@@ -104,11 +103,11 @@ function set_huge_mem() {
local huge_2M="/sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages"
if [ "${flag}" = "local" ]; then
echo "$huge_size" > "$huge_2M"
sleep 10
SLEEP_WAIT 10
output=$(grep HugePages_ /proc/meminfo)
elif [ "${flag}" = "remote" ]; then
SSH_CMD "echo $huge_size > $huge_2M" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
sleep 10
SLEEP_WAIT 10
output=$(SSH_CMD "grep HugePages_ /proc/meminfo" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER")
fi
total_local=$(echo "$output" | grep "HugePages_Total:" | sed 's/\r//' | awk '{print int($2)}')
@@ -128,7 +127,7 @@ function wait_exec() {
for ((i = 1; i <= count; i++)); do
LOG_INFO "[$i] wait in cmd: ${cmd}..."
eval "${cmd}" &> /dev/null && return 0
sleep 2
SLEEP_WAIT 2
done
LOG_WARN "${cmd} timeout failed"
return 1
@@ -145,7 +144,7 @@ function create_vm_waiting_running() {
sed -i "s|IMAGE_PATH|${qcow2_path}|g" "${xml_path}"
LOG_INFO "vm xml save dir: $xml_path; image dir is: $qcow2_path"
virsh create "$xml_path" || return 1
sleep 60
SLEEP_WAIT 60
virsh list | grep -iq "$vm_name"
return $?
}
@@ -200,7 +199,7 @@ function check_vm_exist() {
function destroy_vm() {
local vm_name=$1
virsh destroy "$vm_name" && sleep 3
virsh destroy "$vm_name" && SLEEP_WAIT 3
virsh undefine "$vm_name" --nvram
virsh list --all
}
@@ -208,6 +207,8 @@ function destroy_vm() {
function post_clean() {
vm_clean "local"
vm_clean "remote"
setenforce 1
SSH_CMD "setenforce 1" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
}
function vm_sshx() {
@@ -268,13 +269,13 @@ function check_memlink_recycle() {
# allocing 1G
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_memory.sh" || return 1
sh "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/set_memory.sh" "$vm_name"
sleep 30
SLEEP_WAIT 30
os_used_running="$(get_hugepage_used "local")"
LOG_INFO "os_used_running: $os_used_running"
# kill stress
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/unset_memory.sh" || return 1
sh "${OET_PATH}/testcases/smoke-test/smoke-memlink/common/unset_memory.sh" "$vm_name"
sleep 80
SLEEP_WAIT 80
os_used_free="$(get_hugepage_used "local")"
LOG_INFO "os_used_free: $os_used_free"
# check

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Prepare packages
#####################################
yum install -y qemu
yum install -y edk2

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Set memory
#####################################
VM_NAME=$1
TMPFS_SIZE=${2:-1}

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Unset memory
#####################################
VM_NAME=$1

View File

@@ -31,11 +31,11 @@ function run_test() {
vm_name="2u2g_huge_page"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
mig_vm "$vm_name" 2 "urma" "--onecopy"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
mig_vm_back "$vm_name" 2 "urma" "--onecopy"
check_vm_exist "$vm_name"

View File

@@ -32,23 +32,23 @@ function run_test() {
vm_name="2u2g_memlink_balloon"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-migrate/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-migrate/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
mig_vm "$vm_name" 2 "urma"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
mig_vm_back "$vm_name" 2 "urma"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 0 "check vm failed, vm should exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 0 "check vm failed, vm should exist in local: $vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 10
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
check_memlink_recycle "2" "1.5" "130" "50" "pass"
CHECK_RESULT $? 0 0 "check memlink recycle failed"

View File

@@ -32,23 +32,23 @@ function run_test() {
vm_name="2u2g_memlink_fpr"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
chmod +x "${OET_PATH}/testcases/smoke-test/smoke-migrate/common/set_network.exp"
expect "${OET_PATH}/testcases/smoke-test/smoke-migrate/common/set_network.exp" "$vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 100
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
mig_vm "$vm_name" 2 "urma"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
mig_vm_back "$vm_name" 2 "urma"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 0 "check vm failed, vm should exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 0 "check vm failed, vm should exist in local: $vm_name"
wait_exec "ping -c 3 ${vm_ip:?}" 10
CHECK_RESULT $? 0 0 "ping vm failed" || exit 1
CHECK_RESULT $? 0 0 "ping vm failed"
check_memlink_recycle "2" "1.5" "130" "50" "pass"
CHECK_RESULT $? 0 0 "check memlink recycle failed"

View File

@@ -30,11 +30,11 @@ function run_test() {
vm_name="2u2g_small_page"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
mig_vm "$vm_name" 2 "urma"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
mig_vm_back "$vm_name" 2 "urma"
check_vm_exist "$vm_name"

View File

@@ -30,11 +30,11 @@ function run_test() {
vm_name="2u2g_small_page"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
mig_vm "$vm_name" 2 "urma" "--onecopy"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
mig_vm_back "$vm_name" 2 "urma" "--onecopy"
check_vm_exist "$vm_name"

View File

@@ -30,11 +30,11 @@ function run_test() {
vm_name="2u2g_small_page"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
mig_vm "$vm_name" 2 "tcp"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
mig_vm_back "$vm_name" 2 "tcp"
check_vm_exist "$vm_name"

View File

@@ -31,20 +31,20 @@ function run_test() {
vm_name="2u2g_huge_page"
create_vm_waiting_running "$vm_name"
CHECK_RESULT $? 0 0 "create vm failed" || exit 1
CHECK_RESULT $? 0 0 "create vm failed"
# migrate vm and cancel migrate
mig_vm "$vm_name" 3 "urma" &
pid=$!
sleep 1
virsh domjobabort "$vm_name"
CHECK_RESULT $? 0 0 "migrate cancel failed" || exit 1
CHECK_RESULT $? 0 0 "migrate cancel failed"
wait "$pid"
# migrate vm again
mig_vm "$vm_name" 3 "urma"
check_vm_exist "$vm_name"
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name" || exit 1
CHECK_RESULT $? 0 1 "check vm failed, vm should not exist in local: $vm_name"
# migrate vm back
mig_vm_back "$vm_name" 2 "urma" "--onecopy"

View File

@@ -29,6 +29,8 @@ vm_ip="192.168.1.101"
vm_user="root"
vm_passwd="openEuler12#$"
original_selinux_mode=""
function ub_env_init() {
# img pre
mkdir -p "$image_dir"
@@ -50,12 +52,14 @@ function ub_env_init() {
modprobe vfio
modprobe vfio-ub
# config
setenforce 0
original_selinux_mode=$(getenforce)
if [[ "$original_selinux_mode" != "Permissive" && "$original_selinux_mode" != "permissive" ]]; then
setenforce 0
fi
# vm clean
virsh list --all --name | xargs -I {} virsh destroy {}
virsh list --all --name | xargs -I {} virsh undefine {} --nvram
rm -rf /var/log/libvirt/libvirtd.log*
rm -rf /var/log/libvirt/qemu/*
rm -rf /var/log/libvirt/libvirtd.log*; rm -rf /var/log/libvirt/qemu/*
}
function set_hugepages() {
@@ -98,7 +102,7 @@ function create_vm_waiting_running() {
done
LOG_INFO "vm xml save dir: $xml_path; image dir is: $qcow2_path"
virsh define "$xml_path" && virsh start "$vm_name" || return 1
sleep 60
SLEEP_WAIT 60
virsh list | grep "$vm_name"
return $?
}
@@ -109,7 +113,7 @@ function wait_exec() {
for ((i = 1; i <= count; i++)); do
LOG_INFO "[$i] wait in cmd: ${cmd}..."
eval "${cmd}" &> /dev/null && return 0
sleep 2
SLEEP_WAIT 2
done
LOG_WARN "${cmd} timeout failed"
return 1
@@ -133,13 +137,6 @@ function vm_modprobe_ko() {
modprobe unic" "$vm_ip" "$vm_passwd" "$vm_user"
}
function destroy_vm() {
local vm_name=$1
virsh destroy "$vm_name" && sleep 3
virsh undefine "$vm_name" --nvram
virsh list --all
}
function ub_dev_restore() {
local bus_instance=$1
local ub_dev_ids=$2
@@ -153,3 +150,9 @@ function ub_dev_restore() {
done
setub -b destroy -g "$bus_instance"
}
function post_clean() {
virsh list --all --name | xargs -I {} virsh destroy {}
virsh list --all --name | xargs -I {} virsh undefine {} --nvram
setenforce 1
}

View File

@@ -1,4 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
####################################
#@Author : fanlirong
#@Contact : fanlirong1@h-partners.com
#@Date : 2025-12-06
#@License : Mulan PSL v2
#@Desc : Prepare packages
#####################################
yum install -y qemu
yum install -y edk2

View File

@@ -57,7 +57,7 @@ function run_test() {
function post_test() {
LOG_INFO "Start to restore the test environment."
destroy_vm "$vm_name"
post_clean
ub_dev_restore "$bus_instance" "$ub_dev_id"
LOG_INFO "End to restore the test environment."
}

View File

@@ -104,7 +104,7 @@ function run_test() {
function post_test() {
LOG_INFO "Start to restore the test environment."
rm -rf save
destroy_vm "$vm_name"
post_clean
ub_dev_restore "$bus_instance" "$ub_dev_id"
LOG_INFO "End to restore the test environment."
}