diff --git a/src/tests/system/kernel/device_manager/dma_resource_test.cpp b/src/tests/system/kernel/device_manager/dma_resource_test.cpp index 250e717ad7..b259058692 100644 --- a/src/tests/system/kernel/device_manager/dma_resource_test.cpp +++ b/src/tests/system/kernel/device_manager/dma_resource_test.cpp @@ -177,7 +177,7 @@ do_io(void* data, IOOperation* operation) const iovec& vec = operation->Vecs()[i]; addr_t base = (addr_t)vec.iov_base; size_t length = vec.iov_len; - size_t pageOffset = base & ~(B_PAGE_SIZE - 1); + size_t pageOffset = base % B_PAGE_SIZE; while (length > 0) { size_t toCopy = min_c(length, B_PAGE_SIZE - pageOffset);