Commit 0c36b8ac authored by Sebastian Ott's avatar Sebastian Ott Committed by Martin Schwidefsky

s390/setup: fix DMA_API_DEBUG warnings

Addresses from the usable space in [_ehead, _stext] lead to false
positives in DMA_API_DEBUG code (which will complain when an address
is in [_text, _etext]).

Avoid these warnings by not using that memory in case of
CONFIG_DMA_API_DEBUG=y.
Signed-off-by: default avatarSebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent d9a5c0c6
...@@ -640,19 +640,24 @@ static void __init check_initrd(void) ...@@ -640,19 +640,24 @@ static void __init check_initrd(void)
} }
/* /*
* Reserve all kernel text * Reserve memory used for lowcore/command line/kernel image.
*/ */
static void __init reserve_kernel(void) static void __init reserve_kernel(void)
{ {
unsigned long start_pfn; unsigned long start_pfn = PFN_UP(__pa(&_end));
start_pfn = PFN_UP(__pa(&_end));
#ifdef CONFIG_DMA_API_DEBUG
/* /*
* Reserve memory used for lowcore/command line/kernel image. * DMA_API_DEBUG code stumbles over addresses from the
* range [_ehead, _stext]. Mark the memory as reserved
* so it is not used for CONFIG_DMA_API_DEBUG=y.
*/ */
memblock_reserve(0, PFN_PHYS(start_pfn));
#else
memblock_reserve(0, (unsigned long)_ehead); memblock_reserve(0, (unsigned long)_ehead);
memblock_reserve((unsigned long)_stext, PFN_PHYS(start_pfn) memblock_reserve((unsigned long)_stext, PFN_PHYS(start_pfn)
- (unsigned long)_stext); - (unsigned long)_stext);
#endif
} }
static void __init reserve_elfcorehdr(void) static void __init reserve_elfcorehdr(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment