diff --git a/.github/workflows/static-checks.yaml b/.github/workflows/static-checks.yaml index 1687af9bb775..8278066d9509 100644 --- a/.github/workflows/static-checks.yaml +++ b/.github/workflows/static-checks.yaml @@ -78,6 +78,7 @@ jobs: - "ubuntu-20.04" - "arm-no-k8s" - "s390x" + - "ppc64le" runs-on: ${{ matrix.instance }} steps: - name: Adjust a permission for repo diff --git a/src/agent/src/random.rs b/src/agent/src/random.rs index f97f0f0334b4..29cad8e63d06 100644 --- a/src/agent/src/random.rs +++ b/src/agent/src/random.rs @@ -12,8 +12,8 @@ use std::os::unix::io::{AsRawFd, FromRawFd}; use tracing::instrument; pub const RNGDEV: &str = "/dev/random"; -pub const RNDADDTOENTCNT: libc::c_int = 0x40045201; -pub const RNDRESEEDCRNG: libc::c_int = 0x5207; +pub const RNDADDTOENTCNT: libc::c_uint = 0x40045201; +pub const RNDRESEEDCRNG: libc::c_uint = 0x20005207; // Handle the differing ioctl(2) request types for different targets #[cfg(target_env = "musl")] diff --git a/src/agent/src/rpc.rs b/src/agent/src/rpc.rs index 955588625ce7..8a53361a0f63 100644 --- a/src/agent/src/rpc.rs +++ b/src/agent/src/rpc.rs @@ -7,6 +7,7 @@ use async_trait::async_trait; use rustjail::{pipestream::PipeStream, process::StreamType}; use tokio::io::{AsyncReadExt, AsyncWriteExt, ReadHalf}; use tokio::sync::Mutex; +use cfg_if::cfg_if; use std::ffi::{CString, OsStr}; use std::fmt::Debug; @@ -2695,6 +2696,12 @@ OtherField:other #[tokio::test] async fn test_volume_capacity_stats() { skip_if_not_root!(); + let block_size = 4 * 1024; + cfg_if! { + if #[cfg(target_arch = "powerpc64le")] { + block_size = 64 * 1024; + } + } // Verify error if path does not exist assert!(get_volume_capacity_stats("/does-not-exist").is_err()); diff --git a/src/dragonball/Makefile b/src/dragonball/Makefile index 4df695072b5f..40bb7f915ba5 100644 --- a/src/dragonball/Makefile +++ b/src/dragonball/Makefile @@ -6,9 +6,9 @@ include ../../utils.mk PROJECT_DIRS := $(shell find . -name Cargo.toml -printf '%h\n' | sort -u) -ifeq ($(ARCH), s390x) +ifeq ($(ARCH), $(filter $(ARCH), s390x ppc64le)) default build check test clippy vendor: - @echo "s390x not support currently" + @echo "$(ARCH) is not support currently" exit 0 else diff --git a/src/runtime/cmd/kata-runtime/kata-env_ppc64le_test.go b/src/runtime/cmd/kata-runtime/kata-env_ppc64le_test.go index a794ba338c31..16415bfcbdd4 100644 --- a/src/runtime/cmd/kata-runtime/kata-env_ppc64le_test.go +++ b/src/runtime/cmd/kata-runtime/kata-env_ppc64le_test.go @@ -9,7 +9,7 @@ import "testing" func getExpectedHostDetails(tmpdir string) (HostInfo, error) { expectedVendor := "" - expectedModel := "POWER8" + expectedModel := "POWER9" expectedVMContainerCapable := true return genericGetExpectedHostDetails(tmpdir, expectedVendor, expectedModel, expectedVMContainerCapable) } diff --git a/src/tools/agent-ctl/Makefile b/src/tools/agent-ctl/Makefile index fe56fa098241..a49f88e6b01b 100644 --- a/src/tools/agent-ctl/Makefile +++ b/src/tools/agent-ctl/Makefile @@ -7,7 +7,7 @@ include ../../../utils.mk ifeq ($(ARCH), ppc64le) override ARCH = powerpc64le - endif +endif .DEFAULT_GOAL := default default: build diff --git a/src/tools/kata-ctl/Makefile b/src/tools/kata-ctl/Makefile index 546f0783adfd..47d97dd5cd80 100644 --- a/src/tools/kata-ctl/Makefile +++ b/src/tools/kata-ctl/Makefile @@ -5,6 +5,10 @@ include ../../../utils.mk +ifeq ($(ARCH), ppc64le) + override ARCH = powerpc64le +endif + PROJECT_NAME = Kata Containers PROJECT_URL = https://github.com/kata-containers PROJECT_COMPONENT = kata-ctl @@ -36,7 +40,7 @@ default: $(TARGET) build $(TARGET): $(GENERATED_CODE) -build: +build: update @RUSTFLAGS="$(EXTRA_RUSTFLAGS) --deny warnings" cargo build --target $(TRIPLE) $(if $(findstring release,$(BUILD_TYPE)),--release) $(EXTRA_RUSTFEATURES) static-checks-build: $(GENERATED_CODE) diff --git a/src/tools/runk/Makefile b/src/tools/runk/Makefile index cd9a24a8b178..18695567971a 100644 --- a/src/tools/runk/Makefile +++ b/src/tools/runk/Makefile @@ -10,7 +10,7 @@ include ../../../utils.mk ifeq ($(ARCH), ppc64le) override ARCH = powerpc64le - endif +endif TARGET = runk TARGET_PATH = target/$(TRIPLE)/$(BUILD_TYPE)/$(TARGET) diff --git a/src/tools/trace-forwarder/Makefile b/src/tools/trace-forwarder/Makefile index 3bdd5d53a52c..5d9f718561c4 100644 --- a/src/tools/trace-forwarder/Makefile +++ b/src/tools/trace-forwarder/Makefile @@ -7,7 +7,7 @@ include ../../../utils.mk ifeq ($(ARCH), ppc64le) override ARCH = powerpc64le - endif +endif .DEFAULT_GOAL := default default: build