diff options
| -rw-r--r-- | arch/x86/mm/pageattr.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c index 0f3d50f4c48c..4fadfd2b7017 100644 --- a/arch/x86/mm/pageattr.c +++ b/arch/x86/mm/pageattr.c | |||
| @@ -172,7 +172,7 @@ static void __cpa_flush_all(void *arg) | |||
| 172 | 172 | ||
| 173 | static void cpa_flush_all(unsigned long cache) | 173 | static void cpa_flush_all(unsigned long cache) |
| 174 | { | 174 | { |
| 175 | BUG_ON(irqs_disabled()); | 175 | BUG_ON(irqs_disabled() && !early_boot_irqs_disabled); |
| 176 | 176 | ||
| 177 | on_each_cpu(__cpa_flush_all, (void *) cache, 1); | 177 | on_each_cpu(__cpa_flush_all, (void *) cache, 1); |
| 178 | } | 178 | } |
| @@ -236,7 +236,7 @@ static void cpa_flush_array(unsigned long *start, int numpages, int cache, | |||
| 236 | unsigned long do_wbinvd = cache && numpages >= 1024; /* 4M threshold */ | 236 | unsigned long do_wbinvd = cache && numpages >= 1024; /* 4M threshold */ |
| 237 | #endif | 237 | #endif |
| 238 | 238 | ||
| 239 | BUG_ON(irqs_disabled()); | 239 | BUG_ON(irqs_disabled() && !early_boot_irqs_disabled); |
| 240 | 240 | ||
| 241 | on_each_cpu(__cpa_flush_all, (void *) do_wbinvd, 1); | 241 | on_each_cpu(__cpa_flush_all, (void *) do_wbinvd, 1); |
| 242 | 242 | ||
