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=FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS 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 82A2FC10DCE for ; Fri, 6 Mar 2020 19:16:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 5A2E920656 for ; Fri, 6 Mar 2020 19:16:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726733AbgCFTQN convert rfc822-to-8bit (ORCPT ); Fri, 6 Mar 2020 14:16:13 -0500 Received: from mail-oln040092070042.outbound.protection.outlook.com ([40.92.70.42]:8449 "EHLO EUR03-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726167AbgCFTQM (ORCPT ); Fri, 6 Mar 2020 14:16:12 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FghbxTReKSlAco+/DZw4jTOqbOguzXfGPbvIuxD+njSiaofPYF9jg0UO1bktRbhWatDyipYIPa9d6yRaWGavSnJiSPbPUf7hWXICiOqLDhWEGFucQShy31WfE4zdXp0XM3m4Z9ofBoP6Y8OKYOT5pTna3UeZcr164NyA/IIuFuc1hEbEs3jNZXhnsXbVJQb57u/TZhOMVJ6tMV6VFoj/3lvt75SjuYVtJ3zoahj6GsSns5YHYZ3tjtjjXWuJQXgVO6XdCvCjeypHsWQK2v/AlwYNTO3ariRjL01LhrrTKCFV6tkLRwiTAAG7IfAvCHpNNHA6yzORcDe8w6O4c9Yg3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uIzJzakET+nudEIKDq5F6x974sE6vtbHCXBBRfPzsbM=; b=n1rLGoYP8nla7yBgJN41Vuk+gPWp4/nCtvIfM1MyW2Sq7eTKjQGm9WflmDP9PviMy1L9t+QYGuNXwFyS6l0z7PzR2YX2ixDrRp0laVINlXRuvzmeiO2aAInvY6XC2/nJAQhvimvUtOxsFq3Z5SB/djsmPQWjlWCGHhnr8k8dlFL0h1BLzUeSaX2hvlD4SMcrc8fGUngVfBeTpmElQrfOKwFY+PeiAIIa+6lP4e5s3YYxPlbA4d1nTAy+rRPT76BezNNp+m1+DikO82K0cg0Sh4iIU2dlxZIn8HWcgrehKNKXTeG/s5CNzLwVAiZaB7qomPbwNaGJRqAPSHqB3xPYhw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from DB5EUR03FT020.eop-EUR03.prod.protection.outlook.com (2a01:111:e400:7e0a::3c) by DB5EUR03HT131.eop-EUR03.prod.protection.outlook.com (2a01:111:e400:7e0a::307) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.11; Fri, 6 Mar 2020 19:16:08 +0000 Received: from AM6PR03MB5170.eurprd03.prod.outlook.com (10.152.20.51) by DB5EUR03FT020.mail.protection.outlook.com (10.152.20.134) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.11 via Frontend Transport; Fri, 6 Mar 2020 19:16:08 +0000 Received: from AM6PR03MB5170.eurprd03.prod.outlook.com ([fe80::1956:d274:cab3:b4dd]) by AM6PR03MB5170.eurprd03.prod.outlook.com ([fe80::1956:d274:cab3:b4dd%6]) with mapi id 15.20.2772.019; Fri, 6 Mar 2020 19:16:08 +0000 Received: from [192.168.1.101] (92.77.140.102) by FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.15 via Frontend Transport; Fri, 6 Mar 2020 19:16:07 +0000 From: Bernd Edlinger To: "Eric W. Biederman" CC: Christian Brauner , Kees Cook , Jann Horn , Jonathan Corbet , Alexander Viro , Andrew Morton , Alexey Dobriyan , Thomas Gleixner , Oleg Nesterov , Frederic Weisbecker , Andrei Vagin , Ingo Molnar , "Peter Zijlstra (Intel)" , Yuyang Du , David Hildenbrand , Sebastian Andrzej Siewior , Anshuman Khandual , David Howells , James Morris , Greg Kroah-Hartman , Shakeel Butt , Jason Gunthorpe , Christian Kellner , Andrea Arcangeli , Aleksa Sarai , "Dmitry V. Levin" , "linux-doc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , "linux-mm@kvack.org" , "stable@vger.kernel.org" , "linux-api@vger.kernel.org" Subject: Re: [PATCH 2/2] exec: Add a exec_update_mutex to replace cred_guard_mutex Thread-Topic: [PATCH 2/2] exec: Add a exec_update_mutex to replace cred_guard_mutex Thread-Index: AQHV8zOjiaOX92PFsUy1cOGGFJ5V7ag6ihsAgAB9KjCAAOmyAA== Date: Fri, 6 Mar 2020 19:16:08 +0000 Message-ID: References: <202003021531.C77EF10@keescook> <20200303085802.eqn6jbhwxtmz4j2x@wittgenstein> <87v9nlii0b.fsf@x220.int.ebiederm.org> <87a74xi4kz.fsf@x220.int.ebiederm.org> <87r1y8dqqz.fsf@x220.int.ebiederm.org> <87tv32cxmf.fsf_-_@x220.int.ebiederm.org> <87imjicxjw.fsf_-_@x220.int.ebiederm.org> <87k13yawpp.fsf@x220.int.ebiederm.org> In-Reply-To: <87k13yawpp.fsf@x220.int.ebiederm.org> Accept-Language: en-US, en-GB, de-DE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14) To AM6PR03MB5170.eurprd03.prod.outlook.com (2603:10a6:20b:ca::23) x-incomingtopheadermarker: OriginalChecksum:EAD22F76A094F409A4EDCD4477720CEB4503D562E8D6AA0F890EDBA16291F42E;UpperCasedChecksum:71F045288ECA85363986E47F3340E99BB2B694FE8C4D59FE3583673AEEE75A6A;SizeAsReceived:9908;Count:50 x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [NjjbdR5hkty6MCsyI4upoQ3j5M/LGKJ+] x-microsoft-original-message-id: <3809f78d-9223-ea8a-ce30-73dcf372d21d@hotmail.de> x-ms-publictraffictype: Email x-incomingheadercount: 50 x-eopattributedmessage: 0 x-ms-office365-filtering-correlation-id: 00161e8f-36fa-488a-de4c-08d7c202d31b x-ms-traffictypediagnostic: DB5EUR03HT131: x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ou8Rae7NaWgGLlGpxv8IlgAD0rnGOfKRp3LkYZFlTSDVX26TdBtTfnvi5HjRCcRuMTqKn/01JrT0dImgQrL4aZc1/LZChvEtCY0BEiD6PFr+iImq55NAfUXtpbLZtKPWR8rcmgVAWcDSd7MjlgDGgT5TQnnVK9/AzigTObVOne1Z/W4DAhUok4ZS8I8OymNB x-ms-exchange-antispam-messagedata: PQrQw1zcai4oqKo9xMjG8obL6CcGrgfQ++dRBm6IDPboDPUI3jHIe0Mid36OyT2vBJhfKtOTPe1TyQu1GxRItstobjF1rSBSMnWHqP9VIQ4YGpUPXWZkxwjBOkBUpiKZoG9qCDhFdJ60SKnQWiqi8A== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="Windows-1252" Content-ID: Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 00161e8f-36fa-488a-de4c-08d7c202d31b X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Mar 2020 19:16:08.8373 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5EUR03HT131 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 3/6/20 6:17 AM, Eric W. Biederman wrote: > Bernd Edlinger writes: > >> On 3/5/20 10:16 PM, Eric W. Biederman wrote: >>> >>> The cred_guard_mutex is problematic. The cred_guard_mutex is held >>> over the userspace accesses as the arguments from userspace are read. >>> The cred_guard_mutex is held of PTRACE_EVENT_EXIT as the the other >>> threads are killed. The cred_guard_mutex is held over >>> "put_user(0, tsk->clear_child_tid)" in exit_mm(). >>> I am all for this patch, and the direction it is heading, Eric. I just wanted to add a note that I think it is possible that exec_mm_release can also invoke put_user(0, tsk->clear_child_tid), under the new exec_update_mutex, since vm_access increments the mm->mm_users, under the cred_update_mutex, but releases the mutex, and the caller can hold the reference for a while and then exec_mmap is not releasing the last reference. Bernd.