blob: c373e887c0664b7206004ea806b1f2a8a00b8b87 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001// SPDX-License-Identifier: GPL-2.0
Christoph Lameter1cdf25d2008-04-28 02:12:44 -07002/*
3 * Generate definitions needed by the preprocessor.
4 * This code generates raw asm output which is post-processed
5 * to extract and format the required data.
6 */
7
8#define __GENERATING_BOUNDS_H
9/* Include headers that define the enum constants of interest */
Christoph Lameter9223b4192008-04-28 02:12:48 -070010#include <linux/page-flags.h>
Christoph Lameter97965472008-04-28 02:12:54 -070011#include <linux/mmzone.h>
Christoph Lameter37487a52008-04-29 01:03:49 -070012#include <linux/kbuild.h>
Peter Zijlstra90572892013-10-07 11:29:20 +010013#include <linux/log2.h>
Kirill A. Shutemov24b9fdc2013-11-18 10:47:27 +020014#include <linux/spinlock_types.h>
Christoph Lameter1cdf25d2008-04-28 02:12:44 -070015
16void foo(void)
17{
Sam Ravnborg01fc0ac2009-04-19 21:57:19 +020018 /* The enum constants to put into include/generated/bounds.h */
Christoph Lameter9223b4192008-04-28 02:12:48 -070019 DEFINE(NR_PAGEFLAGS, __NR_PAGEFLAGS);
Christoph Lameter97965472008-04-28 02:12:54 -070020 DEFINE(MAX_NR_ZONES, __MAX_NR_ZONES);
Peter Zijlstra90572892013-10-07 11:29:20 +010021#ifdef CONFIG_SMP
22 DEFINE(NR_CPUS_BITS, ilog2(CONFIG_NR_CPUS));
23#endif
Kirill A. Shutemov597d7952013-12-20 13:35:58 +020024 DEFINE(SPINLOCK_SIZE, sizeof(spinlock_t));
Christoph Lameter1cdf25d2008-04-28 02:12:44 -070025 /* End of constants */
26}