|
@@ -34,6 +34,17 @@
|
|
|
#define MIN_GAP (128*1024*1024)
|
|
|
#define MAX_GAP (TASK_SIZE/6*5)
|
|
|
|
|
|
+static inline int mmap_is_legacy(void)
|
|
|
+{
|
|
|
+ if (current->personality & ADDR_COMPAT_LAYOUT)
|
|
|
+ return 1;
|
|
|
+
|
|
|
+ if (current->signal->rlim[RLIMIT_STACK].rlim_cur == RLIM_INFINITY)
|
|
|
+ return 1;
|
|
|
+
|
|
|
+ return sysctl_legacy_va_layout;
|
|
|
+}
|
|
|
+
|
|
|
static inline unsigned long mmap_base(void)
|
|
|
{
|
|
|
unsigned long gap = current->signal->rlim[RLIMIT_STACK].rlim_cur;
|
|
@@ -46,17 +57,6 @@ static inline unsigned long mmap_base(void)
|
|
|
return TASK_SIZE - (gap & PAGE_MASK);
|
|
|
}
|
|
|
|
|
|
-static inline int mmap_is_legacy(void)
|
|
|
-{
|
|
|
- if (current->personality & ADDR_COMPAT_LAYOUT)
|
|
|
- return 1;
|
|
|
-
|
|
|
- if (current->signal->rlim[RLIMIT_STACK].rlim_cur == RLIM_INFINITY)
|
|
|
- return 1;
|
|
|
-
|
|
|
- return sysctl_legacy_va_layout;
|
|
|
-}
|
|
|
-
|
|
|
/*
|
|
|
* This function, called very early during the creation of a new
|
|
|
* process VM image, sets up which VM layout function to use:
|