From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoffer Dall Subject: Re: unmap_ptes is not complete Date: Wed, 29 Nov 2017 19:08:44 +0100 Message-ID: <20171129180844.GF10563@lvm> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 3003A49D75 for ; Wed, 29 Nov 2017 13:05:54 -0500 (EST) Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ro3dQJ33aL1D for ; Wed, 29 Nov 2017 13:05:53 -0500 (EST) Received: from mail-wr0-f180.google.com (mail-wr0-f180.google.com [209.85.128.180]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id DD1F949D6C for ; Wed, 29 Nov 2017 13:05:52 -0500 (EST) Received: by mail-wr0-f180.google.com with SMTP id a41so2359476wra.6 for ; Wed, 29 Nov 2017 10:08:47 -0800 (PST) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu To: Raz Cc: kvmarm@lists.cs.columbia.edu List-Id: kvmarm@lists.cs.columbia.edu Hi Raz, On Mon, Nov 27, 2017 at 09:10:56PM +0000, Raz wrote: > Hey > in mmu.c unmap_ptes() you invalidate *pte but not the pte itself. This > leads to inconsistency in el2 translation tables. ie; the pte entry is > cleared in the cached memory but not in the RAM, so the entry may still be > valid in EL2 translation tables. I'm not sure which code you're talking about. Perhaps try sending a patch? > You should also clear pte itself. > If you're talking about unmap_stage2_ptes(), then I must be missing something, because I don't see why setting the pointer to 0 should matter, and what you say about cached memory and RAM doesn't sound correct, as all virtualization-capable ARM CPUs have coherent page table walks. Thanks, -Christoffer