diff options
| -rw-r--r-- | init/main.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/init/main.c b/init/main.c index 44b2433334c7..cb54cd3dbf05 100644 --- a/init/main.c +++ b/init/main.c | |||
| @@ -560,9 +560,6 @@ asmlinkage void __init start_kernel(void) | |||
| 560 | early_boot_irqs_disabled = false; | 560 | early_boot_irqs_disabled = false; |
| 561 | local_irq_enable(); | 561 | local_irq_enable(); |
| 562 | 562 | ||
| 563 | /* Interrupts are enabled now so all GFP allocations are safe. */ | ||
| 564 | gfp_allowed_mask = __GFP_BITS_MASK; | ||
| 565 | |||
| 566 | kmem_cache_init_late(); | 563 | kmem_cache_init_late(); |
| 567 | 564 | ||
| 568 | /* | 565 | /* |
| @@ -842,6 +839,10 @@ static int __init kernel_init(void * unused) | |||
| 842 | * Wait until kthreadd is all set-up. | 839 | * Wait until kthreadd is all set-up. |
| 843 | */ | 840 | */ |
| 844 | wait_for_completion(&kthreadd_done); | 841 | wait_for_completion(&kthreadd_done); |
| 842 | |||
| 843 | /* Now the scheduler is fully set up and can do blocking allocations */ | ||
| 844 | gfp_allowed_mask = __GFP_BITS_MASK; | ||
| 845 | |||
| 845 | /* | 846 | /* |
| 846 | * init can allocate pages on any node | 847 | * init can allocate pages on any node |
| 847 | */ | 848 | */ |
