File tree Expand file tree Collapse file tree 13 files changed +7027
-18
lines changed Expand file tree Collapse file tree 13 files changed +7027
-18
lines changed Original file line number Diff line number Diff line change
1
+ name : ' vmtest'
2
+ description : ' Build + run vmtest'
3
+ inputs :
4
+ arch :
5
+ description : ' what arch to test'
6
+ required : true
7
+ default : ' x86_64'
8
+ runs :
9
+ using : " composite"
10
+ steps :
11
+ # 1. Setup environment
12
+ - name : Setup build environment
13
+ uses : libbpf/ci/setup-build-env@master
14
+ # 2. Build
15
+ - name : Build kernel image
16
+ shell : bash
17
+ run : ${GITHUB_ACTION_PATH}/build.sh ${{ inputs.arch }}
18
+ - name : Build selftests
19
+ shell : bash
20
+ run : ${GITHUB_ACTION_PATH}/build_selftests.sh
21
+ env :
22
+ VMLINUX_BTF : ${{ github.workspace }}/vmlinux
23
+ # 3. Test
24
+ - name : Prepare rootfs
25
+ uses : libbpf/ci/prepare-rootfs@master
26
+ with :
27
+ project-name : ' libbpf'
28
+ arch : ${{ inputs.arch }}
29
+ kernel-root : ' .'
30
+ - name : Run selftests
31
+ uses : libbpf/ci/run-qemu@master
32
+ with :
33
+ arch : ${{ inputs.arch}}
34
+ img : ' /tmp/root.img'
35
+ vmlinuz : ' ${{ github.workspace }}/vmlinuz'
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -euo pipefail
4
+
5
+ ARCH=" $1 "
6
+
7
+ THISDIR=" $( cd $( dirname $0 ) && pwd) "
8
+
9
+ source " ${THISDIR} " /helpers.sh
10
+
11
+ travis_fold start build_kernel " Building kernel"
12
+
13
+ cp ${GITHUB_WORKSPACE} /travis-ci/vmtest/configs/config-latest.${ARCH} .config
14
+
15
+ make -j $(( 4 * $(nproc)) ) olddefconfig all > /dev/null
16
+
17
+ travis_fold end build_kernel
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -euo pipefail
4
+
5
+ THISDIR=" $( cd $( dirname $0 ) && pwd) "
6
+
7
+ source " ${THISDIR} " /helpers.sh
8
+
9
+ travis_fold start prepare_selftests " Building selftests"
10
+
11
+ LLVM_VER=15
12
+ LIBBPF_PATH=" ${REPO_ROOT} "
13
+
14
+ PREPARE_SELFTESTS_SCRIPT=${THISDIR} /prepare_selftests-${KERNEL} .sh
15
+ if [ -f " ${PREPARE_SELFTESTS_SCRIPT} " ]; then
16
+ (cd " ${REPO_ROOT} /${REPO_PATH} /tools/testing/selftests/bpf" && ${PREPARE_SELFTESTS_SCRIPT} )
17
+ fi
18
+
19
+ if [[ " ${KERNEL} " = ' LATEST' ]]; then
20
+ VMLINUX_H=
21
+ else
22
+ VMLINUX_H=${THISDIR} /vmlinux.h
23
+ fi
24
+
25
+ cd ${REPO_ROOT} /${REPO_PATH}
26
+ make \
27
+ CLANG=clang-${LLVM_VER} \
28
+ LLC=llc-${LLVM_VER} \
29
+ LLVM_STRIP=llvm-strip-${LLVM_VER} \
30
+ VMLINUX_BTF=" ${VMLINUX_BTF} " \
31
+ VMLINUX_H=" ${VMLINUX_H} " \
32
+ -C " ${REPO_ROOT} /${REPO_PATH} /tools/testing/selftests/bpf" \
33
+ -j $(( 4 * $(nproc)) ) > /dev/null
34
+ cd -
35
+ mkdir " ${LIBBPF_PATH} " /selftests
36
+ cp -R " ${REPO_ROOT} /${REPO_PATH} /tools/testing/selftests/bpf" \
37
+ " ${LIBBPF_PATH} " /selftests
38
+ cd " ${LIBBPF_PATH} "
39
+ rm selftests/bpf/.gitignore
40
+ git add selftests
41
+
42
+ travis_fold end prepare_selftests
Original file line number Diff line number Diff line change
1
+ # $1 - start or end
2
+ # $2 - fold identifier, no spaces
3
+ # $3 - fold section description
4
+ travis_fold () {
5
+ local YELLOW=' \033[1;33m'
6
+ local NOCOLOR=' \033[0m'
7
+ if [ -z ${GITHUB_WORKFLOW+x} ]; then
8
+ echo travis_fold:$1 :$2
9
+ if [ ! -z " ${3:- } " ]; then
10
+ echo -e " ${YELLOW} $3 ${NOCOLOR} "
11
+ fi
12
+ echo
13
+ else
14
+ if [ $1 = " start" ]; then
15
+ line=" ::group::$2 "
16
+ if [ ! -z " ${3:- } " ]; then
17
+ line=" $line - ${YELLOW} $3 ${NOCOLOR} "
18
+ fi
19
+ else
20
+ line=" ::endgroup::"
21
+ fi
22
+ echo -e " $line "
23
+ fi
24
+ }
25
+
26
+ __print () {
27
+ local TITLE=" "
28
+ if [[ -n $2 ]]; then
29
+ TITLE=" title=$2 "
30
+ fi
31
+ echo " ::$1 ${TITLE} ::$3 "
32
+ }
33
+
34
+ # $1 - title
35
+ # $2 - message
36
+ print_error () {
37
+ __print error $1 $2
38
+ }
39
+
40
+ # $1 - title
41
+ # $2 - message
42
+ print_notice () {
43
+ __print notice $1 $2
44
+ }
Original file line number Diff line number Diff line change
1
+ name : bpf-ci
2
+
3
+ on :
4
+ pull_request :
5
+
6
+ concurrency :
7
+ group : ci-test-${{ github.head_ref }}
8
+ cancel-in-progress : true
9
+
10
+ jobs :
11
+ VM_Test :
12
+ runs-on : ${{ matrix.runs_on }}
13
+ name : Kernel ${{ matrix.kernel }} on ${{ matrix.runs_on }} + selftests
14
+ timeout-minutes : 100
15
+ strategy :
16
+ fail-fast : false
17
+ matrix :
18
+ include :
19
+ - kernel : ' LATEST'
20
+ runs_on : ubuntu-latest
21
+ arch : ' x86_64'
22
+ - kernel : ' LATEST'
23
+ runs_on : z15
24
+ arch : ' s390x'
25
+ env :
26
+ AUTHOR_EMAIL : " $(git log -1 --pretty=\" %aE\" )"
27
+ KERNEL : LATEST
28
+ REPO_ROOT : ${{ github.workspace }}
29
+ REPO_PATH : " "
30
+ steps :
31
+ - uses : actions/checkout@v2
32
+ - if : ${{ github.repository != 'kernel-patches/bpf' && github.repository != 'kernel-patches/bpf-rc' }}
33
+ name : Download bpf-next tree
34
+ uses : libbpf/ci/get-linux-source@master
35
+ with :
36
+ dest : ' .kernel'
37
+ - if : ${{ github.repository != 'kernel-patches/bpf' && github.repository != 'kernel-patches/bpf-rc' }}
38
+ name : Move linux source in place
39
+ shell : bash
40
+ run : |
41
+ rm -rf .kernel/.git
42
+ cp -rf .kernel/. .
43
+ rm -rf .kernel
44
+ - uses : libbpf/ci/patch-kernel@master
45
+ with :
46
+ patches-root : ' ${{ github.workspace }}/travis-ci/diffs'
47
+ repo-root : ' ${{ github.workspace }}'
48
+ - uses : ./.github/actions/vmtest
49
+ with :
50
+ arch : ${{ matrix.arch }}
Original file line number Diff line number Diff line change 1
- Linux kernel
2
- ============
3
-
4
- There are several guides for kernel developers and users. These guides can
5
- be rendered in a number of formats, like HTML and PDF. Please read
6
- Documentation/admin-guide/README.rst first.
7
-
8
- In order to build the documentation, use ``make htmldocs`` or
9
- ``make pdfdocs``. The formatted documentation can also be read online at:
10
-
11
- https://www.kernel.org/doc/html/latest/
12
-
13
- There are various text files in the Documentation/ subdirectory,
14
- several of them using the Restructured Text markup notation.
15
-
16
- Please read the Documentation/process/changes.rst file, as it contains the
17
- requirements for building and running the kernel, and information about
18
- the problems which may result by upgrading your kernel.
You can’t perform that action at this time.
0 commit comments