Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp2023852pxu; Fri, 9 Oct 2020 06:10:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwmqB87eDTyNaXlHLEGbri1sfAzl0XDikrbzemNydZjJ4gBVA9G//AtBytgy8lGSdseg0pm X-Received: by 2002:a17:906:3cd:: with SMTP id c13mr14013392eja.25.1602249017448; Fri, 09 Oct 2020 06:10:17 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1602249017; cv=pass; d=google.com; s=arc-20160816; b=fTfesmLV/UykynP4tyOeHodIWfMswFsDQoENNjL1Y7gppRQdM6xfRRB4E8Kp1r+/FU CtnZ9iJ0NVY164QPA4ikxwzNDa9ldBk2qOSCLcgNQkOXXf9myTfZqas1a8KLEUVzSLyK 6++F/p0s6gQHE9wkKA2DjU+98Mrz0FPf96Y8e3aY0aEnQOV3KBIFF3eAru4Wv2lk2HYs dZ1J4azSQWU1VLIn08w4UtehSrf0DHYwoYPMc8/Aq+0kgMu7yry/aVtWG6+r0q1Eiszv qyc/hgkjZqu4u7Aqg3qDhUkHCMyIaYhUCwHaZnyxV/H9VKRMZAsRaAhfbsu5zFIill4/ +2zQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-language :content-transfer-encoding:in-reply-to:user-agent:date:message-id :from:references:to:subject:dkim-signature; bh=v+qVcC/axReaN9Ip09XBb3yKiJC2FhtpFWzzjw2kts4=; b=YZZUCWhGPZuDMAWt4Sd5QlxmHRZETHmcex7WZkFocT+oo3ly9SH/JeuE3ah6aNQhMK ICVqj+V2v8rCMKFcQr4xmZLB54PITUHUe6GyLfBo+1IqMYwwmdU27IQdVI7ZX1gB3X3g t2A5Wt4GCfOJ6XVQ4km+Ip0984oSozBTSgvR4K88oSeQOsCiDUG+9X+/WbmcdNE/WyUT VYukKbJHrzQpyaIcUAqeeF1hWXdN3/KTpgDVGAduYJ6yb/pxYwLQlerHAVa2yT5kvgiR 3ogtEKB0JzXZiNdBsDLQoZ2WRg2DA14/saNBHjnUF5afTx4u3iBktPZQaFmRyXzzeop4 bHjA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector2-amdcloud-onmicrosoft-com header.b=pvsnu2mZ; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id li15si6021107ejb.166.2020.10.09.06.09.46; Fri, 09 Oct 2020 06:10:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector2-amdcloud-onmicrosoft-com header.b=pvsnu2mZ; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388454AbgJIMP2 (ORCPT + 99 others); Fri, 9 Oct 2020 08:15:28 -0400 Received: from mail-bn8nam11on2082.outbound.protection.outlook.com ([40.107.236.82]:18337 "EHLO NAM11-BN8-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1732958AbgJIMP1 (ORCPT ); Fri, 9 Oct 2020 08:15:27 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yh2fI35e3f5w9txpBZWQkOQTICG/lZFBQ8whthE+vjOU2vs8LHsszXBwq9sMFgz85pM8FQFD8WEOaSxXXdw/UYId/hlduSlGiddwHGz0rNIsN2pmFBLYEIqZTGeQuCfLU12E+90WkahsI2xa8tJrgO73u5AK2aKMkqAnGB9qMWxtekfvHffoLGnfwGaGh0fNx1yrDOPQmJJB6zhHk6joOUA1EKmt3gK+8CCYOy1vYQMeCvjFtJWm+uec6sJPEJF6Bs3HOrBxM7w4s+FB0BaEW9OVS1cVChKXARuguOMVuSSsNJUZC35aYxbItgOup47v7rzX7ypfmXCsX6ymYfKWiw== 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=v+qVcC/axReaN9Ip09XBb3yKiJC2FhtpFWzzjw2kts4=; b=EVAIFdkljH9EadJUzT+S+5B8ldnoJuZGBnanIV4bi/Y/0JqbFyXp8tiWnjP2Tjg9FSmo6Y8HbuTjpMfBNgFXVb/BSff/Q/PgC4v71ThbnXOthDbSjyaJJRX3BoMqEzP3vSty8mTfgYiJMdwvqXAVOhbH6RRtLIeeSgy1hakQ58YIbP+4ti+blp4b4fxjsit+pkwPydPVotPndkkpDrScE3CTq9bsu8NtfN8+1lk9g70nIGjmjYXOFvOlkZAv5/Z3midD/jD0Njaotdv9cdnpBrGDhlDi7sw+vt+fsEzmsua5CNdL1eqK96wvsPxRGvcvK9REH8zePwAavYH/0nxeRQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v+qVcC/axReaN9Ip09XBb3yKiJC2FhtpFWzzjw2kts4=; b=pvsnu2mZynGOVM5r4nb02cDv4uE43/V22pMXeZPQCCJv/XP+zalIZbwH0H+yAS4cpmWsNn8cKWo41J5a1FeSJ2Hlh+Pt8OSyU2FHZwchROr50jha5GaCAwGQqG1hYOPcEn2f4cXZbt/YL3hli7UVefyXKgyuRvZmDz3R+bQ8+o8= Authentication-Results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=amd.com; Received: from MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) by BL0PR12MB2545.namprd12.prod.outlook.com (2603:10b6:207:4e::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.26; Fri, 9 Oct 2020 12:15:22 +0000 Received: from MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::f8f7:7403:1c92:3a60]) by MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::f8f7:7403:1c92:3a60%6]) with mapi id 15.20.3455.027; Fri, 9 Oct 2020 12:15:22 +0000 Subject: Re: [PATCH 1/4] mm: introduce vma_set_file function v2 To: Jason Gunthorpe , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linaro-mm-sig@lists.linaro.org, dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org, chris@chris-wilson.co.uk, airlied@redhat.com, akpm@linux-foundation.org, sumit.semwal@linaro.org References: <20201008112342.9394-1-christian.koenig@amd.com> <20201008141211.GG438822@phenom.ffwll.local> <8fc28dfa-4bae-bee1-5aca-4e3c6e88b994@gmail.com> <20201009073900.GL438822@phenom.ffwll.local> <20201009121220.GM5177@ziepe.ca> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: Date: Fri, 9 Oct 2020 14:15:16 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 In-Reply-To: <20201009121220.GM5177@ziepe.ca> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-Originating-IP: [2a02:908:1252:fb60:be8a:bd56:1f94:86e7] X-ClientProxiedBy: AM0PR08CA0024.eurprd08.prod.outlook.com (2603:10a6:208:d2::37) To MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [IPv6:2a02:908:1252:fb60:be8a:bd56:1f94:86e7] (2a02:908:1252:fb60:be8a:bd56:1f94:86e7) by AM0PR08CA0024.eurprd08.prod.outlook.com (2603:10a6:208:d2::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.21 via Frontend Transport; Fri, 9 Oct 2020 12:15:20 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 1dfe88c0-0b3a-4929-cfcc-08d86c4cfec2 X-MS-TrafficTypeDiagnostic: BL0PR12MB2545: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: yDgKiMauZeDugPyLrs7NmsISFm0BZnJ8jq7N2GjOheVv3sQrmMN765vlzN6JjzJY0tm8m/R5brmzQsXD7/jFZMS/2AqqRj81lYTD6SaOncrqaRjWDn7HuddiUqGFrJ3yEd6jG+ruzi6ityaiic5x8hcXvL2ZaIGIrDU8DGAlIxEHe4BJ1eWJ9dNFml9ArJSKTaX6dsnP1iD7DNL4ikZ265V9vYq5odarWT6ge7t7cP41g1En24w8eb+8ger5Tp2bAHni7lTQaQ9T71m7fmPoIGz+B7f4roVpahKARFYKSvBNglicR53/kuI0bLlnMMiggVD6LmZL+yDKKv7esJALAKO2lia+aEiAwpVLg2pSr+ttgPWYB7/kB+SQCoioQi+vYi/owrQsqWwuvvRx557wRg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB3775.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(136003)(376002)(366004)(346002)(396003)(66476007)(66556008)(6666004)(66946007)(2906002)(5660300002)(52116002)(316002)(478600001)(7416002)(16526019)(6486002)(31696002)(186003)(86362001)(36756003)(8676002)(31686004)(8936002)(2616005)(83380400001)(921003)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData: Y6J49I1B1KLPXdyQEkgAghCRDAfhrP2tR//JqPF2e11iiaYJvrvp4NCArB6myWnkNdxL/Bzc1AIGMp/ch5fnGwKE+VgDyG07ZChH1alKnU4vU2J4hhSEFZ5NUwOmO/HjENwVHdQTVeATBa4qD3pukCNU4272T3LECgJkXuL/cGf/TaS9wonk4tjGbrf47zQ0fHuof+doZcBZSjIMwjd23G8fRzk3UD75eDhkUjLFel8gpHOQTRHEa5+vCecF+FxLWBsoWgfqQ4L79QUbl2i8Ax2Iv2RxdfaaAGgUk1c96YE7dd0h4SkvNQWLfg/5dUFUfwN6d1hben/ZC5L8N7x70VDe0jTAquTURy9ca8NljLHC8pKXzCzGiTyvhvdD26Ssc7CGgYkzJUj7+wvjbZODYVRDViRMF7GP9Hyt6XE71pas87SNZq5cpbNGkPyAV4IqSZHFcALs5SpY+Iaro+UAUkJEks6ksMyuerZG9DCfvtVGUcS88dqosP8Nlo0+Xeel3h2gUMA+1LR1QZoTNTWaM3ygqUjYqymDnbDDWz9yniFBhrhnA/VNPLiT9NuRSQPHuiM8XtxzoYrCAgb5IGwq70P4qj31MuwiHq6N/kz5uc0Uh59ufchunfIkqEFVopryd5GqZwEGWNitXtso29+NxacY681VqdMlqDbdOKlHUjHBCtZRvLFnJQey8onyxPssOAOUIZY43oe6pYGX8Jj+iw== X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1dfe88c0-0b3a-4929-cfcc-08d86c4cfec2 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3775.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2020 12:15:22.3807 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0c3VChSHEZGkcxa28wQgdcF2P0EDXEwRHqhhfcU/yb6CSBZDCsIsYtNAmdbw6TiA X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB2545 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am 09.10.20 um 14:12 schrieb Jason Gunthorpe: > On Fri, Oct 09, 2020 at 09:39:00AM +0200, Daniel Vetter wrote: >> I just noticed this here in the patch because everyone else does not do >> this. But looking at the mmap_region() code in mmap.c we seem to indeed >> have this problem for the error path: >> >> unmap_and_free_vma: >> vma->vm_file = NULL; >> fput(file); >> >> Note that the success path does things correctly (a bit above): >> >> file = vma->vm_file; >> out: >> >> So it indeed looks like dma-buf is the only one that does this fully >> correctly. So maybe we should do a follow-up patch to change the >> mmap_region exit code to pick up whatever vma->vm_file was set instead, >> and fput that? > Given that this new vma_set_file() should be the only way to > manipulate vm_file from the mmap op, I think this reflects a bug in > mm/mmap.c.. Should be: > > unmap_and_free_vma: > fput(vma->vm_file); > vma->vm_file = NULL; > > Then everything works the way you'd expect without tricky error > handling That's what Daniel suggested as well, yes. Going to craft a separate patch for this. Thanks, Christian. > > Jason