From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel De Graaf Subject: Re: [PATCH 4/6] xen-gntdev: Support mapping in HVM domains Date: Mon, 14 Feb 2011 12:43:10 -0500 Message-ID: <4D5969AE.6030200@tycho.nsa.gov> References: <1296753544-13323-1-git-send-email-dgdegra@tycho.nsa.gov> <1296753544-13323-5-git-send-email-dgdegra@tycho.nsa.gov> <20110214155136.GA11034@dumpdata.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20110214155136.GA11034@dumpdata.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Konrad Rzeszutek Wilk Cc: jeremy@goop.org, xen-devel@lists.xensource.com, Ian.Campbell@citrix.com List-Id: xen-devel@lists.xenproject.org On 02/14/2011 10:51 AM, Konrad Rzeszutek Wilk wrote: >> +static int unmap_grant_pages(struct grant_map *map, int offset, int pages); >> + >> /* ------------------------------------------------------------------ */ >> >> static void gntdev_print_maps(struct gntdev_priv *priv, >> @@ -179,11 +184,34 @@ static void gntdev_put_map(struct grant_map *map) >> >> atomic_sub(map->count, &pages_mapped); >> >> - if (map->pages) >> + if (map->pages) { >> + if (!use_ptemod) >> + unmap_grant_pages(map, 0, map->count); > > In the past (before this patch) the unmap_grant_pages would be called > on the .ioctl, .release, and .close (on VMA). This adds it now also > on the mmu_notifier_ops paths. Why? > This does not actually add the unmap on the mmu_notifier path. The MMU notifier is used only if use_ptemod is true, and unmap_grant_pages is only called when use_ptemod is false. The HVM path for map and unmap is slightly different: HVM keeps the pages mapped until the area is deleted, while the PV case (use_ptemod being true) must unmap them when userspace unmaps the range. In the normal use case, this makes no difference to users since unmap time is deletion time. -- Daniel De Graaf National Security Agency