Viewing file: vdso.h (1.43 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright (C) 2015 Imagination Technologies * Author: Alex Smith <alex.smith@imgtec.com> */
#ifndef __ASM_VDSO_H #define __ASM_VDSO_H
#include <linux/mm_types.h> #include <vdso/datapage.h>
#include <asm/barrier.h>
/** * struct mips_vdso_image - Details of a VDSO image. * @data: Pointer to VDSO image data (page-aligned). * @size: Size of the VDSO image data (page-aligned). * @off_sigreturn: Offset of the sigreturn() trampoline. * @off_rt_sigreturn: Offset of the rt_sigreturn() trampoline. * @mapping: Special mapping structure. * * This structure contains details of a VDSO image, including the image data * and offsets of certain symbols required by the kernel. It is generated as * part of the VDSO build process, aside from the mapping page array, which is * populated at runtime. */ struct mips_vdso_image { void *data; unsigned long size;
unsigned long off_sigreturn; unsigned long off_rt_sigreturn;
struct vm_special_mapping mapping; };
/* * The following structures are auto-generated as part of the build for each * ABI by genvdso, see arch/mips/vdso/Makefile. */
extern struct mips_vdso_image vdso_image;
#ifdef CONFIG_MIPS32_O32 extern struct mips_vdso_image vdso_image_o32; #endif
#ifdef CONFIG_MIPS32_N32 extern struct mips_vdso_image vdso_image_n32; #endif
union mips_vdso_data { struct vdso_data data[CS_BASES]; u8 page[PAGE_SIZE]; };
#endif /* __ASM_VDSO_H */
|