at for-next 964 B view raw
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 * Dmabuf device memory provider. 4 * 5 * Authors: Mina Almasry <almasrymina@google.com> 6 * 7 */ 8#ifndef _NET_MP_DMABUF_DEVMEM_H 9#define _NET_MP_DMABUF_DEVMEM_H 10 11#include <net/netmem.h> 12 13#if defined(CONFIG_NET_DEVMEM) 14int mp_dmabuf_devmem_init(struct page_pool *pool); 15 16netmem_ref mp_dmabuf_devmem_alloc_netmems(struct page_pool *pool, gfp_t gfp); 17 18void mp_dmabuf_devmem_destroy(struct page_pool *pool); 19 20bool mp_dmabuf_devmem_release_page(struct page_pool *pool, netmem_ref netmem); 21#else 22static inline int mp_dmabuf_devmem_init(struct page_pool *pool) 23{ 24 return -EOPNOTSUPP; 25} 26 27static inline netmem_ref 28mp_dmabuf_devmem_alloc_netmems(struct page_pool *pool, gfp_t gfp) 29{ 30 return 0; 31} 32 33static inline void mp_dmabuf_devmem_destroy(struct page_pool *pool) 34{ 35} 36 37static inline bool 38mp_dmabuf_devmem_release_page(struct page_pool *pool, netmem_ref netmem) 39{ 40 return false; 41} 42#endif 43 44#endif /* _NET_MP_DMABUF_DEVMEM_H */