add iputils #29
  
    
      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 flex fuse-devel gcc git glibc-static iproute iputils jq libasan-static libcap-devel libcap-ng-devel libmnl-devel libubsan make net-tools numactl-devel openssl-devel popt-static python3-jsonschema python3-pyyaml rsync -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 cpufreq cpu-hotplug drivers/dma-buf drivers/net/bonding drivers/net/team efivars net x86 zram" | tee selftests-before.log | |
| grep ^ok selftests-before.log | wc -l | |
| #grep ^ok selftests-after.log | wc -l | |