Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754500AbbGTQAL (ORCPT ); Mon, 20 Jul 2015 12:00:11 -0400 Received: from g2t2353.austin.hp.com ([15.217.128.52]:52947 "EHLO g2t2353.austin.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752913AbbGTQAJ (ORCPT ); Mon, 20 Jul 2015 12:00:09 -0400 Message-ID: <1437407942.3214.159.camel@hp.com> Subject: Re: Regression in v4.2-rc1: vmalloc_to_page with ioremap From: Toshi Kani To: "Dixit, Ashutosh" , "linux-kernel@vger.kernel.org" Cc: "Dutt, Sudeep" , "Rao, Nikhil" , "Williams, Dan J" Date: Mon, 20 Jul 2015 09:59:02 -0600 In-Reply-To: <1437407695.3214.156.camel@hp.com> References: <6DC2528F945B4149AB6566DFB5F22ED39BC5540B@ORSMSX115.amr.corp.intel.com> <1437407695.3214.156.camel@hp.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.3 (3.16.3-2.fc22) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1520 Lines: 42 On Mon, 2015-07-20 at 09:54 -0600, Toshi Kani wrote: > On Sat, 2015-07-18 at 18:04 +0000, Dixit, Ashutosh wrote: > > vmalloc_to_page with ioremap'd memory used to work correctly till > > v4.1. In > > v4.2-rc1 when ioremap is done using huge pages vmalloc_to_page on > > ioremap'd > > memory crashes. Are there plans to fix this? > > > > An example of the use of vmalloc_to_page with ioremap is in the > > Intel > > MIC SCIF > > driver (drivers/misc/mic/scif/scif_nodeqp.c) which dma map's the > > ioremap'd range > > of one device to a second device. > > Yes, vmalloc_to_page() assumes 4KB mappings. But ioremap with huge > pages was enabled in v4.1, while v4.2-rc1 has update for the check > with > MTRRs. Can you send me outputs of the following files? If the > driver > fails to load in v4.2-rc1, you can obtain the info in v4.1. > > /proc/mtrr > /proc/iomem > /proc/vmallocinfo > /sys/kernel/debug/kernel_page_tables (need CONFIG_X86_PTDUMP set) > > Also, does the driver map a regular memory range with ioremap? If > not, how does 'struct page' get allocated for the range (since > vmalloc_to_page returns a page pointer)? Can you also try the 'nohugeiomap' kernel option to the 4.2-rc1 kernel to see if the problem goes away? Thanks, -Toshi -- 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/