From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932209AbXBPKrO (ORCPT ); Fri, 16 Feb 2007 05:47:14 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S932253AbXBPKrO (ORCPT ); Fri, 16 Feb 2007 05:47:14 -0500 Received: from 207.47.60.150.static.nextweb.net ([207.47.60.150]:18732 "EHLO webmail.xensource.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932209AbXBPKrN (ORCPT ); Fri, 16 Feb 2007 05:47:13 -0500 User-Agent: Microsoft-Entourage/11.2.5.060620 Date: Fri, 16 Feb 2007 10:47:11 +0000 Subject: Re: [patch 14/21] Xen-paravirt: Add XEN config options and disableunsupported config options. From: Keir Fraser To: Andrew Morton , Christian Limpach CC: Jeremy Fitzhardinge , Chris Wright , Andi Kleen , , Ian Pratt , , Steven Hand , Message-ID: Thread-Topic: [patch 14/21] Xen-paravirt: Add XEN config options and disableunsupported config options. Thread-Index: AcdRt8/EDlrZar2rEduvqQAX8io7RQ== In-Reply-To: <20070216020947.03e1726e.akpm@linux-foundation.org> Mime-version: 1.0 Content-type: text/plain; charset="US-ASCII" Content-transfer-encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On 16/2/07 10:09, "Andrew Morton" wrote: > Are the places where the domU code references machine addresses splattered > all over the code? If not, they can just be wrapped with > preempt_disable/preempt_enable? The main places where machine addresses are 'visible' are any code that holds a pte_t,pmd_t,pud_t,pgd_t. We hide the machine-to-pseudophysical and pseudophysical-to-machine translations inside e.g., pte_val() and __pte() (i.e., constructors and extractors for page table entries). Obviously the users of these macros are open coded all over the place, quite apart from the performance cost of sprinkling preempt_{enable,disable} so liberally. -- Keir From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [patch 14/21] Xen-paravirt: Add XEN config options and disableunsupported config options. Date: Fri, 16 Feb 2007 10:47:11 +0000 Message-ID: References: <20070216020947.03e1726e.akpm@linux-foundation.org> Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20070216020947.03e1726e.akpm@linux-foundation.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Andrew Morton , Christian Limpach Cc: Jeremy Fitzhardinge , xen-devel@lists.xensource.com, virtualization@lists.osdl.org, Steven Hand , linux-kernel@vger.kernel.org, Chris Wright , Andi Kleen , Ian Pratt List-Id: xen-devel@lists.xenproject.org On 16/2/07 10:09, "Andrew Morton" wrote: > Are the places where the domU code references machine addresses splattered > all over the code? If not, they can just be wrapped with > preempt_disable/preempt_enable? The main places where machine addresses are 'visible' are any code that holds a pte_t,pmd_t,pud_t,pgd_t. We hide the machine-to-pseudophysical and pseudophysical-to-machine translations inside e.g., pte_val() and __pte() (i.e., constructors and extractors for page table entries). Obviously the users of these macros are open coded all over the place, quite apart from the performance cost of sprinkling preempt_{enable,disable} so liberally. -- Keir