Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752460Ab0BPIlP (ORCPT ); Tue, 16 Feb 2010 03:41:15 -0500 Received: from one.firstfloor.org ([213.235.205.2]:48003 "EHLO one.firstfloor.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751589Ab0BPIlO (ORCPT ); Tue, 16 Feb 2010 03:41:14 -0500 Date: Tue, 16 Feb 2010 09:41:10 +0100 From: Andi Kleen To: Nameer Yarkon Cc: Alan Cox , Henrique de Moraes Holschuh , Andi Kleen , Robert Hancock , "Anton D. Kachalov" , linux-kernel@vger.kernel.org Subject: Re: Reading /dev/mem by dd Message-ID: <20100216084110.GK21783@one.firstfloor.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.2i Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1204 Lines: 32 On Tue, Feb 16, 2010 at 10:35:40AM +0200, Nameer Yarkon wrote: > On Thu, Nov 12, 2009 at 8:13 PM, Alan Cox wrote: > >> Is that the only valid use of /dev/mem, or even its main use? > > > > These days it is the primary use. Things like X11 were historically > > probably the biggest user of it, and things like LRMI sometimes need that > > sort of stuff. > > how does X11 get now direct access to the physical memory (instead of > /dev/mem) ? The classic X server doesn't use main memory, typically just mapped graphic card resources (if you don't count BIOS tables and memory accessed by the video bios running in emulation, but that is typically excluded by the check) In fact it can't because it doesn't know the physical addresses of its process memory. Modern X does it through kernel modules (DRM, GEM etc.) One reason it's needed to do it this way is IOMMUs. -Andi -- ak@linux.intel.com -- Speaking for myself only. -- 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/