diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2014-06-09 14:18:24 -0400 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2014-06-09 14:29:12 -0400 |
commit | be6ae382dc153da51cf066c8dd523aa955f02531 (patch) | |
tree | 5fce94b6924dbfd75cf8bdcf6253441b7b3d9b92 /arch/xtensa | |
parent | 17290231df16eeee5dfc198dbf5ee4b419996dcd (diff) |
xtensa: fix sysmem reservation at the end of existing block
When sysmem reservation occurs exactly at the end of an existing block
that block is deleted, because it is incorrectly included in the range
of memblocks to remove. Fix that by skipping such block.
Cc: stable@vger.kernel.org
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'arch/xtensa')
-rw-r--r-- | arch/xtensa/mm/init.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/xtensa/mm/init.c b/arch/xtensa/mm/init.c index 4224256bb215..77ed20209ca5 100644 --- a/arch/xtensa/mm/init.c +++ b/arch/xtensa/mm/init.c | |||
@@ -191,7 +191,7 @@ int __init mem_reserve(unsigned long start, unsigned long end, int must_exist) | |||
191 | return -EINVAL; | 191 | return -EINVAL; |
192 | } | 192 | } |
193 | 193 | ||
194 | if (it && start - it->start < bank_sz) { | 194 | if (it && start - it->start <= bank_sz) { |
195 | if (start == it->start) { | 195 | if (start == it->start) { |
196 | if (end - it->start < bank_sz) { | 196 | if (end - it->start < bank_sz) { |
197 | it->start = end; | 197 | it->start = end; |