From nobody Sat Apr 15 15:30:02 2023 X-Original-To: dev-commits-doc-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PzHLf6Fhbz45WG6 for ; Sat, 15 Apr 2023 15:30:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PzHLf5CtZz3wYt; Sat, 15 Apr 2023 15:30:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681572602; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2R+lkkdcKh0qu35+ylXDhX/FHVSl5HmCRG9dTWegXbo=; b=l15w3ob7BDE/hplC4kzcugkdtv2A0lZckJns3MCWJEZAr52/76MRjMIul9aYjrgVNPTLuR d2sT2e7u1/X7ernsj30TgQLJ+fYxnSeRH4g5pQGGGMLRsgU0Ggd0hrOOPSUgJZv4oPS0g5 7j6L+yDHi7/Y+4Bqmkx9BHADTbAQrG54cKibA2aLcF2vQyglTd1jN8uyjxu/NRdzi/RyI5 vAQDSDVtHgIpDxuOGzi3GiGknqvpVWm5JxoLLMg6PegLlciAArs4gqL5BI7HVbY7YQD8dd 1eAP4yhF8MP78YOUk6RCC3z9lNktac4vx/9Ed5d72RO7/+Tt+69HXw8U67gqhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681572602; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2R+lkkdcKh0qu35+ylXDhX/FHVSl5HmCRG9dTWegXbo=; b=GRQOxL0T4yRifuOOH0SiEq4uYJssF5VlgMZr686S8K5t4P117e92gyLm1ugHMUzVccZaWx Lo+L0PvBgm2G2zxwsSlHaZim8hfH4mKUL1IlGM5DvaGfDZRXYMvAKD7BF6MakdXOx1wzzt jsRhs2jCHYtVlG0KRjgfAZsWyMwUtBAE8vDjyUTomk5jXbqc3zUp+1nhC4N2LnWdbTDvZB GF1Vlszun/mmxsoS5erJuIm5+z7XV0M9xNYGmonF8Hlz6DbNjFgdlKQ6OGgHPhQGm6Drsm iDAdSJXfQ0CM5KudzEZrrkTCr7/EMuKNoOsMQU5WWS8Axggw4AtxRHHB6YIOEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681572602; a=rsa-sha256; cv=none; b=Et0tDeYR4N+32MucgkB0t1lx+JwxkWM3JXSYwOw0nC5TNq9SRj5bZPF6NGT53K7WhG4PBp XWlcjt46NuaCaYzovIHjO7K9U5ukIDwIC75Z0BrsPhEC7A8iEfsgOxvv7dSWcsat36rhgY rpzzmOHbDlnpUYhNmrDHnsWSV8E0XrcG3i868NCSG6lNBToNjIas2/HSqPAWNcxl8L7Bxv Y68hCRzouY/KUdZ8frtdQzomAn+sZK1xt+0PbBP5VaCemN8/LhvGHWB/zsZJ2SfO9zuoVy iLDLKD1M8oXYR/OD38O3zl7OW7MNoEX5OHQW5tKVKnoRwfLHqJEaMYBV5NwIbg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PzHLf4C0Tz19km; Sat, 15 Apr 2023 15:30:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33FFU2MV095868; Sat, 15 Apr 2023 15:30:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33FFU2wM095864; Sat, 15 Apr 2023 15:30:02 GMT (envelope-from git) Date: Sat, 15 Apr 2023 15:30:02 GMT Message-Id: <202304151530.33FFU2wM095864@gitrepo.freebsd.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org From: Warner Losh Subject: git: 2e5c2a2d29 - main - bsd-user status report List-Id: Commit messages for all branches of the doc repository List-Archive: https://lists.freebsd.org/archives/dev-commits-doc-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-doc-all@freebsd.org X-BeenThere: dev-commits-doc-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: doc X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2e5c2a2d29f672f4553738f4686f3c41707e51ed Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/doc/commit/?id=2e5c2a2d29f672f4553738f4686f3c41707e51ed commit 2e5c2a2d29f672f4553738f4686f3c41707e51ed Author: Warner Losh AuthorDate: 2023-04-15 15:29:52 +0000 Commit: Warner Losh CommitDate: 2023-04-15 15:29:52 +0000 bsd-user status report Reviewed by: salvadore Differential Revision: https://reviews.freebsd.org/D39515 --- .../en/status/report-2023-01-2023-03/bsd-user.adoc | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/website/content/en/status/report-2023-01-2023-03/bsd-user.adoc b/website/content/en/status/report-2023-01-2023-03/bsd-user.adoc new file mode 100644 index 0000000000..f9ce76c0e4 --- /dev/null +++ b/website/content/en/status/report-2023-01-2023-03/bsd-user.adoc @@ -0,0 +1,55 @@ +=== bsd-user: Upstreaming and Status Report + +Links: + +link:https://qemu.org[QEMU Project] URL: link:https://qemu.org[https://qemu.org] + +link:https://github.com/qemu-bsd-user/qemu-bsd-user[FreeBSD bsd-user qemu fork] URL: link:https://github.com/qemu-bsd-user/qemu-bsd-user[https://github.com/qemu-bsd-user/qemu-bsd-user] + +link:https://gitlab.com/qemu-project/qemu[QEMU Project's gitlab mirror] URL: link:https://gitlab.com/qemu-project/qemu[https://gitlab.com/qemu-project/qemu] + +Contact: Warner Losh + +In this quarter, Warner upstreamed patche sets in the qemu-project repo (with a third pending). +Doug Rabson submitted some optimizations to save a handle to the qemu-user emulator in the kernel for future exec. +Contact has been made with some folks interested in getting bsd-user working on NetBSD. +Summer of Code project to upstream shows some interest. + +==== Upstreaming Efforts + +The sysctl system call was upstreamed this quarter. +Doug's changes were also upstreamed (see below). +Some cleanups around NetBSD and OpenBSD and to generate syscalls on the fly are pending + +==== Doug Rabson's Changes + +As part of his container work, Doug submitted changes that allows the kernel to cache the emulator used to run programs. +This allows it to directly exec the new binary with that cached emulator. +This simplifies bsd-user and removes one source of difference between it and linux-user. +Doug also provided an important fix that prevented aarch64 from running. + +==== Bug Fixes and Improvements + +In addition to Doug's fixes, Warner cleaned up things a bit this quarter. + +* Warner removed the final bits of 'run on any BSD code' that was present in the emulator. +* While the basic system calls could be emulated between all the BSDs, their system call interface has diverged too much, and it is too feature rich for this to be feasible any time soon. +* Warner had planned to just remove the NetBSD and OpenBSD bits, but there's some interest from at least the NetBSD folks for making things build. +* Now that they have contact information, and know direction, Warner hopes they will submit a pull request to build bsd-user on NetBSD for NetBSD. +* Warner added SIGSYS support so that we can catch unimplemented system calls sooner, and improved reporting of them to get more data about what fails. +* Warner cleaned up some code in the `blitz` branch. +* We're merged up to 8.0rc1 in upstream in the `blitz` branch we're using to stay current. + +==== Summer of Code Projects + +There's much interest in the bsd-user upstreaming task Warner added to Qemu's project list. +With luck, we'll have a student to fund to do the job of upstreaming all the system calls needed to run simple programs. +With a lot of luck, we'll be able to run any program that does the same thing(s) that clang does (one goal is to have it compile hello world). +Future quarterly reports will provide details, should we be fortunate enough to get a slot for this. + +==== Help Needed + +We can always use help with bsd-user. + +* Pull requests for new system calls are welcome. +* Automation in generating many of the things we do by hand would be helpful (like system call argument tracing) +* Enthusiastic volunteers who want to help me with the upstreaming (many tasks are easy and quick if you don't want to commit). +* Coordination with the NetBSD folks and cleanup they come up with. +* Bug fixes (especially thread bugs) are needed.