From patchwork Thu Jun 30 22:29:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 36574 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:8b27:b0:88:1bbf:7fd2 with SMTP id l39csp621626pzh; Thu, 30 Jun 2022 15:32:59 -0700 (PDT) X-Google-Smtp-Source: AGRyM1srzG3mN7mkFcxSqey3ZOc6LARsC8wBL1rOci2ohllDnfGjY5HhhmaHe66wr/des7QK3Grs X-Received: by 2002:a05:6402:524c:b0:437:8bb6:7e89 with SMTP id t12-20020a056402524c00b004378bb67e89mr14331162edd.153.1656628378958; Thu, 30 Jun 2022 15:32:58 -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 i5-20020a170906a28500b0070ed13d358fsi22706558ejz.194.2022.06.30.15.32.58; Thu, 30 Jun 2022 15:32:58 -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=RNs3Nz53; 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 8E43168B845; Fri, 1 Jul 2022 01:31:01 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2075.outbound.protection.outlook.com [40.92.91.75]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DF4D968B82B for ; Fri, 1 Jul 2022 01:30:58 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FAIfs19/Rc1612kEERzFgsFS7cZuVsx3rhL4pGrFPJausX1f5qU/h8pugScnzxP9KaJY8zNua9LQ8uxDVN8q5ritxekfu8PtQqqf5Er9M9k5wxjK0gpB3WPeGgWOawFMpWODbuUYbI3uETeDY81Vk9BhgzHDYlWDR8X1PDN62t62m5WIIszDVQ75C3P9YGTreIZndrydCt+YB3AQ6CuQSVRhoQnf2y15vOpbXB/9OsksJvfrEUvcU7fRfVzwOe75Z58OyXJGEPJnEghkq8IafhF3CMjsn8b6JLCFKg34RH3ikLi++I9nFsalOiHtskJB0XD2OJhCRaRcxAzQyQB9Pw== 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=poV7Evy/Pmbrbx51dpVyKhi120lY/zK8eJCMLUjmB6E=; b=LSMYWWsn5uoC7RyYZs6IYXNh7l4ipkM4+r9iKIIjWaoaVaqYJVo5tnSAv4Cknxszag4Hskf1ANMZ8I8sGRMH5d1ghlYwDs6vNnd36iDR2yoZtF/QY+hAWqsptcUOsX0IfaUo9p5+nQwC8wNCXImIkRTaN+6yNveMDcffHBruBWhSQWVdOWHJtKYYJA6MgNb5NBiObON0yKBNFIyD7jLRpFH9to+pbGVo/bSPTeRUNaj9GAD4/Nrl3cj3SXCeKMPfPhuMmVhmonl5oRcJV0gBTjfEQRWvj0G9KJD1JHIfI0cbQtnTzvq4cGeVQgYcio2bX3UE7fXNlXtl0O+cDu2aJw== 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=poV7Evy/Pmbrbx51dpVyKhi120lY/zK8eJCMLUjmB6E=; b=RNs3Nz53YX1x5Eik2ZTZz5DVCrqw5Bh7EMD5rW0stxDky+76NFetz2olaonSOv/p/p6p8xxv2nERnDiw++zWNsBLbX1IUaUlkdyEw4JKctWXj65gMIrt9aHfAXtnwVmF/jgRi6jcfWhismnhFQFAibMIOzb4+4L5+HOoc3i8T89fqzbs69VbcjGQcZAlJttIkWIXZKZOpVl5TzCaST2LG2zLb7rqxOKyClQWmrssBhitJRssHUhKIbIOLx7kQB7Sn6AksWaD34LKSS5vZgL9bZJldSv2boslP1uxlVswd86VGDGujZfBB5abBE1dUc7sSX+PNI6KDCs+13CJoFe8pg== Received: from DB6PR0101MB2214.eurprd01.prod.exchangelabs.com (2603:10a6:4:42::27) by DB3PR0102MB3546.eurprd01.prod.exchangelabs.com (2603:10a6:8:d::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.15; Thu, 30 Jun 2022 22:30:58 +0000 Received: from DB6PR0101MB2214.eurprd01.prod.exchangelabs.com ([fe80::60b9:9f29:40cc:f01c]) by DB6PR0101MB2214.eurprd01.prod.exchangelabs.com ([fe80::60b9:9f29:40cc:f01c%10]) with mapi id 15.20.5373.018; Thu, 30 Jun 2022 22:30:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 1 Jul 2022 00:29:48 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [v1Rr19vl74sYJfQ9glkk3Lx7gpy8iNRd] X-ClientProxiedBy: FR0P281CA0099.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a9::17) To DB6PR0101MB2214.eurprd01.prod.exchangelabs.com (2603:10a6:4:42::27) X-Microsoft-Original-Message-ID: <20220630222949.1758625-16-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 80356c7d-0560-4d59-7090-08da5ae83412 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UIsx7KfB5fXwX9/lr2btQgADgUguqSA1wEqv3ON8tZfQHIur5ljSx78ydjhE5n/65LJT0FfpI4CsPPMzFrmGAMqSnnKZR6esVY+6U69AhPpQP1/AUmTt2Mpfa5O5oNIytCW9af9cGS094i1jUuk4KTUI+rPYi/qYYNhrVnUt8voAGdsKD55t4dlAwTZEgNQ6PHMzA8wpAb0PslusYFp96U92u/sx+oJlWSOcjXU7a2sHlyRtfeayE7f4QhWjPr2mNYHw3mmQufa+Lr2CW0+kbHWWUbgmYVGnc6R1FqJRX8XO0TgxC/4dY/KtPsn78oDWYggTc1h9TrsgVMOgtZRxLCTk8K8QztSv/vNzx6IswRDNP1mEd/t/cC4I8dhX17KV40GuPxrGOZtMsfetJ8ltBItmxA4TzhT10NjPTWpFdC8023uwflziVMloW+Gs5C+yP6d75SwB12NawnHea6IY5yTU6/1YOduJugKBQKkakd1T2spq3zzYJDamDrPgCD2YdXLF/pTbS7+pnc3H93oEuOwOgPS3fwxfwrE0ZTV9Br3TPKr51bKULNBmDy3bZ8Hi+5ZvCUJq+d1RqEpbgoCfaAzKjdX4e3QteTaO1Kt90vIoPLM+nVCbzr5rhdV/dvaN1Usf6YT6lXPNBgal476z164SutHpDS8jUtnGFsjspAEyLZGSDhMVa1x080x15HYfeBel02+mFcVPw== X-MS-TrafficTypeDiagnostic: DB3PR0102MB3546:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O/Y92kKGVYe9Y1Tk+IeWKpE2hmH0BxsUqw8FEshWb1+bWSTnDit+6m+hpcVCFMQHpsy+S/DnRdtlFs+4WpMtMcubQntxjRL2r7bTPqr+0z5bkjqaH22rD4QNhjekl4JKB+PZhTZjxlWL3MVeTi/yTptV2YAkfWcefWA4dLHu0gRqjyFCHpKzxZ7Fryb1bCtY0/l+oMSmDuXXtAMdvXmvMK7C35HiHmVsiKDFse5MM7BsTbSMghw5Cxc9f3bmFbXZ6Q61tkf/+aoRRXP7ryRJkWMkmg61wqlAFikHlmKwUqQcBSnYYnG40+sxTOCnL8WtpIuQ8GnTeZabz8cYNjUKBllD6Nr30RlA1EtifRsGe9sqYopvOWMesy76iWWenNTjBptUjRxw+nlJpIwE09uYROVxPPI4G56BtbjiO+UIY6b61bRGoM8OlUOZWAbU0/DxgUY7y8BsqgLKe/kRSq19S9NB8DHEUO/3CqiC6fofLngWs3pDXLqoCkx3p7gog576O+ajBLXnuB5G4jXRtM2aayXgJ4+KkMmAXuB9DPyjzW4AbQ8LK3nUxruZQ1vyT7EPG4Y1Y5BqXLORSHJ2CiMUQ4EKmxROvRPU6A7Er4I1DOnfIZu0TQjTIRRVacfVstzGbzhQVtSFyoyHsHi7ElTGA/i6cwH9ihLiwUEAUfTYm+Zs4TITOWH0E521QLtwADz2sgAT67QJ3AkJysJU/4qAXQ== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: aHh2vrXVQWXJxjEwhiO190GwOeqCh2jTEQP6nYy2fpsGWQW67iT6fQhGtKzgf3U64aTNOMd06zecrO9OM05CFLrnOJL4Zpn6V9jfil9vLgRaBN8DeXmOOAWa5w+mVn29hvwrclgXcYyfba0UNXz4MxAhPCT03djxxnrdyLZabh9PBU5F/kWnWb/03/qg4KIsS3/8dEAhLgumRrNK49PFt0fgsESb+JNjHTaoTBkyaEMcMa2bzhIMeJc7chb/nOHnSCIgZQxzQK+kcPe+RgllN+tGB2uYB3G4p4oquEpY02/E5Q4L5DD6AlzhjXEWAfCqA0TahNSuBRsNeS+htzNhQTdNLutwVmqg9SwGnIMp+BigDkmoOwFEk65wfYyyB/kCZbQG8pEkCuOTmvOslUIjoR3dMv4NDgNMR3VxCqYC8Lre1e4r/E2I2NPhgyLLfWh8nah9TpQ4JNjM3V4+D9uCD6Nj5/Xjf0BjEjMQjy0nlEeZFXdapz8PSgDjItH/nsrzwgwJWYnfzhgAPv5Hl9LfHoW90riL4Dn46CjraxfczigueGyXvuNXuxUNZRu3R1skvyp4C2u9jb8Kb5lMoH2FFM0+voLPhCLd4tKvCJqu/QqAyRA2BcG2A+qkQKCeKarHHIEbs8Ph0b4sKpAvZNVoTPBKQrEgi/1SZHQfRupbdK2Lw+LTgF0z7zAvXvHUoAmDv0Hnvb92ThC1DLR9lnBVFtVSC31p6LwTnKojO3ntDxelSfXCbQwAxpiL3/5Q2HNwMS2Xzgt0yCnwOMZzUmK6/PLsGlnmtAyIkSRPoxPnVX8tdbyxwQVbBjYPNiSPUXJsqKA/8NnRJJvLOq7IrW0pVicOc9m+IB95+1RcWWzKuH6AErNIdKqjaOny2UQnV9G/s600XnMNW6qZ09Gctc6U7iCXW9kvCca0xJwhH1pUPMNXwiYKtP7+uK3cEhOE2BxoFRKZuDSYcuL1LBxHWAvHxUneMo39NsZa+4W9o9GIaATSKuR0XKK2HZDb/y8cyOabVhUwmm2PjwoMqzFatJYQ/2Fkk778u2Ix8EhJ0KjS+t+ChFZ14r7L26O6ob73mT8cppr7DNX1trBwEvmlnZNsGJuUQ8o3AmETdlQoHWnPks6SIuqFoOphMryMq79O1Z4FWRlWlsgIZk3bk7W8OpW+9m1xbVJ4Sw+NIqslLCzLCRrpjGw7W5IHsW/TkCuqNf84dI1b+RxRXPB7CX1MBncorzpSWQdBGbrMP+WamYIa3MgogAiTBVaf71g6rkdCYJAqrtz0qaVInwceKonbXpqsfOZJXhQ5Nv/tQ3U1oDHgaQI= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80356c7d-0560-4d59-7090-08da5ae83412 X-MS-Exchange-CrossTenant-AuthSource: DB6PR0101MB2214.eurprd01.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2022 22:30:58.1851 (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: DB3PR0102MB3546 Subject: [FFmpeg-devel] [PATCH 17/18] avcodec/pthread_slice: Reuse buffer if possible 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: QjGOLTmETneS Signed-off-by: Andreas Rheinhardt --- libavcodec/pthread_slice.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libavcodec/pthread_slice.c b/libavcodec/pthread_slice.c index 756cc59dbf..a4d31c6f4d 100644 --- a/libavcodec/pthread_slice.c +++ b/libavcodec/pthread_slice.c @@ -242,9 +242,11 @@ int ff_slice_thread_allocz_entries(AVCodecContext *avctx, int count) if (avctx->active_thread_type & FF_THREAD_SLICE) { SliceThreadContext *p = avctx->internal->thread_ctx; - if (p->entries) { - av_freep(&p->entries); + if (p->entries_count == count) { + memset(p->entries, 0, p->entries_count * sizeof(*p->entries)); + return 0; } + av_freep(&p->entries); p->entries = av_calloc(count, sizeof(*p->entries)); if (!p->entries) {