From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 2BA374C524 for ; Fri, 7 Feb 2025 11:22:24 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A41B568B510; Fri, 7 Feb 2025 13:22:16 +0200 (EET) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2094.outbound.protection.outlook.com [40.92.90.94]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E68B168B510 for ; Fri, 7 Feb 2025 13:22:09 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dGL+XVsD02lIjaew095mUfYhMXKhqAo4WBCCvK+jxzYQVSTkfwd+wohb10xR8YyIC0GYQQaPLCWucx/5semayfvsFdbZ+iLrv3qCLEfJRATNltShUH+y6+jDbZ9APxkwXFi6guwXOrj7sxUmZO+QPrK0wAC12L8m0iQYn5bL7WbJlwerUV8jhgMXxqnE4/XWpSkMwwlYOxkVthMpmGyLhSxjRCZWzxo0+LahgfTiG4vCEg8tA5xjP0o8VvGKNAmZ6T+26y6FBYsEknqpR14UvBgjadY2SsoBoRKr5ASvi54QG42nHjmJ1N04aOk0FJIxZkWZv1r2FWAaNDJZpscBgg== 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=bjYmZdX7cGby85CD8373S0fzvt5oP4/hhbAlaLds91M=; b=B0gQ85+/XpAiMdRSFWjUPPGjQGHwdbKYxqrFOfxNZ7qFDIabDdzenRfCNPf4ax6Co8i7aQew/N14Yebtmr2gOSNb6E6il0JQf+jQQktyJPK4HzmyarjrMYZuLErpxleQxeRNCHA7cmvOnVYyWumMtTZWJNdxzMIG3xEWP7tQxlJCBR2VbDJfQof6zYUHMjGK1bR6RAJrHsCEIQOjwtOAmfIXAq3zs1ixAuTuZks8DhRrW7yE0rWUTX+Ie+YUnm1wdSnHh4Zy2ZP1T57H32vsXAsKsbOi2n5ZFcfnMsb2LEaj1FR7X4NmMg1xXfqFm07G4//+GrEiLEdjDH2MB4y+qA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bjYmZdX7cGby85CD8373S0fzvt5oP4/hhbAlaLds91M=; b=MM3F73WsIVtocSOHDT0iBxBtTmnDraD5fl63NGaQyecQsvQ1XIKqDOtf1AuoPBd+e6fNcLIVt+QYA7F6mqnZn1RnyEVDQl5xLrcU0JnsQk/mq73/yN5kJaf0EtRxNT6QRkUJeu1GDCDAEHWkkEgYjYXAAL7zwgZkzTZhD0rNljQZuyoAs9rzgXdXmCpEVkBjVhekR951pngyOtG69W5lZCCV6N4Lu1d45eBVyBT467B53Wd9q+x4mdAdC0HEesdXrrxd/ZCVJibIbIeuIRIMQ7pO4dKlIqqSxq6fu556wzZR6OjGnNP0ScqWNgkQKR7QD0GUyGDnNpYlqLgTjQ97xQ== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by PR3P250MB0273.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:17c::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Fri, 7 Feb 2025 11:22:08 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.8422.009; Fri, 7 Feb 2025 11:22:08 +0000 Message-ID: Date: Fri, 7 Feb 2025 12:22:06 +0100 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250206214257.37158-1-rsbultje@gmail.com> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20250206214257.37158-1-rsbultje@gmail.com> X-ClientProxiedBy: ZR2P278CA0089.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:65::20) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <7122e0e9-7e5f-4d76-b4cf-d2d8e64a97f1@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|PR3P250MB0273:EE_ X-MS-Office365-Filtering-Correlation-Id: d80ff23c-1a85-4b98-b541-08dd4769a85b X-Microsoft-Antispam: BCL:0; ARA:14566002|19110799003|8060799006|6090799003|5072599009|7092599003|461199028|15080799006|3412199025|440099028|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?Z0Q3NFhXblZ3RmphT0dPL0gwMVNIenRRbDl1MHZQMlAyQmROZjAyRy9aTEFq?= =?utf-8?B?ejJ5cEpUWEF3OUtpbjlkeWI5NHVKcnFMTkRRTGFyTDJSc3dBUnJwK0Rxd3Q5?= =?utf-8?B?ZC9JSzFZVlZERzlxUS9QZnlvKzNrb2ZKOHVGRzRUYy9zZ0NybEhPU3pCMVBP?= =?utf-8?B?WDQyUmdwd2ZZRjM3eTFkeFNGWmtVS0pYZzM0M3MwMklQVDdNcVJNOXdBc2Na?= =?utf-8?B?VzZhQmUwZmhWcG9OZm9ycEZZVkVsdC85bkw4N1lkR0NraW1uR1pGOUpRV0Zm?= =?utf-8?B?SzFkWVIrVDVFSVVNVHBONCs5VmtwRWRMNVZ2OUF1N1dPbG9vZHR5clErTlVm?= =?utf-8?B?cW4xeUcraXU1MXZmemduK3A5OG9JWVNRcitrZXE5eFdIdDl0T0VkNmpVc1g3?= =?utf-8?B?QzJTRjl2dHFFZ1pMbjFmZi9vZFFqcEpTdURaZHVWS0MwdXUzU1V1akl5R0hy?= =?utf-8?B?S290VTN0N29GWXVZNzQ5V2FEZHc3bmNuMUFVNkoxUlAvYXR0d2I2RFdRaFdW?= =?utf-8?B?U1BYRXlCc0hYaVc3SXpibXNScGpLZHdTYjdEanVKbXhVQUp3RVVVeklaVlgz?= =?utf-8?B?bjJ3M25JaUFlNzVUWGpQeUJlbTcwb2E0NXZzdFlkaVczVzRybDVUMzM5dkRy?= =?utf-8?B?UFhyYVFTdlJRSFlIM1VGTlZ2bDRnU1dxYWJiRFdkR3ltck5mNFVMajJuT2RG?= =?utf-8?B?N3dvdjJXeGc2aVcxZm1kSTQxekt1ZFRzYWttV0FLYVVyOVpSclpLcmR0amJZ?= =?utf-8?B?dU1kbEplbjJiaWcyaDNKM2NMTW5xNG9VK1hHMFZyMEI3a0tabmp2ZFpzVFl0?= =?utf-8?B?T2pDN3lHYXZjRWVLZFNTSHBKZktBS3JnSFdOQ2FRRmVGeE1jSGpNLzlBc1hp?= =?utf-8?B?dkFid0ljQ1lQWFozeiswZDQ3aFFKdFI3dzFlUkJPQmRCb1htVUpzOU1UTDll?= =?utf-8?B?bW1renJudWxVRU04bkZYUXVRamNpSjVGY2tMaFo1MGh2VHp1RXdPY09FYU1k?= =?utf-8?B?MjhsNi9YcEczYmo2cjFDUE5LSlpqaUlMemlYWWY0ZXEyVVJnSVY1b1ordGM5?= =?utf-8?B?L245WEdPSEgyTXdJcitmcTJMQnVuTFZ6UzZSb1pRZ2pZRk1oTWJWNXhzeXJM?= =?utf-8?B?dXlsaXFqVFl2TDRPQUhOa0U2MCtkUjBhL2FZN1YrMjdzOC9ROTBmRkNWODRN?= =?utf-8?B?dUZrVWRMekxRTWwrTUEvUXRSOUNtWS81cnhZcE9hZHplcTMyMzVqc3NMZG9E?= =?utf-8?B?ckVlc0xNWG5nMVlXRzc3T0Y0TklaTDg5SzV3dHliTmlmbEgxWis4dzhjTEQ1?= =?utf-8?B?QXhCd3NLVkw0b01mUTdIcnplYU1IWktEWVFUTEp2NytwaDFndktRUGJUS2hn?= =?utf-8?B?VTJBODcxYjNxeFB6amVRcjhvSEI0QU1aWGM3TUJRbFUzK09Nb1Z2R0NKVXNB?= =?utf-8?B?ZDl5NEdrRXdNQnhmODBCQlU0S01WNUgybWhueUFmVDNRSlBzQmw0eG9lYWlr?= =?utf-8?B?cnlpdGw2UW1ubCtqQWZOTFpwY09yNUh0U3A5WU1rMHR3Q0lrbk05SkVqN3pi?= =?utf-8?B?MFp6dz09?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ODlhRzUzbVEzV1JwZWRLWURlSlB5S1Y5N3k4MkdSQ0tZc0M2dDRMNEVVNUo0?= =?utf-8?B?U2Q4emdyUXQxcEFNdFdHZXo2SWtrakFZclhmRWZrcjVOcmFueEhzKy9oZ0hz?= =?utf-8?B?M0o4NlZLZ1QvZkp3cWVLRDBJQ29DT0VWVWxZYjdWL2dsRXhBa1pURE54RUIv?= =?utf-8?B?cW5RSWtGdVIzdklCeXpQeWFWWXhlSHZhRjZxc256VXBHYTMvNGpwVlpxTmxZ?= =?utf-8?B?bUNNeFRtTU9EYzNia0t3NUhNdTZVQVZ0WlgzTkU2WmpPVkhUSTFhcFBvZ0Mz?= =?utf-8?B?aGhNZ3ljZFNWUjYyODljeWdNOHJ6Y0ZQaElQRjBmQjh4YnJpVDFYbjN6dVpw?= =?utf-8?B?OWVpVTladmtDOUF6dzc5eHlycC80U2FQR2RMRkExSWUrZzlwK01wS1BlVEhN?= =?utf-8?B?OGNoblV4OEw5S3R6UXRRbVdnRmxBT3c0M0txeEM5dWxsQlFoNG8ya0tsZWNC?= =?utf-8?B?aXYwQS9LTEFVWFNjMGN2VW16a3RaS2lWakNDUy9yODZPS0s0YWRCS2tXUlFL?= =?utf-8?B?bU5WanM2RU05djBUWG5LR2F4K1BmdVJZZm8weTN4aUlwKytDZFBwMjl4UE5m?= =?utf-8?B?UElhb1NUeUtUM3BsckZ3aWdZcktDVUZ5UmdqY0JvWWJLS0JnVmgvajEvRmU2?= =?utf-8?B?ZG11M1F1NWxqeVc4ZjQ4UEQ2S3Nmb3dSSkxRSGI3U1lGbzJBenRPeGd1Nzkv?= =?utf-8?B?ZDBIUDhUUTJQY2JiMEtOTzFnZmQwdXBDSEFwV20rTHlSUjltanhkdVZnZnZv?= =?utf-8?B?T0d1amlBWkVjNFJjZEVNM0RiN1VRR2wxWm9GbGllOVdGNWlOZHNwVThHeWtl?= =?utf-8?B?TUs2WlAwa2c0SVRLQkg0ZUdYUHJISnNaOEgxUmtzV1dHd0c4ZGNaeHRBbGJU?= =?utf-8?B?LyttYUhPcnNuTzJDNEpxZ1NlaXAzVDdBdzAxekNSTlZRdFhUcy90OXlwMW9D?= =?utf-8?B?QkVHMVcyazlLa2JXaUFZa05ZZUNpa2czWm4zcTdEU0RHaDdCRnpMV2JGYjVS?= =?utf-8?B?Ty9DdEVUUG5OSm5BVDl5eGNoVmJmampCNE5LeHRsTzdiVFpEV3BFT2dGSmlt?= =?utf-8?B?K1h2MjhMR0V3MmlUYTlvT1AzVHdURXVrcFVUaHVBdjhDZkdCUllRV25NMThn?= =?utf-8?B?ZlRQVW1rL2VXWHlsaVpMTng4MWxDekYwVTY3TUk2ZGs2cDFlVHlaajl5R0x4?= =?utf-8?B?NVF4enhQUmlWeVlMbG40NFJoanJYVlFtNVhNTXJlT1l1eEtWcG1aY0dmK0NF?= =?utf-8?B?NHBvaGJDazFOUzRLT0xlZDZlMnBFRWl6dk5UU1g3UVlNY3FXdGhDSDRDaFF1?= =?utf-8?B?MkxmSjV4NS9GQkoyNXd3N01vYUhjZ1JucUlMdGZQMXRKbndQWmtnRFJDaWg1?= =?utf-8?B?WUxqc25SS3VSWDhMNStNSTVySE5jbUR6Nnd6MjZvSGZHSlh4WUNGeWMvaXcx?= =?utf-8?B?STlSQmMvc0hUZGpnSXVoNmpvOHFLZVJNR2dSZDMveU1hMWJMcUdMU2NxaVpt?= =?utf-8?B?UHJXL0JtK1lxdDVISnJ1eDRZKzhKZXZwOXMxN2lJTWlPM0N2ZEd0bG05Sis4?= =?utf-8?B?QlVVa1J6MjNpVnJwTkt5SitFTUFTZmwrNXhPcU5SM1BXWnN4TmNxRC95eEJW?= =?utf-8?B?N3RTT2I5RGYxTjBqYUFkQ3ZCSFg1RHYzeHY5NzRoVlczVWRucUtPSTNRRVRt?= =?utf-8?B?cTBaVzJIaUNsWjQwZ2VaWjBZL254dmsxbUp4dHF0dkpxbGp0blRXNVVnPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d80ff23c-1a85-4b98-b541-08dd4769a85b X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:22:08.0881 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3P250MB0273 Subject: Re: [FFmpeg-devel] [PATCH] threadprogress: reorder instructions to silence tsan warning. X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Ronald S. Bultje: > Fixes #11456. > --- > libavcodec/threadprogress.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/libavcodec/threadprogress.c b/libavcodec/threadprogress.c > index 62c4fd898b..aa72ff80e7 100644 > --- a/libavcodec/threadprogress.c > +++ b/libavcodec/threadprogress.c > @@ -55,9 +55,8 @@ void ff_thread_progress_report(ThreadProgress *pro, int n) > if (atomic_load_explicit(&pro->progress, memory_order_relaxed) >= n) > return; > > - atomic_store_explicit(&pro->progress, n, memory_order_release); > - > ff_mutex_lock(&pro->progress_mutex); > + atomic_store_explicit(&pro->progress, n, memory_order_release); > ff_cond_broadcast(&pro->progress_cond); > ff_mutex_unlock(&pro->progress_mutex); > } I don't really understand why this is supposed to fix a race; after all, the synchronisation of ff_thread_progress_(report|await) is not supposed to be provided by the mutex (which is avoided altogether in the fast path in ff_thread_report_await()), but by storing and loading the progress variable. That's also the reason why I moved this outside of the mutex (compared to ff_thread_report_progress(). (This way it is possible for a consumer thread to see the new progress value earlier and possibly avoid the mutex altogether.) - Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".