Skip to content

biostacks.bt: use tracepoints instead of kprobes #10

biostacks.bt: use tracepoints instead of kprobes

biostacks.bt: use tracepoints instead of kprobes #10

Workflow file for this run

name: CI
on: [push, pull_request]
# Cancel previous run if a new one is started
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
clang-format:
# Only run clang-format on pull requests. We want to allow people to
# ignore clang-format if they think it's not helpful.
if: "github.event_name == 'pull_request'"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: recursive
- name: Install clang-format
run: sudo apt-get install clang-format
- name: Download git-clang-format
run: wget https://raw.githubusercontent.com/llvm-mirror/clang/master/tools/clang-format/git-clang-format
- name: Install git-clang-format
run: sudo install -t /bin git-clang-format
- name: Fetch origin master
run: git fetch --no-tags --prune --depth=1 origin master
- name: clang-format
run: git clang-format origin/master
- name: diff
run: git diff --exit-code
build_test:
runs-on: ubuntu-latest
strategy:
matrix:
env:
- NAME: LLVM 10 Debug
CMAKE_BUILD_TYPE: Debug
NIX_TARGET: .#bpftrace-llvm10
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 10 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm10
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 10 Clang Debug
CMAKE_BUILD_TYPE: Debug
NIX_TARGET: .#bpftrace-llvm10
CC: clang
CXX: clang++
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 11 Debug
CMAKE_BUILD_TYPE: Debug
NIX_TARGET: .#bpftrace-llvm11
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 11 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm11
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 12 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm12
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 13 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm13
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 14 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm14
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 15 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm15
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: LLVM 16 Release
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm16
RUNTIME_TEST_DISABLE: probe.kprobe_offset_fail_size,usdt.usdt probes - file based semaphore activation multi process
TOOLS_TEST_OLDVERSION: tcpdrop.bt
TOOLS_TEST_DISABLE: biosnoop.bt
- NAME: Memleak test (LLVM 11 Debug)
CMAKE_BUILD_TYPE: Debug
NIX_TARGET: .#bpftrace-llvm11
RUN_MEMLEAK_TEST: 1
RUN_TESTS: 0
- NAME: Memleak test (LLVM 11 Release)
CMAKE_BUILD_TYPE: Release
NIX_TARGET: .#bpftrace-llvm11
RUN_MEMLEAK_TEST: 1
RUN_TESTS: 0
steps:
- uses: actions/checkout@v2
- uses: DeterminateSystems/nix-installer-action@v4
- uses: DeterminateSystems/magic-nix-cache-action@v2
- name: Load kernel modules
# nf_tables and xfs are necessary for testing kernel modules BTF support
run: |
sudo modprobe nf_tables
sudo modprobe xfs
- name: Build and test
env: ${{matrix.env}}
run: ./.github/include/ci.py
irc:
# Notify IRC of build failures on pushes only if we are running from
# the main repo. We don't want this rule to trigger from forked repos.
needs:
- build_test
if: "failure() && github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'iovisor/bpftrace'"
runs-on: ubuntu-latest
steps:
- name: Message channel
uses: rectalogic/notify-irc@v1
with:
nickname: bpftrace-ci-bot
server: irc.oftc.net
port: 6667
tls: false
channel: "#bpftrace"
message: |
master is BROKEN at https://github.com/iovisor/bpftrace/commit/${{github.sha}}