From: Tejun Heo <tj@kernel.org>
To: mingo@redhat.com, hpa@zytor.com, tglx@linutronix.de,
benh@kernel.crashing.org, yinghai@kernel.org
Cc: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
x86@kernel.org, Tejun Heo <tj@kernel.org>
Subject: [PATCH 1/6] x86: Fix memblock_x86_check_reserved_size() use in efi_reserve_boot_services()
Date: Tue, 12 Jul 2011 09:58:05 +0200 [thread overview]
Message-ID: <1310457490-3356-2-git-send-email-tj@kernel.org> (raw)
In-Reply-To: <1310457490-3356-1-git-send-email-tj@kernel.org>
The return value of memblock_x86_check_reserved_size() doesn't
indicate whether there's an overlapping reservatoin or not. It
indicates whether the caller needs to iterate further to discover all
reserved portions of the specified area.
efi_reserve_boot_esrvices() wants to check whether the boot services
area overlaps with other reservations but incorrectly used
membloc_x86_check_reserved_size(). Use memblock_is_region_reserved()
instead.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
---
arch/x86/platform/efi/efi.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/arch/x86/platform/efi/efi.c b/arch/x86/platform/efi/efi.c
index 899e393..a4c322c 100644
--- a/arch/x86/platform/efi/efi.c
+++ b/arch/x86/platform/efi/efi.c
@@ -325,8 +325,7 @@ void __init efi_reserve_boot_services(void)
if ((start+size >= virt_to_phys(_text)
&& start <= virt_to_phys(_end)) ||
!e820_all_mapped(start, start+size, E820_RAM) ||
- memblock_x86_check_reserved_size(&start, &size,
- 1<<EFI_PAGE_SHIFT)) {
+ memblock_is_region_reserved(start, size)) {
/* Could not reserve, skip it */
md->num_pages = 0;
memblock_dbg(PFX "Could not reserve boot range "
--
1.7.6
next prev parent reply other threads:[~2011-07-12 7:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-12 7:58 [PATCHSET x86/mm] memblock, x86: Misc cleanups Tejun Heo
2011-07-12 7:58 ` Tejun Heo [this message]
2011-07-14 3:37 ` [tip:x86/memblock] x86: Fix memblock_x86_check_reserved_size() use in efi_reserve_boot_services() tip-bot for Tejun Heo
2011-07-12 7:58 ` [PATCH 2/6] bootmem: Fix __free_pages_bootmem() to use @order properly Tejun Heo
2011-07-14 3:38 ` [tip:x86/memblock] " tip-bot for Tejun Heo
2011-07-12 7:58 ` [PATCH 3/6] memblock: Use MEMBLOCK_ALLOC_ACCESSIBLE instead of ANYWHERE in memblock_alloc_try_nid() Tejun Heo
2011-07-14 3:38 ` [tip:x86/memblock] " tip-bot for Tejun Heo
2011-07-12 7:58 ` [PATCH 4/6] memblock: Use round_up/down() instead of memblock_align_up/down() Tejun Heo
2011-07-14 3:39 ` [tip:x86/memblock] " tip-bot for Tejun Heo
2011-07-12 7:58 ` [PATCH 5/6] memblock: Kill MEMBLOCK_ERROR Tejun Heo
2011-07-14 3:39 ` [tip:x86/memblock] " tip-bot for Tejun Heo
2011-07-12 7:58 ` [PATCH 6/6] memblock: Replace memblock_find_base() with memblock_find_in_range() Tejun Heo
2011-07-14 3:39 ` [tip:x86/memblock] " tip-bot for Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1310457490-3356-2-git-send-email-tj@kernel.org \
--to=tj@kernel.org \
--cc=benh@kernel.crashing.org \
--cc=hpa@zytor.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.