remove lkdtm #36
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | 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 | |