mirror of https://github.com/torvalds/linux.git
34 lines
900 B
C
34 lines
900 B
C
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
|
|
/* Copyright (c) 2024 Meta Platforms, Inc. and affiliates. */
|
|
#pragma once
|
|
|
|
#ifndef arena_container_of
|
|
#define arena_container_of(ptr, type, member) \
|
|
({ \
|
|
void __arena *__mptr = (void __arena *)(ptr); \
|
|
((type *)(__mptr - offsetof(type, member))); \
|
|
})
|
|
#endif
|
|
|
|
/* Provide the definition of PAGE_SIZE. */
|
|
#include <sys/user.h>
|
|
|
|
#define __arena
|
|
#define __arg_arena
|
|
#define cast_kern(ptr) /* nop for user space */
|
|
#define cast_user(ptr) /* nop for user space */
|
|
char __attribute__((weak)) arena[1];
|
|
|
|
#ifndef offsetof
|
|
#define offsetof(type, member) ((unsigned long)&((type *)0)->member)
|
|
#endif
|
|
|
|
static inline void __arena* bpf_arena_alloc_pages(void *map, void *addr, __u32 page_cnt,
|
|
int node_id, __u64 flags)
|
|
{
|
|
return NULL;
|
|
}
|
|
static inline void bpf_arena_free_pages(void *map, void __arena *ptr, __u32 page_cnt)
|
|
{
|
|
}
|