Patch Detail
Show a patch.
GET /api/patches/19624/?format=api
{ "id": 19624, "url": "https://patchwork.libcamera.org/api/patches/19624/?format=api", "web_url": "https://patchwork.libcamera.org/patch/19624/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20240304093539.546973-1-anle.pan@nxp.com>", "date": "2024-03-04T09:35:39", "name": "android: camera_device: Fix camera blocked issue when stopping capture", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "eaa906bc9bdb0edc9e2e62c8b4d8d76ba44950e3", "submitter": { "id": 189, "url": "https://patchwork.libcamera.org/api/people/189/?format=api", "name": "Anle Pan", "email": "anle.pan@nxp.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/19624/mbox/", "series": [ { "id": 4198, "url": "https://patchwork.libcamera.org/api/series/4198/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4198", "date": "2024-03-04T09:35:39", "name": "android: camera_device: Fix camera blocked issue when stopping capture", "version": 1, "mbox": "https://patchwork.libcamera.org/series/4198/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/19624/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/19624/checks/", "tags": {}, "headers": { "Return-Path": "<libcamera-devel-bounces@lists.libcamera.org>", "X-Original-To": "parsemail@patchwork.libcamera.org", "Delivered-To": "parsemail@patchwork.libcamera.org", "Received": [ "from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 12838BD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 4 Mar 2024 10:00:27 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 208686286F;\n\tMon, 4 Mar 2024 11:00:26 +0100 (CET)", "from EUR04-DB3-obe.outbound.protection.outlook.com\n\t(mail-db3eur04on0626.outbound.protection.outlook.com\n\t[IPv6:2a01:111:f400:fe0c::626])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 3D8766286D\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 4 Mar 2024 10:35:51 +0100 (CET)", "from DU2PR04MB8967.eurprd04.prod.outlook.com (2603:10a6:10:2e2::19)\n\tby DB9PR04MB8494.eurprd04.prod.outlook.com (2603:10a6:10:2c6::12)\n\twith Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7339.38;\n\tMon, 4 Mar 2024 09:35:49 +0000", "from DU2PR04MB8967.eurprd04.prod.outlook.com\n\t([fe80::863b:1be2:4278:3470]) by\n\tDU2PR04MB8967.eurprd04.prod.outlook.com\n\t([fe80::863b:1be2:4278:3470%4]) with mapi id 15.20.7339.035;\n\tMon, 4 Mar 2024 09:35:49 +0000" ], "Authentication-Results": [ "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=nxp.com header.i=@nxp.com header.b=\"Td/e7+ZB\";\n\tdkim-atps=neutral", "dkim=none (message not signed)\n\theader.d=none;dmarc=none action=none header.from=nxp.com;" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n\tb=iyGFN6ttPB7ixAjgHfbWuSdauNt0ePLTPIPHTMAUmiCBWcMTzXk4oTsVbBMhM15XPninrm77CxIFUrqkdc8LZ/7bJ9MCRtBOlTU4WurnLRJ7ODZ+ZO/PkUHna7zG3VRTRifXh7Koej+UxR/URivOTRwK3S19YhwA1QQXwoCgqiQGj8VKgxM8p1Ha1U7H/qTL60rZldDa4sIZOLR6sav+NiaT4LrJ6n0G8YB1S7xfaVz2WvawMeQOWigIqJavynLewxlhshFtuWat3hhtrvN/3XqPtm0XAwh2k7d047CY8p5+HUDBCipfzETwC8bp+tMmjFUoUFtljdT9ZTCPqLK/uA==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector9901;\n\th=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;\n\tbh=OaRMnohJIb7BsL467IdV4r5zOF6lURkBROkLlS/RwsE=;\n\tb=BCOL3vSItrLOO70PCWNpY86Nd2bIY2sHi0UCp2Mf8r7OsjAlX20VwadF+Kqe6nR/JXy2dU5DpqBTmohNLN5CJ73VZt2VXJTY9mKyolhXwan2tc4Jii5/7AlVwjeJ1B7nDBGYN/soZvtrUa1yHRbiSL0LhtWEkgH8i+GUKV/kQQm11ane/MG9QCOr6PZGbmTmSjFr6Dx8tKxTF0a1+5r6zV/ZWukpQudE0UB3TN32ExfUFKyAVnX11236W8OMcW3CM/4/fxSPXANIp4GzvVHFDEgAal1dN5s8tmQkbSDrQfFAR/1n88PxyrrfTPFMJjMgk1BjJuDoW9gLGmLozzmHdQ==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n\tsmtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com;\n\tdkim=pass header.d=nxp.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=OaRMnohJIb7BsL467IdV4r5zOF6lURkBROkLlS/RwsE=;\n\tb=Td/e7+ZBBo8Wmg2MQ4OrfhAvNMA752j8HcS53MOF9sbkp+yFazRSW56Sm1Mp76TQ1fXVvkbtSabrn6xl91MsSw8e9yNYt4kJ6L8Kj8Y48weYHrpnYSb1upSkeud+fMy0xnCGdGvCGYxFvOV75eKaIXxycmyqpeSrqWMUEKenzz4=", "From": "Anle Pan <anle.pan@nxp.com>", "To": "libcamera-devel@lists.libcamera.org", "Subject": "[PATCH] android: camera_device: Fix camera blocked issue when\n\tstopping capture", "Date": "Mon, 4 Mar 2024 10:35:39 +0100", "Message-Id": "<20240304093539.546973-1-anle.pan@nxp.com>", "X-Mailer": "git-send-email 2.34.1", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "AM0PR02CA0148.eurprd02.prod.outlook.com\n\t(2603:10a6:20b:28d::15) To DU2PR04MB8967.eurprd04.prod.outlook.com\n\t(2603:10a6:10:2e2::19)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "DU2PR04MB8967:EE_|DB9PR04MB8494:EE_", "X-MS-Office365-Filtering-Correlation-Id": "a748fb5b-63ad-4a8d-64f7-08dc3c2e7a34", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "TzY5wXqNLzcVt8tX/Pm9fiI+4GGndZIkOcV+xGKGXBkeUxJpeqLQHU0byhg+xMvxpqNYrEDc0E6H/IO7+paLd1vyHkP0nDMG8Xgj1dBqjq6htLYxGMyWDFAEXDglY8EsY5HkA6s/Cnc/HfOgoeNr8QthlBJdo+FcBVxXH2JtqhMlKK03EvMMD6upNGnD6zeGHPD5CkdrR+A4QdkPEwRjUlxxAQqZ+6q+CKU8VFhYozcWzQf1bQgPucuQAkZoPwFJIHm0ZWUtS33RlY8BuOBgGdzyirTot5MX/2bj5p+no4hoh8PYWaJI6MlEcfbi0Smw3CJE0ZJzaiM/o0twSfHiVeQk8Ml2qtyirhvJ5bHoMtl10TCwI6F3iq4LZXAefIvR2rep14vs0RP/A+Z4PRoKGyk5W5rLu4xo2HUgu99VTzxDRY7Mzx2X8Khf5ge6ZIziZA9cQIqGN+PSdLS2oQgcexzQkTfilZqjCdryK6PXbEAXX8sapW+8b7W34tTp3UDF1ZjOsbF3kcCyoWiGANJYhUeyK9ddtntqWfRVKN39DzQGS6gOHw0q3esvbauN3DPg9XTQDsM4rDPwUgS0mYibuX8pI3oe+3aOaNUSTNsRqSuCg2skc56zrAcYc2sTxatlDiC26n4/zhU9P1cwSpcaJgmP2SwYfRag0wJLkoDEXqfs4rnwlN4OSiRml4zmUdtBOqy3/lD6rebsOvjLCWNaVQ==", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n\tIPV:NLI; SFV:NSPM; H:DU2PR04MB8967.eurprd04.prod.outlook.com; PTR:;\n\tCAT:NONE; \n\tSFS:(13230031)(376005)(38350700005); DIR:OUT; SFP:1101; ", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?w+wIzhi4KFEVBaYPRdQ7ZaOyr?=\n\t=?utf-8?q?Vbm3xnham9xPNHaCvlrCahnZ7cu1BKDsnJDh412w9Nrcfda5Hk1Q7jSJ?=\n\t=?utf-8?q?dcND5mfcwvqg82FEeEc++GnRn4AQjhWQ8BGrgjIbRZ7YrCkO84wPFxqX?=\n\t=?utf-8?q?R/Xi6W4IapKLFYCOwGBRxEQyIkLk6BbcJkTd56tuC0rHGptCsbJ2FEmx?=\n\t=?utf-8?q?FktxpAiZtBOBtAkotzVHIFxgg9Z1AzxPKjwxpXr4+jvBlZQBoVClH29r?=\n\t=?utf-8?q?0L6qwGiTNrk57A16WmBms3NjSNO020ZguzBlTCKycXao2xuHmeyMLKHA?=\n\t=?utf-8?q?Q49OjnBZdQ3iPq67XXgoRplHRCxPPN4WykPHfdIbqL9pT3m+U4xehHrr?=\n\t=?utf-8?q?1JcBLo6xSLUO9zxp9wrVyc6T+eJ4Nu6TUd3T+wRY9dLzZGlnGUUH0Unt?=\n\t=?utf-8?q?m6XXEkQkQZFOTxNBqLmDoJUNY3eVgb05flC7YIYpRbvV1LtDxXrbBNA3?=\n\t=?utf-8?q?6IbVXpIlQpzmTwdw+FDBO/VtklQk1nBQaAmFW8O0axfqwTGowMELmWtZ?=\n\t=?utf-8?q?w9mglE5qTmTR1dlbMXa2yNc5RFgNcq7vePlWcmJO9lr/UvaVm45x7h0U?=\n\t=?utf-8?q?kkRDh72/sLhfi7RP1SiAGa/N5jebmjcxcidtal/nxXQ8ifqCwvusltwO?=\n\t=?utf-8?q?rceufPqX/jgzwD0w7PYaHzo+yo9jr5zwTkhLXmb6D3GFQXGg4pQ+ButM?=\n\t=?utf-8?q?UqpJOc0U48MvjzUzc/YquG6kGwdVq/W9HXa6YVoo0aFKG6wRPzSoYBmY?=\n\t=?utf-8?q?q3mgD185w3t8+2/i9FlOrV6qxJATb1wgouJNeM68IuXfjcpwxBfZ/u39?=\n\t=?utf-8?q?GXtCepzwspu2olPCA6J/KlxVeh4UOpOfO4Y/KLq15O6Ct3uF7mX+J0nY?=\n\t=?utf-8?q?X8KsdySz7kbvxrQY12im3eZEmelVFtS6E3cRHnYeB5NKGDatkvhZkD5V?=\n\t=?utf-8?q?l6mETtAUaOP+jfrd5iTQQImgj99s9fhImRuN3GhU3ylWpko+1NgRdkYL?=\n\t=?utf-8?q?IMS6QHzCwlMMPlhQnmhrgP/BuwGdbWWrYrMB8NUwn1aZb1sq9wIulvId?=\n\t=?utf-8?q?hWlW/qu9NfIZBZKCAlIWZ6p2KTWybptvsduhlc69UwD7d+N8OhlUDlga?=\n\t=?utf-8?q?GSGdv1ME1rH5pNKL7s3MrFy3fE6lbBoMUMyWTzqZJi4mOnP6422xxFjH?=\n\t=?utf-8?q?EtX6uQ5LjmlGiSP9CapWpMG1Qv0Qb/ukqBnz5ZB4Yur5YkpyszPVGJBI?=\n\t=?utf-8?q?6fWrkXaPkLdze3lgBDjpgroG5vSt5vdr6EC0GENXP7WVIf5JBys402D1?=\n\t=?utf-8?q?qo99asIOzSOtOYWHBdyDJocuwV7YkkQcxKbKf6T7SQ8Ed9FMp4LQJV+X?=\n\t=?utf-8?q?UFBZCBOYJ22mI7nO5SgrkSDWBpQI5nwVyzWb4EoT4BOoNiK77HJ+6D24?=\n\t=?utf-8?q?HXZ7YXPfJtiksTiQvtcBLRPbQUY1Jb+t0zHRRMkBrDZcHYlePohsWN4C?=\n\t=?utf-8?q?7LOTlpEcqT2I0WSwK6/hEIsL9jRnQBi3JmdGi/CDSvxJYanWcBkkil59?=\n\t=?utf-8?q?VvJ0yDBYIGD2FLOgaF+1O9KPVl0MAvTX/51Q2Bz+F0p7nb356nYfIH65?=\n\t=?utf-8?q?NsFY2JkuoQpqX4y5whS3ugNVxr0Dec+HLLSTSW4YxJQTwRERF0LXFcNY?=\n\t=?utf-8?q?0m9eFYk?=", "X-OriginatorOrg": "nxp.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "a748fb5b-63ad-4a8d-64f7-08dc3c2e7a34", "X-MS-Exchange-CrossTenant-AuthSource": "DU2PR04MB8967.eurprd04.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "04 Mar 2024 09:35:49.8312\n\t(UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "AX2E63XP7cjtbLI6nDhVpGKgvl5mmGrDOgzYJ5GNQ4+DSKGHnQis1GxwSUEcDe/8R6RUnV7dVxSw+DsaPimxJQ==", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DB9PR04MB8494", "X-Mailman-Approved-At": "Mon, 04 Mar 2024 11:00:24 +0100", "X-BeenThere": "libcamera-devel@lists.libcamera.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "<libcamera-devel.lists.libcamera.org>", "List-Unsubscribe": "<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>", "List-Archive": "<https://lists.libcamera.org/pipermail/libcamera-devel/>", "List-Post": "<mailto:libcamera-devel@lists.libcamera.org>", "List-Help": "<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>", "List-Subscribe": "<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>", "Cc": "hui.fang@nxp.com", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "The issue occurs when stopping capture soon after starting capture.\n\nIn this case, no frame get from the device, the\nrelated capture request has been pushed to the\nqueue descriptors_, but the queuedRequests_ was\nstill empty due to no requests will be queue to\nthe device since the stream will be stopped soon,\nso there will be no camera->requestComplete called\nlater, then the descriptors_ can not pop normally,\nthis will cause the pending if we want to start capture next time.\n\nTo fix the issue, ensure the descriptors_ is\nempty after the camera device is stopped.\n\nSigned-off-by: Anle Pan <anle.pan@nxp.com>\n---\n src/android/camera_device.cpp | 5 ++++-\n 1 file changed, 4 insertions(+), 1 deletion(-)", "diff": "diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp\nindex 25cedd44..d452992d 100644\n--- a/src/android/camera_device.cpp\n+++ b/src/android/camera_device.cpp\n@@ -433,8 +433,11 @@ void CameraDevice::flush()\n void CameraDevice::stop()\n {\n \tMutexLocker stateLock(stateMutex_);\n-\tif (state_ == State::Stopped)\n+\tif (state_ == State::Stopped) {\n+\t\tMutexLocker descriptorsLock(descriptorsMutex_);\n+\t\tdescriptors_ = {};\n \t\treturn;\n+\t}\n \n \tcamera_->stop();\n \n", "prefixes": [] }