Patch Detail
Show a patch.
GET /api/patches/21815/?format=api
{ "id": 21815, "url": "https://patchwork.libcamera.org/api/patches/21815/?format=api", "web_url": "https://patchwork.libcamera.org/patch/21815/", "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": "<20241106154306.2490129-1-julien.vuillaumier@nxp.com>", "date": "2024-11-06T15:43:06", "name": "[v1] libcamera: ipc_unixsocket: Share stdin and stdout with IPA proxy", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "6c88e118b522af39a00c9571f1a13fbb482c6ae9", "submitter": { "id": 190, "url": "https://patchwork.libcamera.org/api/people/190/?format=api", "name": "Julien Vuillaumier", "email": "julien.vuillaumier@nxp.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/21815/mbox/", "series": [ { "id": 4771, "url": "https://patchwork.libcamera.org/api/series/4771/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4771", "date": "2024-11-06T15:43:06", "name": "[v1] libcamera: ipc_unixsocket: Share stdin and stdout with IPA proxy", "version": 1, "mbox": "https://patchwork.libcamera.org/series/4771/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/21815/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/21815/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 91514BDB13\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 6 Nov 2024 15:42:47 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id C22EB65431;\n\tWed, 6 Nov 2024 16:42:46 +0100 (CET)", "from AS8PR04CU009.outbound.protection.outlook.com\n\t(mail-westeuropeazlp170110003.outbound.protection.outlook.com\n\t[IPv6:2a01:111:f403:c201::3])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B9EC2653C5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 6 Nov 2024 16:42:44 +0100 (CET)", "from AM9PR04MB8147.eurprd04.prod.outlook.com\n\t(2603:10a6:20b:3e0::22)\n\tby DU0PR04MB9672.eurprd04.prod.outlook.com (2603:10a6:10:31d::12)\n\twith Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8114.29;\n\tWed, 6 Nov 2024 15:42:42 +0000", "from AM9PR04MB8147.eurprd04.prod.outlook.com\n\t([fe80::eace:e980:28a4:ef8a]) by\n\tAM9PR04MB8147.eurprd04.prod.outlook.com\n\t([fe80::eace:e980:28a4:ef8a%3]) with mapi id 15.20.8137.018;\n\tWed, 6 Nov 2024 15:42:41 +0000" ], "Authentication-Results": [ "lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=nxp.com header.i=@nxp.com header.b=\"a+qW9SuU\";\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=arcselector10001; d=microsoft.com; cv=none;\n\tb=q7AgYwrB0lzynxn2HMZKc/n3GS0TSxPiD8T2RaSnn102v+HqYfBhuWpYeoIIUsgDdEb7F4UJx0UKQ5TSjBFxFCQrt7Tok48IFlprQQZdgPEMoqQAcL8c1d1hFnHKgRhUK53twSDTCHR0M8tyOx0hZhNpKZk9zLLvee5aNzO4IrT1frvRwd7t5EkkM/x/3mfA1C/k4SGq6c6KWlzoWwg5ytSFi+er9gKrkAdMHwAKwt1vyaiN/ljucJCDdVgy0zvoVrLaZyRE6v7jt2MnZ29qB+57K7PjbQhiMywxxQo8VsJKth0lWD0TGwWjXIq9SMeCa4suFKEcAun4XLal+bvhZw==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector10001;\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=MkP9LJmlP0wcKn5G0BBhtsubmqsIHuSJ9mHxGyY1KGE=;\n\tb=pWVeLuM9Vzsf2nrP9J/WafJVa46EO5lilcMbbbyvHt6r9cxK3bICuZp4ofF9/8IwHcn0CbkQJ6prW+jRzk7+p0ww3H4xt8q9cw2y87U94+GjHbJYUL22X5OsMEUe6S9RTUBaRyyKqLnmg8uyndgj9J4BgXk5AcEVXv3GvyEtbHh0gEoK2ZGnTZJYxXtlQTucXSV6/TXpjXDV+lZ2tP9HedYJWT5g84pvq6YIk0C84U+qWvoCTzaUNjtxSVd8LPvL3ZXWGJTopcyAueco/nEzk96hhkARZfS6S+0Wy5UW7GcXm2SGzhRqHG9v6bD52bvDY3+Ke0mvO9M77TDzgX4HBw==", "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=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=MkP9LJmlP0wcKn5G0BBhtsubmqsIHuSJ9mHxGyY1KGE=;\n\tb=a+qW9SuUBzdYHBbIiq5AZWGje7IEaGu1TvyxTdVzG7ZBsXjd7V6ymkZhmIDQZlDc87wVkRPm2Y363m857wZzwHYc7FL9cZ2UWnTh/Bq5GLbBTz4zYSiofvwaT2kKx6GW0E8iINUtpUvNYbBw6GtjyxLvxqdMcG4VaEIhUmirqXkYtv+fthLoOPySJQY/yRXgcDz23W3Fjqe1MybFce5IloXxthoKXnEKC48evFXrGcPIFQ8glOiJcdCeLtV+B3iJaRHpQcpk2PA3vSf+Y9+CgKPw4jcJ1Bgkd3PN1eO2oROooS+k89sC6x1SExsecpFsYUDjuMNAdcbdW+AsW6PPLw==", "From": "Julien Vuillaumier <julien.vuillaumier@nxp.com>", "To": "libcamera-devel@lists.libcamera.org", "Cc": "Julien Vuillaumier <julien.vuillaumier@nxp.com>", "Subject": "[PATCH v1] libcamera: ipc_unixsocket: Share stdin and stdout with\n\tIPA proxy", "Date": "Wed, 6 Nov 2024 16:43:06 +0100", "Message-Id": "<20241106154306.2490129-1-julien.vuillaumier@nxp.com>", "X-Mailer": "git-send-email 2.34.1", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-ClientProxiedBy": "AM0PR01CA0106.eurprd01.prod.exchangelabs.com\n\t(2603:10a6:208:10e::47) To AM9PR04MB8147.eurprd04.prod.outlook.com\n\t(2603:10a6:20b:3e0::22)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "AM9PR04MB8147:EE_|DU0PR04MB9672:EE_", "X-MS-Office365-Filtering-Correlation-Id": "46520bc4-4aa6-4114-d7bc-08dcfe79a60d", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;\n\tARA:13230040|376014|366016|1800799024|52116014|38350700014; ", "X-Microsoft-Antispam-Message-Info": "foyJxNbTkFGR7aGJxToVg7zaLGY+eW2m7QcqimDqFR9uRXpo8S64ipJFx90Yyw/msTbvGIdcnOJwbfV6y3g3ezUA9EgWLQDUjxJrW67brWeEbyg78luDVa8U8tSgarJ8mbfjLQ0S5hiS2kdHlTiTRfnLcBTufQFnZCb9bNzgQSko1kNo0eSprI1Y7U0OUQ45+QEQGneKWZxbtwzYaoQCCwrWsHl3dAJuRTOBNGMAkbfXPnwloW1BgI06NKMUwvFVvNB5GddAuL7o7MwpefxEe/hQ2oU0r7J4uvYpLm3cSfmaq2yeWlgjusX91+rDo6ecZIZ2QBjGiXtl6JopD5pbkw51n5wI/+va5VphzaHtZXZVHcqVSYSJhO3dhCMeX0e7hL18m4bB88Ib95610BmFnpyckL3hpmBKRWzsqChVudw3/MHk4O4IR7bbn2ArqVI7CEXbCC6XS85EypMk6fUPgZbJLclzFPenuGM5RYrS5KihRgRn5TZNcFrg1nCxy+u0ZGzrJZo52xLhqGk9jvANVxkpqVIZIYyI4nAnPpDUT8Vr1COH9d1fgWMeeNzMP8SWLIfPmzF44lQDkSmA39f7Uvb1n1GPduhZNtuWnZz99f2rNZwpGjDUjVTn9amZDhqIqUZUAKBiCNyGbhuYJ+NXNdMOJ/o7OK7AienWNGC+YohQyNMuuwa82/L5UVQP5nFSOMVdCDVkEI2QAWCHpMP0TKu4332t3Usz3DirjNQELBqeqvmEsCWHDARrb/Q99dSF+csnYO9EymXLZn4AI45VNJQXvpKCBw1ugI6Zr+ptgCySnTESUWnTW42YuYZ+DE/L2PltwfaXRp79HQ0Gxng5lAYCDOp+Y7rFB20iYi0EbJ8ScV4gicgTglxJVxmzZYkzQuFi1g8CRrWJbEqioAc0mY4S7aro+1VWUvbY5stLWo+pFIbXJ8P8PeeVOBQYVkHKgIEovUJK8u34mmbYGVk//hERIxO9Ab9XLy9pq16ZnpXoqevGxss4uaU8K7VSyVMTJDkQnaYf0/NxvmjCk84i8EAeuDm3QhVwCLRsZGDUVwvdk93jHuGC1cm/a5+PSEHyb5y4x9AOwdjkahme7Echyq8+rRbUju+yOtQtnpMs3xHFuFg5A2Sl7IyIqcyti/jwLFMdiMRMw5O92v6lc9zxuWE0zYPUJKtHO5jWUyHbQ+k1GR/OAP+XQvtoKKhKufqQO+8NGTr9eCdXVuiNUUqQtDrJYEML8cizXbnvQnuIQZp3FcZ3eSwUC93djvG7NF9awG4qjZrVuRAoeehBopJPh00gl6sw5fDcs1m8w0ObEWtsvXJtANeOIDpb9i+t60i1Su9iqO/n0nUv7JNCHTME5EkWY06HSkCSTZjQcOnK9j4=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n\tIPV:NLI; SFV:NSPM; H:AM9PR04MB8147.eurprd04.prod.outlook.com; PTR:;\n\tCAT:NONE; \n\tSFS:(13230040)(376014)(366016)(1800799024)(52116014)(38350700014);\n\tDIR:OUT; SFP:1101; ", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "odKDA6UNJpln1USbUfnSzJlCBBsk0JLt8ly4Pua0akWF5R5vgWxrvBvyH9LoR9AQZVCDCYYjO620VulhsddTdddpr88QKsVku9mI2q4d2rAs3fzSMRRZe1zu/X893Eju5yCOJF1oroWT4Zo1g9YEDcqMnavvcR7hMQ6uCYPTqL2hU3TCjqCFL2i0BFiyF6doQEHWfDkH5zYa6hnEZ0wgo+kOcwI28TKB+8XBMmtdXqA8AY3cuwxtng5b2ab9pGElTjUg0WxBvIe4/VLUCkCpKVEab1KdBKizUsCD5AMZcC9FYXujRePOJGvgjjhFzvi3m3rYxI035HYO7Tj86ikKlrDtBkd0bPgBpSY0/t0/XwCfHhQzxyEzQiYPF68nyAdKaTiSS7pRGeanApxlcMeNDg1UtbKvor1N11k4efsxpqEVK1axPKIg9SpVHnNYrDwso9OvXSpzXsJHYauVDzwY7XEvlaVDCg2OY/ot5qBZwnCHeabv+T9oHaTn8t3zFFDWQikeoOo30JFT6Pj1wkorKXZ8IxY+XlwnDU/Mi6YhiChxtoPab2FVyW3MsPNtNYkjgYqBvZav/CUqrLzuGddjfmsxKOC2QBmLlDqYcIfWGDQY/pWnpWJDwGNjYXrkkejq80FaT5qMy5QUILdyCBJYiQJhywmcV7Mdrlzf75bBUrJc18ryucf9QSMW2fagPSiHDn/YzurlxUDpu/07uGYL5a/9TrcYUr1PG2dHTVjewX85Ud2RlBQP48wQxF6fxKvxqZgAHeKUJgv/iTssn2Z4VFG48NejA7WUgw9YeoY1ZWFDeVK2SZ807Yvs6XwH5jcsNvnJNXNyK86dGTxHjH6mpNBUbJ1XQU56ile+VZbqPVRjusa0OJ5SfuFninuAxMDy1QxACYMgPVqOs4YM1msYQI5XWFXiJ0lRMVL0FIntrplI9riW2ms1BmUDu9yUl124GxaTM1sulCzod248DAxx76Bvd/6bHx1OuXIaIQ3GmFz+ZGgrIhuOReFn4ICMMpbaBPK79ojFMzOTh481YDw5gpbTM3I/ENROZOCHclign/Ot1RiYQ6xCImYCtZ4ZzwJxyIKWNSsV/oWPdaO8S+Wlw/AOSwyDhbeZDMIEUXpMzVlv9pgTd4EGa0YPLPV5yyfRh6VAWGal3XILvBAx1WTVjPQOHnRQuB6vdh8SYvLhGiEJCE2oAs+u2oUr2cFwfW12yR4kwWwMUuOal+aeGo2NdxGbbpH3Hm76qTyRFL//Zg5zFgwt+oGI9vYiaTIlL+/SWUZRQYPJU1OvpBJ4E1TKJEnWH4imT0hzSWrDPIqPcjBdcVt63o64xkKS/51ZSCQ/yLqfLz0K3kxVouRUD55ZgGjYll+naXgg0DXvgf7HMNhbTlDNNW7s+eMdhszGzTq2BP8UNqRlt8E3JYqvkhAAsRo35KX69hQVTrgLspZh19aMoiES/Vr3Fo2ngjGuLmacQtGcPjNij9NeRSU7v56ZNUiHFVxsKMQjZssoPtL2ocBFN44pHWAbdeetikjDhpF61PHo743OKNTcJWNArcn5y1HTDZtKBS7HCPfNWH3tsNW8u2TNfkLQZjMQ/1Q+hsO7ln0WfOHNe2kutixE8RSI6g==", "X-OriginatorOrg": "nxp.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "46520bc4-4aa6-4114-d7bc-08dcfe79a60d", "X-MS-Exchange-CrossTenant-AuthSource": "AM9PR04MB8147.eurprd04.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "06 Nov 2024 15:42:41.1702\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": "yZkmRQoqyZoEftumQoCbqqT3TL+Qc/hyr08Uchl9q+kCejCc6LNW07tiyWdtj23uYZNcxrPlwbA1D0nPfX+lcg2kkEDzYgwlBs6gYf7fD+o=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DU0PR04MB9672", "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>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "When IPA is running in isolated mode, at IPA process creation time\nall the inherited file descriptors are closed in the new process\nafter the fork, with the exception of the file descriptor relevant\nto the IPC peer Unix socket.\n\nIn order to enable the IPA logging in the console, add stdout and\nstderr to the list of file descriptors to be shared with the\nisolated process.\n\nSigned-off-by: Julien Vuillaumier <julien.vuillaumier@nxp.com>\n---\n src/libcamera/ipc_pipe_unixsocket.cpp | 5 +++++\n 1 file changed, 5 insertions(+)", "diff": "diff --git a/src/libcamera/ipc_pipe_unixsocket.cpp b/src/libcamera/ipc_pipe_unixsocket.cpp\nindex 668ec73b..9ca219dc 100644\n--- a/src/libcamera/ipc_pipe_unixsocket.cpp\n+++ b/src/libcamera/ipc_pipe_unixsocket.cpp\n@@ -7,6 +7,7 @@\n \n #include \"libcamera/internal/ipc_pipe_unixsocket.h\"\n \n+#include <unistd.h>\n #include <vector>\n \n #include <libcamera/base/event_dispatcher.h>\n@@ -42,6 +43,10 @@ IPCPipeUnixSocket::IPCPipeUnixSocket(const char *ipaModulePath,\n \targs.push_back(std::to_string(fd.get()));\n \tfds.push_back(fd.get());\n \n+\t/* Share stdout and stderr with the proxy for logging purpose */\n+\tfds.push_back(STDOUT_FILENO);\n+\tfds.push_back(STDERR_FILENO);\n+\n \tproc_ = std::make_unique<Process>();\n \tint ret = proc_->start(ipaProxyWorkerPath, args, fds);\n \tif (ret) {\n", "prefixes": [ "v1" ] }