]> asedeno.scripts.mit.edu Git - linux.git/blob - include/linux/vermagic.h
mm: clean up and clarify lruvec lookup procedure
[linux.git] / include / linux / vermagic.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #include <generated/utsrelease.h>
3
4 /* Simply sanity version stamp for modules. */
5 #ifdef CONFIG_SMP
6 #define MODULE_VERMAGIC_SMP "SMP "
7 #else
8 #define MODULE_VERMAGIC_SMP ""
9 #endif
10 #ifdef CONFIG_PREEMPT
11 #define MODULE_VERMAGIC_PREEMPT "preempt "
12 #elif defined(CONFIG_PREEMPT_RT)
13 #define MODULE_VERMAGIC_PREEMPT "preempt_rt "
14 #else
15 #define MODULE_VERMAGIC_PREEMPT ""
16 #endif
17 #ifdef CONFIG_MODULE_UNLOAD
18 #define MODULE_VERMAGIC_MODULE_UNLOAD "mod_unload "
19 #else
20 #define MODULE_VERMAGIC_MODULE_UNLOAD ""
21 #endif
22 #ifdef CONFIG_MODVERSIONS
23 #define MODULE_VERMAGIC_MODVERSIONS "modversions "
24 #else
25 #define MODULE_VERMAGIC_MODVERSIONS ""
26 #endif
27 #ifndef MODULE_ARCH_VERMAGIC
28 #define MODULE_ARCH_VERMAGIC ""
29 #endif
30 #ifdef RANDSTRUCT_PLUGIN
31 #include <generated/randomize_layout_hash.h>
32 #define MODULE_RANDSTRUCT_PLUGIN "RANDSTRUCT_PLUGIN_" RANDSTRUCT_HASHED_SEED
33 #else
34 #define MODULE_RANDSTRUCT_PLUGIN
35 #endif
36
37 #define VERMAGIC_STRING                                                 \
38         UTS_RELEASE " "                                                 \
39         MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT                     \
40         MODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_MODVERSIONS       \
41         MODULE_ARCH_VERMAGIC                                            \
42         MODULE_RANDSTRUCT_PLUGIN
43