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 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A2DBECCD193 for ; Wed, 15 Oct 2025 19:59:12 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 29CB510E8D4; Wed, 15 Oct 2025 19:59:12 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=amd.com header.i=@amd.com header.b="Fo9Ney4f"; dkim-atps=neutral Received: from SJ2PR03CU001.outbound.protection.outlook.com (mail-westusazon11012009.outbound.protection.outlook.com [52.101.43.9]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2996E10E279 for ; Wed, 15 Oct 2025 19:59:10 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=V5uPZ9tdMRuDImoyO1pqwrklMNdiVQV3SIiG4+j8A33+Y7WTs3GhQZ/ZsqxHHO+L6F8NcMd0atpNchsizWhXOEBwayKalkPfaU8vhhse8F8/k2lvPWeiFrHfj8q+GKfOblhMdyL6BIIBOlKjZHqtsbq5NzLxVBUglFW23QL8P/c4Vt9TSXbFZiH5DwVHUWMWSckxqvO4nR33a0ee2ovicfTMMV81zI49rAut0WUrm+NYYIZBhcKLzEq89LdMLwyyn+r8idAydMwENlI8FIb4kRhm8yLljObX1xUxWt1q8G1L6nIyqRyNBg3ds3mQjmXhrlVxGweKo4A/lZvh6s3s1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/0QKyi9gyPtKyMXc7Ve8axIUeTlgwgo4SBtWXkN60YM=; b=RwuEih3O1s7CwhkVpMI1Lo/IrL6fil1L49BuTu0OrHfDI2kJe4h5p+CDD7y8twHkoIKHb5xY+VYbnwa0hEktXZZ8b7t36YZe0je0mN5QyX3lERgpym9WepOqlNqVGp0yvBH9I7MkOghu4mHtUmwhB+jyH6siK85+ZKdZuChSehHoYJnIbcJF4a7N2nYVYXXIgXcFgmqmHIhvvCJrfnr/BmekUojP94ZIeZkpYl5JjvLdWkgB3XpMS03kh6IWL2OqRAI5tMO+iLfgmMt6LXOOODfWsPkz2/xj1fmnBz/lACFV/ifxg6v6oiQOgN4kxVMd5F0Bltx4/e1WPW13ka2aew== 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=/0QKyi9gyPtKyMXc7Ve8axIUeTlgwgo4SBtWXkN60YM=; b=Fo9Ney4f1hlINXz7ABiA+NQvRlC7Kry2A25H4JhBlYXc8kHsmp4K0Blk0GoqvdbWBKmfhfxCRuYxxdd1j30JhIGdyMKopRZsh5i54MTJ3OPL4IeRczVu5Hs/FjAqz+S8mILXbKhpgpGDDBMpmbycKHZm2j5r3YWZhYTRz9flwi4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from DM4PR12MB5149.namprd12.prod.outlook.com (2603:10b6:5:390::14) by SA1PR12MB9546.namprd12.prod.outlook.com (2603:10b6:806:459::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9228.11; Wed, 15 Oct 2025 19:59:08 +0000 Received: from DM4PR12MB5149.namprd12.prod.outlook.com ([fe80::36fa:deca:aaeb:75da]) by DM4PR12MB5149.namprd12.prod.outlook.com ([fe80::36fa:deca:aaeb:75da%4]) with mapi id 15.20.9203.009; Wed, 15 Oct 2025 19:59:07 +0000 Message-ID: <8d7f6229-7a68-22a9-a197-a3ba5abdd020@amd.com> Date: Wed, 15 Oct 2025 15:59:05 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] drm/amdkfd: Fix false positive queue buffer free warning Content-Language: en-US To: Felix Kuehling , Philip Yang , amd-gfx@lists.freedesktop.org References: <20251010193348.23271-1-Philip.Yang@amd.com> From: Philip Yang In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: YQBPR0101CA0148.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:e::21) To DM4PR12MB5149.namprd12.prod.outlook.com (2603:10b6:5:390::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR12MB5149:EE_|SA1PR12MB9546:EE_ X-MS-Office365-Filtering-Correlation-Id: 3d598db3-0345-4e68-0e4b-08de0c254ccf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?cXRwV1c3azQ5K0t6cDEzSDgzRFM5MlFTTUFaZE1UdGg3ZkRiWHhoTGFRM3JI?= =?utf-8?B?V2JGSGlqOFNRNnR6emUxZWpSQTFseThBcG4vTEJJQjFoY2pKWHZjN3NNYmYz?= =?utf-8?B?QUE0aU9hOWFmS3AzYlJIaWQ5R1RpTjZHWklwNGU2VklPcU1PZGZjT29CY0VN?= =?utf-8?B?eEVIamp0V204RWMwQVhtbW9PZlV5OEZwcUVZQlVKTUVBVC9xNzlIUHFKMUdq?= =?utf-8?B?cmZlcU8yVUY2SlBmQnJiSC9HQ1lnbi84WTltbjBUM2ZOUzFDcnR6TWxDcmlF?= =?utf-8?B?Nmc1RStjV3JiZVB1cG5jblFROXptQkN6UjNWYm9CczhwMWNvNFk5dnhLaTE4?= =?utf-8?B?bzRVYmg5NUd0SGxjK1UyektuNU1HSWRKM2pLajRpZGFnZDRKZGtFemtjVUtG?= =?utf-8?B?UzRibVhoZkQ5MHFKNlJBU241d3NoQy9OTGdmbkRxZ1I5bVU1eklEMFYwS1VH?= =?utf-8?B?N29oQ3dRbERpbnlOYko5VUxGODBHeFpNVXJObUxXL2VWUmxQcVF0cldLY0R0?= =?utf-8?B?SDFkSlc4TmNHeXVVTGFnTUx6Vk5NNFVtWWtCLyt6ZTNlQXJSSE1RYkYwcHVB?= =?utf-8?B?cENKMWc2aThoeG05dndhbHkvMCtkU1JPcml6MXpKY0I4Njl6ZU9FeDZVTCtn?= =?utf-8?B?RWRuK2tZUTNFZWRkQmU1QmxOaVlya1ZldzEzUVhVZWcwRU1Bc01hQ09xQU03?= =?utf-8?B?NEtYZ3ZXVUxnd29pNitOV3l1djZPMGkyWVBFbDdWdzlxT1E4Ym9scnRISmx6?= =?utf-8?B?R0tqMUthWG9MWEtGK0IzbEt2bXN6QkV1ZS84S3ZXSmJoYnBnc1BGRjlPMXo3?= =?utf-8?B?cGxBWVYvdTc0RXBFdmwwTURYSFhXaGtXcDhWL1ByR3BqMDZUVzJYdWdmWEp1?= =?utf-8?B?RGFoS01OdGgyMjlyLzgyMXFNdmhuOHJ3RkNGYlYyenoyYWYya2lGalM4OCsw?= =?utf-8?B?dHNsSmN3T29Bamtsa0dHbmR1OUNKMHBodnc1YlhUQUxCc0k2dEtQRWhNN3px?= =?utf-8?B?a0J5VGwzRk1aUmFKMlo2aWM3NlVHdkc1UTlCT1FocW1hMjFPN2hxMERZVTJO?= =?utf-8?B?bmRHSlJwSlZnZmZJaGRmaFlBQy9xWWdOUTB6M3Fmblo0STZ2c1ZQYmoxTEtM?= =?utf-8?B?d2Q0VkZXL0drVmFRZWM1RmNoUnhuNERJUEVaU3pDNndxRWt4dkY5a3pTUVJh?= =?utf-8?B?SENvR2lSMmpKalV3SXduSUhrWnZ5UUU1TUtQZ0F2aFMxeEZLVUErR2VrN3V0?= =?utf-8?B?QVhwRXp4MUkvelBIckFOMWpSNlRtcnpHWHMweVpSTC80OUhvS1ZTSTArZmxw?= =?utf-8?B?d21Xa0ZFTzVqVHdPUXZtL3ViR0RhUkZsL3Q5aEJVancrOXBMV29JQ0Y1UDVJ?= =?utf-8?B?L0VlQW1XSVF3NGFMVjJjSnRvWTFwSjBWMFRwT3g2bHV1a1JoTFdZRERYMzBm?= =?utf-8?B?MFZ5VUQ1akZqanZVTzduYmljSEcyMHFXdFFWQThwamFaR1ZCTmxCVFlxbnds?= =?utf-8?B?dW94M1RubU14YVFRdmpZalBVWkh2TG5VTXhyTmRwWlRFdGNFblFDeG9QVzQ2?= =?utf-8?B?RjByVVBUeVNja0VOMEp6QkQyYzZTNW9obUhwaC9pby9wYkhYeW1wRCtEUTVa?= =?utf-8?B?cTNwVWNVRkxjUGpvRFJ3N0pSbmZyeFl1elNvWXByVm53aVExbExvSkU0V3VQ?= =?utf-8?B?Um1RNDIwYzEvMkZ6TEhwSUJud1JFVXU3d1hSblZxV3pLUkFPS0FxQnFWcFBE?= =?utf-8?B?TVphN1QxNnRmUFB4Z05QbW4zVTk3WFJUejhnbXUxZ1JKbzlrTm8wVWlWSkw0?= =?utf-8?B?RW15TWFLeE5hc1BQNzdUOSs1Nk5HTzJUak8yZmw0K1JpcG1lN3ZPS0VXaUxT?= =?utf-8?B?STk5MGozZHNPUVNnUXRjRlhHVC9qbTI1dGpkcEFZcEVCckpPNVVKVWY2R0pL?= =?utf-8?Q?CaBmget/YbUBI/lRRl+qphyO13Q1sPI4?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5149.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(1800799024); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TUVJdkdJYVk4cFNRWjdsOCtyTHQrZ2JGVXlHMDRmK3AzcUVDSE1hcVR1OGZ4?= =?utf-8?B?ZktMVEJnaURpWEhMU1JTL0dKditicGdBWmFHY0EvT0dJUmxPUWhaZTRoYm1K?= =?utf-8?B?T1V4bm9UbW1UZ1p0MlNaK3ZVaGJJWExlK0NJNmpmZ25hbUxxNG1YZSswNW43?= =?utf-8?B?TEo1SFBLUldILzhjTXVadS83WGFHY1JQMGZVdGVjV0lhR2lHaTJVUnF2VzJL?= =?utf-8?B?elpkbi9aSUx0MGI1WDlSVDl3ZW5BTmxQN3k2NmRBdGFHQ3lhLzJ5OXNKZVZR?= =?utf-8?B?cnhpQ09WaTlJVWh3SjRKd1hkMDdCdDZlTm9hRXY5eWJJREh1SDBYQ1NFWCti?= =?utf-8?B?a0hyMWh0d0hYSHRlWHVpejNKRzZpUDFIR2x2KzkyUHNOWUthcWdBRGxwTXNE?= =?utf-8?B?dGxzSjVxZTRFMkxHemROOXVIelFXV3pvZnFNb01keFZCZnlLZW12cGhBc0x4?= =?utf-8?B?SlRoNGNuV0JySXVRbkNCSmFvVzFhQ1F3V2h4QmUrQi9WODRIMERlaW5WS0NX?= =?utf-8?B?V0FGM3E0bFptWm8zdHZUbTVreFFEVUorWGJFbk14TmVGVm14a1VYTGhnRVU0?= =?utf-8?B?N09mVUd0eHdyOEY0endrUmdIUkd6SFFmU0VYZm1zWUw2ZnFuc3JiZXFKb2pN?= =?utf-8?B?NDcrOXNDL2J2Y1h5OTV6Q2h2dTllRFoyQ2VJMlIxSTJDS3VKd3JaM3RXS05E?= =?utf-8?B?bkNETDc3WFg2K2N2dUx1aHBlaFU1bXJBUCtBczJlRzhpbFpwMGJ5OGZ1UGRs?= =?utf-8?B?VndwMFNmNUMvbFQ1QStLN05ZUEtnb2lTa3NlWFJ1amNPb0lxU212LzFHR2tO?= =?utf-8?B?eXBGQXpxMGNvd1FFN1BLZ2h5WXpqNHB2OS9VTHlXRHR2aWEvR01PTk0vd1Vj?= =?utf-8?B?dDJFbCttbVZqbVp2SWF6ajgxY1NuckJMTmlBY0NnWk5sNC8vUFNrRy9Pd0RV?= =?utf-8?B?cGRmakhXTDhsUldkbGxpYzhISEJyMXIwTWt2ci9Zb3FjUlFoS0xadFV4bjAz?= =?utf-8?B?Q090bmc2aG5jb0hZQzBISi9BUmRxVzNzRkZLME13RC9lRk9QNHFZODZ5YnR5?= =?utf-8?B?UkRRR0lkdGJqRG02OTNwelh5ZEVrYnVUTTBWZWhXdGdENGdSTG9XUkZVcjA5?= =?utf-8?B?elFWdVJIMmNnTUVaUWxRU0Z4dnFmTlhUQUlJZnlzcURVOFFHMWpScFRVMUtD?= =?utf-8?B?SkllMjdmbWxMSFljSERha3NoTUdpYWxhSlM0SGVySm1qeUd0L2gxNzd1OVhx?= =?utf-8?B?Ni9QNVo2RXAzUFl3b3lEZEhaOGRGeUt6V3A3UWM0YzBudDVUc21UM2pKZVZw?= =?utf-8?B?R0poUWhrVG5BY2UrdjN1WVNmdzBzbUpUZW90MzlFSS85QjdzQ1dFR3NydWJj?= =?utf-8?B?dnVoeUpCTjBvNEUrUTViRDQ2V29McldiR29UVnZTRFJLVmJkVXp6R3VTUXVh?= =?utf-8?B?bVRadVFhYTRXZ294WjMySUU2ZU9YN28xRFdUSDNGdDkwOVNKOGpLa2RJQ21q?= =?utf-8?B?TXRJdnE0OHVEVG84aFd0MktCeENydWZJL240ak14a3BFTEl5V29XMi81dVdZ?= =?utf-8?B?T1pPd3VJeU8xdVFMdm41N1dqVDlTM01TN3VReUFZanplc1pZajhoLzZhc1JU?= =?utf-8?B?Q3Y3UzlKUXVWWUJYS1FueTZ1aGQwZGx0S0luYkhPRlJJQmszUis3dGJqVmxZ?= =?utf-8?B?MEQzYm9aV0xIT0xORzBVOFUvc1dheGxJQU1MdkxINFJXWHd6eE1xczh4Snpo?= =?utf-8?B?WCtiTnV3SmNkRGxZUnM3Znk4T2RsMzRMWEFUb0IrUytJKzVPZ1RMSFZwMDlv?= =?utf-8?B?aHQxdkQxejNpNmUyZjRjTUhEOTh5Qk5SdUJEUWVyUEdQaTl5SG95MXNMQWt0?= =?utf-8?B?VjhEeEtpV04wOVZpSHV2RUt1dWRIU1MvUEM1T1hUeitMUmRmemE4TlAwWUJZ?= =?utf-8?B?bU5XZDhCNGlnY09vR2tLNHdFS2t3cEYvYnRtbnBpNTBGQXowSWVhUnh6WElK?= =?utf-8?B?c2VEZnBGLzJZNWFkbHhDTmZkS20xMzNxckd4U09rSWVwVHpCekVpZmdDWnh5?= =?utf-8?B?Qi9wOTdWOUZTN1JXcklNTW9DUE84OGI4RHlJYzUrUjU3d2d1ZnRlTUt0OFF1?= =?utf-8?Q?GufQ=3D?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d598db3-0345-4e68-0e4b-08de0c254ccf X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5149.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Oct 2025 19:59:07.7213 (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: KSkj/lFoVuICmUuMSpG1nysCGrE++vj92vjcRgWIhoXuzbh73F5XCsoiKre4k6Dq X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB9546 X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" On 2025-10-14 15:46, Felix Kuehling wrote: > > On 2025-10-10 15:33, Philip Yang wrote: >> If active queue buffer is freed, kfd_lookup_process_by_mm return NULL, >> means process exited and mm is gone, it is fine to evict queue then >> free queue buffer CPU mapping and memory from do_exit. > > In that case, kfd2kgd_quiesce_mm will also fail with -ESRCH. I'm > surprised you're getting here at all. I would have expected the queues > to be already stopped when the process is gone. But it seems that's > only done in the kfd_process_wq_release worker. So is there a time > window where the queues are still running, but the queue mappings are > destroyed and the queues can't be stopped because we can't look up the > process from mm any more? yes, we should only show warning message if process mm is still alive when queue buffer is freed and evict the queues. > > Maybe we need to stop the queues in kfd_process_notifier_release to be > safe. It should only need the DQM lock, which should be safe to take > in an MMU notifiers context. There is race that queue is running when svm is unmapped on CPU,will add another patch in v2 to stop user queues when mm release notifier. Thanks. Philip > > Regards, >   Felix > > >> >> Only show warning message if process mm is still alive when queue >> buffer is freed. >> >> Fixes: b049504e211e ("drm/amdkfd: Validate user queue svm memory >> residency") >> Signed-off-by: Philip Yang >> --- >>   drivers/gpu/drm/amd/amdkfd/kfd_svm.c | 15 ++++++++++++--- >>   1 file changed, 12 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c >> b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c >> index 48c9a211e415..9174f718482a 100644 >> --- a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c >> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c >> @@ -2487,17 +2487,26 @@ svm_range_unmap_from_cpu(struct mm_struct >> *mm, struct svm_range *prange, >>       bool unmap_parent; >>       uint32_t i; >>   +    p = kfd_lookup_process_by_mm(mm); >> + >>       if (atomic_read(&prange->queue_refcount)) { >>           int r; >>   -        pr_warn("Freeing queue vital buffer 0x%lx, queue evicted\n", >> -            prange->start << PAGE_SHIFT); >> +        /* >> +         * Evict queue if queue buffer freed with warning message. >> +         * If process is not found, this is free CPU mapping from >> +         * do_exit, then it is fine to free queue buffer. >> +         */ >> +        if (p) { >> +            pr_warn("Freeing queue vital buffer 0x%lx, queue >> evicted\n", >> +                prange->start << PAGE_SHIFT); >> +        } >> + >>           r = kgd2kfd_quiesce_mm(mm, KFD_QUEUE_EVICTION_TRIGGER_SVM); >>           if (r) >>               pr_debug("failed %d to quiesce KFD queues\n", r); >>       } >>   -    p = kfd_lookup_process_by_mm(mm); >>       if (!p) >>           return; >>       svms = &p->svms;