From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.16]) (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 BE62B2DCF55 for ; Fri, 7 Aug 2026 06:49:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=192.198.163.16 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786085353; cv=fail; b=qI041OH4sjFhPgMiabvxI3DYYkocw0W11zTnxDRF9zMxQ0wR9HkAORBLcDMoIttQ7q+rL8EFf935s587dbfJnDCmpaxltDWIUCoMhAKmyS0xbz7prE8Ph+A87tQ7+ytAtl1wv8hhHe3G9ya7YXWt8QiasTrXO735iac/89WsElY= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786085353; c=relaxed/simple; bh=353XUqSY4qVyfoPikS54XZwHGOBjLYPSVMiyBLgDOjs=; h=Message-ID:Date:Subject:To:CC:References:From:In-Reply-To: Content-Type:MIME-Version; b=qhB2dKQFBu15xJ0YLFp6NVipshroYBRKQhGQdhydJZpkxOJClaEzhsT3VKmCxkUO+U2nG/SirMih0ZzH9/hz8t7cSGM0ZpcBI+l/ORvRuUjWXmJiGYYk40szrwlz9+S2kJvNrRqk/D9LXd8HZRNlBypoH416DP4CnObEwfTYbrs= 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=Q6OPvDYM; arc=fail smtp.client-ip=192.198.163.16 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="Q6OPvDYM" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1786085351; x=1817621351; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=353XUqSY4qVyfoPikS54XZwHGOBjLYPSVMiyBLgDOjs=; b=Q6OPvDYM7I311gvYeG+W9coTXpaZ8nY2eZ9smFRJaGKKQ0QcdQyjHwhK 7eYODd6/Y43t710fiRLn49plE/Ka1FQRRzoY+oxGj5duE23qrrYLLImCZ k6EipzuH42X9fSE/BwQqhKGeaNCqjjXrl0CquByUmP+KzBhDZmzDAZbBm ConhU2mZxSyabqtN63PIpMuad1uTQiPPrbTCnGy6RR5IIl7IEtAH63N01 4VUo8b9AbcLZTaSrpi0G9Kr6B13xB2OwcBZeVIq7O1J5J5+HpWyGB/5mP oCnLGVrixvfedGNgO9G1jx/MnbFXgvq66yE+PSN2ic5on9RpGqxzImSJe A==; X-CSE-ConnectionGUID: sf+5L1jeQyextOQIjpFjqw== X-CSE-MsgGUID: urnqa788TxWKv9DWsLq85g== X-IronPort-AV: E=McAfee;i="6800,10657,11867"; a="74230429" X-IronPort-AV: E=Sophos;i="6.25,210,1779174000"; d="scan'208";a="74230429" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Aug 2026 23:49:10 -0700 X-CSE-ConnectionGUID: g9pmqkniQkuMLU1+nUxb7w== X-CSE-MsgGUID: Ywgtpg7kQ6a1a89TsmS+AQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.25,210,1779174000"; d="scan'208";a="262938644" Received: from orsmsx901.amr.corp.intel.com ([10.22.229.23]) by orviesa009.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Aug 2026 23:49:09 -0700 Received: from ORSMSX902.amr.corp.intel.com (10.22.229.24) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Thu, 6 Aug 2026 23:49:09 -0700 Received: from ORSEDG901.ED.cps.intel.com (10.7.248.11) 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; Thu, 6 Aug 2026 23:49:09 -0700 Received: from PH0PR06CU001.outbound.protection.outlook.com (40.107.208.68) by edgegateway.intel.com (134.134.137.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Thu, 6 Aug 2026 23:49:09 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gikgDyo/7NADQAbMY6LzDfdgDITPS61UI7c+3i+tE67a2YB7hG2P83njcX5zkIjf1hCWpJ2inLdFBslzbQO142jS1fhSoRkOThmvB6OCaUT35XT1LXE77bZ18EnagRtlt5M/ekOiYSbUmsY47vFaAsQ3AW/ICtci+uw3fO2go5CRyl2pK1oqmjrs/qrf+NflJBfylgyntvwETcuyxdRAkJA8z9dCdMv/uHFFBcRxHk3LO6T2UwlIM5UeK3xTs1RGxfv53W9MX4cBe69gWJ/IKTOSPHAOtgihx8AtEMdkwJRtTPgrjTugaWZYhhvqwmhmZnUEifApFbjCs+OpNvgMBA== 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=Vk55+MEITChd93CzGGZs0ydFCDG0ntc3xSLoTSwc7nw=; b=CqkJ7tYKG4Bwi79T/C/X2aAVYgJVXW5KWZQ/J5bIt8lYwu4Sp/lz3sc2+jWwKXXFt2c4OZYr8F8uXOp3rKgORrkc9scCCdNwIu7OK1hXniJM4XxxYMV3xHXhY4F5Ayp7lxkQVXmknB+Q0PVxBqka2qRpbcJSDkd8jeG6ld1Bbxq6auvlgqk7nIJK9OfMET5OBfUfo4cl2QYVjo8mOs5C3Ttl1NVn7rC05YnZ+yD0R2N1KuZAXEhPdc8Y72c06W02Pdq2N2QtYjhZw54BuP4hc4BbMCi853j1ejEVMSb0KDBXAtWZWPj5UwyJU+d79dPFqWM3ebiMHxeXKadOsr8rXQ== 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 PH7PR11MB7720.namprd11.prod.outlook.com (2603:10b6:510:2b3::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.23; Fri, 7 Aug 2026 06:49:01 +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; Fri, 7 Aug 2026 06:49:00 +0000 Message-ID: Date: Fri, 7 Aug 2026 14:48:52 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] sched/cache: honor migrate_llc_task semantics in active load balance To: Tim Chen , Lu Wang CC: , , , , , , , , , , , "chen.yu@linux.dev" References: <20260801122252.2476258-1-wanglu.priv@gmail.com> <59db4420-7995-4261-89d5-03aa306c1370@intel.com> Content-Language: en-US From: "Chen, Yu C" In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: TPYP295CA0028.TWNP295.PROD.OUTLOOK.COM (2603:1096:7d0:a::17) 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_|PH7PR11MB7720:EE_ X-MS-Office365-Filtering-Correlation-Id: 3fcdf4d3-a851-44be-7323-08def44ff601 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|7416014|23010399003|18002099003|22082099003|10067099003|11063799006|56012099006|4143699003|6133799003; X-Microsoft-Antispam-Message-Info: pcfBqIm6Dj6QY7Vrm8dX/A9evc9Dq2sO02n3JjnD0atxMU+85uULjo1whM3sfykBEAeyS6mbwX+xWsGwtiZLsB63EMLrU0Wb6NmxpKfT1y7P+xgBaaw/UmwzlaYvYEk7j4Fn77nJvvLPwnblJuhrh1aY/Ei0LT2+yO0rcPyFZ8rz5+08mIJAEnnBMpnNuxCHF1cgzBr1l1rcqY9tvGd3Cc1zqJxmWDEaCCxHBZZ2fjjFMT9uzxh7F07kYnx8/P3AWR2kl3U3QDgMQZUn8e8XNlYflpqBguEp9MsqCQrdBv3i5Fd/cZrny74CqK3KmCpRA+JskpiiqwtPtw355Gn2n05CiTfhRtpJ289obfRnJZCgkyiqypHRnWgsoaLylrSU/N8dWUYkhkEs8mKKitYbRGwG8e7PxaLsAS6yzJQzzulT2GSJben6DIAj0i++Aq+tXpzizI3LJnlrTMH7Wsv6MZ5wn+/4Z0KBrSB2N/92tOOrFbF26NRuHWCKisOhczwiR2en2vhX5V48R6PoXm/Bft0w7ogm3Dx6VDPRoxIS1jd8LTSfonRie9anlfox+6PUAxWjxcyPLo0dBqgaC2fO+HEQnfn2HBxGxFWbP1hky34g9wpTZ3LWmOuF5zzPqIiclNSFwCdD3fxwqYlSSYPJKYS0Pdw1rILM7K8mG2KQdGc= 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)(1800799024)(366016)(376014)(7416014)(23010399003)(18002099003)(22082099003)(10067099003)(11063799006)(56012099006)(4143699003)(6133799003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a00vM0puR0Fqc255ODBZYm1yMDVMa1N1a0kwOGNBMlhPNmN1c2p5MmpxdXhM?= =?utf-8?B?WlZ4TE9EMDZIR1dweWtTVFc4MFhOZ2ZROVlvZXNpUmxweTBLa2VwVG1qM1B3?= =?utf-8?B?VGFyZjhJcWdsUTZmbVNDRHVNYmdqT2ZFbkQwSFU3SHdZNXluZWdSNTY3dVB2?= =?utf-8?B?Wk5keVZ5T2ZrcFo3NzFXa2pHSFJzTHhXU1pLY1p4N2s5M0hDZmdEWjZhcXJ3?= =?utf-8?B?Vi91MFdkck85SjNwYWFTM1JCZ2l6ZDRVOFVUZVEya0lnNW9QeDlCc0hPeGYr?= =?utf-8?B?TWdDd3k4aTZDZ3pXMGZNNnoyOVFmZXRCdkFxTWt0RFYrTm5Ec2RVVXgrK0w2?= =?utf-8?B?OWhZUzhtQ202UlBMVXNUa1JNSnYyR21Wa3pjU0RhZS82VGhwR20vQy9uMktx?= =?utf-8?B?bTh4aThpWkhoMkhxRmVPSXN0Z0tvZTg1czkrRU1saTAzaGl1NkU0dFdIQnBo?= =?utf-8?B?dGRpQ1NCdnhLaStMT1pLcTVIK21WUGE5WmdnTkVUVHMxRGhPWVNWTVQ3czRR?= =?utf-8?B?Y2IrNlc5T3pqYVpKQzdmWU5VNzhiY2lDc3BPaGlkOHY1Qm1JaHdxWXMvaWpS?= =?utf-8?B?cjJoZnV0dlBKNkNWUHhPL1BtUDQ1TFBoNzVFbUFkNHZ4a21FaUJyL0hjNDcz?= =?utf-8?B?YmxQaG1BUGJtWFRMU0hBV0tWOG1DaWhoUGJaTjhxTHlKNXhYOTlMK3MvY29a?= =?utf-8?B?a3oxK1gyR1BUS1Z5STgvUDZycnVOdmVud3hneXl6dSswWUp6NEZvL2VkTjR5?= =?utf-8?B?YVlrNHNkcUxjVkpYWGFFeTNUNDZNaWJxdHd6dXJBVWJKREI3NnhXMW5yM1dF?= =?utf-8?B?NnRMc0VoSm1Ub00zZzFoSHdDa3UyS0xmNllRUEwvMlVWOFRzb1o1UlkvdTJT?= =?utf-8?B?VU1PbE1FL2hFdUJNQ1FoeExLTjJNTkVHWEMxS2daQmJjMFlLTktqY20vbHhE?= =?utf-8?B?WEZGcEZSWlZxanBuajVUWFFTeENNWXRCQkQvaXJjdEk0MUM2cXBMcFB5RXFV?= =?utf-8?B?OHh4Q0FKQ3hVOXl6b2ZYMEJzY2JxVmxtUVhoUldRcW5ETzU5YnZLTUFlNDdm?= =?utf-8?B?eU9SVkppMXNKMndFVXcxazdzeWUvVEZTSzRrTnZUNHBFR0RXUUZPc241Y1J3?= =?utf-8?B?Q2RkM0o0bytoYnF3WEV1V2JmbFBmVmhnNlAzOTdXNUIrd1N5ZUtVU2JqMWVz?= =?utf-8?B?SEtLM0pINVZlZGZaRW4xNXFtZzdGRFZvQ0hkTFBSYWR1OVpWVWZlcFlOdmxl?= =?utf-8?B?M25ESC95TXRSbmhEUjJKejkxK2lQVHN5Tm45bHdKaFdaSE9YREpab3FnRzIv?= =?utf-8?B?Ry9tUEpWUjhZOEdMMEg4VzBYdUM0U3pxR3UxOURPV2xnb01PZWt2NTBkZVlR?= =?utf-8?B?WXUvQmQxbitNV050QjM4Z0hYR2oyczM2dzNkOUZJU24vV0M2czhzN2ZTR205?= =?utf-8?B?ZDVWS01OR1NDRTl2RWFJSExLVnVOZmlEZDBsV1NWd3I5TnFPSURjdUc0MlBn?= =?utf-8?B?dG55MjRyRHg0VjlBZWg1VjRDRnZ3MDhKd05iY2V3ZzBDcEcrVHRCR0F6WGJt?= =?utf-8?B?cnJReWJ5VHpDVStqcUZhMDJWNE13cE85NzFJV3R5d1RSVGdab00yUmdKY2Vo?= =?utf-8?B?bHU0YXA3cU5RSlFDbXlDTFVkWjB2MHZvaFBwSWRTVEVJd0JUY0MreC9ZYmxG?= =?utf-8?B?RWVRZmNySWQ4eGU2TkppbmJGWmhMWkZVVWNqcHNPNzNkMzdpV3g3aHk1dlB0?= =?utf-8?B?V1FnS0V1N0F1K2ZZelQwUTJQaDZmTnVFMHBoQ2R5TTZhQzljWFdjUDBTR2Jo?= =?utf-8?B?OElJVFdGWmVxN05mS0l4ZnpCWGp2WFNLVEYzelpNZEZrN3RJK1U3cG52WlZC?= =?utf-8?B?ODNmWnQ1NjgvQ01GdGpsWHEzd2hxWWJCRW95cy9GaExyZ2lmbE5QaFIzRTZV?= =?utf-8?B?UU1IeXB3dWZKOVRxOXZ2czRsZXdlaHN3VTN3UmtTUnlsMjRueUFMenltck5h?= =?utf-8?B?blJXWkZqMzF1cnBYVkpnTS9wOS9zMktoVG8xZWpsdTJESisrNDBjcnhwZFRT?= =?utf-8?B?QmliOVYvUkJNZnM1UHdpbE51YjA4QU9Zak5INkhWdWxYTUNFTEVNWjNSVEt6?= =?utf-8?B?SWxTTHZHVWxxZHpmME1WS1FjeFBjUDhiRDdSbVBOTVJXNVhzZ3BBMW9iak50?= =?utf-8?B?TGd1UEp5NS9pV0NKZHpNUHlQQ25zbVZLS1VvQ1RGanh2R0N1ZlVxVUU0ZzN3?= =?utf-8?B?MGJoMGRJQUlvclZONU5XYWx3SlBDQXhlYnJvK0IwdllVbU9GbHZPZ0VVTWNm?= =?utf-8?B?aVJNUVl2UmFJbjduOTV6b3BxSU9hZTRqVU1tVFVCaE9GZnJYc0tkZz09?= X-Exchange-RoutingPolicyChecked: JDelhGFU7dL57hyOKthb1/Wf+zhRx+oa/j2n91TZo0fnwVgYbWBYwUtibeNq/9qE3YouAuPauUam0dTeLkHQTa41+1Gd7HKNmZYO7HuAeSkeViCZrAN2ebFvsZLP420nnLf6lVOa0J7QsJJOFeW/fx/dbB2SFbC7dNhF/aFz4B7D7+Mb2Bch0Ztb57rDRVBNngwkoLRm6ejngs9a9B8cjaiPINyQsViKi/M3QpTxVwg3g7ZwuXspJ3a09XVRF+CJ/Vxd7+PGh/R63f4EdTfjMmispPEmRha27/dxuFah425g4vtUyj1isqd+K8C0/VQy+/jLizO21qSy3HGA1Tktyg== X-MS-Exchange-CrossTenant-Network-Message-Id: 3fcdf4d3-a851-44be-7323-08def44ff601 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6020.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Aug 2026 06:49:00.5850 (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: TGpGgY7DBIjB7tP8h8x0+ZKmIzFWrkZV9rbkv1gHhOdg0fzZMsoff0Jz4seKvmonIgX/blTRcPjt/i5n74K9/g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB7720 X-OriginatorOrg: intel.com On 8/7/2026 1:22 AM, Tim Chen wrote: > On Thu, 2026-08-06 at 23:35 +0800, Chen, Yu C wrote: >> Hi Lu Wang, Tim, >> >> On 8/1/2026 8:22 PM, Lu Wang wrote: >>> A passive load-balance pass marks group_llc_balance as migrate_llc_task >>> and queues active balance when it cannot move a task. The CPU stopper >>> callback constructs a fresh lb_env, so preserve the migration type on >>> the runqueue across the asynchronous boundary. >>> >>> For CAS-directed active balance, reject a candidate whose preferred LLC >>> does not match the destination LLC. This keeps the fallback from moving >>> a task away from its preferred LLC. >>> >> >> It looks like this proposal provides fine-grain control on per-task base >> migration strategy is promising. >> >>> +static inline bool >>> +migrate_llc_task_wrong_dst(struct task_struct *p, struct lb_env *env) >>> +{ >>> + return sched_cache_enabled() && >>> + env->migration_type == migrate_llc_task && >>> + READ_ONCE(p->preferred_llc) != llc_id(env->dst_cpu); >>> +} >>> + >> >> [ ... ] >> >>> @@ -13654,6 +13672,7 @@ static int active_load_balance_cpu_stop(void *data) >>> .src_rq = busiest_rq, >>> .idle = CPU_IDLE, >>> .flags = LBF_ACTIVE_LB, >>> + .migration_type = (enum migration_type)busiest_rq->active_balance_type, >> >> If we overwrite migration_type for ALB (default is 0, i.e. migrate_load), >> then in can_migrate_task() a delayed task might not be migrated in ALB: >> >> if ((p->se.sched_delayed) && (env->migration_type != migrate_load)) > > This is a good catch. > > It may be easier to create a migrate_llc_task_alb type and pass that > in migration type. Then modify the above as > > if ((p->se.sched_delayed) && env->migration_type != migrate_load > && env->migration_type != migrate_llc_task_alb) > return 0 > We still need a channel to carry migrate_llc_task/migrate_llc_task_alb into the alb, since the stopper builds a fresh lb_env - hence rq->active_balance_type was introduced in Lu Wang's proposal. We can reuse the callback slot in active_balance_work instead, pick active_load_balance_llc_cpu_stop() at kick time, thus no new rq field is needed. thanks, Chenyu