From patchwork Tue Sep 19 19:57:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 43840 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:a886:b0:149:dfde:5c0a with SMTP id ca6csp188244pzb; Tue, 19 Sep 2023 13:02:20 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGHJVlibnseycJ8Eu+oKkNe7/CYgjbOJIq8KGE5JzW+9msEEJIBqErfzS++cQuQFN5B2h9S X-Received: by 2002:a17:907:7783:b0:9ae:42da:8038 with SMTP id ky3-20020a170907778300b009ae42da8038mr298417ejc.74.1695153740725; Tue, 19 Sep 2023 13:02:20 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o15-20020a1709061d4f00b0098859d239dfsi11105010ejh.796.2023.09.19.13.02.19; Tue, 19 Sep 2023 13:02:20 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@outlook.com header.s=selector1 header.b=jkL91aTC; arc=fail (body hash mismatch); spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4F3D668C9E5; Tue, 19 Sep 2023 22:58:52 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01olkn2077.outbound.protection.outlook.com [40.92.65.77]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 07A8D68C9DA for ; Tue, 19 Sep 2023 22:58:49 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TPwrZweg8Dc6XNff2dZ6aDchxfmzlGvbuDPF3SYUuO3YIE/GLyz2Zri1KZxU9x7KqQQOK1mnrML/Ir3X5J7HuQ6DB5GbsPPVGOrgfntBHuI0+JCcXmyd6pMQ8jljMLBg3J5yLjh8WqgM4WKOvqSP/trByPGYnv0cIEbvUVa1QW2sfO81uLgM3saU5kjwC2P+53q6a3sOf2Fq0FRNSKhaQJAs7w7o7z78rbLyjm26fRTPUKWv/XO2c1UgQWV2b7pbStK3mp9iAHTxhAaZ1R2vNJ2m1hwm/sDJ9sKjhapWe4jPR4T9xRvAlJ1rpLkQNVjho/pLrmDVsxQBSuKhEIDz7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=e6kPem3EDVO+WmqcTjUIyiAAxdzuAq03ygf+MiAYJSU=; b=kIoE+weceedTHXYq91sd9p4699T0W5V3OfhGVwQVAcu2P80pdYB/6AAaRo1U9H+3hhCXp6qriR0zMiKeljwHb146C+Yaflo4/ivf2el57b0uhwUt7olrcK2qN5Y3HwR3+6RrHNFCJq2l/9drRxKc64+xodU/uGd/sxQwsBnFPjy5X/J7+eMSf6T9xkpjXh0MRLFgc+qeOvP49S/rNxqsoOKfZzGnZEWJpz6aCkKZy8APcYfw/02d1fKe6Y8vG6jYmytziQSd82OgaIh/Fe5NHmo3gfLWwlfksTezd2OqyNeonl5ps81/s2TLVilenIaBVBPbAI0LmnQimpOp9ARD5Q== 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=e6kPem3EDVO+WmqcTjUIyiAAxdzuAq03ygf+MiAYJSU=; b=jkL91aTCd93EFzQylHkrB/dd+i/Cxw/oyeoGklO9ggodGH1baf8G7rEzdBccU6ZVyATXIbt4eSBnDopSQM3HvfX5kj91eqWc0EO26yQVo9jsgqVVRBMzmxR44lmp/l97xHAWE4Omzn/if7Azxh1/T5P4jguBgJWnbRH33TpNEJPKS3yuz/7GbHOnzGfOUBF8PrDvWG2by7Uk+o1l0BHhdPLqOvGKF1e6aSTc5HmWFOUnrI1n52apJ0K0Fkpdfl35GRnhuvLBq+4tUp79XIOBIo3p1D7ZJUNO8XQTgP6DjaakS3BCm161qv2FqaojfFxSK6oZJeLu/a3mJfXZz43FMw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DU2P250MB0237.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:276::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Tue, 19 Sep 2023 19:58:48 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa%3]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023 19:58:48 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 19 Sep 2023 21:57:26 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [JIBmF8ZqctjCcnxhL3T5JxFiSsrvJGLe] X-ClientProxiedBy: ZR0P278CA0086.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:22::19) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20230919195734.1005750-34-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|DU2P250MB0237:EE_ X-MS-Office365-Filtering-Correlation-Id: 99d6cc95-5224-4d79-dcef-08dbb94ad665 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LfFoizRCAHaoNKSgyZrqAJbpLluQqk5RjaDo6AGx2WbxfL36RYPVdQ809qzc9KesOTDFixHaSqbQT9R5eSyFtkh6Z4kH4Gjr3aHXl/d9LsI1Yi0Di9KRuX7SN+hHDLtKbDvtovIpdwZpeRLsH/EeRPg7AVH9DLi6XP4741j5MuLGOCQz5DgkURl8LvWc8aEFrSm0zCCPqcnQABDiC257uAaMKbpTNeAEZOwDd0MZd0GoCjbag8Jcv5XhKA+1zNjFdly73tT+BjbVp0Jin/H1fLT7/5h/fq1qmuI9PlIv2/MjZSLf53KKdmGcdF5zxET1Zoj/l7aJMtEEgLCcNn4fQX1abzliwyM5vzGs2AjPqbbyo2Cbtr6yONS3vwC//xgdhTPVnDMO/9m6pkJZ4dFi7nLUmgmeXR/uL/jb27G8ySs1sGt7DJrXn+Psunml3C2h3TpLI/dBFAYbUDA1Ejp37IwT1wdfFGvbh0gcBBk5em26LerYifjLRS5aByMjzUwKLFxwNgAMJ/Y2OwCbWXOR2/CgNCiAXOLQ4SepRoW+iU+nTSvCtCAVZKyGKAMeFILnH6kCDE+axsGGFJbvEy9TkKtmpvTphnj1wtUzzd8Qa/o4ehN3EkzFuwyD2Anr+mNW X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: r6juxohu2wfSOBd9yT7GWIff57j7N/oyidz0Vc04qy5o5mRQ8J013eg+9w9LX+ODOdaWvyceTvuzMOEDyudpvxiEWpZ5HIrZpcgOjC7Ff0x5dWsmU63cp+9I3ElUzIpSuD904stIjUQGZbgSdd8ObgJOHolJGVanbS0CFTahM57nPSZsTXYvsYPv4ZxXVV0h8bLjwShfyvYkGov4T4Vm1EwnLCjdbRWYlWPKbBelwTUiVGtTGYFIM0sLYOgJypMdGbWI93J/O12uQf3N5M4JFXtJhFa2UhV3bwTo2g4JxD2oCm+7IXYkvjWHxhqr/I+6pr3ffbYUr4HSCiNN27prE5ErneushxEoTbNJ8SbFw7fo+5OsAjj6dWZZf2zPpyygxBi9atf8ZGfStE29uCYEtfQcjWMh5In9YMathqaAObQR/9Ih4ZaYCkkfWg8riN07i5zhIgEJGx6zTeiicKaGQlGaKs4vuHySV0UGbPgmbXeTmGWyfxZr1RkIa7ELaoNHkxhOGig3XYwypBb5pjHsotKjGLK6O0UA2CVUEyToshZ6J4Ii64J4QSMCsP2ikHRDttP4Eo5ogLABPuH5PGhNNI+8vBeMWG61SGRilGeVOeSQKxY6gzFUvdduskG/lnuyabk3NQDhb3Ut5ctzAber0qaqGdcab5qvx5UFJDprZ04v1YywsK7itqzO9+mlkaK4Oi7V8oqJMk60DEmZUv61VZJIMxgQ0eLCgHVbDerRMHOoMgS5y0uq9BbyAilDzQuDRDt23mEmaYCl2vCTa22fPU8CXB1xpcC5K/d4qNRO3PJ4p/di3KjyJymB116f/x1xhbTcITu89TbtpashUDs9+8qfPT6j4dUgltaN1oZAoTTmXKMNKJtuEctGPX5+tacb6urmc6ViYH+XzuuSDMcSngNOKCcS4EmV0gfDH0WD5gFSyQI6WxRhfURjfPRPW61dy+wwC6djSB5Hz40Hdv2HtP6aVE5+1jb93R2b53TMA/gYp+7RTDbbUgGQhVs0vxQ+X3MSWiQRK5z/bjbVmgq7r1TRx1rfUFrYaCnJ/qQXOWJENd/PmqxCOu3pAF88wg4lhAmdB+vzwPEZa4AI0+aqxK51aij6n4pLKUid4f36d7s4IrRtHEyQEN+cPbVO7jDa0ifkgShs4wHmi657+R0FzA2ol+7beEWYVl4X4UhwfOzey6z6GQqlAowaFNeTzwd/dtbsCAI8PNmCSsvFPHFo8m3mC7SOGPTU+3Gsxnh6jUAJ5B1aKmi0+oo5rYIgqNlj X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99d6cc95-5224-4d79-dcef-08dbb94ad665 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 19:58:48.1344 (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: DU2P250MB0237 Subject: [FFmpeg-devel] [PATCH 34/42] avcodec/vp9: Replace atomic_store() by atomic_init() 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: r4FKX8wLnjc2 This part of the code is not slice-threaded and they are semantically an initialization, so use atomic_init() instead of the potentially expensive atomic_store() (which uses sequentially consistent memory ordering). Also remove the initial initialization directly after allocating this array. Signed-off-by: Andreas Rheinhardt --- libavcodec/vp9.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c index 8eba56b720..62ae0f5882 100644 --- a/libavcodec/vp9.c +++ b/libavcodec/vp9.c @@ -54,7 +54,6 @@ DEFINE_OFFSET_ARRAY(VP9Context, vp9_context, pthread_init_cnt, static int vp9_alloc_entries(AVCodecContext *avctx, int n) { VP9Context *s = avctx->priv_data; - int i; if (avctx->active_thread_type & FF_THREAD_SLICE) { if (s->entries) @@ -63,9 +62,6 @@ static int vp9_alloc_entries(AVCodecContext *avctx, int n) { s->entries = av_malloc_array(n, sizeof(atomic_int)); if (!s->entries) return AVERROR(ENOMEM); - - for (i = 0; i < n; i++) - atomic_init(&s->entries[i], 0); } return 0; } @@ -1656,7 +1652,7 @@ static int vp9_decode_frame(AVCodecContext *avctx, AVFrame *frame, #if HAVE_THREADS if (avctx->active_thread_type & FF_THREAD_SLICE) { for (i = 0; i < s->sb_rows; i++) - atomic_store(&s->entries[i], 0); + atomic_init(&s->entries[i], 0); } #endif