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=-0.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY 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 143DEC433E1 for ; Mon, 1 Jun 2020 17:53:19 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id CBDC8206E2 for ; Mon, 1 Jun 2020 17:53:18 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CBDC8206E2 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=collabora.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 5BD488E0007; Mon, 1 Jun 2020 13:53:18 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 51E448E0006; Mon, 1 Jun 2020 13:53:18 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 40CB78E0007; Mon, 1 Jun 2020 13:53:18 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0045.hostedemail.com [216.40.44.45]) by kanga.kvack.org (Postfix) with ESMTP id 25F348E0006 for ; Mon, 1 Jun 2020 13:53:18 -0400 (EDT) Received: from smtpin25.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id D0AEB180AD80F for ; Mon, 1 Jun 2020 17:53:17 +0000 (UTC) X-FDA: 76881389634.25.crib25_911c5e2abd032 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin25.hostedemail.com (Postfix) with ESMTP id AD8851804E3A0 for ; Mon, 1 Jun 2020 17:53:17 +0000 (UTC) X-HE-Tag: crib25_911c5e2abd032 X-Filterd-Recvd-Size: 2818 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by imf17.hostedemail.com (Postfix) with ESMTP for ; Mon, 1 Jun 2020 17:53:17 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: krisman) with ESMTPSA id 7A1252A2519 From: Gabriel Krisman Bertazi To: Matthew Wilcox Cc: Paul Gofman , Kees Cook , linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel@collabora.com, Thomas Gleixner , Andy Lutomirski , Will Drewry , "H . Peter Anvin" , linux-security-module@vger.kernel.org, Zebediah Figura Subject: Re: [PATCH RFC] seccomp: Implement syscall isolation based on memory areas Organization: Collabora References: <20200530055953.817666-1-krisman@collabora.com> <202005300923.B245392C@keescook> <851rn0ejg9.fsf@collabora.com> <9a512096-7707-3fc6-34ba-22f969c0f964@gmail.com> <20200531164938.GF19604@bombadil.infradead.org> Date: Mon, 01 Jun 2020 13:53:11 -0400 In-Reply-To: <20200531164938.GF19604@bombadil.infradead.org> (Matthew Wilcox's message of "Sun, 31 May 2020 09:49:38 -0700") Message-ID: <857dwq7jw8.fsf@collabora.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: AD8851804E3A0 X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam05 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: Matthew Wilcox writes: > On Sun, May 31, 2020 at 03:39:33PM +0300, Paul Gofman wrote: >> > Paul (cc'ed) is the wine expert, but my understanding is that memory >> > allocation and initial program load of the emulated binary will go >> > through wine. It does the allocation and mark the vma accordingly >> > before returning the allocated range to the windows application. >> Yes, exactly. Pretty much any memory allocation which Wine does needs >> syscalls (if those are ever encountered later during executing code from >> those areas) to be trapped by Wine and passed to Wine's implementation >> of the corresponding Windows API function. Linux native libraries >> loading and memory allocations performed by them go outside of Wine control. > > I don't like Gabriel's approach very much. Could we do something like Hi Matthew, I don't oppose your suggestion, as Paul said, it should be enough for us. But could you elaborate on the problems you see in the original approach, even if only for my own education? > issue a syscall before executing a Windows region and then issue another > syscall when exiting? If so, we could switch the syscall entry point (ie > change MSR_LSTAR). I'm thinking something like a personality() syscall. > But maybe that would be too high an overhead. > -- Gabriel Krisman Bertazi