diff options
Diffstat (limited to 'arch/blackfin/kernel/process.c')
-rw-r--r-- | arch/blackfin/kernel/process.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/blackfin/kernel/process.c b/arch/blackfin/kernel/process.c index 77800dd83e57..0c3ea118b657 100644 --- a/arch/blackfin/kernel/process.c +++ b/arch/blackfin/kernel/process.c | |||
@@ -351,10 +351,15 @@ int _access_ok(unsigned long addr, unsigned long size) | |||
351 | return 1; | 351 | return 1; |
352 | #endif | 352 | #endif |
353 | #if L1_DATA_B_LENGTH != 0 | 353 | #if L1_DATA_B_LENGTH != 0 |
354 | if (addr >= L1_DATA_B_START | 354 | if (addr >= L1_DATA_B_START + (_ebss_b_l1 - _sdata_b_l1) |
355 | && addr + size <= L1_DATA_B_START + L1_DATA_B_LENGTH) | 355 | && addr + size <= L1_DATA_B_START + L1_DATA_B_LENGTH) |
356 | return 1; | 356 | return 1; |
357 | #endif | 357 | #endif |
358 | #if L2_LENGTH != 0 | ||
359 | if (addr >= L2_START + (_ebss_l2 - _stext_l2) | ||
360 | && addr + size <= L2_START + L2_LENGTH) | ||
361 | return 1; | ||
362 | #endif | ||
358 | return 0; | 363 | return 0; |
359 | } | 364 | } |
360 | EXPORT_SYMBOL(_access_ok); | 365 | EXPORT_SYMBOL(_access_ok); |