From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 70F37375F65 for ; Wed, 5 Aug 2026 16:50:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=192.198.163.11 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785948633; cv=fail; b=GKAhQH96hB0nSxHwUrMkU/SLzL4Nz1fJDBj8FDlZ6HiF8gE/FOKaMM9J6l0bGDNNbjGurxRwLojYYSAr3hcUy3VTMSx23kG5ON+vPBfyEHgVYMc5SlpuRjbNo6ORd7Aq6jIcw/7WblV+/NpUcH7+b1VehdtebtbXas7TFGhVrxo= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785948633; c=relaxed/simple; bh=C4Ja/J8hk8XPudJ/tfI8N3gTEb4TAiJBYvtVI/1c2KU=; h=Message-ID:Date:Subject:To:CC:References:From:In-Reply-To: Content-Type:MIME-Version; b=MMurfiar1aQ77eCzjQoJAO9UhfA/4kOhHjji2C/TzWOYLbgsxGxSCnQAEcHpqoKp+lWfG9Wo5preatDibRA5R7A59V7mgdB/l1c4RvVDRkj2q2MuefjyKQt+YwQxawRaOC0YMjc9JXBChwDKPlLiWhDHa1doNvF9v2yX71dguVE= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=EJTBAJEg; arc=fail smtp.client-ip=192.198.163.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="EJTBAJEg" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1785948631; x=1817484631; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=C4Ja/J8hk8XPudJ/tfI8N3gTEb4TAiJBYvtVI/1c2KU=; b=EJTBAJEgnhx6zD26C03NZAZi7Ndd+rxvlTkWsIM9fLY3RaB+AgjAdg6t 8RzWhyhkVQuYoBU7J/mJFFk8k0UnRBEC2nf2GjE8+ftc76inJh/mn4R9U EgYNpc0THjWacG9ZDeuc3xrmCa/5YU7wz0p8LM4kL8QQ3qdZIkOp/W5yE IPo3+k5+vEnPkcaQ+eMR/TdN4pgMJ6N4jVO1u30EsDZe3YxO576mvyZxT 7nVuPGXupKE3uTVs6Hph71vHpA9O5x+SinPNl49D/tKf/1WdNeM9HmNbr Svp+Wi2QH5LYfRm/i5YoUnyDDwkA9KzoY/EiVbN2ByzZzDmiI91dyDOOS A==; X-CSE-ConnectionGUID: uB7Jx5pxTq2MMCDaBA+gJg== X-CSE-MsgGUID: SgapZrFFT5WMsPuwLM/ubg== X-IronPort-AV: E=McAfee;i="6800,10657,11866"; a="97124983" X-IronPort-AV: E=Sophos;i="6.25,206,1779174000"; d="scan'208";a="97124983" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Aug 2026 09:50:29 -0700 X-CSE-ConnectionGUID: gBSaBCNkRhiUvu2EunDMCA== X-CSE-MsgGUID: vrjdYs2AT0CZMJePMt8hiQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.25,206,1779174000"; d="scan'208";a="259224436" Received: from orsmsx903.amr.corp.intel.com ([10.22.229.25]) by fmviesa008.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Aug 2026 09:43:31 -0700 Received: from ORSMSX902.amr.corp.intel.com (10.22.229.24) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Wed, 5 Aug 2026 09:43:31 -0700 Received: from ORSEDG902.ED.cps.intel.com (10.7.248.12) by ORSMSX902.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45 via Frontend Transport; Wed, 5 Aug 2026 09:43:31 -0700 Received: from BN1PR04CU002.outbound.protection.outlook.com (52.101.56.18) by edgegateway.intel.com (134.134.137.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Wed, 5 Aug 2026 09:43:30 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=E3YlxrdZNSdxDfUAsHyKFdW9n+TumVh3uWgifDbhglBYQYhxj/MjeZuBF5gndbLduWNHbkU0dJjpF0iiymzSmnv8C4MAER8mBV9506tzBhWCv+XGO1pYY7VsIj9ozlyeEU+som02jgoCQNu/3jJF2FGHywZUpr3/9qMsV18tqrBPZ/woM3d5mObgJ+Vd77kDiDfQPadoB8zYQBdF+knTtKcx8r0dHOl1qkb/9UvlQxpNtJnQh1LF9ejzGlNHCBudAtJC7q5G9E99WS/p5497f8BnIpxAKm77I9PcbYgc1zbHwweVd18PPf1YKFWhYc8RDRymWk0yP9BZp6YgXG6vAA== 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=no+GJaxfAH5ceJdcG88LjTAzSp0ztc5MFT5R9kP3EXs=; b=eiS2NL9ZFuxAO6RVcrAF5l8EeQpfFX+/+kOuWesILgo0vTlFV6VQkrRJ/j88vrZ6RFHTZSrd3cxj3tIiBgrO/Aa2TC29/Kl+v2MKdkCPWrLUjwQDKWsSWuef8I7GgPuv1HhZQlNxNlznYhS3hkYpqxp11V9An3xLq/iv0S8glagnP2ROIo2Z+1/J6LECQqIKQuiIT6+T/3WgJSongpMLWuayx8MAWnDzbLq5eAxXwtTjBHeqV5CWUYh9iVpEuPVa+kG3YegF7ykXekwrX2Q0B7qNiBNvI6ySkaPV6gFI0p9jq4P5DAd/dRaYxjL+Zbw6t1+7eBCJn+cRgmaRw/Bnhg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from DM4PR11MB6020.namprd11.prod.outlook.com (2603:10b6:8:61::19) by IA3PR11MB126088.namprd11.prod.outlook.com (2603:10b6:208:54b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.19; Wed, 5 Aug 2026 16:43:23 +0000 Received: from DM4PR11MB6020.namprd11.prod.outlook.com ([fe80::3058:1480:e4ac:5765]) by DM4PR11MB6020.namprd11.prod.outlook.com ([fe80::3058:1480:e4ac:5765%4]) with mapi id 15.21.0292.018; Wed, 5 Aug 2026 16:43:23 +0000 Message-ID: <266b2607-45a6-4e36-820f-85b93e5df33d@intel.com> Date: Thu, 6 Aug 2026 00:43:11 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] sched/cache: honor migrate_llc_task semantics in active load balance To: Tim Chen , wanglu15 CC: , , , , , , , , , , , References: <2b23308912135b92e8f10e1b8909c89d8b46f41b.camel@linux.intel.com> <20260805023845.4040148-1-wanglu15@lixiang.com> <033401d1699b4852fbfdd05140bdd56c7bca5f7a.camel@linux.intel.com> Content-Language: en-US From: "Chen, Yu C" In-Reply-To: <033401d1699b4852fbfdd05140bdd56c7bca5f7a.camel@linux.intel.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SI2PR01CA0054.apcprd01.prod.exchangelabs.com (2603:1096:4:193::22) To DM4PR11MB6020.namprd11.prod.outlook.com (2603:10b6:8:61::19) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR11MB6020:EE_|IA3PR11MB126088:EE_ X-MS-Office365-Filtering-Correlation-Id: 732874f3-3263-42df-9570-08def310a8c6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|7416014|1800799024|23010399003|22082099003|18002099003|11063799006|4143699003|56012099006|3023799007|6133799003|10067099003; X-Microsoft-Antispam-Message-Info: Xuch+7HIWkm38NlY8azfoiGhOccXM/Zns94DK40+m/tmSw+HnlbTvxXM8WAWPLVvViGHz30COQT9iHXofVoAh2frqnkLEPOCrSCrHR5TfxUSMCOYtmOyK4ShRC+BV0en/3UAfeSILwDbEyNDSXXIoHs4YGPaQz3/3B/EXSRZmF9iDMe1KrRkk/m5dt27KRJtEdpCbUAGhCY8AgKc6mFV2mfQzMSjnFXwxZv93RIUyLOQ+YEbHTUTgNy46s2P2Jma0SSkRE5nNkTrVYt2QT3XXfsrTWWvBIQwIrByXU3vFaf4mAOTDXcLLBY8FcB+Aed+nf1JHrnHXSsur5PnIHI+tPLUthDSdJA9sWtqBGd9jLdjwgSyuDi58Lx5xd7y/lh0+Fy3lsKN+XNxCa4sTtJviJEZGsQpo+RovejGOU8E/1t9HkUVBXqfjax82LJoVUnZDczB/KU4jAkLt9oU8riQu/gySnZB48qh4U+8YIoGSQpByLoziMe/vLJUkZKGlxRBno6qTxTHs2GLT+LwTO3zS4fkz9X0R2q/Wo3nnjGqXGJ+Y0+pjgnIjjpVwUtscuTO9p11iFROpd/HydrBYEOXxLYfdUQ9OSWmPQnP3D0J/PZk/2cebgRn6J1e2g7sNLqpSs2PBUUxVi3IOOJDcIXEKu4/gFHW+Dlb9qUcjNfXtRc= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB6020.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(7416014)(1800799024)(23010399003)(22082099003)(18002099003)(11063799006)(4143699003)(56012099006)(3023799007)(6133799003)(10067099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QlFyVk5BSEN0d29ac3V1NGlDZkdkbUhycmhDQkRKVTkzRGJSNGJpZVZzMDVY?= =?utf-8?B?ZjJJblFKVmVSUnVOSUltNnlndGtsV1RJZEUwTUNERWpZaTBUWWM3YmpXVGV3?= =?utf-8?B?NFpzQ0ZKUXQ4N3FOTEVVODlpQmlQOGxPSUtEUEtOZi9OWHZVcTRZOExwTTdw?= =?utf-8?B?NmUyUFlyZmZETUhicW5WUW10MnVYSVRRaU5kTTZHWDR3MWVHeGhSOTcrdFM0?= =?utf-8?B?V0lHYWV1L3FTaDhNRElYSjBnc29RQ3pQY1ZsUUQyM1N6Z3kwSVpwWitOQzdG?= =?utf-8?B?OXdZVlpuZjUvaUsxTW9kYzk2WE5PY2VPdWNQRVJPLy9Sd2JISHh3WU1FUTBz?= =?utf-8?B?ZXZpdmtSL215SVlOdGYvNGViNEptNUppZXM5ZnVuaHR5dkp6RFE0V0UxbjVi?= =?utf-8?B?cnhzUnJzWWhMdHhub2o1NmlIVlNDV2VvbnRMdExQOFNBUzA4dFUzcTFoREVx?= =?utf-8?B?OHU3YXNjY3h6YUZyL2NtREJaWlhzOWlTTEVkTHpzRE5laTc1bXduN2JtMWdB?= =?utf-8?B?a3dyQUorMkpvbE1PejRUZFYxa3ViclRlYnp1eEY2UjBSallmQnkzaEtOMkJH?= =?utf-8?B?U2FVNFpwdXVScjNYWm50ZjMrcGRsVmZwN04zdUJoY2hoOEk2UU81cTJLVFJW?= =?utf-8?B?ZHRGTmdvMUwvclcvZk9idUx0Z25PZGNscGxBWm1xNkJTclZoc0pnUWxNcEdF?= =?utf-8?B?YVJBd3E0MHBhcjJkbHdpRndNWGpIVkhsUGQzOHZxWS9WbnlMaTVoakIyK2tX?= =?utf-8?B?dWw1SG56SHBnREFkOS9KclJhczBQaFV0d3hYcTl1Q1NNcDM2a0VCZXNGY29x?= =?utf-8?B?WmxNL0RpemxvZENsUUxacHdwYXdwb0lHZEs1dVhNUGIzYzNLTzkzcG8wVlgw?= =?utf-8?B?RnR0YWMyUXJ2aXVDeXBySDd1QmluU3VXVDV6OWxvcnhUS1YydmNMZTVscGVV?= =?utf-8?B?anh3cUJ2ZWpCeFNocDRHWkc5eklXcm96MjNjN2VWVWt2SUZydnorSWpqaHRB?= =?utf-8?B?MjFrcy9CenJmdVBBakxBY3o4enUyeWVFS3ZuYmwvT2FsaGNuS282RzJrKzJ6?= =?utf-8?B?dytTTmxkck5CRDBRaWNTWEhtYUg2dXRSdFA1NWVUcXlNQkNYcUcwQjRGc0w5?= =?utf-8?B?dFd6cTJWVG0xeEhLU0owNWVOVXJKRndNQnBGakRUZXFmaERnY3lic3ZaWkZs?= =?utf-8?B?NmNNQXpwM2NSMGhPSzdvN2NCREYybjFDZUtSMStiMGlWa3A4WmZpNFlSRFJW?= =?utf-8?B?ZExuWmFVcFIrS1FvRm54RDNKMHVhNXpoRnRNNHlLRzcrTisvOENRQTdaWktG?= =?utf-8?B?SzNWOWJDTmhqa0J0NHgxYnlxd3lxWUlKZDFsc3pSQ0hjeG5tajVrRGpFN082?= =?utf-8?B?L01JYmxKZG9sajZnb1l1VWdjZ2xBRGdGZE1pQlVhb0l4b0pReU5aUGZPRVZ6?= =?utf-8?B?UmxkcXdIZWIxU001UXJIM2FJWGRWaFI4RTZJZmRhTEFMM2hPR1RHZnA5OElW?= =?utf-8?B?Q0RaVGhNcHlYUW44LzYzcWJwVlFiZDdHNWI3MkxFcXZUMCtrTnN5V1FXZUNC?= =?utf-8?B?Qk1UbkNsSFphREJEeEMxdXgrbGFCN2lOdUFRUC9YMFBUT1JYU0x2RnpNUVo5?= =?utf-8?B?VDlhMWxYeDZXcGlObmlYd2FHS3BGT0NIZGpZcURPWmtNK3IvajdKWTJ0RUtu?= =?utf-8?B?S3hOTTM2VGllYVZYRlR5NjVhWlhCTHBDbEIwTXJzbTBBYjdpQ0tFZUtTRFI0?= =?utf-8?B?OEQxM250MDRhZWdIeUYxRFp0QXdwYVB3SUNteXhLK3lCVUMvUnduSURqODJN?= =?utf-8?B?d242MEpJcmZQdE5NWDlLcFIrVVNIb2tmNzdla1BuWGxrdVpCZ3Q5Mll0djlO?= =?utf-8?B?V0NOK05SZEx6NkYzN3Ruc1l1T3J6NWJxcWJ5TGVGZHFmTmdOc1BBbnFvK1lH?= =?utf-8?B?OG1TaVh0aVNIVFg5Z3hMMVNydkl3am5Dbkc2YjZ1a1BUOW9oc3JHQU81QWVt?= =?utf-8?B?QlIzUGRHcmcrRVQrblZsalpuUE9Hdjd5RXpFQnJ3UFkzNmlkRlFFTWMxSDZr?= =?utf-8?B?bHZGMWtUU2NHZHVUekxhOWdpQnNTaUFsdjhFOFg5eGg1ZWROMzIydlBsbTBX?= =?utf-8?B?TTFpYmVhUXVMOW53N2NjZkRTcDJDd0ZlNksrWXNKVTEvbFpZR3dZYVpGRnZi?= =?utf-8?B?Vmh5emFzT05BNUY1YktHNmV2cFQwZDVqQytrZHBDU2c4YzU1R0NlZG1KcjZk?= =?utf-8?B?Z0lxakduUWtFYTFJUXpRTUNobHAzOWlya3NiWTBPU0lUeGVsZndZNTM3VDVn?= =?utf-8?B?b2tOKzlvU1RoNnRPWXlPUFpLS09tdE9nNGthS1lHYW1oRnFoSk90UT09?= X-Exchange-RoutingPolicyChecked: OfR8PAUH4GChs3f/aQ2/TuYpk+f4FGA5RMktoPuZAzpV+o5adl1RiloaTwbLYQf8t5E8iJRfN2zXLSQ7g3W4cEzxKYhlOZgqVdP4uJg1vQAMvBq+Ej1EjmwArjKQJ+3LlM/TyuuB0v75R2zd2w0MS0rqlt1cYDzvEwa8vLwOaxbOQQTMrvWdhiZLxushQfZSguubsMNO5QsfDYWPic0VRRREoSN9W2iNcqxBTJUL4hkCJeWrksKgffzcjT0ZanTvgdTtftjUr46UTyQKDRZy+2r4Apjzo3RQMiTIwi32Axjh6NEpq2WQSChhxWMRFpOIjvS3qYWvDCm2442yddHHKQ== X-MS-Exchange-CrossTenant-Network-Message-Id: 732874f3-3263-42df-9570-08def310a8c6 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6020.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Aug 2026 16:43:23.1365 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aYZN7GcfiI278YsjvOioNQRTqnmTSyCehAMHz+w84TDld42RBrByLLEkYjZ8FgdrVdZOUDFxl983DiSntVCw9A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA3PR11MB126088 X-OriginatorOrg: intel.com On 8/6/2026 12:04 AM, Tim Chen wrote: > On Wed, 2026-08-05 at 10:38 +0800, wanglu15 wrote: >> From: Lu Wang >> >> Thanks, Tim. >> >> On Tue, 2026-08-04 at 12:42 -0700, Tim Chen wrote: >>> On Tue, 2026-08-04 at 23:07 +0800, Lu Wang wrote: >>>> Thanks, Chenyu. >>>> >>>> On Tue, 2026-08-04 at 16:17 +0800, Chen, Yu C wrote: >>>>> Yes. Besides, if I understand correctly, I suppose Lu Wang was >>>>> referring to the following scenario: >>>>> >>>>> src_rq has 2 runnable tasks, p1 and p2. p1 prefers dst_rq (dst_llc), >>>>> while p2 prefers src_rq (src_llc). In this case, migrate_llc_task is >>>>> set because src_rq has at least one task, p1, that wants to migrate >>>>> to dst_rq. In ALB, can_migrate_task() found p2 and returns true for p2 >>>>> thus moves p2 out of its preferred LLC. >>>> >>>> That's exactly the scenario I had in mind. >>>> >>>>> Firstly, before ALB is triggered, the generic (passive) load balance is >>>>> triggered. It iterates over p1 and p2 on src_rq to see if it can move any >>>>> one of them to dst_rq, and in most cases it succeeds in moving p1 to >>>>> dst_cpu. As a result, ALB will not be triggered. >>>> >>>> My question is whether p1 is guaranteed to be moved out in passive >>>> LB. can_migrate_task()/migrate_degrades_llc() can reject p1 for >>>> several independent reasons — p1 pinned by cpus_ptr, p1 cache-hot >>>> with nr_balance_failed still below cache_nice_tries, or >>>> can_migrate_llc_task() returning something other than mig_forbid due >>>> to capacity constraints on dst_llc at that instant. If passive LB >>>> rejects p1 for any of these, ALB is still triggered with p1 and p2 >>>> both present on src_rq. >>>> >>>> Can we conclude that p1 and p2 never end up on src_rq together when >>>> ALB fires? Or would it help to set up a simple experiment and trace >>>> this path to see whether it actually occurs in practice? I see. It is possible for p1 and p2 to coexist on src_rq. Previously, I thought that if task migration failed due to CPU affinity, then dst_cpu or src_cpu would be changed because of env.flags & LBF_DST_PINNED or env.flags & LBF_ALL_PINNED. So ALB would be skipped. But a more common scenario seems to be when p1 is the running task. Then can_migrate_task() will gate it anyway. That is a common migration failure. >>> >>> With 2 tasks on rq with different preference, active load balance could >>> pick the wrong task as can_migrate_task() checked in active load balance >>> will not consult migrate_degrades_llc(). How about the following patch >>> to fix this issue. >>> >>> [...] >>> >>> + if (env->migration_type == migrate_llc_task && >>> + env->src_rq->cfs.h_nr_runnable > 1) >>> + return true; >>> + >>> return false; >>> } >> >> Your approach is simpler than mine — it avoids threading >> migration_type across the CPU stopper boundary and doesn't need any >> new rq field. >> >> One thing I'd like to flag, IMO: this approach skips the ALB path >> entirely for migrate_llc_task whenever more than one task is >> runnable, deferring the fix to the next passive LB pass. So it >> trades "delay" for a simpler implementation. >> > > If we cannot pull a task from this rq for a migrate_llc_task imbalance > with more than one runnable task, can_migrate_task() has already > rejected the candidates — either the task preferring the dst LLC > is cache-hot or capacity-constrained, or the only movable task > prefers the source LLC. Forcing ALB here would ignore that. In passive load balance, if there are 2 tasks, p1 prefers dst_llc, and if p1 is the running task, then p1 can not be migrated to dst_cpu in can_migrate_task(): if (task_on_cpu(env->src_rq, p)) return 0; and in this case we might have to rely on ALB to migrate p1(not ignore it) thanks, Chenyu > > We keep ALB only for the single-task case, where that > lone task prefers the dst LLC and has no other way to migrate. > > I think this is the right thing to do because we shouldn't > force the tasks to move when can_migrate_task() is already > telling us not to. >