{"id":2232104,"url":"http://patchwork.ozlabs.org/api/patches/2232104/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20260502-ioctl-v3-19-a05d4cb1bdff@bsdimp.com/","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260502-ioctl-v3-19-a05d4cb1bdff@bsdimp.com>","list_archive_url":null,"date":"2026-05-02T17:09:40","name":"[v3,19/19] bsd-user: Add call to do_bsd_ioctl and add bsd-ioctl.c to the build","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"09483c7973bd2e192793866887ae7d67efb06d11","submitter":{"id":1896,"url":"http://patchwork.ozlabs.org/api/people/1896/?format=json","name":"Warner Losh","email":"imp@bsdimp.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20260502-ioctl-v3-19-a05d4cb1bdff@bsdimp.com/mbox/","series":[{"id":502541,"url":"http://patchwork.ozlabs.org/api/series/502541/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/list/?series=502541","date":"2026-05-02T17:09:22","name":"bsd-user: upstream ioctl","version":3,"mbox":"http://patchwork.ozlabs.org/series/502541/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2232104/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2232104/checks/","tags":{},"related":[],"headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=bsdimp-com.20251104.gappssmtp.com\n header.i=@bsdimp-com.20251104.gappssmtp.com header.a=rsa-sha256\n header.s=20251104 header.b=Pyq6tAUa;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g7DxV5Nvqz1yGq\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 03 May 2026 03:12:46 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wJDsY-0007vC-4P; Sat, 02 May 2026 13:11:46 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <imp@bsdimp.com>) id 1wJDsT-0007tk-0g\n for qemu-devel@nongnu.org; Sat, 02 May 2026 13:11:41 -0400","from mail-ot1-x32b.google.com ([2607:f8b0:4864:20::32b])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <imp@bsdimp.com>) id 1wJDsQ-0007G5-Ud\n for qemu-devel@nongnu.org; Sat, 02 May 2026 13:11:40 -0400","by mail-ot1-x32b.google.com with SMTP id\n 46e09a7af769-7de46b8e432so2764955a34.1\n for <qemu-devel@nongnu.org>; Sat, 02 May 2026 10:11:38 -0700 (PDT)","from rebo.bsdimp.com ([50.253.99.174])\n by smtp.gmail.com with ESMTPSA id\n 46e09a7af769-7deca824746sm4334355a34.11.2026.05.02.10.11.36\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Sat, 02 May 2026 10:11:37 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=bsdimp-com.20251104.gappssmtp.com; s=20251104; t=1777741897; x=1778346697;\n darn=nongnu.org;\n h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n :mime-version:subject:date:from:from:to:cc:subject:date:message-id\n :reply-to; bh=yOKFPgBMLiOQCpxJ/HoukPsjgqhmFBu/kKtVTLDxNuI=;\n b=Pyq6tAUaaRgT2R7Icq5xepr/dBVvaLra1BFMmldA2NX8VxbfEfqdPJEs+TVmh0B9zG\n yjhMF7s2uWoTdypfGxaDGHOx5nnTh6G9ZnWlikwDEUouAAaznzmJYIhR9aIwsN8hFtef\n tJ/F34CpQ4lXZTli3NDHYuZt8Zfo1TA5+3air8iwA0QviemTKRdudfg8SA7F0tB4XdHj\n co7FdIW8zVJylrvXBKcatmCZHwRaczbcFJKZcBGlNMzR2aYP9H/Tt6bx/7XoJNzLSyz6\n Qwz+ZJ3DVVnJ/sdc8JkPNvKKrMgebldD73KX93bad/npEJVvlAoe4Adljh3UT+rQs53n\n Vybw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777741897; x=1778346697;\n h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to\n :cc:subject:date:message-id:reply-to;\n bh=yOKFPgBMLiOQCpxJ/HoukPsjgqhmFBu/kKtVTLDxNuI=;\n b=nWXwBarNI8dOWQ+aGpmQs0r0rAoIwEeLF60ogVAO+5z8niO4KNMr6TrpsJnQVst8OB\n gdTOtPwvG2Uft4qzoYJ0BZiHxa9+iMpDozvMXN5D61zoXFBviolN34JEsRz2EfcNje0r\n LoCB8e8kPHtenYQBJQgneqCSuU+MdnaquP0SANkQPRWlkv+EheSwZuwOKGksqdbrBfMV\n TIpccEvhTmWOKTF32axhv/kLFagLAlJjsxafRImopyB68Gs7d77TEtBCBkH4X099xBCw\n 9ORqNqCIiMuQcnzCOiamNp+CC9hd94f4qtIefC8YtaBw0UtLNuIhQeeFEuYx81A1CARN\n PwBg==","X-Gm-Message-State":"AOJu0YyjjMtYpH7exZZlzQgkCyBER6pjYtj1tFs+Y203SOTheOmRnER/\n RdyFjJ3xDioIcj4teEMbwa9SM8RVTu2VK+W95G8+5h773guSJvJDvz4JAoRiB0sI1VcjYZdFj5T\n WB0nwATw=","X-Gm-Gg":"AeBDiesYBgtoauZNx3QwA0rbLjYaX8iYLqAtRv9/I09IGyVvWxv8PIQhob6W59TDpQh\n OZhJsULuSfpCeBdSNOiNfvBauFY9jm0xowxT6G91zFZBeTSKliu8QEr+38Vt48pZnzh5CBBC5rV\n Xx/F7D2+n8dFVa/AcfFRcYshEWOS+4Rw0xtHpWKSQvkAhP8G9dJ3qZ2z1xdSr6kfwIaeobNK3r5\n 2xCsujj/ult88wG89i0xF24ESUxO22rN3BN5MioU9HQs9bvjjUjGvlI1pmuo6CNgHDH8hvsqVnq\n 69rFzrHEfK9CSjjnxi18kmZMHoWaHHZRnO2h7yMNgTDUYqXd5C+6All53xMyyUN25NFl6REw7ya\n BeCfdOoaSU/1Ndu7qT+rDQXfENWF9/aYwJY71kMPThLl6C+a20vRCIyjp8mu6PT66OQQgJHByBt\n BXKm+LoM4xNPH6jjvxXv4i","X-Received":"by 2002:a05:6830:2b0e:b0:7db:b7ae:ef0b with SMTP id\n 46e09a7af769-7dee143c081mr2496632a34.24.1777741897590;\n Sat, 02 May 2026 10:11:37 -0700 (PDT)","From":"Warner Losh <imp@bsdimp.com>","Date":"Sat, 02 May 2026 11:09:40 -0600","Subject":"[PATCH v3 19/19] bsd-user: Add call to do_bsd_ioctl and add\n bsd-ioctl.c to the build","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260502-ioctl-v3-19-a05d4cb1bdff@bsdimp.com>","References":"<20260502-ioctl-v3-0-a05d4cb1bdff@bsdimp.com>","In-Reply-To":"<20260502-ioctl-v3-0-a05d4cb1bdff@bsdimp.com>","To":"qemu-devel@nongnu.org","Cc":"Kyle Evans <kevans@freebsd.org>,\n =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,\n  Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>,\n  Warner Losh <imp@bsdimp.com>, \"Stacey D. Son\" <sson@freebsd.org>","X-Mailer":"b4 0.14.3","X-Developer-Signature":"v=1; a=openpgp-sha256; l=1572; i=imp@bsdimp.com;\n h=from:subject:message-id; bh=pgP0eEEHq6h/GuDoYbSsIZvY30awmIOGPBgt3Kks/ZQ=;\n b=owEBbQKS/ZANAwAKAWwc0Sh9sBEAAcsmYgBp9i/RrO1Aq2gKVDrYvrQkuRyrZM6NABEWu0sPb\n vXeHFLlHmCJAjMEAAEKAB0WIQQgNfiUsAqjz3zN4bdsHNEofbARAAUCafYv0QAKCRBsHNEofbAR\n AA20EADtdS+/hNHMsHm1Ce5JEnitj6AffWFQvLtj9O+G9hIszMpxQWng0WWhrqRPx/OmL+/eDpp\n 2bbxBJnp5y+xkudovY/ETumrvyE1efNo537lw+tboTjWGsyg9Sow5gLm4aLoiIC3M8FGDrAFSBm\n ec1cqYRuqf+UWKJ8iMr0sG4aBb98wLW2j+s6m6/AU0wqTkSPfTtA2tt8jWdd9gN3CQu00PC9Ocv\n suptdKGT12+zViwZ/Ys7KpTMHjoZxBq7nzl/Dg8fYtC+uRkTmFFRVTQXcaN5412ry01Br3RzSM4\n o58MGkf/4gquDwu8opC2l2NMld/KyJb0cInryzUGqnOORzBPx7YY6gUynfsLO0JWXPDWFyMEVz1\n U/nArHkXrhK8oxb+6dbqAfG4Sy1U5KNObTFJCMY9NZc6HjjqefuiyWhHrpJ28cXIWJ/BuO/gCHZ\n 1maTI3mYZUoER/QwKqM05eE+6Qa6c/Oy9hlbEkgS9ucMbdQq5a05b4BJ6QPVCkD/Foy27fXEqOD\n ZW5qdIGKZTXUFQ8HOZ0+X2jrRZppOY1ywCvjlcwdqztD7octMnDuuIWvsirEFcKyCunXTibL7Qn\n fIQhkmmpetGfddMMoDgaGxshs3sfNWV9cuVjbv7LhcVcWbhmy2eOhktzGihopA17PZm4Y98e9YE\n xDEuuyNuRB/5hIw==","X-Developer-Key":"i=imp@bsdimp.com; a=openpgp;\n fpr=2035F894B00AA3CF7CCDE1B76C1CD1287DB01100","Received-SPF":"none client-ip=2607:f8b0:4864:20::32b;\n envelope-from=imp@bsdimp.com; helo=mail-ot1-x32b.google.com","X-Spam_score_int":"-18","X-Spam_score":"-1.9","X-Spam_bar":"-","X-Spam_report":"(-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_NONE=0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"},"content":"Finally, connect do_bsd_ioctl to the build. Call bsd_ioctl_init() from\nsyscall_init()\n\nSigned-off-by: Stacey D. Son <sson@freebsd.org>\nSigned-off-by: Warner Losh <imp@bsdimp.com>\n---\n bsd-user/freebsd/os-syscall.c | 9 +++++++++\n bsd-user/meson.build          | 1 +\n 2 files changed, 10 insertions(+)","diff":"diff --git a/bsd-user/freebsd/os-syscall.c b/bsd-user/freebsd/os-syscall.c\nindex 85e5db19a3..07fca396bb 100644\n--- a/bsd-user/freebsd/os-syscall.c\n+++ b/bsd-user/freebsd/os-syscall.c\n@@ -34,6 +34,7 @@\n \n /* BSD independent syscall shims */\n #include \"bsd-file.h\"\n+#include \"bsd-ioctl.h\"\n #include \"bsd-mem.h\"\n #include \"bsd-proc.h\"\n #include \"bsd-misc.h\"\n@@ -689,6 +690,13 @@ static abi_long freebsd_syscall(void *cpu_env, int num, abi_long arg1,\n         ret = do_bsd_undelete(arg1);\n         break;\n \n+        /*\n+         * ioctl(2)\n+         */\n+    case TARGET_FREEBSD_NR_ioctl: /* ioctl(2) */\n+        ret = do_bsd_ioctl(arg1, arg2, arg3);\n+        break;\n+\n         /*\n          * stat system calls\n          */\n@@ -1001,4 +1009,5 @@ abi_long do_freebsd_syscall(void *cpu_env, int num, abi_long arg1,\n \n void syscall_init(void)\n {\n+    init_bsd_ioctl();\n }\ndiff --git a/bsd-user/meson.build b/bsd-user/meson.build\nindex 9cc5c6c459..2abcae5122 100644\n--- a/bsd-user/meson.build\n+++ b/bsd-user/meson.build\n@@ -7,6 +7,7 @@ bsd_user_ss = ss.source_set()\n common_user_inc += include_directories('include')\n \n bsd_user_ss.add(files(\n+  'bsd-ioctl.c',\n   'bsd-mem.c',\n   'bsd-misc.c',\n   'bsd-proc.c',\n","prefixes":["v3","19/19"]}