]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
xtensa: fix sysmem reservation at the end of existing block
authorMax Filippov <jcmvbkbc@gmail.com>
Mon, 9 Jun 2014 18:18:24 +0000 (22:18 +0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jul 2014 19:44:06 +0000 (12:44 -0700)
commit be6ae382dc153da51cf066c8dd523aa955f02531 upstream.

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.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/xtensa/mm/init.c

index 4224256bb215f17c52d91662f186ecb250dee361..77ed20209ca57232dd79afa60fe91210515746bf 100644 (file)
@@ -191,7 +191,7 @@ int __init mem_reserve(unsigned long start, unsigned long end, int must_exist)
                return -EINVAL;
        }
 
-       if (it && start - it->start < bank_sz) {
+       if (it && start - it->start <= bank_sz) {
                if (start == it->start) {
                        if (end - it->start < bank_sz) {
                                it->start = end;