Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757491AbbEVUb6 (ORCPT ); Fri, 22 May 2015 16:31:58 -0400 Received: from mail-wg0-f45.google.com ([74.125.82.45]:33354 "EHLO mail-wg0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756645AbbEVUb4 (ORCPT ); Fri, 22 May 2015 16:31:56 -0400 MIME-Version: 1.0 In-Reply-To: <1430231830-7702-4-git-send-email-mgorman@suse.de> References: <1430231830-7702-1-git-send-email-mgorman@suse.de> <1430231830-7702-4-git-send-email-mgorman@suse.de> Date: Fri, 22 May 2015 13:31:55 -0700 Message-ID: Subject: Re: [PATCH 03/13] mm: meminit: Only set page reserved in the memblock region From: Tony Luck To: Mel Gorman Cc: Andrew Morton , Nathan Zimmer , Dave Hansen , Waiman Long , Scott Norton , Daniel J Blueman , Linux-MM , LKML Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1736 Lines: 38 On Tue, Apr 28, 2015 at 7:37 AM, Mel Gorman wrote: > Currently each page struct is set as reserved upon initialization. > This patch leaves the reserved bit clear and only sets the reserved bit > when it is known the memory was allocated by the bootmem allocator. This > makes it easier to distinguish between uninitialised struct pages and > reserved struct pages in later patches. On ia64 my linux-next builds now report a bunch of messages like this: put_kernel_page: page at 0xe000000005588000 not in reserved memory put_kernel_page: page at 0xe000000005588000 not in reserved memory put_kernel_page: page at 0xe000000005580000 not in reserved memory put_kernel_page: page at 0xe000000005580000 not in reserved memory put_kernel_page: page at 0xe000000005580000 not in reserved memory put_kernel_page: page at 0xe000000005580000 not in reserved memory the two different pages match up with two objects from the loaded kernel that get mapped by arch/ia64/mm/init.c:setup_gate() a000000101588000 D __start_gate_section a000000101580000 D empty_zero_page Should I look for a place to set the reserved bit on page structures for these addresses? Or just remove the test and message in put_kernel_page() [I added a debug "else" clause here - every caller passes in a page that is not reserved] if (!PageReserved(page)) printk(KERN_ERR "put_kernel_page: page at 0x%p not in reserved memory\n", page_address(page)); -Tony -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/