Skip to content

remove lkdtm

remove lkdtm #36

Workflow file for this run

name: VM Test
on:
push:
branches: [ "**" ]
workflow_dispatch:
jobs:
vm-test:
runs-on: ubuntu-latest
container:
image: rockylinux:9
options: --cpus 4 --privileged
steps:
#- name: Check out repository
# uses: actions/checkout@v4
# with:
# ref: "${{ github.event.pull_request.head.sha }}"
#- name: Enable KVM
# run: |
# #echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
# echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | tee /etc/udev/rules.d/99-kvm4all.rules
# udevadm control --reload-rules
# udevadm trigger --name-match=kvm
# #sudo udevadm control --reload-rules
# #sudo udevadm trigger --name-match=kvm
#- name: Install tools
# run: |
# sudo apt-get install bison build-essential cowsay flex libelf-dev libncurses-dev libssl-dev pahole rsync virtme-ng
#- name: Run vng
# run: |
# sed -i 's/set_page_dirty = v9fs_set_page_dirty/dirty_folio = v9fs_dirty_folio/g' fs/9p/vfs_addr.c
# sed -i 's/v9fs_set_page_dirty __set_page_dirty_nobuffers/v9fs_dirty_folio filemap_dirty_folio/g' fs/9p/vfs_addr.c
# sudo vng -b --config configs/kernel-x86_64-rhel.config
# sudo vng --cpus $(nproc) -- uname -r | cowsay
- name: Install tools and Libraries
run: |
dnf install epel-release -y
# Packages for booting a vm
dnf install qemu-kvm virtme-ng cowsay -y
# Packages for building the kernel
dnf groupinstall 'Development Tools' -y
dnf install --enablerepo=crb bc dwarves kernel-devel openssl-devel elfutils-libelf-devel -y
# Packages for testing the kernel
dnf config-manager --set-enabled devel
dnf install alsa-lib-devel bison clang elfutils-libelf-devel ethtool flex fuse-devel gcc git glibc-static iperf3 iproute iproute-tc iputils iptables-nft jq libasan-static libcap-devel libcap-ng-devel libmnl-devel libubsan make net-tools nftables numactl-devel openssl-devel popt-static python3-jsonschema python3-pyyaml rsync socat sudo -y
- name: Checkout code
uses: actions/checkout@v4
with:
ref: "${{ github.event.pull_request.head.sha }}"
fetch-depth: 0
- name: Run vng
run: |
#sed -i 's/set_page_dirty = v9fs_set_page_dirty/dirty_folio = v9fs_dirty_folio/g' fs/9p/vfs_addr.c
#sed -i 's/v9fs_set_page_dirty __set_page_dirty_nobuffers/v9fs_dirty_folio filemap_dirty_folio/g' fs/9p/vfs_addr.c
#vng -b --config configs/kernel-x86_64-rhel.config
#vng --cpus $(nproc) --qemu /usr/libexec/qemu-kvm --disable-microvm --force-initramfs -- uname -r && make kselftest TARGETS="net x86 zram" | tee selftests-after.log
cp configs/kernel-x86_64-rhel.config .config
make olddefconfig
make headers
dnf install kernel -y
vng -r /lib/modules/*/vmlinuz --cpus $(nproc) --qemu /usr/libexec/qemu-kvm --disable-microvm --force-initramfs -- uname -r && make kselftest TARGETS="bpf capabilities cgroup clone3 core cpufreq cpu-hotplug drivers/dma-buf drivers/net/bonding drivers/net/team efivars exec filesystems filesystems/binderfs filesystems/epoll firmware fpu ftrace gpio hid intel_pstate ipc ir kcmp kvm landlock lib livepatch membarrier memfd memory-hotplug mincore mount mount_setattr mqueue nci net net/forwarding net/mptcp net/hsr netfilter nsfs pidfd pid_namespace pstore ptrace openat2 rlimits rseq rtc seccomp sgx sigaltstack size splice static_keys sync syscall_user_dispatch sysctl tc-testing tdx timens timers tmpfs tpm2 user vDSO vm x86 zram" | tee selftests-before.log
grep ^ok selftests-before.log | wc -l
#grep ^ok selftests-after.log | wc -l