[SWDEV-518561] Separate Driver Reload from Memory Partition Sets (#582)
Description: - Added a new API `amdsmi_gpu_driver_reload()` to reload the AMD GPU driver independently. - Updated CLI (`sudo amd-smi reset -r`) and Python bindings to support driver reload functionality. - Removed automatic driver reload from `amdsmi_set_gpu_memory_partition()` and `amdsmi_set_gpu_memory_partition_mode()`. - Enhanced CLI and test cases to allow users to control when the driver reload occurs. - Updated documentation and changelog to reflect the new driver reload process. - Improved error handling and logging for driver reload operations. - Added progress bar and user confirmation prompts for driver reload commands. * Update build/test strategy to only allow one test execution at a time * Modify API verbage + modify systemctl error output - Systemctl is typically not enabled on docker. - And is an edge case for gpu being active process/etc for display devices. * Remove AMDSMI_STATUS_AMDGPU_RESTART_ERR from the return values * Move driver reload to after we save original compute partitions --------- Signed-off-by: Charis Poag <Charis.Poag@amd.com>
Este commit está contenido en:
@@ -23,12 +23,12 @@ jobs:
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 10
|
||||
max-parallel: 10 # This can be in parallel, since no tests are running (see comment about driver reloads)
|
||||
matrix:
|
||||
os: [Ubuntu20, Ubuntu22, Debian10]
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -137,11 +137,12 @@ jobs:
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 1 # Need to tests to run one-at-a-time to avoid conflicts with driver reloads
|
||||
matrix:
|
||||
os: [Ubuntu20, Ubuntu22, Debian10]
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -358,7 +359,7 @@ jobs:
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 10
|
||||
max-parallel: 10 # This can be in parallel, since no tests are running (see comment about driver reloads)
|
||||
matrix:
|
||||
os:
|
||||
- SLES
|
||||
@@ -369,7 +370,7 @@ jobs:
|
||||
- AlmaLinux8
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -554,12 +555,13 @@ jobs:
|
||||
|
||||
rpm-test:
|
||||
name: Tests
|
||||
needs: rpm-buildinstall
|
||||
needs: [rpm-buildinstall, debian-test] # debian-test is needed to complete before rpm-test starts (see comment about driver reloads)
|
||||
runs-on:
|
||||
- self-hosted
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 1 # Need to tests to run one-at-a-time to avoid conflicts with driver reloads
|
||||
matrix:
|
||||
os:
|
||||
- SLES
|
||||
@@ -570,7 +572,7 @@ jobs:
|
||||
- AlmaLinux8
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
Referencia en una nueva incidencia
Block a user