Skip to content

Commit

Permalink
Add pahole staging workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
theihor committed Jan 15, 2025
1 parent a4ad95c commit 70b4d45
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 1 deletion.
12 changes: 12 additions & 0 deletions .github/workflows/kernel-build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,14 @@ on:
type: boolean
description: Build selftests with -O2 optimization in addition to non-optimized build.
default: false
pahole-origin:
required: false
default: 'https://git.kernel.org/pub/scm/devel/pahole/pahole.git'
type: string
pahole-rev:
required: false
default: 'master'
type: string
secrets:
AWS_ROLE_ARN:
required: true
Expand All @@ -69,6 +77,8 @@ jobs:
llvm-version: ${{ inputs.llvm-version }}
kernel: ${{ inputs.kernel }}
download_sources: ${{ inputs.download_sources }}
pahole-origin: ${{ inputs.pahole-origin }}
pahole-rev: ${{ inputs.pahole-rev }}
build-release:
if: ${{ inputs.build_release }}
uses: ./.github/workflows/kernel-build.yml
Expand All @@ -80,6 +90,8 @@ jobs:
llvm-version: ${{ inputs.llvm-version }}
kernel: ${{ inputs.kernel }}
download_sources: ${{ inputs.download_sources }}
pahole-origin: ${{ inputs.pahole-origin }}
pahole-rev: ${{ inputs.pahole-rev }}
release: true
test:
if: ${{ inputs.run_tests }}
Expand Down
11 changes: 10 additions & 1 deletion .github/workflows/kernel-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,14 @@ on:
type: boolean
description: Build selftest with -O2 optimization
default: false
pahole-origin:
required: false
type: string
default: 'https://git.kernel.org/pub/scm/devel/pahole/pahole.git'
pahole-rev:
required: false
type: string
default: 'master'

jobs:
build:
Expand Down Expand Up @@ -96,7 +104,8 @@ jobs:
with:
arch: ${{ inputs.arch }}
llvm-version: ${{ inputs.llvm-version }}
pahole: master
pahole: ${{ inputs.pahole-rev }}
pahole-origin: ${{ inputs.pahole-origin }}

- name: Build kernel image
uses: libbpf/ci/build-linux@v3
Expand Down
54 changes: 54 additions & 0 deletions .github/workflows/pahole.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: pahole staging

on:
schedule:
- cron: '0 0 * * 0' # once a week
push:
branches:
- "pahole-staging"
workflow_dispatch:
inputs:
origin:
default: 'https://git.kernel.org/pub/scm/devel/pahole/pahole.git'
required: true
rev:
default: 'next'
required: true

jobs:
build-and-test:
strategy:
matrix:
runs_on: ["ubuntu-24.04"]
build_runs_on: ["ubuntu-24.04"]
arch: ["x86_64", "aarch64", "s390x"]
toolchain:
- { "name": "llvm", "fullname": "llvm-18", "version": 18 }
tests:
- include:
- { "test": "test_progs", "continue_on_error": false, "timeout_minutes": 360 }
fail-fast: false
name: "pahole@next ${{ matrix.arch }}"
uses: ./.github/workflows/kernel-build-test.yml
permissions:
id-token: write
contents: read
with:
arch: ${{ matrix.arch }}
build_release: false
build_runs_on: ${{ toJSON(matrix.build_runs_on) }}
download_sources: ${{ github.repository == 'kernel-patches/vmtest' }}
kernel: 'LATEST'
llvm-version: ${{ matrix.toolchain.version }}
pahole-origin: ${{ inputs.origin || 'https://git.kernel.org/pub/scm/devel/pahole/pahole.git' }}
pahole-rev: ${{ inputs.rev || 'next' }}
run_tests: true
run_veristat: false
runs_on: ${{ toJSON(matrix.runs_on) }}
tests: ${{ toJSON(matrix.tests) }}
toolchain: ${{ matrix.toolchain.name }}
toolchain_full: ${{ matrix.toolchain.fullname }}
# we need to pass AWS_ROLE_ARN, because github complains it's "required"
# however it's not used, because we don't run veristat
secrets:
AWS_ROLE_ARN: ''

0 comments on commit 70b4d45

Please sign in to comment.