Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / kernel / fork.c
index e2a5156..a604599 100644 (file)
@@ -164,10 +164,6 @@ static inline void free_task_struct(struct task_struct *tsk)
 }
 #endif
 
-void __weak arch_release_thread_stack(unsigned long *stack)
-{
-}
-
 #ifndef CONFIG_ARCH_THREAD_STACK_ALLOCATOR
 
 /*
@@ -422,7 +418,6 @@ static void release_task_stack(struct task_struct *tsk)
                return;  /* Better to leak the stack than to free prematurely */
 
        account_kernel_stack(tsk, -1);
-       arch_release_thread_stack(tsk->stack);
        free_thread_stack(tsk);
        tsk->stack = NULL;
 #ifdef CONFIG_VMAP_STACK
@@ -744,15 +739,16 @@ void __init __weak arch_task_cache_init(void) { }
 static void set_max_threads(unsigned int max_threads_suggested)
 {
        u64 threads;
+       unsigned long nr_pages = totalram_pages();
 
        /*
         * The number of threads shall be limited such that the thread
         * structures may only consume a small part of the available memory.
         */
-       if (fls64(totalram_pages) + fls64(PAGE_SIZE) > 64)
+       if (fls64(nr_pages) + fls64(PAGE_SIZE) > 64)
                threads = MAX_THREADS;
        else
-               threads = div64_u64((u64) totalram_pages * (u64) PAGE_SIZE,
+               threads = div64_u64((u64) nr_pages * (u64) PAGE_SIZE,
                                    (u64) THREAD_SIZE * 8UL);
 
        if (threads > max_threads_suggested)
@@ -840,7 +836,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
 {
        struct task_struct *tsk;
        unsigned long *stack;
-       struct vm_struct *stack_vm_area;
+       struct vm_struct *stack_vm_area __maybe_unused;
        int err;
 
        if (node == NUMA_NO_NODE)