Add stubs for kmalloc_obj() and kmalloc_objs() to the tools/virtio test harness, matching the new kernel allocator API. Also add the DMA_ATTR_CPU_CACHE_CLEAN definition and include kernel.h from err.h for the unlikely() macro.
Assisted-by: Claude:claude-opus-4-6 Signed-off-by: Michael S. Tsirkin <[email protected]> --- tools/virtio/linux/dma-mapping.h | 2 ++ tools/virtio/linux/err.h | 1 + tools/virtio/linux/kernel.h | 6 ++++++ 3 files changed, 9 insertions(+) diff --git a/tools/virtio/linux/dma-mapping.h b/tools/virtio/linux/dma-mapping.h index fddfa2fbb276..8d1a16cb20db 100644 --- a/tools/virtio/linux/dma-mapping.h +++ b/tools/virtio/linux/dma-mapping.h @@ -60,4 +60,6 @@ enum dma_data_direction { */ #define DMA_MAPPING_ERROR (~(dma_addr_t)0) +#define DMA_ATTR_CPU_CACHE_CLEAN (1UL << 11) + #endif diff --git a/tools/virtio/linux/err.h b/tools/virtio/linux/err.h index 0943c644a701..b7b4cb516dc9 100644 --- a/tools/virtio/linux/err.h +++ b/tools/virtio/linux/err.h @@ -1,6 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0 */ #ifndef ERR_H #define ERR_H +#include <linux/kernel.h> #define MAX_ERRNO 4095 #define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO) diff --git a/tools/virtio/linux/kernel.h b/tools/virtio/linux/kernel.h index 416d02703f61..104abf9d1aee 100644 --- a/tools/virtio/linux/kernel.h +++ b/tools/virtio/linux/kernel.h @@ -65,6 +65,12 @@ static inline void *kmalloc_array(unsigned n, size_t s, gfp_t gfp) return kmalloc(n * s, gfp); } +#define kmalloc_obj(VAR_OR_TYPE, ...) \ + ((typeof(VAR_OR_TYPE) *)kmalloc(sizeof(typeof(VAR_OR_TYPE)), 0)) + +#define kmalloc_objs(VAR_OR_TYPE, COUNT, ...) \ + ((typeof(VAR_OR_TYPE) *)kmalloc(sizeof(typeof(VAR_OR_TYPE)) * (COUNT), 0)) + static inline void *kzalloc(size_t s, gfp_t gfp) { void *p = kmalloc(s, gfp); -- MST

