Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp365469pxf; Thu, 25 Mar 2021 06:07:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzULSf3bR5zMEKdkgtLchLNyMG73URZno4VExzhTTvoD/o3F0i84OA4E+0hKnG3C6mTHZM5 X-Received: by 2002:a17:906:ae8d:: with SMTP id md13mr9348856ejb.275.1616677624455; Thu, 25 Mar 2021 06:07:04 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1616677624; cv=pass; d=google.com; s=arc-20160816; b=DBvBDflO8g4Kntqil/6V6YXODwKqR5WH8F0hAqyX8kAtj7EfMuTxVGS++JGSRACFu6 QvCAuRkvbkNzEabXUIWMf2nFElh71fr4r/dPdRnxPHiX3QMnkPQM/GAe9QS48rQaAiq5 TzUl/HDO1vQsdc8yCgagU0+rzT8bs9osQTBomleO96jtnop4LO90iriupqiZRjHe5qDy VJQisxnBFTyU/g+LHM8SQBylxUqpTDz/MER7x5/Ji2cT9jUWUGFLcUmGOwWMwCIztLfk Fou/k4qH29s32KlThFJuym06PKov6FBVGWrsNRyQhzUhQxi/7G0rUR4Z3vej7vSBmtXU /mdA== 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:cc:to:subject:dkim-signature; bh=7CDzCjf3X+kztfOdIZAZyCHDrHPHNRnFsOTf7I7FjNU=; b=EjbdhesKgufp7Pw3/3a7UizD5uQ/iSq+5ASq3FTb93tR+EQU3/ARq8lMYC8hG3TrBT fS1LeGMU0eC+BMbgitJ1CA4jo6oTsvILbBdg9g3qQrESfcq6awBdTnILtvkBuUnO6gWl 0goZlZ2aUjzavvdmdGIHg8W2ZC0p/NvyRWkO/UqGs/T46gLKzVA6bB8hDRprdbFO+hPt 1/5ZbRxJk2bGqshKh2cv+nSb1mWIK479LqSLU/v9q5cwW8ULfviZbeO4GQG4kq2pekrW LVVWy3eN2lmZPTxlY5H/BLsz3JeTXdutfSpBSUnrRnPSIJnqLcZ/J9IIlUMUczasOTBe 6/OA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=inYUOTb8; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amd.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n20si4045562ejx.104.2021.03.25.06.06.39; Thu, 25 Mar 2021 06:07:04 -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=@amd.com header.s=selector1 header.b=inYUOTb8; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amd.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230096AbhCYNF3 (ORCPT + 99 others); Thu, 25 Mar 2021 09:05:29 -0400 Received: from mail-bn7nam10on2063.outbound.protection.outlook.com ([40.107.92.63]:47457 "EHLO NAM10-BN7-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S230182AbhCYNFW (ORCPT ); Thu, 25 Mar 2021 09:05:22 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MqmQD7pn+Ny7V8fo0GNO0IgUTIkvooqErc1cAScf1yt5uAB6wwP7vpgDix+c8piK3WvmMHCZSBwUoORbdz9QPF1fFFxaR1ZB994ZbhkK7msKy944+7KkTCZARTmT7PbW+Pi0LaDLDM4D3p3GnRd/wXYU2ooV7kU6syblubVZD/l1kUUPsa4+FhfiScrxSifAItA6CEejjEr3h3ViZvVGWEDklp+iOOO2HysVAohZBIbEGs6vSnF+ki02cTLBipwqkmhR1PTt0nl3fAffrO9KX7P0k+I5wssztLxlnXKPW2+yXkHLax/i0Ax3sasZfVyMDzf/vy5QWSSXVtdR20pXOQ== 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=7CDzCjf3X+kztfOdIZAZyCHDrHPHNRnFsOTf7I7FjNU=; b=mjOxXchBfqTDEhyKJ3cdi1aydYmh8j67Xp8XL49b9gbcM/Io5bXIeN4Pdg3RmsvtFEqGFpUVwl0Fygrnfoz/Ac5tHrUpR5LHvrF933hWyaCknVclUnqD6Rwxo6hUOuxhWohrkqtSAeh0Cc4TRrPwk/QTvd7a/RoZn10K6v/RtF4DxG5VNexUrZtEb5jEj+zHhmImT0EOI49rabAdrqoEviDSU6S2PwIwL4XNc85hhjSTNwe8oggFWd5Q+yLK0P6yTaSLgKCdleI39M8+g5SQ6+Ksyfvhda4W1HIhxuuWeOdoNnOhtNrNgvckVPSl15XpQ65EDpN7tlO63mUCqyy2HA== 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=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7CDzCjf3X+kztfOdIZAZyCHDrHPHNRnFsOTf7I7FjNU=; b=inYUOTb8OFx6isLZJpIYKlKkpWnY9UvpJxJgSYnkFNxSwyTt3v/Tv9r1RQ1N8uDPQWW6hVrHYPkaty/9ZM+UyuQHWiRYGyOqyJpLFdpovUv5oHQINH5U7udPPapyIlfYNRp1cIXh4NuyCdsoLqSPxiA4DrirknuOnCzBau9nWBE= Authentication-Results: linux-foundation.org; dkim=none (message not signed) header.d=none;linux-foundation.org; dmarc=none action=none header.from=amd.com; Received: from MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) by MN2PR12MB4550.namprd12.prod.outlook.com (2603:10b6:208:24e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3955.18; Thu, 25 Mar 2021 13:05:19 +0000 Received: from MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::c1ff:dcf1:9536:a1f2]) by MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::c1ff:dcf1:9536:a1f2%2]) with mapi id 15.20.3977.029; Thu, 25 Mar 2021 13:05:19 +0000 Subject: Re: [RFC PATCH 1/2] mm,drm/ttm: Block fast GUP to TTM huge pages To: Jason Gunthorpe Cc: =?UTF-8?Q?Thomas_Hellstr=c3=b6m_=28Intel=29?= , David Airlie , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-mm@kvack.org, Andrew Morton References: <08f19e80-d6cb-8858-0c5d-67d2e2723f72@amd.com> <730eb2ff-ba98-2393-6d42-61735e3c6b83@shipmail.org> <20210324231419.GR2356281@nvidia.com> <607ecbeb-e8a5-66e9-6fe2-9a8d22f12bc2@shipmail.org> <15da5784-96ca-25e5-1485-3ce387ee6695@shipmail.org> <20210325113023.GT2356281@nvidia.com> <20210325120103.GV2356281@nvidia.com> <20210325124206.GA599656@nvidia.com> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <00f79bae-75c4-d694-8dc9-35ac21cd1006@amd.com> Date: Thu, 25 Mar 2021 14:05:14 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 In-Reply-To: <20210325124206.GA599656@nvidia.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Originating-IP: [2a02:908:1252:fb60:72d1:2a48:a80e:e149] X-ClientProxiedBy: AM0PR05CA0096.eurprd05.prod.outlook.com (2603:10a6:208:136::36) 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:72d1:2a48:a80e:e149] (2a02:908:1252:fb60:72d1:2a48:a80e:e149) by AM0PR05CA0096.eurprd05.prod.outlook.com (2603:10a6:208:136::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3977.29 via Frontend Transport; Thu, 25 Mar 2021 13:05:17 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 80f162b5-6038-4f18-5437-08d8ef8ea3fc X-MS-TrafficTypeDiagnostic: MN2PR12MB4550: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: U+g78YcwzBrTuju7gHrlAaghQ5cbfNj6SGo7qEWlSXO7T12q7Hom2bum3iqfb4ZEnjRjaFH8dKSArGZWqEym4po4MGjEyJkbDN5XAu7cq6//Q9Pbxde/wBIoy1lGpOcuqf2hTLnjJD5a2b1PEZ3ycjaWihbsKUslIRbu/z4MkwuEy9Yu/3daRWhhdCLd2/yvkH4z+lqwYqXI7glUc48bWHdCgnC0WbIC2qYLLJid6hvxGQIUYJybFuC5xVI8+bXXx5dRHYexjTXF5lAt9UlILMQF4kzFI/0qoLXmZSYOA5EzDz56D6X39QCtwuLeNElGgQ7bpRjIrqUJtGGrnisacBoJezngYKPeftt+YGMxAYx1mrLGo6NwjdSIvY4E7YB3966dU+G+UC8wLSmjVo7xK88KiLxESaEkM0TY6jrY+fq1LUL+Aw5KycAk33gYaRN+4ZLNby/l7ZzrF9uo/s8If++X0QbAXv+7A9z2vox+icgAXP5TQNgdwTSYUwLv1CRhyVy/sZdXjCtw1ZjNjJlKd+NVJfzB55qK/nIFmKed2DabHtvva2jeoeWaZMbEbCy/zsVsvXEu/sUY1ZLcBeLeXrzYrOCGcnmeH6Nq32avehZGoMkLp7aadAh48lLTjk2s9WPdDg9vKRmZt50VtC2YJgQxzEc1LCUzlEFmpkyn9an8I2ga3EIQEl8zN6WA+j6xW7UwJo69mMMV+omJ/PZUAuOJt9IKbu0RmO1r++EBSI0MvUYpdCaTXTBq61dcA9Aj 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)(396003)(376002)(136003)(346002)(366004)(52116002)(478600001)(316002)(36756003)(6916009)(6666004)(2906002)(5660300002)(2616005)(66946007)(86362001)(4326008)(66476007)(66556008)(31686004)(186003)(38100700001)(8936002)(6486002)(31696002)(8676002)(54906003)(16526019)(14583001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?MEFJQjVWS2trNzBVcGpIN1RCSi9iN3ZCeTQxK0lvQkV0ZVlqQysrMXo2K3BG?= =?utf-8?B?T3M2d1NrOVRUWVg3Mng2am9xNlQyczVJWHo2NExJWlJ5V3ZoRTNSMGpxbWla?= =?utf-8?B?REgrMXk5a1NZQStGWmhjVzVpekNKUzh6S2hlbDQ1cmE1dS9jbnUzdE5ycHVN?= =?utf-8?B?bU1xWUpocDA1ZEtOcGlOSzlOWC95dmNMZ09JRWhNemUzTi82MlBwUys0Q3dL?= =?utf-8?B?YVBZb3FMdDdLbml4QVJuZ3hZK2lXUXBrN0dRYmcxYndMUTlMblRmMmR4aHlX?= =?utf-8?B?ZzIzdmFUQ1pyME5xclBBdmtCOWJiS0krMWlqTUlDK2Uxbjl6eEdjY0F2dE4v?= =?utf-8?B?N2pGR0tuc20zSFB2dWdidEFiT1B0S1g1Z3NKdGYraWZoMmpjeEtxK0ora3VM?= =?utf-8?B?cGt5bWN2MDhtengwUkxYdzFJTU44RHhpWjJXTDc1Y1daZ2krczRYa2ZvZEFC?= =?utf-8?B?d2d6eDNLV2VXZE5PajczWTZhZ3l2NUpXTHdrU3p0alp2K0VVcXl0Ymd1d3Yw?= =?utf-8?B?UFI1U0lMRWpCWWlQL2pXc1VJQ0I1MktvTThEdnRXaDk0dFBkYlVGcmYwRDl0?= =?utf-8?B?K2tnUGhVWlQ2QTRMb1dUR3ZhbUptakNlZS8xUTMwMlZ4TGZMcXloRGd6UGdz?= =?utf-8?B?KzFGZG90UlpweWtxbmg2c1Jkc2kxVTFDY0pDTC9RMVJhNHoxOGhKU2NIUlpy?= =?utf-8?B?c3lIWTlraDdtK1AxcTJmcmE2bGhKc1h3SW5NeVJmMmNvWTU5VTFha0ZiWCt6?= =?utf-8?B?eHVsS0xFSHpVeFB5d0tGeHdiMXM5K0o2L1lIZEVoVGFRWGtIN2ZsNTVJalIy?= =?utf-8?B?TkUrVmQvY0dJb0p2QVpHeEhkN2w3S05kNWZ1em5KaGg4T3ZBMXB5UVArNHd6?= =?utf-8?B?VlY0V3B6SWh0K3ZWcURpZWJmbVRudUFsUnNWRE5RWUhtQWh5NzdwbXRaVllQ?= =?utf-8?B?b2VBODF4RFl5bUlVODl2T2J6MU1RVU9qTXVHME9LUUZXT01sak5EcEl4cjRG?= =?utf-8?B?N1p2QXBwSktEOTNWMGJWY3VZcHdaVUdnQUhkSUw2Y0tvWjRkYUNueFdseWZR?= =?utf-8?B?d2cwazg5L2g3VEFPUWZQNmFPYXZMWm9mc2lqZjdVTkdJc3pDaVNuQ2tXWlh5?= =?utf-8?B?bjBzdmo0ckhFY3k0cVJIMjg0WVRvQU5EY3pnd0lrWG9MWkdSNXU5dmY1VzZw?= =?utf-8?B?NjdkL1BkSzJDMjdMcC9ueVRxSmtzSXkrRjhacUNrWUxrVUZQSHQrRG85ZkhH?= =?utf-8?B?N1l6V2I0U3VZSWJTc3lIbHd0NnpmbGdWR2JHTTdwZVRFTS84UitKb2lJcDFx?= =?utf-8?B?cEJON3F1NW1SUUtsOVRHOEJOTzRmMHZyRUNHRTdTdnEvOUs4V292bTFiS2Yy?= =?utf-8?B?d0FrTndZVXRrakVYenp4N0plOFNRK0tRN2JHUnkxREhuMTJEbm81aTY1aHpw?= =?utf-8?B?eW1wUUJqWTlybFhhZDhhY09vVElweU10dmQvN2VSTm5IREZNMVdVTDdJbkhx?= =?utf-8?B?OWlGSHJtUXExWDcvWnFpaGRrRzJhUXNpN3N5cXdRWDc0RzUrYVdtZVFFdm5U?= =?utf-8?B?c25RS0lBbWdkdGo5U1dudytXbS94a2QyVzFTSG1sQmZNcVk5SVh4NWxSTVZX?= =?utf-8?B?Y29QUElDRjNqOGV3TXZoN2VrNVAyazk2T2Z3SHd6RzlENituZTFuTDBKcjdU?= =?utf-8?B?SzBjdWFRcVZGMndGV0UyTWVYdjBGeXF0bWlOYW90bE0zMDA1UkVTaUQrZkxT?= =?utf-8?B?UEl5eFltTlNRekh0ZVVIcVlXMWpYaEpkZVdUWVZ1Z3VqWGdudXIxakdseFJI?= =?utf-8?B?QUJ1RHJrS1krd0k3SE9JVTlmVFRiWEdTYWhwZWxqN0NjNUlCcy83MEJlYXJF?= =?utf-8?Q?HV6/rvDn+Okfm?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80f162b5-6038-4f18-5437-08d8ef8ea3fc X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3775.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Mar 2021 13:05:19.1450 (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: uJCHEcEGveOmA7ZoVS5PWckwnqNCsapgLc12T94lwnaxZecAZEGP9ffJLaW8wOfW X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4550 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am 25.03.21 um 13:42 schrieb Jason Gunthorpe: > On Thu, Mar 25, 2021 at 01:09:14PM +0100, Christian König wrote: >> Am 25.03.21 um 13:01 schrieb Jason Gunthorpe: >>> On Thu, Mar 25, 2021 at 12:53:15PM +0100, Thomas Hellström (Intel) wrote: >>> >>>> Nope. The point here was that in this case, to make sure mmap uses the >>>> correct VA to give us a reasonable chance of alignement, the driver might >>>> need to be aware of and do trickery with the huge page-table-entry sizes >>>> anyway, although I think in most cases a standard helper for this can be >>>> supplied. >>> Of course the driver needs some way to influence the VA mmap uses, >>> gernally it should align to the natural page size of the device >> Well a mmap() needs to be aligned to the page size of the CPU, but not >> necessarily to the one of the device. >> >> So I'm pretty sure the device driver should not be involved in any way the >> choosing of the VA for the CPU mapping. > No, if the device wants to use huge pages it must influence the mmap > VA or it can't form huge pgaes. No, that's the job of the core MM and not of the individual driver. In other words current->mm->get_unmapped_area should already return a properly aligned VA. Messing with that inside file->f_op->get_unmapped_area is utterly nonsense as far as I can see. It happens to be this way currently, but that is not even remotely good design. Christian. > > It is the same reason why mmap returns 2M stuff these days to make THP > possible > > Jason