• W
    x86/e820: Fix very large 'size' handling boundary condition · 3ec97965
    Wei Yang 提交于
    The (start, size) tuple represents a range [start, start + size - 1],
    which means "start" and "start + size - 1" should be compared to see
    whether the range overflows.
    
    For example, a range with (start, size):
    
    	(0xffffffff fffffff0, 0x00000000 00000010)
    
    represents
    
    	[0xffffffff fffffff0, 0xffffffff ffffffff]
    
    ... would be judged overflow in the original code, while actually it is not.
    
    This patch fixes this and makes sure it still works when size is zero.
    Signed-off-by: NWei Yang <richard.weiyang@gmail.com>
    Cc: Andy Lutomirski <luto@kernel.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Brian Gerst <brgerst@gmail.com>
    Cc: Denys Vlasenko <dvlasenk@redhat.com>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Josh Poimboeuf <jpoimboe@redhat.com>
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: yinghai@kernel.org
    Link: http://lkml.kernel.org/r/1471657213-31817-1-git-send-email-richard.weiyang@gmail.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
    3ec97965
e820.c 29.5 KB