Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S263614AbUCUHAa (ORCPT ); Sun, 21 Mar 2004 02:00:30 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S263615AbUCUHA3 (ORCPT ); Sun, 21 Mar 2004 02:00:29 -0500 Received: from pimout2-ext.prodigy.net ([207.115.63.101]:33756 "EHLO pimout2-ext.prodigy.net") by vger.kernel.org with ESMTP id S263614AbUCUHA2 (ORCPT ); Sun, 21 Mar 2004 02:00:28 -0500 Date: Sat, 20 Mar 2004 23:00:16 -0800 From: Chris Wedgwood To: Christoph Hellwig , Linus Torvalds , Andrea Arcangeli , linux-kernel@vger.kernel.org, Andrew Morton Subject: Re: can device drivers return non-ram via vm_ops->nopage? Message-ID: <20040321070016.GB8130@pain.stupidest.org> References: <20040320133025.GH9009@dualathlon.random> <20040321031355.GB3930@dingdong.cryptoapps.com> <20040321062322.A5861@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040321062322.A5861@infradead.org> Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1125 Lines: 33 On Sun, Mar 21, 2004 at 06:23:22AM +0000, Christoph Hellwig wrote: > Not sure how you get to fetchop here, but that driver does map ram > pages so it should take pagefaults and not use remap_page_range(). It's been a while since I looked at this.... the fetchop driver maps AMO space which is excluded from the EFI memory map (and any SHub aliases) and thus shouldn't be touching anything normally considered RAM. Checking the source I see: if (remap_page_range(vm_start, __pa(maddr), PAGE_SIZE, vma->vm_page_prot)) { fetchop_free_pages(vma->vm_private_data); vfree(vdata); fetchop_update_stats(-1, -pages); return -EAGAIN; } as part of the drivers 'mmap fop'. The underlying page is actually from region-6 so I'm pretty sure it's safe. If you think it is doing something weird please let me know. --cw - 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/