From patchwork Mon Sep 18 07:59:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ting Hu X-Patchwork-Id: 43764 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:bca2:b0:149:dfde:5c0a with SMTP id fx34csp1771995pzb; Mon, 18 Sep 2023 01:00:23 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEgIrCv5gkhzT8aoz6F7R+wZzggiWDvHos4DP0pw7vWSLZTS5bgPj1NGrIhfjCwRgf6EiC9 X-Received: by 2002:a17:907:7604:b0:9ad:9225:cee1 with SMTP id jx4-20020a170907760400b009ad9225cee1mr6305805ejc.62.1695024023582; Mon, 18 Sep 2023 01:00:23 -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 u26-20020a170906c41a00b0099dc5c06b96si7764197ejz.623.2023.09.18.01.00.19; Mon, 18 Sep 2023 01:00:23 -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=@hotmail.com header.s=selector1 header.b=iWtxdffe; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A0C1D68C831; Mon, 18 Sep 2023 11:00:15 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from JPN01-OS0-obe.outbound.protection.outlook.com (mail-os0jpn01olkn2021.outbound.protection.outlook.com [40.92.98.21]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A1D4268C776 for ; Mon, 18 Sep 2023 11:00:08 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iToeDQFFiph23CIr3i9kZ3aLNfrKNWUd/EHXwoLkSY7DvkYLZ7bWIAvGYtT9r8YXIKbFR4IhhliHujBypyLpBbrSqTRagMCXKagjb5QDkfLmEvAKdHkYtgQvfOsqXpmOn0AW2mAb2yr8ht5yEAvUpo4kjjyWFB5Ln7zqUJK9ILU1N9lWn/seCWK71UEGSLn3amPHnpwt/kga1mS0+ekkei41Y84axHLQ6sCiVUAcQ4V3Gqcc7RArOQLBH3wMNFCuRrPpeK9Cg+Pu/bu3830DbkEYpS6QpHn0UPueoXOKzKtct+MqK02kOCPxkPTNKl5fGeBsMLfefFBSboON85G8XQ== 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=p8du04HPEHChBpw1C9MOYn4JzyCJphuq4R9qY2flWWg=; b=WoamPZo+6cQUPcipAqjHHduvKAQHw45Kj8hhiYirSVDgWRF69zAGzuPySI3+GlcZP2cybxMaQxeWKnId6prsMvI7UclbOZMzG3w5r7/RIRy6Czw4655SA0X49KNLno76IA/Kp55uK0XXGvXZvAnY1y1PlnYliZOC43g+I39NEVlXwpWkE+h32betR+igifOirFqfwLKK2psQzJ2zZQyxAvNMZXoaqHyaw2F0DdmAaoz34kGp4P7RmNWPZImW3GbzSYLjQVRuN6RjwDy7iJrE1xw4tglKsVziCR9g4mlqL1NAcgDaW0xmHshFzU5UgUMYqoZHW/hl5SysS+Ik6ieb0w== 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=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p8du04HPEHChBpw1C9MOYn4JzyCJphuq4R9qY2flWWg=; b=iWtxdffe7fve1h7UEnBjZRhRoZUsbLNsNIdMQNMLkAfrtGiGZX7pDLekiVdo+8ppzGKUJFXUKHXPq2sjzZYxaKTzdHeZ4ypoSTmXdjxtFJvMWfemppiFxANd1ObjRPmoLJ6Wu8XzdIr3yNNU0k2wrKyFtVlUtAvjfFtvHPb1+gFRVHEyjaFpCVRdCVgCdxKerUIPp6fUtWlcj/jozEKrp+Heg1BM4cBSlJlu7glGrWO26r0vD4jeX76mbQgQB0mFroKIBGCUCbusLxZF8+kjWh0c0gQ/h5iXu5gRGpKfobwQw7+f5Ie928qd6LxLzaLqgLaQvBtu4v9+QZmPZwNEQA== Received: from OSZP286MB2142.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:183::10) by TYWP286MB3719.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:3f8::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.13; Mon, 18 Sep 2023 08:00:04 +0000 Received: from OSZP286MB2142.JPNP286.PROD.OUTLOOK.COM ([fe80::100f:4468:1317:b7d3]) by OSZP286MB2142.JPNP286.PROD.OUTLOOK.COM ([fe80::100f:4468:1317:b7d3%7]) with mapi id 15.20.6813.014; Mon, 18 Sep 2023 08:00:04 +0000 From: Ting Hu To: ffmpeg-devel@ffmpeg.org Date: Mon, 18 Sep 2023 15:59:46 +0800 Message-ID: X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230829074906.9345-1-siriushu@hotmail.com> References: <20230829074906.9345-1-siriushu@hotmail.com> X-TMN: [p2xOjHSJutnmA+Vv52LH/vRSUVIxMakV] X-ClientProxiedBy: SE2P216CA0071.KORP216.PROD.OUTLOOK.COM (2603:1096:101:118::13) To TYCP286MB2148.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:155::13) X-Microsoft-Original-Message-ID: <20230918075946.1829-1-siriushu@hotmail.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: OSZP286MB2142:EE_|TYWP286MB3719:EE_ X-MS-Office365-Filtering-Correlation-Id: 1f2513d0-ae89-4f51-19ab-08dbb81d43ac X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IA/SueHzFSOg4vzucy05NpQI4sC5OE13janiJFaM8TmU9njI64efvYnxAUTCoat0sGP8C73p9QOhHW7CEKLwd0OVCHAA0+t8JnNpPon++f+RlF8Suhzy2v8XBCo1VnMPF1G9kt+WAZlyq0eU8kJHAO94lcwcPuOfyptdq9fzSUe+yW5edcHTqKUTOMivtrvoNkwVfiQq6ilG2BYQ8TPpNSMWUWD0HDtRcD/RKWoUlAMLWGaojx2u3/tU80Z9JLZxfXDTX/7CBq7LOf3aU6DSGGo+rB1nOe4KTRU6kScsAjB/PNQwAtlSr8qEC2R7wNng+nvPw12QwhgBY4jRvbxigwZuk13/69tvLj9bcx525W8yJY6E7r/iasxDNkd7omGV7PI/5zrLF4A9+9A013CfJTk8+T8CjLxeawzV/ifHr+b2a+JuPnO6h3ruQBLftj4ID7K3SdLsaJKG3i2CHllVRXstfyYJ5igg75TKNyKzYBx1Qt5xeB5mlutheAGPFCaUmUhXU/o3rtpHa5GtIXSvASrcYCJcu2QjCdeF3F0BOgdUKJHpzgbiMnB5ePXYBGGkyKuD9b2HKf6y+2NxVLAIXOGeJFBphBPH1S4a4LQ0UF67lLlkkb19gDxIDjP8w48W X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: xdftZo8vuueFxTZjgs3YXZEXVEWn/XCoJGfwpPgxbRi/zpbgWDQq5eljtxgKMJ/6nSKohXTj6CWinfmurHcNOkfGxGvLjq1T3Dl7x5tsJF5nl9Lwcltk76dy3HlSjSPVBgXnk67AdhlUQVCtG1p+fsWICPT+0YWfTZTvhW9jaL46cHyvS1umFQ4hWJ59LBAx888jif9lfH0Te6rEaukxGNPXg7t8K+kLbn7+SNTsasRyiKQinDlCSbNii1S5mqp5KP17YVj+Dr2n2S7/B6Xxv5fYrwBy4YTBxJngWFu/KDUOoUqVKWCUo/hhtQpbwnvrzqSfRBIG2Q47wn3rANITvLCeoqN/mCq0GwVP8oYYnsTX7+0LNRTcGe4OUyUPPkOOl5h7EZWE2RKeYo3fULyV4KvFabJFQQozf4Gm0Go/QsmjDEwMdCLfJY2SBaGhGr2vu1J0j6jCyUV+6RpoJG3Yaq+ovmyMjOEokXhKk2lsBmlUMJS4JR1IoC7p5uRh+mG+QrMUs8eHFkW//I/7hyT5feHUunsxXqiUsJoT5VJQcikC6XPSPE8nyPEyO9AloCSG0ravklm+pkJ5yqPWrGOGEtIGc9hhmClZm3VgWVO5o1s3v6SW5aNcseiocFwTjylOlolX9MYD333/d8ROpbg8RXx1lL5fNEGY6F0PcktIk9n6Srmjd7g9boQEySXHifb6XF6XDvzsBWI70OTqfPrBvPewuZQFVGiLNyCQ98Cuv3es175Xykl8IG3g5VfB6J2uQAcHSh+6CVEtJTT5vHDdYnsjQi3Ze0C2kjOsgMrTFomk38fPQW6MCk5ZGlUkRi9B0xn8QeWwY7K4NEj65CixR86pWpdka1n+h2gedEL4W3EAA0xyzeMtUyKUWI+8S/mTH7w6f9Bm81lxMPQi/yji2xc/ii1/P1o/jWy/FCksjBNCmwphDAH2supulFah/IRuP9bpUcJMVTsmXi4/OsEOxud/DmDoKgpAXAC7RID3mZwHtlKN7YvMIMZOg7yQvJ8q4sPPIXJLMN5dJzbzZP1enzM8QcYa6iBU27QJmRX081xTP54UON8ORHbNpfrGH6nsh2PEY34BTtsVpu5lsP/yCV+iDZjXdZvviowgNSzDFtTJNfe+2yusbDB3zKHKepeG8diHNnx+QmOKIroTiGcucQiAUJ0dU6RPI/8b2sD6dOLhfTHG5ocEjeH/s39q2cj5T7SjY7asb22ekf7+70CkDA== X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-05f45.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 1f2513d0-ae89-4f51-19ab-08dbb81d43ac X-MS-Exchange-CrossTenant-AuthSource: TYCP286MB2148.JPNP286.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 08:00:04.2579 (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: TYWP286MB3719 Subject: [FFmpeg-devel] [PATCH v3 1/1] lavc/qsvdec: fix dead loop of qsv decoding 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: tinghu3 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 3h+Eb5uFon+O From: tinghu3 MFXVideoDECODE_DecodeFrameAsync always returns MFX_WRN_DEVICE_BUSY in special scenario. Client side received and decoded more than 9 video streams with different resolution in video conference call. Related to bug: https://github.com/oneapi-src/oneVPL-intel-gpu/issues/299 Signed-off-by: tinghu3 --- libavcodec/qsvdec.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c index da700f25e9..6286612ce6 100644 --- a/libavcodec/qsvdec.c +++ b/libavcodec/qsvdec.c @@ -703,6 +703,7 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext *q, mfxSyncPoint *sync; mfxBitstream bs = { { { 0 } } }; int ret; + int max_count = 0; if (avpkt->size) { bs.Data = avpkt->data; @@ -728,9 +729,18 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext *q, ret = MFXVideoDECODE_DecodeFrameAsync(q->session, avpkt->size ? &bs : NULL, insurf, &outsurf, sync); - if (ret == MFX_WRN_DEVICE_BUSY) + if (ret == MFX_WRN_DEVICE_BUSY) { + /* Check the max wait time 500ms to avoid dead loop */ + if (++max_count == 1000) { + av_log(avctx, AV_LOG_ERROR, + "MFX decoder returns device busy that reachs timeout 500ms \n"); + av_freep(&sync); + return AVERROR(EBUSY); + } av_usleep(500); - + } else if (ret == MFX_ERR_MORE_SURFACE) { + max_count = 0; + } } while (ret == MFX_WRN_DEVICE_BUSY || ret == MFX_ERR_MORE_SURFACE); if (ret == MFX_ERR_INCOMPATIBLE_VIDEO_PARAM) {