summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2009-12-28 12:07:06 +0100
committerMark Wielaard <mjw@redhat.com>2009-12-28 12:07:06 +0100
commit3789f8023f367481f472593b2ead220b8e6d7061 (patch)
treec32db165552a92dcc2fda480fe69fbbf3d738493
parent3e5f3d56e045fadc78ea64894b7822707285f50d (diff)
downloadsystemtap-steved-3789f8023f367481f472593b2ead220b8e6d7061.tar.gz
systemtap-steved-3789f8023f367481f472593b2ead220b8e6d7061.tar.xz
systemtap-steved-3789f8023f367481f472593b2ead220b8e6d7061.zip
Define __GFP_MOVABLE GFP_ZONEMASK __GFP_NOTRACK in memory.stp if not there.
Older kernels might not have these defines available, so define them if not yet there.
-rw-r--r--tapset/memory.stp16
1 files changed, 16 insertions, 0 deletions
diff --git a/tapset/memory.stp b/tapset/memory.stp
index 3f44f9df..bd71a386 100644
--- a/tapset/memory.stp
+++ b/tapset/memory.stp
@@ -200,6 +200,22 @@ function __gfp_flag_str:string(gfp_flag:long) %{
long gfp_flag = THIS->gfp_flag;
THIS->__retvalue[0] = '\0';
+/* Older kernels < 2.6.32 didn't have some of these GFP defines yet. */
+#ifndef __GFP_MOVABLE
+#define __GFP_MOVABLE ((__force gfp_t)0x08u) /* Page is movable */
+#endif
+
+#ifndef GFP_ZONEMASK
+#define GFP_ZONEMASK (__GFP_DMA|__GFP_HIGHMEM|__GFP_DMA32|__GFP_MOVABLE)
+#endif
+
+#ifndef __GFP_NOTRACK
+#ifdef CONFIG_KMEMCHECK
+#define __GFP_NOTRACK ((__force gfp_t)0x200000u) /* Don't track with kmemcheck */
+#else
+#define __GFP_NOTRACK ((__force gfp_t)0)
+#endif
+#endif
/* Macro for GFP Bitmasks. */
/* The resulted GFP_FLAGS may be either single or concatenation of the multiple bitmasks. */