Skip to content

Commit f75a41c

Browse files
committed
Add R580 support for precompiled driver
Signed-off-by: Shiva Kumar (SW-CLOUD) <[email protected]>
1 parent 7c948a0 commit f75a41c

File tree

6 files changed

+126
-99
lines changed

6 files changed

+126
-99
lines changed

.github/workflows/image.yaml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,10 @@ on:
2121
- opened
2222
- synchronize
2323
branches:
24-
- main
25-
- release-*
24+
- main-no
2625
push:
2726
branches:
28-
- main
29-
- release-*
27+
- main-no
3028

3129
jobs:
3230
image:

.github/workflows/precompiled.yaml

Lines changed: 29 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,9 @@
1616
name: Precompiled images
1717

1818
on:
19-
schedule:
20-
- cron: '00 09 * * *'
19+
push:
20+
branches:
21+
- addsupport-580
2122

2223
jobs:
2324
set-driver-version-matrix:
@@ -273,18 +274,18 @@ jobs:
273274
274275
# slack notification for new kernel release before e2e tests starts
275276
# as e2e tests may fail for new kernel release
276-
- name: Slack notification
277-
if: steps.set_kernel_version.outputs.matrix_values_not_empty == '1'
278-
uses: slackapi/[email protected]
279-
with:
280-
token: ${{ secrets.SLACK_BOT_TOKEN }}
281-
method: chat.postMessage
282-
payload: |
283-
{
284-
"channel": "${{ secrets.SLACK_CHANNEL_ID }}",
285-
"text": "${{ secrets.DETECTED_PRECOMPILED_KERNEL_MESSAGE }} ${{ steps.set_kernel_version.outputs.published_kernels }} \n
286-
Details: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
287-
}
277+
# - name: Slack notification
278+
# if: steps.set_kernel_version.outputs.matrix_values_not_empty == '1'
279+
# uses: slackapi/[email protected]
280+
# with:
281+
# token: ${{ secrets.SLACK_BOT_TOKEN }}
282+
# method: chat.postMessage
283+
# payload: |
284+
# {
285+
# "channel": "${{ secrets.SLACK_CHANNEL_ID }}",
286+
# "text": "${{ secrets.DETECTED_PRECOMPILED_KERNEL_MESSAGE }} ${{ steps.set_kernel_version.outputs.published_kernels }} \n
287+
# Details: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
288+
# }
288289

289290
e2e-tests-nvidiadriver:
290291
runs-on: linux-amd64-cpu4
@@ -296,6 +297,7 @@ jobs:
296297
matrix:
297298
kernel_version: ${{ fromJson(needs.collect-e2e-test-matrix.outputs.matrix_values) }}
298299
exclude: ${{ fromJson(needs.collect-e2e-test-matrix.outputs.exclude_matrix_values) }}
300+
max-parallel: 6
299301
steps:
300302
- name: Check out code
301303
uses: actions/checkout@v5
@@ -438,7 +440,7 @@ jobs:
438440
image_path="./base-images-${{ matrix.driver_branch }}-${{ matrix.kernel_version }}.tar"
439441
echo "uploading $image_path"
440442
docker load -i $image_path
441-
docker push ${PRIVATE_REGISTRY}/nvidia/driver:base-${BASE_TARGET}-${LTS_KERNEL}-${KERNEL_FLAVOR}-${{ matrix.driver_branch }}
443+
# docker push ${PRIVATE_REGISTRY}/nvidia/driver:base-${BASE_TARGET}-${LTS_KERNEL}-${KERNEL_FLAVOR}-${{ matrix.driver_branch }}
442444
443445
- name: Download built image artifact
444446
if: ${{ ! (matrix.driver_branch == 535 && contains(matrix.kernel_version, 'ubuntu24.04')) }}
@@ -453,16 +455,16 @@ jobs:
453455
image_path="./driver-images-${{ matrix.driver_branch }}-${{ matrix.kernel_version }}.tar"
454456
echo "uploading $image_path"
455457
docker load -i $image_path
456-
docker push ${PRIVATE_REGISTRY}/nvidia/driver:${{ matrix.driver_branch }}-${{ matrix.kernel_version }}
458+
# docker push ${PRIVATE_REGISTRY}/nvidia/driver:${{ matrix.driver_branch }}-${{ matrix.kernel_version }}
457459
458-
- name: Slack notification
459-
if: ${{ ! (matrix.driver_branch == 535 && contains(matrix.kernel_version, 'ubuntu24.04')) }}
460-
uses: slackapi/[email protected]
461-
with:
462-
token: ${{ secrets.SLACK_BOT_TOKEN }}
463-
method: chat.postMessage
464-
payload: |
465-
{
466-
"channel": "${{ secrets.SLACK_CHANNEL_ID }}",
467-
"text": "${{ secrets.PUBLISHED_PRECOMPILED_IMAGE_MESSAGE }} ${{ env.PRIVATE_REGISTRY }}/nvidia/driver:${{ matrix.driver_branch }}-${{ matrix.kernel_version }}"
468-
}
460+
# - name: Slack notification
461+
# if: ${{ ! (matrix.driver_branch == 535 && contains(matrix.kernel_version, 'ubuntu24.04')) }}
462+
# uses: slackapi/[email protected]
463+
# with:
464+
# token: ${{ secrets.SLACK_BOT_TOKEN }}
465+
# method: chat.postMessage
466+
# payload: |
467+
# {
468+
# "channel": "${{ secrets.SLACK_CHANNEL_ID }}",
469+
# "text": "${{ secrets.PUBLISHED_PRECOMPILED_IMAGE_MESSAGE }} ${{ env.PRIVATE_REGISTRY }}/nvidia/driver:${{ matrix.driver_branch }}-${{ matrix.kernel_version }}"
470+
# }

ubuntu22.04/precompiled/Dockerfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,7 @@ COPY nvidia-driver /usr/local/bin
5555

5656
ADD local-repo.sh /tmp
5757

58-
RUN /tmp/local-repo.sh extra_pkgs_install && \
59-
mkdir -p /usr/local/repos && \
58+
RUN mkdir -p /usr/local/repos && \
6059
/tmp/local-repo.sh download_driver_package_deps && \
6160
/tmp/local-repo.sh build_local_apt_repo && \
6261
/tmp/local-repo.sh fetch_nvidia_installer && \

ubuntu22.04/precompiled/local-repo.sh

Lines changed: 47 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,48 @@ download_apt_with_dep () {
2222
fi
2323
}
2424

25+
nvlink5_pkgs_download() {
26+
if [ "$DRIVER_BRANCH" -ge "570" ]; then
27+
download_apt_with_dep nvlsm
28+
download_apt_with_dep infiniband-diags
29+
fi
30+
}
31+
32+
# libnvsdm packages are not available for arm64
33+
nvsdm_download() {
34+
if [ "$TARGETARCH" = "amd64" ]; then
35+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
36+
download_apt_with_dep libnvsdm=${DRIVER_VERSION}-1
37+
elif [ "$DRIVER_BRANCH" -ge "570" ]; then
38+
download_apt_with_dep libnvsdm-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
39+
fi
40+
fi
41+
}
42+
43+
fabricmanager_download() {
44+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
45+
download_apt_with_dep nvidia-fabricmanager=${DRIVER_VERSION}-1
46+
else
47+
download_apt_with_dep nvidia-fabricmanager-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
48+
fi
49+
}
50+
51+
nscq_download() {
52+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
53+
download_apt_with_dep libnvidia-nscq=${DRIVER_VERSION}-1
54+
else
55+
download_apt_with_dep libnvidia-nscq-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
56+
fi
57+
}
58+
59+
imex_download() {
60+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
61+
download_apt_with_dep nvidia-imex=${DRIVER_VERSION}-1
62+
elif [ "$DRIVER_BRANCH" -ge "570" ]; then
63+
download_apt_with_dep nvidia-imex-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
64+
fi
65+
}
66+
2567
download_driver_package_deps () {
2668
apt-get update
2769
pushd ${LOCAL_REPO_DIR}
@@ -37,23 +79,11 @@ download_driver_package_deps () {
3779
download_apt_with_dep libnvidia-encode-${DRIVER_BRANCH}-server
3880
download_apt_with_dep libnvidia-fbc1-${DRIVER_BRANCH}-server
3981

40-
if [ "$DRIVER_BRANCH" -ge "580" ]; then
41-
download_apt_with_dep nvidia-fabricmanager=${DRIVER_VERSION}-1
42-
download_apt_with_dep libnvidia-nscq=${DRIVER_VERSION}-1
43-
download_apt_with_dep nvlsm
44-
download_apt_with_dep infiniband-diags
45-
download_apt_with_dep nvidia-imex=${DRIVER_VERSION}-1
46-
download_apt_with_dep libnvsdm=${DRIVER_VERSION}-1
47-
else
48-
download_apt_with_dep nvidia-fabricmanager-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
49-
download_apt_with_dep libnvidia-nscq-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
50-
if [ "$DRIVER_BRANCH" -ge "570" ]; then
51-
download_apt_with_dep nvlsm
52-
download_apt_with_dep infiniband-diags
53-
download_apt_with_dep nvidia-imex-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
54-
download_apt_with_dep libnvsdm-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
55-
fi
56-
fi
82+
fabricmanager_download
83+
nscq_download
84+
nvlink5_pkgs_download
85+
imex_download
86+
nvsdm_download
5787

5888
ls -al .
5989
popd
@@ -76,28 +106,12 @@ fetch_nvidia_installer () {
76106
rm $DRIVER_RUN_FILE.run
77107
}
78108

79-
imex_install() {
80-
if [ "$DRIVER_BRANCH" -ge "580" ]; then
81-
apt-get install -y --no-install-recommends nvidia-imex=${DRIVER_VERSION}-1
82-
elif [ "$DRIVER_BRANCH" -ge "570" ]; then
83-
apt-get install -y --no-install-recommends nvidia-imex-${DRIVER_BRANCH}=${DRIVER_VERSION}-1;
84-
fi
85-
}
86-
87-
extra_pkgs_install() {
88-
apt-get update
89-
imex_install
90-
rm -rf /var/lib/apt/lists/*
91-
}
92-
93109
if [ "$1" = "download_driver_package_deps" ]; then
94110
download_driver_package_deps
95111
elif [ "$1" = "build_local_apt_repo" ]; then
96112
build_local_apt_repo
97113
elif [ "$1" = "fetch_nvidia_installer" ]; then
98114
fetch_nvidia_installer
99-
elif [ "$1" = "extra_pkgs_install" ]; then
100-
extra_pkgs_install
101115
else
102116
echo "Unknown function: $1"
103117
exit 1

ubuntu24.04/precompiled/Dockerfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,7 @@ RUN mkdir -p /usr/local/repos && \
5454
/tmp/local-repo.sh download_driver_package_deps && \
5555
/tmp/local-repo.sh build_local_apt_repo && \
5656
/tmp/local-repo.sh fetch_nvidia_installer && \
57-
/tmp/local-repo.sh extra_pkgs_install && \
58-
# Remove all other ubuntu apt sources to ensure we only pull from the local apt repo
57+
# Remove all other ubuntu apt sources to ensure we only pull from the local apt repo
5958
rm /etc/apt/sources.list.d/*
6059

6160
WORKDIR /drivers

ubuntu24.04/precompiled/local-repo.sh

Lines changed: 46 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,47 @@ download_apt_with_dep () {
2222
fi
2323
}
2424

25+
nvlink5_pkgs_download() {
26+
if [ "$DRIVER_BRANCH" -ge "550" ]; then
27+
download_apt_with_dep nvlsm
28+
download_apt_with_dep infiniband-diags
29+
fi
30+
}
31+
32+
nvsdm_download() {
33+
if [ "$TARGETARCH" = "amd64" ]; then
34+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
35+
download_apt_with_dep libnvsdm=${DRIVER_VERSION}-1
36+
elif [ "$DRIVER_BRANCH" -ge "570" ]; then
37+
download_apt_with_dep libnvsdm-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
38+
fi
39+
fi
40+
}
41+
42+
fabricmanager_download() {
43+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
44+
download_apt_with_dep nvidia-fabricmanager=${DRIVER_VERSION}-1
45+
else
46+
download_apt_with_dep nvidia-fabricmanager-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
47+
fi
48+
}
49+
50+
nscq_download() {
51+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
52+
download_apt_with_dep libnvidia-nscq=${DRIVER_VERSION}-1
53+
else
54+
download_apt_with_dep libnvidia-nscq-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
55+
fi
56+
}
57+
58+
imex_download() {
59+
if [ "$DRIVER_BRANCH" -ge "580" ]; then
60+
download_apt_with_dep nvidia-imex=${DRIVER_VERSION}-1
61+
elif [ "$DRIVER_BRANCH" -ge "570" ]; then
62+
download_apt_with_dep nvidia-imex-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
63+
fi
64+
}
65+
2566
download_driver_package_deps () {
2667
apt-get update
2768
pushd ${LOCAL_REPO_DIR}
@@ -37,21 +78,11 @@ download_driver_package_deps () {
3778
download_apt_with_dep libnvidia-encode-${DRIVER_BRANCH}-server
3879
download_apt_with_dep libnvidia-fbc1-${DRIVER_BRANCH}-server
3980

40-
if [ "$DRIVER_BRANCH" -ge "580" ]; then
41-
download_apt_with_dep nvidia-imex=${DRIVER_VERSION}-1
42-
download_apt_with_dep nvidia-fabricmanager=${DRIVER_VERSION}-1
43-
download_apt_with_dep libnvidia-nscq=${DRIVER_VERSION}-1
44-
download_apt_with_dep libnvsdm=${DRIVER_VERSION}-1
45-
else
46-
if [ "$DRIVER_BRANCH" -ge "570" ]; then
47-
download_apt_with_dep nvlsm
48-
download_apt_with_dep infiniband-diags
49-
download_apt_with_dep libnvsdm-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
50-
fi
51-
download_apt_with_dep nvidia-imex-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
52-
download_apt_with_dep nvidia-fabricmanager-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
53-
download_apt_with_dep libnvidia-nscq-${DRIVER_BRANCH} ${DRIVER_VERSION}-1
54-
fi
81+
fabricmanager_download
82+
nscq_download
83+
nvlink5_pkgs_download
84+
imex_download
85+
nvsdm_download
5586

5687
ls -al .
5788
popd
@@ -74,28 +105,12 @@ fetch_nvidia_installer () {
74105
rm $DRIVER_RUN_FILE.run
75106
}
76107

77-
imex_install() {
78-
if [ "$DRIVER_BRANCH" -ge "580" ]; then
79-
apt-get install -y --no-install-recommends nvidia-imex=${DRIVER_VERSION}-1
80-
elif [ "$DRIVER_BRANCH" -ge "570" ]; then
81-
apt-get install -y --no-install-recommends nvidia-imex-${DRIVER_BRANCH}=${DRIVER_VERSION}-1;
82-
fi
83-
}
84-
85-
extra_pkgs_install() {
86-
apt-get update
87-
imex_install
88-
rm -rf /var/lib/apt/lists/*
89-
}
90-
91108
if [ "$1" = "download_driver_package_deps" ]; then
92109
download_driver_package_deps
93110
elif [ "$1" = "build_local_apt_repo" ]; then
94111
build_local_apt_repo
95112
elif [ "$1" = "fetch_nvidia_installer" ]; then
96113
fetch_nvidia_installer
97-
elif [ "$1" = "extra_pkgs_install" ]; then
98-
extra_pkgs_install
99114
else
100115
echo "Unknown function: $1"
101116
exit 1

0 commit comments

Comments
 (0)