From cea434bf15e535988b2fdf034fea85069ab2aab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alwill=20Xiao=28=E8=82=96=E4=BC=A0=E6=A5=A0=29?= Date: Tue, 4 Jun 2024 16:59:56 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug=E5=92=8C=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ....5-3-functional-optimization-fix-bug.patch | 82 +++++++++++++++++++ oec-hardware.spec | 16 +++- 2 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 oec-hardware-1.1.5-3-functional-optimization-fix-bug.patch diff --git a/oec-hardware-1.1.5-3-functional-optimization-fix-bug.patch b/oec-hardware-1.1.5-3-functional-optimization-fix-bug.patch new file mode 100644 index 0000000..170461d --- /dev/null +++ b/oec-hardware-1.1.5-3-functional-optimization-fix-bug.patch @@ -0,0 +1,82 @@ +diff -Naur rpm/tests/compatible/kabi/kabi.py oech/tests/compatible/kabi/kabi.py +--- rpm/tests/compatible/kabi/kabi.py 2024-06-04 15:27:10.013346551 +0800 ++++ oech/tests/compatible/kabi/kabi.py 2024-06-04 15:30:53.001506902 +0800 +@@ -121,8 +121,8 @@ + if product == "openEuler": + standard_kernel_version = getoutput( + "dnf list --repo=source | grep '^kernel.src' | awk '{print $2}'") +- self.command.run_cmd("dnf download --source kernel-%s" +- % standard_kernel_version) ++ self.command.run_cmd("dnf download --source kernel-%s --downloaddir %s" ++ % (standard_kernel_version, rpmpath)) + elif product == "KylinSec": + kylinsec_version = getoutput("cat /etc/dnf/vars/osversion | sed 's/[^0-9]//g'") + kernel_dict = Document(CertEnv.kernelinfo, self.logger) +@@ -138,7 +138,7 @@ + self.logger.info("Currently, this system is not supported to test kabi," + " Please add the corresponding system in kernelrelease.json.") + +- rpm = os.path.join("kernel-" + standard_kernel_version + ".src.rpm") ++ rpm = os.path.join(rpmpath, "kernel-" + standard_kernel_version + ".src.rpm") + getoutput("rpm -ivh %s" % rpm) + os.remove(rpm) + return standard_symvers +diff -Naur rpm/tests/compatible/kabiwhitelist/kabi_check.sh oech/tests/compatible/kabiwhitelist/kabi_check.sh +--- rpm/tests/compatible/kabiwhitelist/kabi_check.sh 2024-06-04 15:27:10.013346551 +0800 ++++ oech/tests/compatible/kabiwhitelist/kabi_check.sh 2024-06-04 15:29:30.189447349 +0800 +@@ -19,6 +19,10 @@ + arch=`uname -m` + url="https://gitee.com/src-openeuler/kernel/raw/$os_version/kabi_whitelist_$arch" + wget $url ++# if get kabi_whitelist failed because of internet or other ++if [ ! -f $testdir"/kabi_whitelist_"$arch ]; then ++ cp /root/kabi_whitelist_$arch $testdir/ ++fi + kernel_version=`uname -r` + symvers_gz="symvers-"$kernel_version".gz" + cp /boot/$symvers_gz /usr/share/oech/lib/tests/compatible/kabiwhitelist/test_log +@@ -103,6 +107,9 @@ + if [ -f /root/$line ]; then + cp /root/$line ./ + echo $line >> dirth ++ else ++ echo "no ko or rpm file" >> nofile.txt ++ exit 0 + fi + done + cat dirth|while read line; +diff -Naur rpm/tests/compatible/kabiwhitelist/kabiwhitelist.py oech/tests/compatible/kabiwhitelist/kabiwhitelist.py +--- rpm/tests/compatible/kabiwhitelist/kabiwhitelist.py 2024-06-04 15:27:10.013346551 +0800 ++++ oech/tests/compatible/kabiwhitelist/kabiwhitelist.py 2024-06-04 15:30:38.354496369 +0800 +@@ -46,6 +46,10 @@ + if ko_result[2] == 0: + self.logger.error("Please configure the board information in the configuration file") + return False ++ ko_file_result = self.command.run_cmd("ls %s/test_log/ | grep nofile" % kabi_whitelist_dir) ++ if ko_file_result[2] == 0: ++ self.logger.error("Please put ko or rpm file configured in the configuration file into the /root") ++ return False + self.logger.info("Ko or rpm check complete") + + test_result = self.command.run_cmd("ls %s/test_log | grep change" % kabi_whitelist_dir) +diff -Naur rpm/tests/compatible/system/system.py oech/tests/compatible/system/system.py +--- rpm/tests/compatible/system/system.py 2024-06-04 15:27:10.019346555 +0800 ++++ oech/tests/compatible/system/system.py 2024-06-04 15:32:25.527573326 +0800 +@@ -94,6 +94,8 @@ + os_version = getoutput("cat /etc/os-release | grep -i version_id | awk -F = '{print $2}' | sed 's/[\"]//g'") + elif product == "UOS": + os_version = getoutput("cat /etc/os-release | grep -i version_id | awk -F = '{print $2}' | sed 's/[\"]//g'") ++ elif self.sysinfo.product is not None and self.sysinfo.get_version() is not None: ++ os_version = self.sysinfo.product + " " + self.sysinfo.get_version() + else: + self.logger.error("Failed to get os version info.") + self.logger.info("OS Version: %s" % os_version, terminal_print=False) +@@ -115,6 +117,8 @@ + kernel_release = kernel_dict.document[product][os_version].split('/')[1].split('-')[0] + elif product == "UOS": + kernel_release = kernel_dict.document[product][os_version].split('/')[1].split('-')[0] ++ elif kernel_dict.document[product] is not None and kernel_dict.document[product][os_version] is not None: ++ kernel_release = kernel_dict.document[product][os_version] + try: + if kernel_release != self.sysinfo.kernel_version: + self.logger.error("Failed to check kernel %s GA status." % diff --git a/oec-hardware.spec b/oec-hardware.spec index 769b723..f941389 100644 --- a/oec-hardware.spec +++ b/oec-hardware.spec @@ -1,10 +1,12 @@ %global _build_id_links none %undefine __brp_mangle_shebangs +%define vendor %{?_vendor:%{_vendor}}%{!?_vendor:openEuler} +%define vendor_lowercase %{?_vendor:%(echo %{_vendor} | tr '[:upper:]' '[:lower:]')}%{!?_vendor:openeuler} Name: oec-hardware Summary: openEuler Hardware Compatibility Test Suite Version: 1.1.5 -Release: 2 +Release: 3 Group: Development/Tools License: Mulan PSL v2 URL: https://gitee.com/openeuler/oec-hardware @@ -13,6 +15,7 @@ Source0: https://gitee.com/openeuler/oec-hardware/repository/archive/v%{v # patch fix issue Patch0001: oec-hardware-1.1.5-1-add-virtual-branch-fix-bug.patch Patch0002: oec-hardware-1.1.5-2-fix-bug.patch +Patch0003: oec-hardware-1.1.5-3-functional-optimization-fix-bug.patch Buildroot: %{_tmppath}/%{name}-%{version}-root BuildRequires: gcc @@ -38,6 +41,7 @@ openEuler Hardware Compatibility Test Server %setup -q -c %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build %ifarch x86_64 aarch64 @@ -51,6 +55,9 @@ DESTDIR=$RPM_BUILD_ROOT VERSION_RELEASE=%{version} make %install DESTDIR=$RPM_BUILD_ROOT make install +# Custom vendor +sed -i 's#grep openeulerversion /etc/openEuler-latest#grep %{vendor_lowercase}version /etc/%{vendor}-latest#g' %{buildroot}/usr/share/oech/lib/hwcompatible/cert_info.py + %clean [ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT; @@ -82,6 +89,13 @@ DESTDIR=$RPM_BUILD_ROOT make install rm -rf /var/lock/oech.lock %changelog +* Tue Jun 4 2024 xiaochn - 1.1.5-3 +- Resolve the issue of different kernel source download locations in kabi test case +- Resolve the issue that kabiwhitelist still passes when the ko and rpm file does not exist +- Add the way for manually adding kabiwhitelist file +- For custom vendors, refer to the method of obtaining openEuler os information +- Supports custom vendor + * Wed Nov 29 2023 cuixucui - 1.1.5-1 - Resolve kdump\watchdog\cpufreq\kabiwhitelist\network test failure issue - Add fio test cases:read,write,randread,randwrite -- Gitee From 273617cf89de68f518f41a5568999a28e7d39b17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alwill=20Xiao=28=E8=82=96=E4=BC=A0=E6=A5=A0=29?= Date: Fri, 7 Jun 2024 17:05:41 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=A7=A3=E5=86=B3gpu=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E9=A1=B9DISPLAY=E5=88=A4=E6=96=AD=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- oec-hardware-1.1.5-4-fix-gpu-testcase-bug.patch | 12 ++++++++++++ oec-hardware.spec | 7 ++++++- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 oec-hardware-1.1.5-4-fix-gpu-testcase-bug.patch diff --git a/oec-hardware-1.1.5-4-fix-gpu-testcase-bug.patch b/oec-hardware-1.1.5-4-fix-gpu-testcase-bug.patch new file mode 100644 index 0000000..badc83f --- /dev/null +++ b/oec-hardware-1.1.5-4-fix-gpu-testcase-bug.patch @@ -0,0 +1,12 @@ +diff -Naur rpm/tests/compatible/gpu/nvidia_gpu.py oech/tests/compatible/gpu/nvidia_gpu.py +--- rpm/tests/compatible/gpu/nvidia_gpu.py 2024-06-07 16:37:44.542417257 +0800 ++++ oech/tests/compatible/gpu/nvidia_gpu.py 2024-06-07 16:38:57.149472108 +0800 +@@ -174,7 +174,7 @@ + self.logger.error("Using nvidia-smi to test Drvier failed.") + + env_display = os.getenv('DISPLAY') +- if env_display != '': ++ if env_display is not None and env_display != '': + self.logger.info("Start to test Vulkan.") + self.set_default_gpu() + code = self.command.run_cmd( diff --git a/oec-hardware.spec b/oec-hardware.spec index f941389..ae2d9ce 100644 --- a/oec-hardware.spec +++ b/oec-hardware.spec @@ -6,7 +6,7 @@ Name: oec-hardware Summary: openEuler Hardware Compatibility Test Suite Version: 1.1.5 -Release: 3 +Release: 4 Group: Development/Tools License: Mulan PSL v2 URL: https://gitee.com/openeuler/oec-hardware @@ -16,6 +16,7 @@ Source0: https://gitee.com/openeuler/oec-hardware/repository/archive/v%{v Patch0001: oec-hardware-1.1.5-1-add-virtual-branch-fix-bug.patch Patch0002: oec-hardware-1.1.5-2-fix-bug.patch Patch0003: oec-hardware-1.1.5-3-functional-optimization-fix-bug.patch +Patch0004: oec-hardware-1.1.5-4-fix-gpu-testcase-bug.patch Buildroot: %{_tmppath}/%{name}-%{version}-root BuildRequires: gcc @@ -42,6 +43,7 @@ openEuler Hardware Compatibility Test Server %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 %build %ifarch x86_64 aarch64 @@ -89,6 +91,9 @@ sed -i 's#grep openeulerversion /etc/openEuler-latest#grep %{vendor_lowercase}ve rm -rf /var/lock/oech.lock %changelog +* Fri Jun 7 2024 xiaochn - 1.1.5-4 +- Resolve the issue of executing Vulkan even if DISPLAY is not defined in the env + * Tue Jun 4 2024 xiaochn - 1.1.5-3 - Resolve the issue of different kernel source download locations in kabi test case - Resolve the issue that kabiwhitelist still passes when the ko and rpm file does not exist -- Gitee