Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package btop for openSUSE:Factory checked in at 2024-09-30 15:39:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/btop (Old) and /work/SRC/openSUSE:Factory/.btop.new.29891 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "btop" Mon Sep 30 15:39:20 2024 rev:31 rq:1204537 version:1.4.0+git20240922.6c0cedd Changes: -------- --- /work/SRC/openSUSE:Factory/btop/btop.changes 2024-08-25 12:10:41.356760433 +0200 +++ /work/SRC/openSUSE:Factory/.btop.new.29891/btop.changes 2024-09-30 15:39:57.343908634 +0200 @@ -1,0 +2,20 @@ +Sun Sep 22 15:13:22 UTC 2024 - scott.bradn...@suse.com + +- Updating ROCm to v6.2.1 +- Update to version 1.4.0+git20240922.6c0cedd: + * v1.4.0 Intel GPU support & NetBSD support + * Added documentation for Intel GPU support and setcap command to Makefile + * Set Intel GPU baseline max power at 10W + * Added warnings when toggling boxes and terminal size is to small + * Fix missing core percentages, issue #792 + * GPU fixes + * Fix missing headers headers for GPU build on Alpine + * Fixed includes for CC + * Fixed Makefile and added workaround for missing asprintf with Clang + * intel gpu frequency + * don't namespace on x64 + * add stdio + * intel gpu power consumption + * intel igpu support + +------------------------------------------------------------------- Old: ---- btop-1.3.2+git20240805.00c9088.tar.gz rocm_smi_lib-rocm-6.2.0.tar.gz New: ---- btop-1.4.0+git20240922.6c0cedd.tar.gz rocm_smi_lib-rocm-6.2.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ btop.spec ++++++ --- /var/tmp/diff_new_pack.06kvDj/_old 2024-09-30 15:39:58.623961953 +0200 +++ /var/tmp/diff_new_pack.06kvDj/_new 2024-09-30 15:39:58.623961953 +0200 @@ -15,9 +15,9 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # -%define ROCm_version 6.2.0 +%define ROCm_version 6.2.1 Name: btop -Version: 1.3.2+git20240805.00c9088 +Version: 1.4.0+git20240922.6c0cedd Release: 0 Summary: Usage and stats for processor, memory, disks, network and processes License: Apache-2.0 ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.06kvDj/_old 2024-09-30 15:39:58.667963785 +0200 +++ /var/tmp/diff_new_pack.06kvDj/_new 2024-09-30 15:39:58.671963952 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/aristocratos/btop</param> - <param name="changesrevision">00c90884c328eb3e44a0ab094e833161092aae9c</param></service></servicedata> + <param name="changesrevision">6c0cedd8912785f0f353af389e72a0ffc69984a2</param></service></servicedata> (No newline at EOF) ++++++ btop-1.3.2+git20240805.00c9088.tar.gz -> btop-1.4.0+git20240922.6c0cedd.tar.gz ++++++ ++++ 10878 lines of diff (skipped) ++++++ btop.obsinfo ++++++ --- /var/tmp/diff_new_pack.06kvDj/_old 2024-09-30 15:39:58.827970450 +0200 +++ /var/tmp/diff_new_pack.06kvDj/_new 2024-09-30 15:39:58.831970616 +0200 @@ -1,5 +1,5 @@ name: btop -version: 1.3.2+git20240805.00c9088 -mtime: 1722841002 -commit: 00c90884c328eb3e44a0ab094e833161092aae9c +version: 1.4.0+git20240922.6c0cedd +mtime: 1727002118 +commit: 6c0cedd8912785f0f353af389e72a0ffc69984a2 ++++++ rocm_smi_lib-rocm-6.2.0.tar.gz -> rocm_smi_lib-rocm-6.2.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rocm_smi_lib-rocm-6.2.0/.azuredevops/rocm-ci.yml new/rocm_smi_lib-rocm-6.2.1/.azuredevops/rocm-ci.yml --- old/rocm_smi_lib-rocm-6.2.0/.azuredevops/rocm-ci.yml 2024-07-11 02:58:58.000000000 +0200 +++ new/rocm_smi_lib-rocm-6.2.1/.azuredevops/rocm-ci.yml 2024-08-24 02:33:02.000000000 +0200 @@ -13,7 +13,7 @@ batch: true branches: include: - - develop + - amd-staging paths: exclude: - .github @@ -26,7 +26,7 @@ autoCancel: true branches: include: - - develop + - amd-staging paths: exclude: - .github diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rocm_smi_lib-rocm-6.2.0/CHANGELOG.md new/rocm_smi_lib-rocm-6.2.1/CHANGELOG.md --- old/rocm_smi_lib-rocm-6.2.0/CHANGELOG.md 2024-07-11 02:58:58.000000000 +0200 +++ new/rocm_smi_lib-rocm-6.2.1/CHANGELOG.md 2024-08-24 02:33:02.000000000 +0200 @@ -4,6 +4,42 @@ ***All information listed below is for reference and subject to change.*** +## rocm_smi_lib for ROCm 6.2.1 + +### Added + +- N/A + +### Changed + +- N/A + +### Optimized + +- **Improved handling of UnicodeEncodeErrors with non UTF-8 locales** +Non UTF-8 locales were causing crashing on UTF-8 special characters + +### Fixed + +- **Fixed rsmitstReadWrite.TestComputePartitionReadWrite segfault** +Segfault was caused due to unhandled start conditions: + +1) When setting CPX as a partition mode, there is a DRM node limitation of 64. +This is a known limitation of the driver, if other drivers are using other DRM nodes (ex. using PCIe space, such as ast). +The number of DRM nodes can be checked via `ls /sys/class/drm` +Recommended steps for removing unnecessary drivers: +a. unloading amdgpu - `sudo rmmod amdgpu` +b. removing unnecessary driver(s) - ex. `sudo rmmod ast` +c. reload amgpu - `sudo modprobe amdgpu` + +2) Since user could start amdgpu in different partition modes (ex. `sudo modprobe amdgpu user_partt_mode=1`). +Test needed to keep track of total number of devices, in order to ensure test comes back to the original configuration. +The test segfault could be seen on all MI3x ASICs, if brought up in a non-SPX configuration upon boot. + +### Known Issues + +- N/A + ## rocm_smi_lib for ROCm 6.2 ### Added @@ -38,7 +74,6 @@ - N/A - ## rocm_smi_lib for ROCm 6.1.2 ### Added diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rocm_smi_lib-rocm-6.2.0/CMakeLists.txt new/rocm_smi_lib-rocm-6.2.1/CMakeLists.txt --- old/rocm_smi_lib-rocm-6.2.0/CMakeLists.txt 2024-07-11 02:58:58.000000000 +0200 +++ new/rocm_smi_lib-rocm-6.2.1/CMakeLists.txt 2024-08-24 02:33:02.000000000 +0200 @@ -343,6 +343,11 @@ set(CPACK_RPM_PACKAGE_RELEASE_DIST ON) endif() +# don't terminate if bytecompile of python files fails +set(CPACK_RPM_SPEC_MORE_DEFINE "%define _python_bytecompile_errors_terminate_build 0") +# Cpack converts !/usr/bin/env python3 to /usr/libexec/platform-python in RHEL8. +# prevent the BRP(buildroot policy) script from checking and modifying interpreter directives +string( APPEND CPACK_RPM_SPEC_MORE_DEFINE "\n%undefine __brp_mangle_shebangs") # The line below doesn't currently work; it may be this issue: # https://bugzilla.redhat.com/show_bug.cgi?id=1811358 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rocm_smi_lib-rocm-6.2.0/python_smi_tools/rocm_smi.py new/rocm_smi_lib-rocm-6.2.1/python_smi_tools/rocm_smi.py --- old/rocm_smi_lib-rocm-6.2.0/python_smi_tools/rocm_smi.py 2024-07-11 02:58:58.000000000 +0200 +++ new/rocm_smi_lib-rocm-6.2.1/python_smi_tools/rocm_smi.py 2024-08-24 02:33:02.000000000 +0200 @@ -24,7 +24,24 @@ from io import StringIO from time import ctime from subprocess import check_output -from rsmiBindings import * +from typing import TYPE_CHECKING + +# only used for type checking +# pyright trips up and cannot find rsmiBindings without it +if TYPE_CHECKING: + from rsmiBindings import * + +try: + from rsmiBindings import * +except ImportError: + current_path = os.path.dirname(os.path.abspath(__file__)) + additional_path = f"{current_path}/../libexec/rocm_smi" + sys.path.append(additional_path) + try: + from rsmiBindings import * + except ImportError: + print(f"Still couldn't import 'rsmiBindings'. Make sure it's installed in {additional_path}") + sys.exit(1) # rocmSmiLib_cli version. Increment this as needed. # Major version - Increment when backwards-compatibility breaks @@ -33,7 +50,7 @@ # Hash version - Shortened commit hash. Print here and not with lib for consistency with amd-smi SMI_MAJ = 2 SMI_MIN = 3 -SMI_PAT = 0 +SMI_PAT = 1 # SMI_HASH is provided by rsmiBindings __version__ = '%s.%s.%s+%s' % (SMI_MAJ, SMI_MIN, SMI_PAT, SMI_HASH) @@ -196,7 +213,7 @@ # BDFID = ((DOMAIN & 0xFFFFFFFF) << 32) | ((PARTITION_ID & 0xF) << 28) | ((BUS & 0xFF) << 8) | # ((DEVICE & 0x1F) <<3 ) | (FUNCTION & 0x7) # bits [63:32] = domain - # bits [31:28] or bits [2:0] = partition id + # bits [31:28] or bits [2:0] = partition id # bits [27:16] = reserved # bits [15:8] = Bus # bits [7:3] = Device @@ -223,7 +240,7 @@ # BDFID = ((DOMAIN & 0xFFFFFFFF) << 32) | ((PARTITION_ID & 0xF) << 28) | ((BUS & 0xFF) << 8) | # ((DEVICE & 0x1F) <<3 ) | (FUNCTION & 0x7) # bits [63:32] = domain - # bits [31:28] or bits [2:0] = partition id + # bits [31:28] or bits [2:0] = partition id # bits [27:16] = reserved # bits [15:8] = Bus # bits [7:3] = Device @@ -871,7 +888,13 @@ try: if extraSpace: print('\n', end='') - print(logstr + '\n', end='') + + # Handle non UTF-8 locale + try: + print(logstr + '\n', end='') + except UnicodeEncodeError: + print(logstr.encode('ascii', 'ignore').decode('ascii')) + sys.stdout.flush() # when piped into programs like 'head' - print throws an error. # silently ignore instead diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rocm_smi_lib-rocm-6.2.0/tests/rocm_smi_test/functional/computepartition_read_write.cc new/rocm_smi_lib-rocm-6.2.1/tests/rocm_smi_test/functional/computepartition_read_write.cc --- old/rocm_smi_lib-rocm-6.2.0/tests/rocm_smi_test/functional/computepartition_read_write.cc 2024-07-11 02:58:58.000000000 +0200 +++ new/rocm_smi_lib-rocm-6.2.1/tests/rocm_smi_test/functional/computepartition_read_write.cc 2024-08-24 02:33:02.000000000 +0200 @@ -157,6 +157,7 @@ uint32_t dev, const std::string current_partition, bool isVerbose, bool reinitialize) { uint32_t max_loop = MAX_SPX_PARTITIONS; + uint32_t current_num_devices = 0; // re-initialize to ensure new device ordering is followed if (reinitialize) { @@ -185,8 +186,19 @@ } } } + rsmi_num_monitor_devices(¤t_num_devices); for (uint32_t i = dev; i < dev + max_loop; i++) { + if (dev+max_loop > current_num_devices) { + std::cout << "\t**Devices: " << dev << "; max_loop: " << max_loop + << "; current_num_devices: " << current_num_devices << "\n"; + std::cout << "\t**[WARNING] Detected max DRM minor limitation " + "(max of 64).\n\tPlease disable any other drivers taking up PCIe space" + "\n\t(ex. ast or other drivers -> " + "\"sudo rmmod amdgpu && sudo rmmod ast && sudo modprobe amdgpu\")." + "\n\tCPX may not enumerate properly.\n"; + break; + } uint32_t partition_id; rsmi_status_t ret = rsmi_dev_partition_id_get(i, &partition_id); std::cout << "\t** Checking Partition ID | Device: " << std::to_string(i) @@ -419,7 +431,43 @@ * */ std::string final_partition_state = "UNKNOWN"; + + // loop through modes lower than original, but do not re-initialize this throws + // off device id numbers in tests + // (since we started with higher total # of devices) for (int partition = static_cast<int>(RSMI_COMPUTE_PARTITION_SPX); + partition < static_cast<int>(mapStringToRSMIComputePartitionTypes.at( + std::string(orig_char_computePartition))); + partition++) { + if (std::string(orig_char_computePartition) == "SPX") { + break; + } + rsmi_compute_partition_type_t updatePartition + = static_cast<rsmi_compute_partition_type_t>(partition); + IF_VERB(STANDARD) { + std::cout << std::endl; + std::cout << "\t**" + << "======== TEST RSMI_COMPUTE_PARTITION_" + << computePartitionString(updatePartition) + << " ===============" << std::endl; + } + ret = rsmi_dev_compute_partition_set(dv_ind, updatePartition); + IF_VERB(STANDARD) { + std::cout << "\t**" + << "rsmi_dev_compute_partition_set(" << dv_ind + << ", updatePartition): " + << amd::smi::getRSMIStatusString(ret, false) << "\n" + << "\t**New Partition (set): " + << computePartitionString(updatePartition) << "\n"; + } + ASSERT_TRUE((ret == RSMI_STATUS_SETTING_UNAVAILABLE) + || (ret== RSMI_STATUS_PERMISSION) + || (ret == RSMI_STATUS_SUCCESS) + || ret == RSMI_STATUS_BUSY); + } + + for (int partition = static_cast<int>(mapStringToRSMIComputePartitionTypes.at( + std::string(orig_char_computePartition))); partition <= static_cast<int>(RSMI_COMPUTE_PARTITION_CPX); partition++) { rsmi_compute_partition_type_t updatePartition