From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.6 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3237BCA9EAE for ; Tue, 29 Oct 2019 09:02:09 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id E80B72083E for ; Tue, 29 Oct 2019 09:02:08 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="XIQpQH93" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E80B72083E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 86E656B0005; Tue, 29 Oct 2019 05:02:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 81EC76B0006; Tue, 29 Oct 2019 05:02:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 70D136B0007; Tue, 29 Oct 2019 05:02:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 4777A6B0005 for ; Tue, 29 Oct 2019 05:02:08 -0400 (EDT) Received: from smtpin03.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with SMTP id BD1DD8249980 for ; Tue, 29 Oct 2019 09:02:07 +0000 (UTC) X-FDA: 76096230294.03.work57_69d9538ca7826 X-HE-Tag: work57_69d9538ca7826 X-Filterd-Recvd-Size: 3718 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by imf46.hostedemail.com (Postfix) with ESMTP for ; Tue, 29 Oct 2019 09:02:07 +0000 (UTC) Received: from rapoport-lnx (190.228.71.37.rev.sfr.net [37.71.228.190]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 3456620717; Tue, 29 Oct 2019 09:02:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1572339726; bh=bOYMkrPnkSbi4aKQxcu6uc3pK8uAB8m/hoLokCCVXGU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=XIQpQH93iGh9XKVRHrIjP5M0pKowp+j/DYe81iC7yDYP/yrQaFN3kQc70I446NNUA BFUwORbg2S1M1iQn+NkCvD1RLPVb2El1M1GCKPrABFs1gae9RsnIF4s7m6xaIrnC7B 2HPKTrYTdAhNRLx9kbkBmdZdMtgF9gkcj5QemTgA= Date: Tue, 29 Oct 2019 10:01:58 +0100 From: Mike Rapoport To: Florian Weimer Cc: linux-kernel@vger.kernel.org, Alexey Dobriyan , Andrew Morton , Andy Lutomirski , Arnd Bergmann , Borislav Petkov , Dave Hansen , James Bottomley , Peter Zijlstra , Steven Rostedt , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , linux-api@vger.kernel.org, linux-mm@kvack.org, x86@kernel.org, Mike Rapoport Subject: Re: [PATCH RFC] mm: add MAP_EXCLUSIVE to create exclusive user mappings Message-ID: <20191029090158.GB18773@rapoport-lnx> References: <1572171452-7958-1-git-send-email-rppt@kernel.org> <87d0eieb0i.fsf@mid.deneb.enyo.de> <385EB6D4-A1B0-4617-B256-181AA1C3BDE3@kernel.org> <87h83s62mi.fsf@mid.deneb.enyo.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87h83s62mi.fsf@mid.deneb.enyo.de> User-Agent: Mutt/1.5.24 (2015-08-30) X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, Oct 28, 2019 at 09:23:17PM +0100, Florian Weimer wrote: > * Mike Rapoport: > > > On October 27, 2019 12:30:21 PM GMT+02:00, Florian Weimer > > wrote: > >>* Mike Rapoport: > >> > >>> The patch below aims to allow applications to create mappins that > >>have > >>> pages visible only to the owning process. Such mappings could be used > >>to > >>> store secrets so that these secrets are not visible neither to other > >>> processes nor to the kernel. > >> > >>How is this expected to interact with CRIU? > > > > CRIU dumps the memory contents using a parasite code from inside the > > dumpee address space, so it would work the same way as for the other > > mappings. Of course, at the restore time the exclusive mapping should > > be recreated with the appropriate flags. > > Hmm, so it would use a bounce buffer to perform the extraction? At first I thought that CRIU would extract the memory contents from these mappings just as it does now using vmsplice(). But it seems that such mappings won't play well with pipes, so CRIU will need a bounce buffer indeed. > >>> I've only tested the basic functionality, the changes should be > >>verified > >>> against THP/migration/compaction. Yet, I'd appreciate early feedback. > >> > >>What are the expected semantics for VM migration? Should it fail? > > > > I don't quite follow. If qemu would use such mappings it would be able > > to transfer them during live migration. > > I was wondering if the special state is supposed to bubble up to the > host eventually. Well, that was not intended. -- Sincerely yours, Mike.