From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2080.outbound.protection.outlook.com [40.107.236.80]) (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 D34B22AE8C; Thu, 19 Sep 2024 20:52:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.236.80 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1726779126; cv=fail; b=IVtU6qARnp8+yqkZGtE/mYSfvCpUz3XbirOHGCz8V1Po0gQjdtsvcb/yIlgsi7rM1+YlOAS23vjrEbSRQmNImZ6Nf8qeK1HNnbXF8CS5a6h+AGsFJ0dFO7g7gTdoAkrb0tt4n1S2wAiWo5Ya/Mne7unUClndd81DsyLTI2++viM= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1726779126; c=relaxed/simple; bh=AU9qjf785qxJCaMbtBPfItqVRIpj6N4Z+cj2b4K2T5o=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=r5zhUCklPai+ZE/RxkywbGYcvdWfLjac/lyGNwp79ovs+4eDPuHqRUnQU0kLFb629KLYDWC+W1WbGOSXVM70VBUXfB+HF9o+bTlBf0cOoca2yf5edUWdCYLQjdpU5MGJWLZCVH3J9KIaoDQq3mCd2TSCqX3A3iCLN/RQD6lxr/o= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=lNIx8iD7; arc=fail smtp.client-ip=40.107.236.80 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="lNIx8iD7" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=U5BmdkZA2uRH6B5PkLwfqy6hSZFJ/NZttFFBzZ0Rk9mktTuwu8RrT4++GyoF4RIiQsGqARtL3JjlOXtqr2y4NKM7Zh/8YgYrpJ7TwPSsQcx7/pW/4aehoDDwVWJ4BfCIm9R7gQy3z1L6dc3mUMFep/mkHzh6d4QhSAkpxh2cgfJRh6Jau/NI9mhjZ1z2DHSkXPxJXk6Fue/439dxqrqpFg1yszktLyNqYJkm0lDQPytm8/KbJN/WeQ1H0qW+zNImof6QGsBch/2vwKLbO0UqkRl0smnf8sgdfgXxWSg+orevRtYKkMcnE2mQLRMpImWEJfM3d4zb2iLzbtHtJy9aEg== 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=Ob6DFo8An+WhHQTHosifoAf0zF45MXrjwTW0Q0gLZYI=; b=DAQtABAns3wuKiMB5/S55QFG9vhYDhAIJeIRc7hYhGCbvCs4vVlEhIx9II6qeDSJZJgUyHMii1p14Kfvbll7ZmhTLGZhcODHTfkIxYcrGI6xsdcj2ZCZNWzcs/0jHQRNJKZRiMhzVgRyT1GHbB99DPmpf90cbW5UaR9z8bfvcMcCMk6cHKBcZvUclrJ5g53x9mqRoWPs6B70ly3WzLkbHkWAtSktqfASkPZHCJ2IQeENsQbnqm5AvmJKwnengsBkpsYO8MVXYZu2PXbVh7mMk3va8IH41hQUqJovMfLEzdPZms3PQOvg/T2b+Kzub1PFgNYbS5AoS79fS2ABtWXM3A== 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=Ob6DFo8An+WhHQTHosifoAf0zF45MXrjwTW0Q0gLZYI=; b=lNIx8iD7TGrCacAYeZQEHJIZMys5r3cagzYsTpjfp2h+Vu+VapKEDafo6JPZ4/7y2aRrOEPHWgswYpuj88DNJlxlReNvKXfsYD6m0fMjfkAUDCRgMslRgSiUJL6tozjZXXhQSAbtDONkt5nDg0JT7lb3jNlRWCCjeMObm2evr0o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from MN0PR12MB6101.namprd12.prod.outlook.com (2603:10b6:208:3cb::10) by PH7PR12MB9103.namprd12.prod.outlook.com (2603:10b6:510:2f5::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7962.24; Thu, 19 Sep 2024 20:52:01 +0000 Received: from MN0PR12MB6101.namprd12.prod.outlook.com ([fe80::37ee:a763:6d04:81ca]) by MN0PR12MB6101.namprd12.prod.outlook.com ([fe80::37ee:a763:6d04:81ca%6]) with mapi id 15.20.7982.016; Thu, 19 Sep 2024 20:52:01 +0000 Message-ID: <25b14b4f-96b7-453c-b876-6a46c4f3789c@amd.com> Date: Thu, 19 Sep 2024 15:51:59 -0500 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1 3/4] acpi/x86: s2idle: call screen on and off as part of callbacks To: Antheas Kapenekakis Cc: linux-pm@vger.kernel.org, platform-driver-x86@vger.kernel.org, luke@ljones.dev, me@kylegospodneti.ch References: <20240919171952.403745-1-lkml@antheas.dev> <20240919171952.403745-4-lkml@antheas.dev> <7c604018-59a3-4b70-83d1-06f0ed858b73@amd.com> Content-Language: en-US From: Mario Limonciello In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SN4PR0501CA0112.namprd05.prod.outlook.com (2603:10b6:803:42::29) To MN0PR12MB6101.namprd12.prod.outlook.com (2603:10b6:208:3cb::10) Precedence: bulk X-Mailing-List: linux-pm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN0PR12MB6101:EE_|PH7PR12MB9103:EE_ X-MS-Office365-Filtering-Correlation-Id: 0e502fa7-4cd7-4384-1144-08dcd8ece908 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?anhnSEdWcVVLMnE4Z0hJcEFIcTFuM0VjOWo5cG9ISERXcWpBaTFBSGdtbEtR?= =?utf-8?B?bEkxeTN0Z2NtVTAyZ1Z2M3YyalZPWjgvWWd1eWsyYlZ6MmpqQ0JPcFBkanZr?= =?utf-8?B?NWRxek1GcTdRZ2REMk02S0dKOW93T1ZURWphNXpsTk1ZTFBHdmlVSDlGZk95?= =?utf-8?B?Z1JiMkQ3OXVBSGttcU9MVjJOckJMc0RDNy9SaWYxN29mQk13a2R1czRzTHgr?= =?utf-8?B?Y0lla0JySTIrNXNTTThZVmhKZk5qeDZQSUMyUCs3K2pkZHNPK01zZk8xU0F6?= =?utf-8?B?ajY4QjdVTGpYSWc0MGxFd20zK0l6emk2TXk5ODAzSzRCUjVjblJTU0JUUXR0?= =?utf-8?B?bUNVMG52MTJ4SnBMU2FVZEdFb3BDUnZIZnQ0WDIvOUhsbWxsazEyZmp3NXBE?= =?utf-8?B?THYybTI4ZEpqVmRFMmV4dmNRR1BhUHpFakx3WnJqV2lyRytCbU9xcXRsNVZY?= =?utf-8?B?Qmx6blNtb2RJTEJrRldnZ2hCTmh4VTV3SWU4OFJ2eFgzempoN1pUejZ4NE1o?= =?utf-8?B?dVNlR2NtaFpoa0svejV6bnJ3K3J1cXgxOVAvTVhOb3BzbEc4WVJsSWg0Qnpy?= =?utf-8?B?SjEyMWd1cWlTbGpEV05ablFoS0V0U1JydmE1WEVxOFYzdG9pL01KcXVBNm5w?= =?utf-8?B?VFFmOG5rOFFaTlNzbEVUMm52RER0eTRCWWxrbFY3dk9rM2RZbzR6VGJaTmtY?= =?utf-8?B?b2lGa055ai82WEpzZStwZEZBNVFDOEMzTTN6OHJsbVg2M2E1bHpOU04ydHRR?= =?utf-8?B?aW9jMlpEeG5XSExteTVNblArSEljdWpQeEo0VFBkckNtbGZ5WUhhOGhUam1n?= =?utf-8?B?N09GMmxRbm9TajVQdkhFdmNQeCt0NXNZQ0txVWtFR05reW5kVm54Vm43OWFT?= =?utf-8?B?NjdPYU5LVVBYS2pBb0dGTFdBUmJmTkpxSVI2cENCd2NEbzhtU05mMTJTaExH?= =?utf-8?B?QVVWVjhPa0R1TlJqdkxpeUdhcGcxMkdLVkQwdXVxUGkwL25OL3E2QW9HZlpR?= =?utf-8?B?bkJNY0V0VjFtclFBaGdpWk9UQUtSUXZXQjFvN1F0a1BpaDBHamY3RUhQNEY3?= =?utf-8?B?ekJsY2V3dUY3Wkc2UmM1U00zdzF4aHpVTTcwK0l6dk5FN2hnV1VzMldHaDUr?= =?utf-8?B?K0xUNlR3eEo1c1MzRWpHOXhJTVlDQ2I1eUpyTi83N1l1NHRBZGRWeE9KSkRG?= =?utf-8?B?WUJPczJhemgrTWdvZVNSWUllUHArUk9VenJHdVMweGRaRWdTTnRpTytpelJw?= =?utf-8?B?V3hhQTNGYkhoQmlOWjZla0ZBM1NRL25ybFNoeEVBUGJFMENLWFZlcDlyYzJG?= =?utf-8?B?cmV0TTFGQUVtY1U5ekVEUHVHN1NwSGFyNGZJT2hqMUlmdEZiTHJhd0Q5ZU9p?= =?utf-8?B?NE1Ma0NiREt5Zk13ZkZGbFZtM2xjNEVSNEwwSlY5Rlp0ZkEyTWZRMmUrMTZB?= =?utf-8?B?U1ZtRksvMDRnRW5QK0ZNaWdlSDMycEVxNmN2amtYek04R2JLTmhJODVEWnM3?= =?utf-8?B?Q2ZHZDZRQkloRUdCNVVpQ1VPNW8rWUp5M3ZSczhrRDRzUTVRZjVnWFY3cUVS?= =?utf-8?B?RXd5Mnc1bWhhUTR4ZjBzRkdndTdGREZkVFpsTHBPQlFuZTdsdXdKRDBjY2VO?= =?utf-8?B?WTl5ZTc2ZGlwNWxFb1hlQVd2T0hWM2Q5cTNUK1pybXcyd29jbCt4c0d1eWg0?= =?utf-8?B?VXB1VzEvMTc1aHFiOG5PVjdSM2JBdi9ueTJpZ2pKMHB6TEl1VytlS0c5cG5U?= =?utf-8?B?dlRrWFN4RlRrVk53UWkrRC85Q0svTy9mUkxSTEtTV1lWdUJkeUtkM05jWlJX?= =?utf-8?B?alZLd2tOam1hdXhNcGtKdz09?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN0PR12MB6101.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aDBLYUtpbHBOcmM3OUtVOXFRbjYya0EzcVpEbExaYk1CRWhaQmw2WUdrWkxm?= =?utf-8?B?dlJ4aHlTRVRkMnNoRjdBU04xSjltQlc0NnM3RXF4cWxYWVBTNkthRlhiQmR0?= =?utf-8?B?ZlJuYXJCQVJGMmhEck1jVU9jV0V1L09wWDFqbjY3Q3piRGkrYkZNdEFLQWdI?= =?utf-8?B?VEFHN1Z2Z2FEZHNhU1JQdkRPdTYzYk9KZ0RkZ2dueG5pVUxxQWo5bjBtS2Jz?= =?utf-8?B?NU9hY2RZSGFoTU94MFRrRjBiME9yUTFFQ0VyU3FBVWhwTk5jYmJRZVlzMWs0?= =?utf-8?B?cmFiSlpHU00wc1JERTV4aVEra0tvRDdQK2ExemFEUjd5dnNjNHBXNm4rRXlr?= =?utf-8?B?VVlYNmhJVWgxaVJJaTFjQXBzVkJhbFZZaTYzV1A2OUZpRmE0UXNiSEVsYTFk?= =?utf-8?B?QXFFd05HWE9mRnBXd3M2aWg1U1hMVDRWa2dIYVc4bTdvRkpwc3FVQk90YjNs?= =?utf-8?B?REo0bDFrWnVVUEQzTXhKQ3htNVk2YmcwcjJqcTVQVXJrK25YMFNqejlQK2pH?= =?utf-8?B?WU9XWWxWRFNLd05YRE1QbkpmaWNpK29lMGcvaXRicEJySXd2WHJMZ2RxS05B?= =?utf-8?B?S3RRcWlyTVBKSWlMTHNXZTM4aU9mUTRpV1Z6TFduUWRnOGMwOTBCdmVuanNQ?= =?utf-8?B?M05ZZlMrdDY3RE0vRUlKY1AzYWpXUEJiRXBkVkZUL1plY0tzbjFmNEpJY3RG?= =?utf-8?B?Ri9iaGtycENLdDFjRVl6TjBhMjh5Z0pGbVdtQTAzNzFkN1hMSjViMnVrRlhY?= =?utf-8?B?MVZRdzZFbnRqUjJxeHZaTmVWRDlPMXllRjVPR0hUMXhrQ045bDNENjYxN3dq?= =?utf-8?B?K3ZVanN4VzkweG96czM1SldCS0hyMTBINW05Y2pQUHFncEJGc0ZCZG1jbEJh?= =?utf-8?B?Sk1lazFweTNMY3JOVmExek5LU1NYLzBwM2JUazlFRW1ndzViaGo3blZvMVF6?= =?utf-8?B?NHFhWTVlRDZyN01xZkl4ZzlWTHBOT3VjQVVwcWJmZytyd0Z6emlTMVFYb1Fp?= =?utf-8?B?SThtc3FtRGxabm5oSmp2ZXhKakJmNll6aW05aHkzWUV5OFIrQjVZOTk0andX?= =?utf-8?B?aDcxeFNYZnpDWTY2enRyTk9OZWRIMVM0MDY0SzhFNDNaZ2svY2xjV0wrWUpE?= =?utf-8?B?V3RTamNwYzg0ZDcxYjN2TWVQWHl2c2ExRFRwVWliL1lzNTN3TUExeFlhb29J?= =?utf-8?B?QzZvWkVKZDhSSGs1ZHFsR0FnYit2NTdNN3EzNERHL3JlRG1jdWpUaUw0VFNE?= =?utf-8?B?SWd5cVE4eVgrUmhCVmVab1NOamZWZU5oRzRMMVNGZlo5dy9mblFyVWxwYlBL?= =?utf-8?B?dFZwK0ZZd0krc2c2c0pWS0NMbUo5TXlCMHlqMTB1aU91SHBkZFVLZ1dBN0F0?= =?utf-8?B?cWZaaVZtS3ZqOTlKQzBOejZ1aVo1QkMrZTZXVUhlZUx1QWc4SXY5UmVsbDM2?= =?utf-8?B?czM3SFdYVmg5eGhmU3JKbnpWRjYxSCtQbGxDYTUweWpVbmtGT212dnExUU1U?= =?utf-8?B?M3Z5b1g3MTlmanhnQkpmK09iTzN1VElhdStMWjEydlR4UzNRRWVYdU5md0wr?= =?utf-8?B?SGZPbjQwUEVvUFNaN1dzbEdMSStiOThwalpJakd4ZklWbTY1Ylp5dTVuVWpV?= =?utf-8?B?RFgyUm8vSVpiVUdkcHdhbGF1bkdYZ0lFQjFDOU9OY3BGWlVKL25GSFdaamox?= =?utf-8?B?NEQ2WXpHeUx1VUNDeE5XaW5lcGw0dkMxejZuYjFhYmxQa2s0RFRJWHJVOGJ0?= =?utf-8?B?QW9sSFhTQjFmNlNsa2d2R0xrLzd3allNZ0FDTXYzSXhES2xvRE1oZjFISU9p?= =?utf-8?B?ZG9yYURZQW1YYXhuWmFweVlVMm5EWTlDbEd1TGc3K1oxM0hIbUVOSUVSRmEx?= =?utf-8?B?K3ROb3RwbmFBTUlEUlRqc3FxTUpPa2tQRzdwS2JlNy9OQVZHbVd1SEtpN0xO?= =?utf-8?B?SlZyUjIyazNiVDhDVnp2OS8weSt4N09BQ2dBb3FmSGJVWVlBTVNxY3BEZE5k?= =?utf-8?B?eXJrSURFRm9xR0ExSHdscmkzQ3o2M294ak9ySHpFN0MyeEVqTFdlMFV6dzZY?= =?utf-8?B?MlBXMVp1MVFIVStNQjNobXJOQVg3VHJGSmdaNGMyZmMzd1B1TDQvQVVaNjhR?= =?utf-8?Q?XKzyMtAByBWMoZvPjvc8mgwzG?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0e502fa7-4cd7-4384-1144-08dcd8ece908 X-MS-Exchange-CrossTenant-AuthSource: MN0PR12MB6101.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2024 20:52:01.4616 (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: j2VO+OA6J6SSoIgLFDikaZIp3AafPZ+xL+96o/7Dcu9lY6QfYMkvTamXKahu8SMxiPLSRAGdxCCrv/rYETPKfg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB9103 On 9/19/2024 15:45, Antheas Kapenekakis wrote: >> It seems like it would mostly be a programmer error if it was called twice. >> >> How about something like this: >> >> if (unlikely(WARN_ON(lsp0_dsm_in_screen_off))) >> return -EINVAL; >> >> You could do something similar with the inverse in the other call site >> too then. > > Indeed, under normal operation calling it twice is an error. > > 2 concerns here: if I make this change just here, the code on patch 2 > will make the suspend sequence bail. Is this a desired outcome? > > Shouldn't we just keep going? And if we should keep going, does that > include calling Display Off twice? > > I am inclined to say the desired outcome is to not call Display Off > twice and to keep the suspend sequence going. In which case, I will > merge your suggestion and remove the bail sequence from patch 2. OK. We'll have to see Rafael's thoughts on your next version. FYI, he's at LPC, so expect delayed response. > > 2nd concern is that I suspect it is very likely firmware vendors will > want to call this sequence as part of developing devices, so I am > inclined to allow calling the functions back to back. However, that > could be achieved differently, e.g., with a module flag. I think vendors developing devices could rebuild the kernel too. I'm not really sure this would be a common enough need to justify a module parameter. > >>> + lsp0_dsm_in_screen_off = false; >> >> Doesn't it initialize to false already? Is this really needed? > > More for my peace of mind. I will remove it. > > Antheas