From nobody Sun Nov 19 01:15:41 2023 X-Original-To: dev-commits-src-main@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 4SXt4G29P1z50xv2; Sun, 19 Nov 2023 01:15:42 +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 4SXt4G1XXKz3SxL; Sun, 19 Nov 2023 01:15:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700356542; 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=n3nU5ca3/7545RXU4UWOJP2F8iD4RNRMqSv7DkP0pdM=; b=mw07GXpcxCnpPc2Pm1FRHTSdR0Q73aScFlXv0bcvn7Gb6EC39hvmNwUXfqazCGUcAMMSHB xk2zV6pvYupZ+0Mr+FF1Zmdr7qiFL+vryZDz0EbbyDnH38qwUQSF661xi1xYUVrYzyUlVF O2oRTPMm2kGBytYZl26tbOw1V+r+C5POtXTZ1rpI1L4RN4xeQQFLwwaqkXO0wcdeTuxzmY pQwRupoNoxA2PBLQUXkDccW/nxoF31b99g8dX53BItpO3lf3VcIYtifw7FWXZdvL4WtOci 05kozyc7b2WJGzxZah6sh1ydQlKtkI+W44FWj17XAOiIQT9QDB92LEc3fx0TjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700356542; 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=n3nU5ca3/7545RXU4UWOJP2F8iD4RNRMqSv7DkP0pdM=; b=vem6lcKoS3wHkW8PixDcfBvSSLtRF93rx8LYBaYrSKEa3H3AaH2uCsoAfvUuk2LUwnXFTd 7ZREMBbSSQoTnGX6D3abzcyQzt6J0jbaab3ujylwJLbFr4ay0OP075e/M1o9/ih0oSvn/R JEGARJDVA0COKlVDr7Dzg+Nxzt0TtMP+YxXL2PnfGCioilDH35YIygVYPb0HkNwNFKLU2T yyVCLMGDjEN/bqhmMPGzvRQPDgfalWQEgrRhjhIRd72uh9Om6cLxsM4fZSZfCwqZ36RTMH DHh0G41uDypCbMquQyQ1TsjVxNdznVv16uKaQHvZrdwLvfT46UrPRTHx12dqaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700356542; a=rsa-sha256; cv=none; b=Qytsd6aNFkjwdAyT3u2O2xj1kIvpyjUFR/UthtdXANO+SJBz5T+AwbQKnx8T+/f0VMWhxu 2Rq33rGsHh72dMKSeqGxJrrHkLgLrC76UEOFbvexW46K4LN9gDztcQO/EnCx1H++XiwHku NR4x8if7HXFMzF+4W7nSeJq5mcMgAAztz/JuqDg2OuhaAJ+G0EsycJy9RBHRm7UjE+iK5e +QOLOUCKlyVbknjlSuVRqUi94fXltCwboMQp5vbeOueV6siOekp5gLe/OZ0MZt8RX5P17T nVsfNOHURNoAT/GwVzTXP0WROn59MwmIcEXSew8KgW+nsc3VUUtFEyH6A30HLA== 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 4SXt4G0bkVzq7w; Sun, 19 Nov 2023 01:15:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AJ1Ff75099880; Sun, 19 Nov 2023 01:15:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AJ1FfSu099877; Sun, 19 Nov 2023 01:15:41 GMT (envelope-from git) Date: Sun, 19 Nov 2023 01:15:41 GMT Message-Id: <202311190115.3AJ1FfSu099877@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Martin Matuska Subject: git: 3c773cad5706 - main - cat: fallback on EISDIR with copy_file_range(2) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3c773cad57064c23873f286fbec69f6f0305b889 Auto-Submitted: auto-generated The branch main has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=3c773cad57064c23873f286fbec69f6f0305b889 commit 3c773cad57064c23873f286fbec69f6f0305b889 Author: Martin Matuska AuthorDate: 2023-11-19 01:09:34 +0000 Commit: Martin Matuska CommitDate: 2023-11-19 01:14:50 +0000 cat: fallback on EISDIR with copy_file_range(2) The filesystem may support reading directories directly when security.bsd.allow_read_dir is set. MFC after: 1 week PR: 275099 --- bin/cat/cat.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bin/cat/cat.c b/bin/cat/cat.c index ce7a83d59d5a..c69bbc4911cb 100644 --- a/bin/cat/cat.c +++ b/bin/cat/cat.c @@ -281,7 +281,8 @@ scanfiles(char *argv[], int cooked __unused) } else { #ifndef BOOTSTRAP_CAT if (in_kernel_copy(fd) == -1) { - if (errno == EINVAL || errno == EBADF) + if (errno == EINVAL || errno == EBADF || + errno == EISDIR) raw_cat(fd); else err(1, "stdout"); From nobody Sun Nov 19 14:06:29 2023 X-Original-To: dev-commits-src-main@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 4SYC9d6xnzz51pvy; Sun, 19 Nov 2023 14:06:29 +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 4SYC9d5mcSz3RYh; Sun, 19 Nov 2023 14:06:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700402789; 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=jVZH3jcDs4smRYGaBdf1dKeEeDrt7SRz2epzKRjCZJ8=; b=IVGJBow57uz3AUhdtsy50P+3+Sr5DroeTFE7JwWbj1iu/OM171DPi28Bl7QNBq0e7rnvId N5JUh6Nn58yyhdwCsZEswMt8Q9L8bUMvH5C/mtL5nJAVMEzR+b2gkoeM5EB2O40SJ44eq/ Kdd6n94cHN9baK3HKVhePIumbodj7RSJQqYIo5oImGnjK0/G/PeZv5vIdZ0dlxq8knMW7N A77raK54J1F11RHHiisfkER1eqhdSV3qicKMFr0YzIV4KE3BiaXVZq805kHne7Rn/+oLfK U/Qcclb9T9NgeoLomYWJchK4YLsknPY2ntyem5gSByX+MDSn7Gm+p52GoR1nkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700402789; 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=jVZH3jcDs4smRYGaBdf1dKeEeDrt7SRz2epzKRjCZJ8=; b=dCc9ljnzh/U0+jJdU7c7X9dHIRIG0TTQLU0G8cl/ltD3vd/nq7CYj4U5FnWM3AP95nfHhc e7YkS7J5wyTegkaUarexTIBgF7umUir5VUhcYNNC7IIsMYTuYo8L8JtvyexbizwJKlB2Lz O9ColNoNenIsScT2yVEVpn3GNhrJk7hexdz5Lj+idK5hrQk5fRrXmz3+9wXn3aCe+uA3OU jxaq6WTsS7o7Tw8SaNFrPra0P/u3LkEiwotAZxabjiDkURakpdD5WWQz+96Xt5vSJeuZAr 8kxhF8ctbfzT9zmtmh7jY3Nm0FnM7dV0LItx6RFQwaTa50hZeaEn1yYpSflWrQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700402789; a=rsa-sha256; cv=none; b=PNWxnK4vQ/mVcRH+6A0KNLR1lvDl5pkBycC4c/KBMKNmoN32yq5wwnsb1QtimCgYhR6QM6 NPokaiSfDwZnHvZwjG2osef6w4iDjFdD/zVH7qraEHKncEIBddwXHjvFzIbhkKjrzpuzCO rwah+4+Svsjhy3txkjZkRU+/HUJDYU1h3QT9ingScipG6D3R0zlSxvWPUvuUPf9XMofIkA y+IgKwOwa56C82vB3+r4XaeGeNDv0WO8wA8Qj+gjH0wARx6M1iYDlFDIUdV+YHISWMAYzz nOUrlKZGu/k/JboUOis8YgyUfA9DFrWde4btfmL4DDTyB13/lwH5gmLtdu+Gtw== 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 4SYC9d4py2z1BC5; Sun, 19 Nov 2023 14:06:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AJE6T8L084471; Sun, 19 Nov 2023 14:06:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AJE6TrF084468; Sun, 19 Nov 2023 14:06:29 GMT (envelope-from git) Date: Sun, 19 Nov 2023 14:06:29 GMT Message-Id: <202311191406.3AJE6TrF084468@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Arthur Kiyanovski Subject: git: 33db883c9598 - main - Add akiyano as src committer and cperciva as mentor List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: akiyano X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 33db883c959821f5efb245d6d840f70eedcd85ff Auto-Submitted: auto-generated The branch main has been updated by akiyano: URL: https://cgit.FreeBSD.org/src/commit/?id=33db883c959821f5efb245d6d840f70eedcd85ff commit 33db883c959821f5efb245d6d840f70eedcd85ff Author: Arthur Kiyanovski AuthorDate: 2023-11-16 22:54:51 +0000 Commit: Arthur Kiyanovski CommitDate: 2023-11-19 13:54:29 +0000 Add akiyano as src committer and cperciva as mentor Approved by: cperciva (mentor) --- share/misc/committers-src.dot | 2 ++ 1 file changed, 2 insertions(+) diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot index 00e61605f451..932204a2814d 100644 --- a/share/misc/committers-src.dot +++ b/share/misc/committers-src.dot @@ -103,6 +103,7 @@ achim [label="Achim Leubner\nachim@FreeBSD.org\n2013/01/23"] adrian [label="Adrian Chadd\nadrian@FreeBSD.org\n2000/07/03"] ae [label="Andrey V. Elsukov\nae@FreeBSD.org\n2010/06/03"] akiyama [label="Shunsuke Akiyama\nakiyama@FreeBSD.org\n2000/06/19"] +akiyano [label="Arthur Kiyanovski\nakiyano@FreeBSD.org\n2023/11/14"] alc [label="Alan Cox\nalc@FreeBSD.org\n1999/02/23"] alfredo [label="Alfredo Dal'Ava Junior\nalfredo@FreeBSD.org\n2020/01/27"] allanjude [label="Allan Jude\nallanjude@FreeBSD.org\n2015/07/30"] @@ -481,6 +482,7 @@ cognet -> wkoszek cognet -> wma cognet -> zbb +cperciva -> akiyano cperciva -> eadler cperciva -> flz cperciva -> randi From nobody Sun Nov 19 21:33:31 2023 X-Original-To: dev-commits-src-main@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 4SYP5R72tyz51NCc; Sun, 19 Nov 2023 21:33:31 +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 4SYP5R6LyMz3P7C; Sun, 19 Nov 2023 21:33:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700429611; 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=BMjRpiToPrP6fKeWsuiEThirW+crKQWXeZv14g4PCpw=; b=AutxSK+9f4xfDzyE3VhvVK79mdiHTcr5gcM/s4CuweY8XJ8IHeq7/5GJNmMvXf2VfoIAGR Yu9YQgJziJCMPvI39UFt2eoJYr47jHknz4vXeN+CZDScwfgzNHX3E2UJGsM3jKCeydmahu vdaNJyoUtjNr8YFhal3AJbvz6/VKtN/qhqQRaE2JGUgFxQ0UO57qinf33qRVi5aMcYGGkU EsfQqLymh8vxklF8FwHw8g+79lk1vuahpznvViU+WCrUUaSfI+H5joAZ7T58szIRYVH+ry 3Xl8XFmEuG+YDdgW15Es4Dh4PmdeIinJ5c5NMuE5ubNpVSd/Vu6rgWCEM+CxZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700429611; 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=BMjRpiToPrP6fKeWsuiEThirW+crKQWXeZv14g4PCpw=; b=PH74IAGuCklM6wkvtiDJse0sNeuJDIjnmDPk3W+Ub9mfMGns3qkgBSVv8iY7P4qJ26W/P4 2xpkQ9dUuYYidTN+3wAr6e8RTJP8VNbxVRd+OW0ynqKEfifBnrkf4QRHlyETd9t9KjAu99 XNbKn9dbwmND6uuLSU2K9Zc43DGVK6WOf+/wBVkIqNfhs8DG9xXGtdaR9UrG2o9OVRRWu0 Np5OlZc8/0SkqSfj+JkSzbHprbCtjQptDFXlAizZtuO3nBYbKiHg52K/1mKBUg5jZ5MkKq 0FQ5+00HsxUvSWrun5pZme6r8QMVUPQ+7Gq1JuSpm/zO+w0nPiVgDksY5t91gw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700429611; a=rsa-sha256; cv=none; b=cPBjzRj1H5AzSfILmuZ/MSHTdNp1Mc6ETBTi9+dk1kAX0rN030RnMO4c+EVFHyfnWjYXiY ooksamXPAuMCmvM8kBTknY0oHhqDhWlXQ3NhVpqQzgamqaNgDSiAqx57sltGSNx7v9tPxH /aDAFnt0AfCcE5dFz1z+SIKwWhlT/k7JpAOTzKb510IvmbkEKCp2kvXJRI5+opum7JvZVV oC1mHdZJmJZLxnX9l24CGYidaMrT4/Tn3ndG+uNoXtae1pdgIDa+7ZnQFjYrUu0+tbunRW 8Z/lw6vlsZ2Pm34cCDWAy+EC6L8+aDUaKg+xa/jobHoKWZ5W6OCZO7La3UN7bw== 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 4SYP5R5PQfzB89; Sun, 19 Nov 2023 21:33:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AJLXVvo034873; Sun, 19 Nov 2023 21:33:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AJLXVQe034870; Sun, 19 Nov 2023 21:33:31 GMT (envelope-from git) Date: Sun, 19 Nov 2023 21:33:31 GMT Message-Id: <202311192133.3AJLXVQe034870@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 99c79cab4227 - main - if_tuntap: add LRO support to tap devices List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 99c79cab422705f92f05a2924a29bdf823372ebf Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=99c79cab422705f92f05a2924a29bdf823372ebf commit 99c79cab422705f92f05a2924a29bdf823372ebf Author: Michael Tuexen AuthorDate: 2023-11-19 14:57:53 +0000 Commit: Michael Tuexen CommitDate: 2023-11-19 14:57:53 +0000 if_tuntap: add LRO support to tap devices This allows testing the LRO code with packetdrill in local mode. Reviewed by: rscheff MFC after: 1 week Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D42548 --- sys/net/if_tuntap.c | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/sys/net/if_tuntap.c b/sys/net/if_tuntap.c index 8881bbaec070..5a4231604f5a 100644 --- a/sys/net/if_tuntap.c +++ b/sys/net/if_tuntap.c @@ -97,6 +97,7 @@ #endif #include #include +#include #include #include #include @@ -144,6 +145,8 @@ struct tuntap_softc { struct ether_addr tun_ether; /* remote address */ int tun_busy; /* busy count */ int tun_vhdrlen; /* virtio-net header length */ + struct lro_ctrl tun_lro; /* for TCP LRO */ + bool tun_lro_ready; /* TCP LRO initialized */ }; #define TUN2IFP(sc) ((sc)->tun_ifp) @@ -978,7 +981,8 @@ tuncreate(struct cdev *dev) IFQ_SET_MAXLEN(&ifp->if_snd, ifqmaxlen); ifp->if_capabilities |= IFCAP_LINKSTATE; if ((tp->tun_flags & TUN_L2) != 0) - ifp->if_capabilities |= IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6; + ifp->if_capabilities |= + IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6 | IFCAP_LRO; ifp->if_capenable |= IFCAP_LINKSTATE; if ((tp->tun_flags & TUN_L2) != 0) { @@ -1175,6 +1179,12 @@ tundtor(void *data) (l2tun && (ifp->if_flags & IFF_LINK0) != 0)) goto out; + if (l2tun && tp->tun_lro_ready) { + TUNDEBUG (ifp, "LRO disabled\n"); + tcp_lro_free(&tp->tun_lro); + tp->tun_lro_ready = false; + } + if (ifp->if_flags & IFF_UP) { TUN_UNLOCK(tp); if_down(ifp); @@ -1219,6 +1229,14 @@ tuninit(struct ifnet *ifp) getmicrotime(&ifp->if_lastchange); TUN_UNLOCK(tp); } else { + if (tcp_lro_init(&tp->tun_lro) == 0) { + TUNDEBUG(ifp, "LRO enabled\n"); + tp->tun_lro.ifp = ifp; + tp->tun_lro_ready = true; + } else { + TUNDEBUG(ifp, "Could not enable LRO\n"); + tp->tun_lro_ready = false; + } ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; TUN_UNLOCK(tp); /* attempt to start output */ @@ -1765,6 +1783,7 @@ tunwrite_l2(struct tuntap_softc *tp, struct mbuf *m, struct epoch_tracker et; struct ether_header *eh; struct ifnet *ifp; + int result; ifp = TUN2IFP(tp); @@ -1820,7 +1839,15 @@ tunwrite_l2(struct tuntap_softc *tp, struct mbuf *m, /* Pass packet up to parent. */ CURVNET_SET(ifp->if_vnet); NET_EPOCH_ENTER(et); - (*ifp->if_input)(ifp, m); + if (tp->tun_lro_ready && ifp->if_capenable & IFCAP_LRO) { + result = tcp_lro_rx(&tp->tun_lro, m, 0); + TUNDEBUG(ifp, "tcp_lro_rx() returned %d\n", result); + } else + result = TCP_LRO_CANNOT; + if (result == 0) + tcp_lro_flush_all(&tp->tun_lro); + else + (*ifp->if_input)(ifp, m); NET_EPOCH_EXIT(et); CURVNET_RESTORE(); /* ibytes are counted in parent */ From nobody Sun Nov 19 22:25:51 2023 X-Original-To: dev-commits-src-main@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 4SYQFr0Fflz51RBh; Sun, 19 Nov 2023 22:25:52 +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 4SYQFq6rMfz3Tjm; Sun, 19 Nov 2023 22:25:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700432752; 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=m5OQvLSa2VJjiac7R/DY7/8vkQiDerQAlv7ZupT79f8=; b=um/cZ42zN5waot7SH/sWWo4yxP/Uzeuszeaoalt27JJqx+uUO7AkXlg7jnRtvVYhiusVnS CjGFIgN6SU14CqvzuA5Cb98+h6xxe8gi1ATE9wD7Oim15N4pCzcZ2gZFEAAWoTaTVXzqvQ a/8YogN7z5i1TU795NGLx1Of23Tp/mggHBVZHqlMv7IwHqfvJD7LVqW+SKTw2j4GXpYCkR MKuoSc7Pbq7L05oNvfjBJifoIMcWpBCwvYLvaXVkfOlJQA8fFX0mNFYB+KCcQ4nR+H9JFq EwdEtS3PrTxjtsM4KlnmtQQdSoeTQKwAwFWjdfTg4cdWqNlBZkc9+O20oM2Arg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700432752; 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=m5OQvLSa2VJjiac7R/DY7/8vkQiDerQAlv7ZupT79f8=; b=k8tRl6Yoyh4ltCL/lH/Yy14x6Ey7Ko8wfkMpLxzonAD3DuupBTmVXv5/zmjC82LUKQVP8p hO2/3gtWqfjvpLguzrd43rJWJIwaLklwmKB9H3C66VpGGM+Jp5D+cnVu3DKlxdrDIU3Fv7 jKgAvf41tIeLfvky/It6fRPX0iShEnpP0n0UE8q9QQOkl3+o5lx0t/GtT39T62NuDnggnh dtSicHV7Unj5Mn4m0GOG1RxwgMXV/YgmxAHWWQjw95c6KpygC1rnRIotfP206ZituM7uvQ qMn3SGI5AT5hKSHMZZ1+qvOFK3dv6nv9g/0i81seD46orYAvgUTos8YqeBsBzQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700432752; a=rsa-sha256; cv=none; b=pc2b/cnRaC/TBUmeN9Nx1o8bFTMNN/m+q1lN4XzQ3DgYZOD2CzndJaUunbr7VuW8sueM4/ y3zgZcc6EWDihRaL96CWA+ZKjVfoCRLjq0jc22jcm3KxuplMjkqUEz5nA+X71TzsVXFqrS oV8tX59Lw0jjfRo4q0QhM9mK38W/j2xq701msONXB8cksx9wRa7I4KW9SJAJzYzD6UUkxV sylSfU6g2HA0JNzyf6Q1mV49m3A6xmYJmCGpVxwFe+Z2Ah6zx4Vc4W3OsPuT6xZekCRLeO CqB6Rw3VGT8OXer8j19b+D8BjNbys35TOmrz//4V/DKBze/icthTkkJMA/T0eA== 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 4SYQFq5vn4zCBt; Sun, 19 Nov 2023 22:25:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AJMPpeB019362; Sun, 19 Nov 2023 22:25:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AJMPprx019359; Sun, 19 Nov 2023 22:25:51 GMT (envelope-from git) Date: Sun, 19 Nov 2023 22:25:51 GMT Message-Id: <202311192225.3AJMPprx019359@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mateusz Guzik Subject: git: 305a2676ae93 - main - vfs: dodge locking for lseek(fd, 0, SEEK_CUR) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 305a2676ae93fb50a623024d51039415521cb2da Auto-Submitted: auto-generated The branch main has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=305a2676ae93fb50a623024d51039415521cb2da commit 305a2676ae93fb50a623024d51039415521cb2da Author: Mateusz Guzik AuthorDate: 2023-11-19 22:23:20 +0000 Commit: Mateusz Guzik CommitDate: 2023-11-19 22:25:45 +0000 vfs: dodge locking for lseek(fd, 0, SEEK_CUR) It is very common and according to dtrace while running poudriere almost all calls with SEEK_CUR pass 0. --- sys/kern/vfs_vnops.c | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index f81516608eeb..4669296750e4 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -828,6 +828,13 @@ foffset_unlock(struct file *fp, off_t val, int flags) sleepq_broadcast(&fp->f_vnread_flags, SLEEPQ_SLEEP, 0, 0); sleepq_release(&fp->f_vnread_flags); } + +static off_t +foffset_read(struct file *fp) +{ + + return (atomic_load_long(&fp->f_offset)); +} #else off_t foffset_lock(struct file *fp, int flags) @@ -876,6 +883,13 @@ foffset_unlock(struct file *fp, off_t val, int flags) } mtx_unlock(mtxp); } + +static off_t +foffset_read(struct file *fp) +{ + + return (foffset_lock(fp, FOF_NOLOCK)); +} #endif void @@ -2647,8 +2661,19 @@ vn_seek(struct file *fp, off_t offset, int whence, struct thread *td) cred = td->td_ucred; vp = fp->f_vnode; - foffset = foffset_lock(fp, 0); noneg = (vp->v_type != VCHR); + /* + * Try to dodge locking for common case of querying the offset. + */ + if (whence == L_INCR && offset == 0) { + foffset = foffset_read(fp); + if (__predict_false(foffset < 0 && noneg)) { + return (EOVERFLOW); + } + td->td_uretoff.tdu_off = foffset; + return (0); + } + foffset = foffset_lock(fp, 0); error = 0; switch (whence) { case L_INCR: From nobody Mon Nov 20 03:15:46 2023 X-Original-To: dev-commits-src-main@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 4SYXhL4sqzz51n2y; Mon, 20 Nov 2023 03:15:46 +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 4SYXhL4R3vz4MtJ; Mon, 20 Nov 2023 03:15:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700450146; 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=t45MvKGw3hHomvKo1UatRCGauSKoSu/qFq0w6T25Ooo=; b=Eq1WL8YgPJkp3Qahv6JMNfYxgNV7olFeU2lhXTkN6PNRVmcQEhFvfnuvsts5jUl1h9yEBN e7uMZ/ApsYf6Ay4pogGL9Gj7axg4bdK62Vj5P++cBY5hr4QzrMXE9fn7zaEY9b7Cha3aq7 bhb3fXMlFw08GkBKeFxe6RBI/yJUtNmO7ANUssFHtX+mfmwFwppMSoIHtCHNDM00PUg83m SrsRoA/kDdhorE17lQcamDXhIqJ/cv4bhXgWrId0XRRy2cYCWSjbXqnb4nWo5izu95MblO 6l5+wo6AUIXQgC/HwGXsPsYk6WiGLSdRPoeSpJ05TYvT2+PwglplUCN4QZ0ScA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700450146; 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=t45MvKGw3hHomvKo1UatRCGauSKoSu/qFq0w6T25Ooo=; b=Oqlz5FYyuNMf/BFVcfkbNymBWcBunFijFIAoaeW8oKlA+O/w+Q1uvruDnJ5J4lsITMIf63 g6zN2uSzq94vd5aWDBohu29bve/AZ8W7iHILuwcUSwqLEq3QP9o+y0F3YyDW8hFdwDolah i61NcEYIGinWcGUpo4++z3bR+rQ5CK/YY/BanxQoBC8HjilEbtTRc/cLLQXF4I8HPRFqX3 umNJVHrgTrnHAlxKaxq498rP1JgmMgriPn2RanorOGFWZGTFEqx9fcYynqc4QG3g/nayWQ h64NPq/n4yEa6fhQZJlqBvvnr5L5wkreUg4LCbAj8j8Xu9blf57i6KJ+/3XKTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700450146; a=rsa-sha256; cv=none; b=I+2+mNUeUDmPpQhkmu0XyDXvXz5Amf77DZ7Abawow0skW8ZoTV/+YlXFhwv2GqLFM+8R/t HHRCyXtSe8OBjDt8eAkgZUNbr93yluPzvXS/29l3r+It7svyvCkpp6unzlm/OUcd10z1ji oMP3muWbtAG3pXezE59F6F7sLB4MM0UMrgw8abnYYcf0QNqs5CdDSctaMqGuzZxJPcErB6 5dCIs2tXBMxpQ25d1O4ql0GISQjXP2AbJqSvNyCA8lMq7qMSbLg+odIyGVH6m9xaQcctES UhtNWxufU09kyQtg6L9gmqBgdOpFAfXNaULS8FyhpXc3sJcsjttp5WXYpB+9Sg== 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 4SYXhL3TfqzbSV; Mon, 20 Nov 2023 03:15:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AK3FkrD004963; Mon, 20 Nov 2023 03:15:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AK3FkTG004960; Mon, 20 Nov 2023 03:15:46 GMT (envelope-from git) Date: Mon, 20 Nov 2023 03:15:46 GMT Message-Id: <202311200315.3AK3FkTG004960@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 7b7975e03269 - main - cdefs: Remove __GNUCLIKE___TYPEOF from cdefs.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7b7975e03269df37fac59d660806b8708ca0e862 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=7b7975e03269df37fac59d660806b8708ca0e862 commit 7b7975e03269df37fac59d660806b8708ca0e862 Author: Warner Losh AuthorDate: 2023-11-20 02:35:53 +0000 Commit: Warner Losh CommitDate: 2023-11-20 02:35:53 +0000 cdefs: Remove __GNUCLIKE___TYPEOF from cdefs.h It's been unused for quite some time, so remove it from sys/cdefs.h. Exp Run PR: 275123 Sponsored by: Netflix --- sys/sys/cdefs.h | 1 - tests/sys/opencrypto/cryptodevh.py | 1 - 2 files changed, 2 deletions(-) diff --git a/sys/sys/cdefs.h b/sys/sys/cdefs.h index 4893ae1662b8..4f2c374a81cb 100644 --- a/sys/sys/cdefs.h +++ b/sys/sys/cdefs.h @@ -82,7 +82,6 @@ #else #define __GNUCLIKE_ASM 2 #endif -#define __GNUCLIKE___TYPEOF 1 #define __GNUCLIKE___SECTION 1 #define __GNUCLIKE_CTOR_SECTION_HANDLING 1 diff --git a/tests/sys/opencrypto/cryptodevh.py b/tests/sys/opencrypto/cryptodevh.py index 292078292833..6cb33c4672e9 100644 --- a/tests/sys/opencrypto/cryptodevh.py +++ b/tests/sys/opencrypto/cryptodevh.py @@ -25,7 +25,6 @@ def __has_builtin(x): return 0 __GNUCLIKE_ASM = 3 __GNUCLIKE_ASM = 2 -__GNUCLIKE___TYPEOF = 1 __GNUCLIKE___SECTION = 1 __GNUCLIKE_CTOR_SECTION_HANDLING = 1 __GNUCLIKE_BUILTIN_CONSTANT_P = 1 From nobody Mon Nov 20 03:15:47 2023 X-Original-To: dev-commits-src-main@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 4SYXhM60pJz51mpm; Mon, 20 Nov 2023 03:15:47 +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 4SYXhM5J9mz4NDQ; Mon, 20 Nov 2023 03:15:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700450147; 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=baQC+W3YBHMqPfV8s/Idsa8Gpv+Ch1rPLqQ2w14unjs=; b=GA1eFG0ppRLzN8w2v1JVhj/MbeMXmrOPFifIfCBG0QdIPoozgXdb62yxEMvRgKUZ6p6FKQ wCZN8K6VdMnF+VpayhE09tEVapkRMVJJmNDpkNrAk7gbt8ki8gfkoYT3SzgTF9N8sm+BQA lbVinnccIYJC8uBQB1R/Nt2+IoroBSIiiY9PCv3RySGdWaUCVwUrqiXi9Q9Gnl9h75J/wH gLtwlN8JSX98Ndg+XVSJdgqrC+MwE8+um6YYQjt59xs8s3KAdxHPOQIg5G4mcocTSAwuFl Eso5rSFiW2yUACVZaQDOcNaragI5fqvFTiybHA58guS8WU4D9lVPoFfyREEQlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700450147; 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=baQC+W3YBHMqPfV8s/Idsa8Gpv+Ch1rPLqQ2w14unjs=; b=DEOWRjqAcCFtqwMzH/W4pzkyzW/LxNSup332T0Lzfb9BMHHTJvXcXaX2BrngfXT80uJTs6 PGNgz3WIapzpybO2W7QzjDKDyGIku7caSYA6fU1ANYo4d44oFa+P5WYO+BXPHshucIwj7H Pew//kjUfYXyggpZh9ffAWBLku+M19gtfAy44fxlqg603vVplOHZI+B1BSrxlDJorQOszn cDNB7HCYbnakIrwtPZMbJ/8kVm2DR/C4168SUfhkpj793AkmEPyB11YZrVkt7xLv/wtDee OpsdMaxG6OR7xROhoX1vKzHTOLzb3DTKqjKt5N6RHFT7dGg4ij+TCxu3//s9xw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700450147; a=rsa-sha256; cv=none; b=X9xRZrfD0greJtjeW80IAbsgtGaGcTPqyZZoQ48jEHKEHnIZAFTn9SanPaZTsjcIjijFLI wL39LxvEpz0oE0Pq0Tw+INSuMJhw39LZwdk48qrVTtYSX03yFeP6ORq6zzwjLq6Ry5m4Wn uVh+19OVTGMl3VxY3NwftqRdTt+itdeZil9mu3oYm1P7D7oQeByVfJp7E0tehdC4V41rZm chWc887jVrld5iramQK+pTVGasMLilBymIA/3x0QFA05iaOo+J+WNIw/Ae6fX0PmZ1HFhP ZnQO9nCcP+AtIeXtmyEZbF6TR6aSFJSfMZrTz1G6gKXbSo94A1fa7dO4BLzzng== 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 4SYXhM4CwGzbkr; Mon, 20 Nov 2023 03:15:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AK3FlsI004999; Mon, 20 Nov 2023 03:15:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AK3FlL1004996; Mon, 20 Nov 2023 03:15:47 GMT (envelope-from git) Date: Mon, 20 Nov 2023 03:15:47 GMT Message-Id: <202311200315.3AK3FlL1004996@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: cc02e98a953f - main - cdefs: Remove __GNUCLIKE_ASM List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cc02e98a953f04760b5ad5b336598a4c5f97e5e2 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=cc02e98a953f04760b5ad5b336598a4c5f97e5e2 commit cc02e98a953f04760b5ad5b336598a4c5f97e5e2 Author: Warner Losh AuthorDate: 2023-11-20 02:36:46 +0000 Commit: Warner Losh CommitDate: 2023-11-20 02:36:46 +0000 cdefs: Remove __GNUCLIKE_ASM It's no longer used in the tree. Exp Run PR: 275123 Sponsored by: Netflix --- sys/sys/cdefs.h | 3 --- tests/sys/opencrypto/cryptodevh.py | 2 -- 2 files changed, 5 deletions(-) diff --git a/sys/sys/cdefs.h b/sys/sys/cdefs.h index 4f2c374a81cb..1829e19639c8 100644 --- a/sys/sys/cdefs.h +++ b/sys/sys/cdefs.h @@ -77,10 +77,7 @@ #if defined(__GNUC__) #if __GNUC__ >= 3 -#define __GNUCLIKE_ASM 3 #define __GNUCLIKE_MATH_BUILTIN_CONSTANTS -#else -#define __GNUCLIKE_ASM 2 #endif #define __GNUCLIKE___SECTION 1 diff --git a/tests/sys/opencrypto/cryptodevh.py b/tests/sys/opencrypto/cryptodevh.py index 6cb33c4672e9..9db7d5d12d9c 100644 --- a/tests/sys/opencrypto/cryptodevh.py +++ b/tests/sys/opencrypto/cryptodevh.py @@ -23,8 +23,6 @@ def __has_include(x): return 0 def __has_builtin(x): return 0 -__GNUCLIKE_ASM = 3 -__GNUCLIKE_ASM = 2 __GNUCLIKE___SECTION = 1 __GNUCLIKE_CTOR_SECTION_HANDLING = 1 __GNUCLIKE_BUILTIN_CONSTANT_P = 1 From nobody Mon Nov 20 03:15:48 2023 X-Original-To: dev-commits-src-main@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 4SYXhN71ccz51n55; Mon, 20 Nov 2023 03:15:48 +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 4SYXhN6BC7z4NGj; Mon, 20 Nov 2023 03:15:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700450148; 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=ct25wFtWUn+9Qj34GqwvN7QATIrNV2p3/aqpHMhHQy8=; b=u7WgJPtQe3g6yHEO4gp4P8DsoDzclujIHKjgDxh6RM+hxQ36AEtc3QEjG3Q8Q1XCgrmcK+ bT2d3rWkQZq5kSo4u2roEdLF5qF5JCTTxUy3LBcAltUqEocsJr/q/pixaeQe2Kvn9ixsh2 GGP7/syk8jcajjrtMqg1BlbUwYtWJ1q8KsFW3AVk9MqEhFt0GZ4nwzZFON6OIDkAJBPtXV +/Dt7imyfSK7omTXbQipbtUlRoDCqclqe/FIU9tgjr1kC9aJc2nmVr+tCfqW893dFj2aFi aNOB4dzwZmZegv1gzC82rgsRDf7qtPKk7VnKAdIRXSG1ElamEdTbMafd+9xLvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700450148; 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=ct25wFtWUn+9Qj34GqwvN7QATIrNV2p3/aqpHMhHQy8=; b=dG0dBL2VTI3Lq7cwnqgJIGE1NtHZu/0dKrRA8Lrs7vsAH72N+KrSd1kkELrzqI02T63xSz eAS9TqwlRQcE52jw78ZRCabY3opCp6KMCVg6fhuZz+3VXVe0JRZzPQ699e8nNYfqXwuMSH T9GRi7rOC8wMdFogTspiqR0RZypHgo+9SgWYSHhv9XulH5j74ocDsLIASMKN3Ji8HRL1oK 0YQ/ha0uY2Nv8d0M1OaGNt2bKVcdsKFx23+THNG5Fr56ZnhxMAKsafeYvnhu/4frbC1x1T 4lFOkjQWTY7XNvl/dvxE1tHnItkHePgaakHaoSqSBXLlUmrAK/X2kIawnokHVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700450148; a=rsa-sha256; cv=none; b=P4tDVtN0bjHHiYdTzVdya47bNxaRUzURZVd5Sgx2+4cVRUE/icvqG8lpRvfvyXX3knG0KK 5SRLI/JY+vnqa25rJVg7YNJFbamVrrbs0T93clRXRUivbTUdTjthdx6LG09zFc7FwwsxgK mTfhWqRAlnwdeIEgU5Zf2QKM/cwtH1pKvb5wGA4UDCGm/hc389OkWh0cCnfDgsMYM87G1p aG5eYHAQ9XcFAEDUsZPResphChz6UZfVydyVbutHqByVKGHsuEsGXtKBHvcKUNvDlge4oq DA58GxuVd9/fFcCM16INyl15P4KsuMSTwR8LOHon4gxQs841nGJDwD+OpVT5/g== 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 4SYXhN5CWkzbSW; Mon, 20 Nov 2023 03:15:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AK3FmF4005035; Mon, 20 Nov 2023 03:15:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AK3FmO3005032; Mon, 20 Nov 2023 03:15:48 GMT (envelope-from git) Date: Mon, 20 Nov 2023 03:15:48 GMT Message-Id: <202311200315.3AK3FmO3005032@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 8ae4bb9398aa - main - cdefs: remove __GNUCLIKE_MATH_BUILTIN_CONSTANTS List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8ae4bb9398aab07bea5b0fe027e74eb2596e2160 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=8ae4bb9398aab07bea5b0fe027e74eb2596e2160 commit 8ae4bb9398aab07bea5b0fe027e74eb2596e2160 Author: Warner Losh AuthorDate: 2023-11-20 02:36:51 +0000 Commit: Warner Losh CommitDate: 2023-11-20 02:36:51 +0000 cdefs: remove __GNUCLIKE_MATH_BUILTIN_CONSTANTS Exp Run PR: 275123 Sponsored by: Netflix --- sys/sys/cdefs.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/sys/sys/cdefs.h b/sys/sys/cdefs.h index 1829e19639c8..549a51a00893 100644 --- a/sys/sys/cdefs.h +++ b/sys/sys/cdefs.h @@ -76,9 +76,6 @@ #if defined(__GNUC__) -#if __GNUC__ >= 3 -#define __GNUCLIKE_MATH_BUILTIN_CONSTANTS -#endif #define __GNUCLIKE___SECTION 1 #define __GNUCLIKE_CTOR_SECTION_HANDLING 1 From nobody Mon Nov 20 03:57:56 2023 X-Original-To: dev-commits-src-main@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 4SYYd04tZBz51qmv; Mon, 20 Nov 2023 03:57:56 +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 4SYYd04RLYz4TW8; Mon, 20 Nov 2023 03:57:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700452676; 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=TjnxrX6hf1jce6YoQ+C9BFaXWvxngKxRkoRmZ0QhVZ4=; b=hGf/K+RNhWvq0Lk27KNMWAm5DnYQN6tfzvrl71ZYWruwrKfgL/il4tv36shwyAB59jq4kq zUjDAZVqgd9EJOdcNEOgTBRmzzFzAcCjW8XtepXKWcoPaSOrbJ8foVBs8Gtfvg5IvmIvnq 36q8Jm6TpnTd/GxdXNODIV4pBWdTjCuu87n4us8z7Sj8V0woSuj2GIFdZsrBiQecFUE0x4 CbSs/KsnPS4BkM69lZuDr/3SnSwOUgMMVSYPHJFht2Ri6Hif1HKdgV3/Bnr6rMRhbS0VMi 6tI11EjPLXbO+/BEeleIHeAzEWo2wipQP35dXsn2PqalCWuR6XdFszB9abT3xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700452676; 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=TjnxrX6hf1jce6YoQ+C9BFaXWvxngKxRkoRmZ0QhVZ4=; b=ryCwld/yVHrcsUqReZVcJtEi/M1fcZHpvLocLSprfB1bP6k7pTvqSMBPKJyP0+ovI7HGfu y7ipOAVHY/zZUUcazM/zWBS5r1KdroCDZ7Ul4bjUWczIHJQk2hqYuZ9PEi3lVnCWlL5c+k pJEzXkj3Ak8+3zWVE78nJ7wLzTHe1cy/Kpgr9MJ7yv/LhwKI8CpfopPXtN9Id+uVp+lsXZ njei5lO/oVv8D9z2xDwapcJ4DUHrUPvNlvHvpPAN2L1N7oUG1X+18VHbeT3x0wK+X4E4mq pON+l/JbUAQ5gbNF8sMmm3tQse1UzIERcPzhygV7lWpW2mvXS2sjCwsfhxQwEA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700452676; a=rsa-sha256; cv=none; b=RxGElqYEphjlY0qQpv6fjMbHHytFxwUJr9L/MYYRgDTUoGPk+pr3/gROEJCOhEfPkdXDER EUMVyHFwV27UnGWeCQdfu0ljG7ukWO3qX7d+EEp06LQ21fOdIZ4HTCvROYje7evoiXsDTP Nlpe1nifimeadriqwuLhzT2/kPYg/Aiq7IcSTPPpZ7boODxdGEjUO3uiyh9iaQlzEuscVe agACTCz4Bst0MQ1Yy18N/j6ObgUxSQswmsZVe+fwlZM/jmKXX6aBgzP6Cbipy4FNtHHDR9 79t/aWd3YW63xPeCEphGGOLKcb/07Efe5Fy1LoZ6/MEH3c8BCBIS/LsGTm9Fsg== 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 4SYYd03VctzcZp; Mon, 20 Nov 2023 03:57:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AK3vuSh071704; Mon, 20 Nov 2023 03:57:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AK3vujk071701; Mon, 20 Nov 2023 03:57:56 GMT (envelope-from git) Date: Mon, 20 Nov 2023 03:57:56 GMT Message-Id: <202311200357.3AK3vujk071701@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 1b681154f5e9 - main - math: Move to const instead of __const List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1b681154f5e9c212822d7bfa6e3c399bb36bed47 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=1b681154f5e9c212822d7bfa6e3c399bb36bed47 commit 1b681154f5e9c212822d7bfa6e3c399bb36bed47 Author: Warner Losh AuthorDate: 2023-11-20 03:48:30 +0000 Commit: Warner Losh CommitDate: 2023-11-20 03:55:57 +0000 math: Move to const instead of __const There's no reason to use the __const construct here. This is a left-over from supporting K&R and ANSI compilers in the original Sun msun. All other K&R crutches have been removed. Remove these as well. There's no semantic difference. And there's already several others in math.h. Sponsored by: Netflix --- lib/msun/src/math.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/msun/src/math.h b/lib/msun/src/math.h index 8e72beb757f8..f1acfda8d7e8 100644 --- a/lib/msun/src/math.h +++ b/lib/msun/src/math.h @@ -183,21 +183,21 @@ int __signbitf(float) __pure2; int __signbitl(long double) __pure2; static __inline int -__inline_isnan(__const double __x) +__inline_isnan(const double __x) { return (__x != __x); } static __inline int -__inline_isnanf(__const float __x) +__inline_isnanf(const float __x) { return (__x != __x); } static __inline int -__inline_isnanl(__const long double __x) +__inline_isnanl(const long double __x) { return (__x != __x); From nobody Mon Nov 20 05:58:34 2023 X-Original-To: dev-commits-src-main@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 4SYcJB6wV2z51xgF; Mon, 20 Nov 2023 05:58:34 +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 4SYcJB6Mtqz4fFl; Mon, 20 Nov 2023 05:58:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700459914; 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=gL6inpijVOFYa7836CRJMmlGwgzSc9mTBqJqLsgDgRg=; b=ODPrfpr1RoeckzUdq8DxY31pHkZsLqkKJowXSodkH/lRiMcmIbQh9hBtIWHVsqWmow8Or/ HFxYOYaE57St3NIBV5jpnqIhC1Q4RpMRdA5AHPHnU4HQAY/wYPXeamRnRRNsPNIUu80mLb EP0QoENvM5eFHy9UcpCK+6A3ljfv+xkeHPe7lVUk0pPgfSOmBpeJhbGqiTnPvIbCYkEob2 xYxawqRrAASzUEgZRARBqRSTRbBTOCDgdtGX3sQH6eTYTkZxpSGEu5G9lSleaRpuVFX4Hr l8VLh5AoIcU3MdmX9QNx7Pbn4In17DTMv1CqPrL8GZZsG7wY9cPZzACYlSY3Vg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700459914; 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=gL6inpijVOFYa7836CRJMmlGwgzSc9mTBqJqLsgDgRg=; b=eJ38vkZP3KPhHwAlV3GHGPNkXtvXnQ07t2uvQP7EsKEttrMNfGEC44Y90Z0SWBkJlyWrSW xor2eoXEQ8zrdGufr72Od/pGvc4ejFY1lH2jXhNAK176RTfbPjSlF5wQ+8L8mVfO6VjGna pgR3b8d+8l6Zh11qocny6nz9tOuWSNb4gKNSNubhqKCWKHUYrzaZn0807hTQAQXuwp2HLC 2c07WUbqC+d6flHIXZzYryeAn21fQPmrfbTomBDRXg3rAc/WY5lM8m43/AjAo9qxbdhVwI pSQaIsRJcUIZD7Hgb4bUnhxZgkF1Js3jntNsEhccQTNNs4F3NWUnC/p0z0HrJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700459914; a=rsa-sha256; cv=none; b=mduwhoHjsUrNb0ley7IJTtHJuVnWZia/IP6zqBwHPjpZ9iLMNMEh7WvP+SqQhSpn5n7+9f AS1CFvizkOeh7bA57srWLMRS5CZtLszIKq2wkxxwGgM3v7tMC6KIOUFGXJPEZr9ZVkU8MX Bq69Yi7t73HtzxPATYzMT4bLaQcBSHsRo9jkFJbXWlbyNKZy7hm3tPBPZ83JluJkv5GHGn hrN2vTe7X2IpbE1VBGrSpqTemmWrx3CyWL+WBIdbn8WYFvf9MJhm+ERBYSBabi5wFRu3M/ oLxjZACX3OWFhsiEKCYkBvus4aYodASghuLzF/nJ/KSBU1jlRTDtZiy1O0luUw== 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 4SYcJB5RYSzgpX; Mon, 20 Nov 2023 05:58:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AK5wYx6072260; Mon, 20 Nov 2023 05:58:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AK5wYhT072257; Mon, 20 Nov 2023 05:58:34 GMT (envelope-from git) Date: Mon, 20 Nov 2023 05:58:34 GMT Message-Id: <202311200558.3AK5wYhT072257@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mateusz Guzik Subject: git: e0d0f0930ee2 - main - pseudofs: fix off by one in hash iteration in pfs_purge List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e0d0f0930ee22af7bf38d28d8590d4e6c822871d Auto-Submitted: auto-generated The branch main has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=e0d0f0930ee22af7bf38d28d8590d4e6c822871d commit e0d0f0930ee22af7bf38d28d8590d4e6c822871d Author: Alvin Chen AuthorDate: 2023-11-20 05:55:35 +0000 Commit: Mateusz Guzik CommitDate: 2023-11-20 05:57:25 +0000 pseudofs: fix off by one in hash iteration in pfs_purge Sponsored by: Dell Technologies Differential Revision: https://reviews.freebsd.org/D42628 --- sys/fs/pseudofs/pseudofs_vncache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/fs/pseudofs/pseudofs_vncache.c b/sys/fs/pseudofs/pseudofs_vncache.c index 33023dd0d08f..e58aced7f81b 100644 --- a/sys/fs/pseudofs/pseudofs_vncache.c +++ b/sys/fs/pseudofs/pseudofs_vncache.c @@ -306,7 +306,7 @@ pfs_purge(struct pfs_node *pn) mtx_lock(&pfs_vncache_mutex); restart: removed = 0; - for (i = 0; i < pfs_vncache_hash; i++) { + for (i = 0; i <= pfs_vncache_hash; i++) { restart_chain: SLIST_FOREACH(pvd, &pfs_vncache_hashtbl[i], pvd_hash) { if (pn != NULL && pvd->pvd_pn != pn) From nobody Mon Nov 20 11:27:10 2023 X-Original-To: dev-commits-src-main@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 4SYlbL5Xxvz518CT; Mon, 20 Nov 2023 11:27:10 +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 4SYlbL4jJNz3VX1; Mon, 20 Nov 2023 11:27:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700479630; 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=0J+mJtmhIyhNhB7oGb5m8IpGGJkBxJo3aLGtKPFlDTY=; b=NH6MmqcWEf8agB0PS+mF/YgIKfdh9DRhWlxmqtS+eawbK84h1e53alGlsUU72RM587OYT0 xkrGe8Vlr2M/L5KfFJr0ciozFjUMMb0AlQOyYZLH/EK+j8erlCNNhTIHdgBseQiaI2e+fS XvKQzebf93xjPd3r8YrtWeixaiMjBCMyquZiHdcSf789ihHACLrS8lWcD33nlZPM9eefJk HMmcpc+rTZ+HJKpLZoBnKUrhI9J9bRXriCw/QQngwo+VPhpNxl/dmXYT5+Mhrds77vQEyf ic0rhdO1J3UfKm0WupvqBVBGWqU1uL2A7rUV6W3TtD+Hkgn/rhXmKGTdiRVhlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700479630; 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=0J+mJtmhIyhNhB7oGb5m8IpGGJkBxJo3aLGtKPFlDTY=; b=aqa8kP4DfXsaiA+Y9Cd9qJbod9hy8qWYn7VOYh6d3u9jbe9LA5eaNOu6Fgvxj/PnT8idqL ZrLMQ7MnhSLJuqjEHYo8TkHaUmdsVMhhRkorQ4ZZkv0eJt4aXG5rpevsZOQOoCaa8VtAwj Es0wBcD+Xili4idsYCo1d3VmLX2GtMoKIVGbZ6Aks17KXaBuEn1fWTU4QRf3llV3tdrKHd cSPwR1uV+PaePHTauciNeQefXhTqx3xZvC8M8192zHxDee8nkes+bJCoiRA8i03d1/p1L0 qMM0kHAn0TA4JRXSkcYIEX6X1uFZG2fV2wxH26yvcZ5R8shE9Y899minBNZeFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700479630; a=rsa-sha256; cv=none; b=GFiIDIKFB5B1ILlQwK0/YxYuw8h1VexwE79ViyFPL6G0yBnOmkklQF/0KwfbcIFWZxEYw0 QrbNKPHAXs+ASgGxx1W5Aut2JiTlnK3yAHzoH3dZl1hvH+d6gDG/s6ruu4mdOdTzJeK08S AWmYd4aEecXsF84YnHlO06Z9WQAg0AzyMwwrNho3mXOz5y6MMdpzsu2UFhPSq2ixrOWxMT 7zcsTNZjeUmhCQPF0wesL/qXlXQxLRN/VBYr8gDMXF0pO8besk6h5+u5p3RviVDIJPENoH hGrsM3F3oUxCPQlkCyJsYW8QQfSm3OcgQad/HWMJ4oJBchOUlpW5IcSeYQUMeA== 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 4SYlbL3m1rzqBS; Mon, 20 Nov 2023 11:27:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKBRAiU022354; Mon, 20 Nov 2023 11:27:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKBRAHv022351; Mon, 20 Nov 2023 11:27:10 GMT (envelope-from git) Date: Mon, 20 Nov 2023 11:27:10 GMT Message-Id: <202311201127.3AKBRAHv022351@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 806e4e3273be - main - ldconfig: filter out non-existing directories from default path List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 806e4e3273bee2e3a12ffc2e74db5c912fbd7aa9 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=806e4e3273bee2e3a12ffc2e74db5c912fbd7aa9 commit 806e4e3273bee2e3a12ffc2e74db5c912fbd7aa9 Author: Konstantin Belousov AuthorDate: 2023-11-16 05:38:00 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-20 11:26:00 +0000 ldconfig: filter out non-existing directories from default path This is done only for ld-elf32.so.1, where /lib32 is kept in the path due to the way STANDARD_LIBRARY_PATH is defined in rtld_paths.h. This change fixes innocent warning appearing after 99132daf6f70cb0cc969c555d3612547fa3cf1db Reviewed by: dim, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42626 --- libexec/rc/rc.d/ldconfig | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/ldconfig b/libexec/rc/rc.d/ldconfig index ecbbca210ea0..ed3484017d84 100755 --- a/libexec/rc/rc.d/ldconfig +++ b/libexec/rc/rc.d/ldconfig @@ -53,7 +53,11 @@ ldconfig_start() done _LDC="" if [ -x /libexec/ld-elf32.so.1 ]; then - _LDC=$(/libexec/ld-elf32.so.1 -v | sed -n -e '/^Default lib path /s///p' | tr : ' ') + for x in $(/libexec/ld-elf32.so.1 -v | sed -n -e '/^Default lib path /s///p' | tr : ' '); do + if [ -d "${x}" ]; then + _LDC="${_LDC} ${x}" + fi + done fi for i in ${ldconfig32_paths}; do if [ -r "${i}" ]; then From nobody Mon Nov 20 13:05:13 2023 X-Original-To: dev-commits-src-main@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 4SYnmT6bSgz51GTD; Mon, 20 Nov 2023 13:05:13 +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 4SYnmT5pFDz3cwJ; Mon, 20 Nov 2023 13:05:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700485513; 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=dZXT/lAIoVWxRSPgWnNEdgWo/wTXZ9/Eu2fwu+nYUiM=; b=oNBp79sWcOXB44smAobcFJjEZarmfs6bpN3rl8ZAUAa3e/rRC7EdupXQSO5ZuqIlOtJYbj UV1+mgNkEHg3i6thmxi4J488QEwNRSoIBHAjqq3NqYjsfwxkHdfe69nD5qxVcCQrEGlPzA LezC2RDCZTFuqQ80EftwDZv6opVlPDyda0w72RqMU0wzr7qfgJVPbXYGAI+Ot89lIAxuqd 2qwX02BQUBia/jdsLRNXyqEihvPbA5dJ9LRfnKPKB5UosLRIxkhdLwl+NJFWsPjL56/Ham qQmnCcdxNo7Xljw/5ouwebgRwOEx0lV9Z0MSUqfWkiRFU882WwuJ+GUw0PswlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700485513; 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=dZXT/lAIoVWxRSPgWnNEdgWo/wTXZ9/Eu2fwu+nYUiM=; b=bxT1k4epHfMw7QAdafsZo/vBW+FG5MNZgm/cgvzXPmlxYK1CS3fEbnTDEiU6bvtjRDW7b+ TnMp0Jmur9nvqRmUvVcWTF0qYTvNO1p3tZ8ujuE2b2eDZp4IihA3WCa1Fjq8M2O1IdhlG4 X4FE2YdTn/3rN77ZfYqdQVUoHt8yYXxXu2i1mPEmUd+9zsQdYxbrkK8jUWk9L6kXwA+Bhd 5dXaQiDrCR1e8VnFzmfXiFo0bIgFsy8Ym2P3DumuwwH2N10sgsxf2CqXgEea+NDmjRaOf5 UX4ZjaZ7VALHD/BALY1fXgUyBr6KE6ZMK3fjjV7r7J5hbvj69sB+bA8VWYKxGA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700485513; a=rsa-sha256; cv=none; b=BLrRPeeN5DVWa2aMQylYgD/2OhUfTIfdN06JsiZudYJfxzE2r+GZjA64QHhAKxw/BAFfMs WXc64vNRZk2oIVB+qDEm2usJyftM3ZfleF4r4mnCl4a4wk+Iuwf5BNRbI/w74ebHnHGNK9 UZTrawt1tDkCe352Otr7smuTpEc7jk2bvv2FR/ljI0PAe0zB8pRtPqcXGGYYvJBy54UE2B hjNgcLSOyU8OjdX4jDtRef/Lfg3KqfsRUIXmfFeuFCEfZPlIvwQWtxcTuIOpxjgHvJOqtk dKlgNs5LSm7RJZzbopF9EnSr8uuqDDTH/fIcz4KXtgwWfe7kHDTxVWCD+YpBpg== 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 4SYnmT4tDQzsy8; Mon, 20 Nov 2023 13:05:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKD5DJj089887; Mon, 20 Nov 2023 13:05:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKD5Ddl089884; Mon, 20 Nov 2023 13:05:13 GMT (envelope-from git) Date: Mon, 20 Nov 2023 13:05:13 GMT Message-Id: <202311201305.3AKD5Ddl089884@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 7e1affa242ca - main - pf.conf.5: revise divert-to and divert-reply List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7e1affa242ca83710eb64e2c6184263fbea3deb7 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=7e1affa242ca83710eb64e2c6184263fbea3deb7 commit 7e1affa242ca83710eb64e2c6184263fbea3deb7 Author: Igor Ostapenko AuthorDate: 2023-11-17 20:01:17 +0000 Commit: Kristof Provost CommitDate: 2023-11-20 11:30:18 +0000 pf.conf.5: revise divert-to and divert-reply --- share/man/man5/pf.conf.5 | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5 index b241e5173ef0..3193c18760c8 100644 --- a/share/man/man5/pf.conf.5 +++ b/share/man/man5/pf.conf.5 @@ -27,7 +27,7 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd October 27, 2023 +.Dd November 17, 2023 .Dt PF.CONF 5 .Os .Sh NAME @@ -2151,19 +2151,22 @@ Only effective before the route lookup happened, i.e. when filtering inbound. .It Xo Ar divert-to Aq Ar host .Ar port Aq Ar port .Xc -Used to redirect packets to a local socket bound to -.Ar host -and +Used to +.Xr divert 4 +packets to the given divert .Ar port . -The packets will not be modified, so -.Xr getsockname 2 -on the socket will return the original destination address of the packet. +Historically +.Ox pf has another meaning for this, and +.Fx pf uses +this syntax to support +.Xr divert 4 instead. Hence, +.Ar host +has no meaning and can be set to anything like 127.0.0.1. +If a packet is re-injected and does not change direction then it will not be +re-diverted. .It Ar divert-reply -Used to receive replies for sockets that are bound to addresses -which are not local to the machine. -See -.Xr setsockopt 2 -for information on how to bind these sockets. +It has no meaning in +.Fx pf . .It Ar probability Aq Ar number A probability attribute can be attached to a rule, with a value set between 0 and 1, bounds not included. From nobody Mon Nov 20 13:05:14 2023 X-Original-To: dev-commits-src-main@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 4SYnmW0hJJz51GTM; Mon, 20 Nov 2023 13:05:15 +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 4SYnmW0064z3crJ; Mon, 20 Nov 2023 13:05:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700485515; 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=x2zmzCaiD3CmL3MDGEtsILP0Gf2AWNuEa2A0Zw/UdwI=; b=kYTdB9zckBbmOFXT00rkWCLWo47ZOKGMOQTV8Y6NPRNAbaPNBMF4jDxnt9C163EL9R3kK6 DUtU2SJzvKEVmc+vbfxZofFv5s8BY9wmRtDwSJJNv3kfevPObzhCcvSX7vENjSzzutAdmy AP9kZ3Bk0DUvU1/i+6prfCjKQKHKLeZN596f3tOyWTLjJKi6LMh+Bm11ceEhJuvdxHcTGM mhpLOg8OAnqr6a+qURme+6JD44Q/tDeSP4mWCzExqvEuPyv1x5JKs68I6R5JP8Zaqg/iaM Jj5oC6F1pP/xlTIUOB6+OXLAxYBaq1gRO2TR3si1NRmE8sVHuyfunFwb5+I1iA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700485515; 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=x2zmzCaiD3CmL3MDGEtsILP0Gf2AWNuEa2A0Zw/UdwI=; b=bcsgnsP00Jt2FingA4ZBEX2vvLyAbAiiM7DjMepM7ZiQJ6oD6L559WH/NY115qFcj/la7i t9ZoX/OvFf6cXG+pDhi4qg04rPSEw7DB5CVVzb9DOixS82qrSSODkgr2TL6uoyHLr7AAcc NVIPvrZV0ZDqTGJClwNck8n822IxTGlOULrlPRLCiaNEL4rj0ZolzMtdXeOl+cT8XK6IZ4 WnqslL9O+we7ciZApoFXVcJtq16HYA4T6oiAIlWHqUQCbrSuvMkjwAyyS8eyNhPMdrX6g0 1ZGjt2gQ3ga5m/pytXUxXg97Nv27znjr/2Iv4LDg7qp7RBpfT4A5o3P4N3HGEA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700485515; a=rsa-sha256; cv=none; b=NGB+QpI131lufBqGEitVfXGNZjSjN+Z8lCowfTN+7p52zDCB4h5LdsmaWd3HqHQnRybnET BNvYTlHv0jpP/baW0cRGM66OiVro1ajSMlXCF/gfrs9u/qoZ88WPMSYGc2Ird7kIu5lzwt UPKCZoQi42iF9amfLITiaYKBw/D0tIvtpQFtBRko2Xz1Zuuhh3T6gJ4ELHg6Vx4DaTHIxd h8FXzMu+bU23CDB23F0pcUkBRETFWhUZXae7esORkkT10cA/d1TnsfKxV83VxHHHsjUY98 GI8jdTs+iwAM2xNEWUhFyhs4YBlfV6S/m3OfZ4zfn8y5bTGvaWaS0YjThEtzig== 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 4SYnmV5wLPzt69; Mon, 20 Nov 2023 13:05:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKD5EPb089941; Mon, 20 Nov 2023 13:05:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKD5Ev8089938; Mon, 20 Nov 2023 13:05:14 GMT (envelope-from git) Date: Mon, 20 Nov 2023 13:05:14 GMT Message-Id: <202311201305.3AKD5Ev8089938@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: b453e3f75543 - main - pf tests: fix name and description of divert-to cases List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b453e3f7554333a31496b9c748e6130017d3832f Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=b453e3f7554333a31496b9c748e6130017d3832f commit b453e3f7554333a31496b9c748e6130017d3832f Author: Igor Ostapenko AuthorDate: 2023-11-19 12:23:44 +0000 Commit: Kristof Provost CommitDate: 2023-11-20 11:30:18 +0000 pf tests: fix name and description of divert-to cases Reflect the correct order of events for dummynet+ipdivert. --- tests/sys/netpfil/pf/divert-to.sh | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/tests/sys/netpfil/pf/divert-to.sh b/tests/sys/netpfil/pf/divert-to.sh index 965464b35810..72adbeedb007 100644 --- a/tests/sys/netpfil/pf/divert-to.sh +++ b/tests/sys/netpfil/pf/divert-to.sh @@ -405,13 +405,13 @@ ipfwon_in_div_in_fwd_out_div_out_cleanup() pft_cleanup } -atf_test_case "ipfwoff_in_dn_in_div_in_out_dn_out_div_out" "cleanup" -ipfwoff_in_dn_in_div_in_out_dn_out_div_out_head() +atf_test_case "ipfwoff_in_dn_in_div_in_out_div_out_dn_out" "cleanup" +ipfwoff_in_dn_in_div_in_out_div_out_dn_out_head() { - atf_set descr 'Test inbound > delayed+diverted > outbound > delayed+diverted > outbound | network terminated' + atf_set descr 'Test inbound > delayed+diverted > outbound > diverted+delayed > outbound | network terminated' atf_set require.user root } -ipfwoff_in_dn_in_div_in_out_dn_out_div_out_body() +ipfwoff_in_dn_in_div_in_out_div_out_dn_out_body() { local ipfwon @@ -489,22 +489,22 @@ ipfwoff_in_dn_in_div_in_out_dn_out_div_out_body() # } } -ipfwoff_in_dn_in_div_in_out_dn_out_div_out_cleanup() +ipfwoff_in_dn_in_div_in_out_div_out_dn_out_cleanup() { pft_cleanup } -atf_test_case "ipfwon_in_dn_in_div_in_out_dn_out_div_out" "cleanup" -ipfwon_in_dn_in_div_in_out_dn_out_div_out_head() +atf_test_case "ipfwon_in_dn_in_div_in_out_div_out_dn_out" "cleanup" +ipfwon_in_dn_in_div_in_out_div_out_dn_out_head() { - atf_set descr 'Test inbound > delayed+diverted > outbound > delayed+diverted > outbound | network terminated, with ipfw enabled' + atf_set descr 'Test inbound > delayed+diverted > outbound > diverted+delayed > outbound | network terminated, with ipfw enabled' atf_set require.user root } -ipfwon_in_dn_in_div_in_out_dn_out_div_out_body() +ipfwon_in_dn_in_div_in_out_div_out_dn_out_body() { - ipfwoff_in_dn_in_div_in_out_dn_out_div_out_body "ipfwon" + ipfwoff_in_dn_in_div_in_out_div_out_dn_out_body "ipfwon" } -ipfwon_in_dn_in_div_in_out_dn_out_div_out_cleanup() +ipfwon_in_dn_in_div_in_out_div_out_dn_out_cleanup() { pft_cleanup } @@ -524,6 +524,6 @@ atf_init_test_cases() atf_add_test_case "ipfwoff_in_div_in_fwd_out_div_out" atf_add_test_case "ipfwon_in_div_in_fwd_out_div_out" - atf_add_test_case "ipfwoff_in_dn_in_div_in_out_dn_out_div_out" - atf_add_test_case "ipfwon_in_dn_in_div_in_out_dn_out_div_out" + atf_add_test_case "ipfwoff_in_dn_in_div_in_out_div_out_dn_out" + atf_add_test_case "ipfwon_in_dn_in_div_in_out_div_out_dn_out" } From nobody Mon Nov 20 15:36:18 2023 X-Original-To: dev-commits-src-main@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 4SYs760tRDz51S91; Mon, 20 Nov 2023 15:36:34 +0000 (UTC) (envelope-from ctuffli@gmail.com) Received: from mail-oa1-f47.google.com (mail-oa1-f47.google.com [209.85.160.47]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SYs75235Nz4Ryc; Mon, 20 Nov 2023 15:36:33 +0000 (UTC) (envelope-from ctuffli@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of ctuffli@gmail.com designates 209.85.160.47 as permitted sender) smtp.mailfrom=ctuffli@gmail.com; dmarc=none Received: by mail-oa1-f47.google.com with SMTP id 586e51a60fabf-1f5eac85e0eso671649fac.1; Mon, 20 Nov 2023 07:36:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700494592; x=1701099392; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LhhUnoCeID+7E7SJNYHk5yV6X7BOgtBdTWSF6Gf+dy8=; b=JYuawy9hITviDalsvko0DCwT3M9x+qojfdN3cAH7jDD/D22gJpb551zKc7bVJGCXFS M4ZnWBvx+ycfvkWktOkaYIxiRL3SxZE7s4kA7KWu1mRuBlq8DyRyNT3HonqgseTgycPL mjYVjR1d9cOra/NGgOgD8txvseiQvXQVIEUpp98BmcwkTJ9R7s4yRRBtmB1HZ3zMCFRe X/oSxKTRK+eHeQ57iGE9o+mQuiibOQeLOAaCpklAhq/IUp4slAEal1JRj46p08GAmF2i aqBX1kefH+LfCMydUeHUxOpntUpSK9gdzfHLHMyrRkGJpoZvOh7iZPgwWeT6ehWSVuzI /MpQ== X-Gm-Message-State: AOJu0Yz3u028wL2NBgx4VEu8itDV0MNtcS315vwv22a8wCANxT1+uVte vosZh9os/m5u99LkTI5YpzktyxrJ9LI= X-Google-Smtp-Source: AGHT+IFH0OnlPkEJcj+OaClmAxsUeMqL1wl9pDD034SLKyUeB8xV+kgSSMY86LY67SrLIsZG8AQ9Mw== X-Received: by 2002:a05:6870:798c:b0:1f9:602e:7b08 with SMTP id he12-20020a056870798c00b001f9602e7b08mr231790oab.11.1700494590268; Mon, 20 Nov 2023 07:36:30 -0800 (PST) Received: from mail-oa1-f45.google.com (mail-oa1-f45.google.com. [209.85.160.45]) by smtp.gmail.com with ESMTPSA id e2-20020a056870450200b001f4d34ae2ecsm1359433oao.23.2023.11.20.07.36.30 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 20 Nov 2023 07:36:30 -0800 (PST) Received: by mail-oa1-f45.google.com with SMTP id 586e51a60fabf-1ea98ad294cso2031647fac.3; Mon, 20 Nov 2023 07:36:30 -0800 (PST) X-Received: by 2002:a05:6871:2b16:b0:1e9:b4d1:9bed with SMTP id dr22-20020a0568712b1600b001e9b4d19bedmr7005594oac.40.1700494589790; Mon, 20 Nov 2023 07:36:29 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311180432.3AI4W3YM029176@gitrepo.freebsd.org> <71162369-66f6-4f08-9ba7-e87236151fee@aetern.org> In-Reply-To: <71162369-66f6-4f08-9ba7-e87236151fee@aetern.org> From: Chuck Tuffli Date: Mon, 20 Nov 2023 07:36:18 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: git: 34a6ad848fbf - main - nvme: Don't use version to listen for events for ns and fw changes To: Yuri Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-2.96 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-0.997]; NEURAL_HAM_SHORT(-0.96)[-0.960]; FORGED_SENDER(0.30)[chuck@freebsd.org,ctuffli@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[text/plain]; RCVD_IN_DNSWL_NONE(0.00)[209.85.160.45:received]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.160.47:from]; FREEMAIL_ENVFROM(0.00)[gmail.com]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; RCPT_COUNT_FIVE(0.00)[5]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_HAS_DN(0.00)[]; RCVD_TLS_LAST(0.00)[]; TO_DN_SOME(0.00)[]; DMARC_NA(0.00)[freebsd.org]; FROM_NEQ_ENVFROM(0.00)[chuck@freebsd.org,ctuffli@gmail.com] X-Rspamd-Queue-Id: 4SYs75235Nz4Ryc X-Spamd-Bar: -- On Fri, Nov 17, 2023 at 8:53=E2=80=AFPM Yuri wrote: > > Warner Losh wrote: > > The branch main has been updated by imp: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3D34a6ad848fbf471773a430a7= e457bf49816e756e > > > > commit 34a6ad848fbf471773a430a7e457bf49816e756e > > Author: Warner Losh > > AuthorDate: 2023-11-18 04:24:00 +0000 > > Commit: Warner Losh > > CommitDate: 2023-11-18 04:25:57 +0000 > > > > nvme: Don't use version to listen for events for ns and fw changes ... > > if (ctrlr->cdata.ver >=3D NVME_REV(1, 2)) > > It seems to be under version check still? Or am I misreading the commit > message? > > > - ctrlr->async_event_config |=3D NVME_ASYNC_EVENT_NS_ATTRIB= UTE | > > - NVME_ASYNC_EVENT_FW_ACTIVATE; > > + ctrlr->async_event_config |=3D > > + ctrlr->cdata.oaes & (NVME_ASYNC_EVENT_NS_ATTRIBUTE | > > + NVME_ASYNC_EVENT_FW_ACTIVATE); I think this logic is correct as the Namespace and Firmware events didn't exist prior to version 1.2. The significant change here (irrespective of the commit message wording) is masking these events if the device doesn't support them. That is, their respective bit in OAES (aka Optional Async Events Supported) will be zero if not supported and then won't be added to the async_event_config. Perhaps the intent was "Don't _only_ use the version to listen for events, but also check they are supported". My $.02 --chuck From nobody Mon Nov 20 16:38:18 2023 X-Original-To: dev-commits-src-main@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 4SYtVL451kz51Wvm; Mon, 20 Nov 2023 16:38:18 +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 4SYtVL3bzKz4ZjV; Mon, 20 Nov 2023 16:38:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700498298; 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=TOXFm1OGn+ZjiwYpDKUjpX1QYH0W8fN8QgyYR+UfW0I=; b=pCAGsYqr63kJ7yJzMMQBXLcq16NqpNKBGfQ0S9IdUgIb26IfCq9T+1BxZNZ3bZi+CE10D2 UihBaSIXhQ2PfN/Vm2XIoNrR2r6suEJCFASAgu/Zgtje0lV4WhOf3N4OBMWtGNQeY9etLj 5bVViFFmtBm569TKANvS6qFBA2ubjKNbtl1oINPLYEdb6rJ3XwyxWRgKMaEDcBFWRj42ft CAfSjr92xwl8aoq4hprtE7iEFb/rKHoNdISrL6nb/Jt9IB4cv5WZg1TcSSnN5hEmrtsIqb g7GOf9Q73L1q/Sf03UE0BDJDw7boBS7xhzp70jzKl2kN0NDDbj6884eIxuqd1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700498298; 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=TOXFm1OGn+ZjiwYpDKUjpX1QYH0W8fN8QgyYR+UfW0I=; b=xmZVgP2GBACi/QS/DSjK6N9+hWunHac4bfGZsEZ85z2A/cRZJDTbpSF85zRLCYFmdwoJxg tZ9h/vhUpqJp0fLzp3j1VHQ0fw3USulKaqWexdPbeZn+VEeYtRvSYWivphUyRNJw74sSVx k6d8nMdktSeKdAH1sUncOsB4PcXgu1CaiPYPZivlE+I9dTcF/zZ7aouDJzR7Wu/fdCfN9O K0kT+5u2OzMsD1ZyegfsCeWluORO2KdoumG8Ryz4Bv1d0e5HHuqeCRVynG24vgtLxsoO4u 06Kn7LrbuKYIlunsimBid/qwuyIVOIrPy7QMa+FowQuxbbo4xcF77vw0u92LFw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700498298; a=rsa-sha256; cv=none; b=bZOyczuMpN3r99FFyDIcbdkop6Fll/FAdBl9NucAO+Nsx6tah7uAaBtnFdA+jyUzd5Cez+ n3Hejv1P+87ztOThk+Y71WJF30jgMnbDKFLYYOqvnjy4VxxUds9ohslOnEcvaSLkC/rZT8 kYP+9yUgTmteHySfPYCe/UN2ND/tDZkrwNch5FZnJZ2fOu08tYOJjQL9jZrY/DtMta4fha 7lDLzwn6HIC+4a9Cp8jecvUo/KU33eDX14ajFHcR5zxLVxNN9D+QCX70RRR/NTpuJA023Q pQElBhocX6drx4NFkrrxivCLs0AgtbIsXTOLe4THOjwP5rpnVGbr7uvKFARtFA== 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 4SYtVL2XjKzyqH; Mon, 20 Nov 2023 16:38:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKGcIIu041272; Mon, 20 Nov 2023 16:38:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKGcI9W041269; Mon, 20 Nov 2023 16:38:18 GMT (envelope-from git) Date: Mon, 20 Nov 2023 16:38:18 GMT Message-Id: <202311201638.3AKGcI9W041269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "R. Christian McDonald" Subject: git: 34de1d507b53 - main - committers-src: Add rcm as a src committer and kp as mentor List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rcm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 34de1d507b53e160f6478da8acfecc7ab870d9a8 Auto-Submitted: auto-generated The branch main has been updated by rcm: URL: https://cgit.FreeBSD.org/src/commit/?id=34de1d507b53e160f6478da8acfecc7ab870d9a8 commit 34de1d507b53e160f6478da8acfecc7ab870d9a8 Author: R. Christian McDonald AuthorDate: 2023-11-20 14:43:23 +0000 Commit: R. Christian McDonald CommitDate: 2023-11-20 16:23:07 +0000 committers-src: Add rcm as a src committer and kp as mentor Approved by: kp --- share/misc/committers-src.dot | 2 ++ 1 file changed, 2 insertions(+) diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot index 932204a2814d..4e5119df9897 100644 --- a/share/misc/committers-src.dot +++ b/share/misc/committers-src.dot @@ -309,6 +309,7 @@ qingli [label="Qing Li\nqingli@FreeBSD.org\n2005/04/13"] rajeshasp [label="Rajesh Kumar M A\nrajeshasp@FreeBSD.org\n2021/01/27"] ram [label="Ram Kishore Vegesna\nram@FreeBSD.org\n2018/04/04"] ray [label="Aleksandr Rybalko\nray@FreeBSD.org\n2011/05/25"] +rcm [label="R. Christian McDonald\nrcm@FreeBSD.org\n2023/11/14"] rdivacky [label="Roman Divacky\nrdivacky@FreeBSD.org\n2008/03/13"] remko [label="Remko Lodder\nremko@FreeBSD.org\n2007/02/23"] rew [label="Robert Wing\nrew@FreeBSD.org\n2020/07/23"] @@ -729,6 +730,7 @@ kmacy -> lstewart kp -> donner kp -> nick +kp -> rcm kp -> zlei lwhsu -> khng From nobody Mon Nov 20 19:04:31 2023 X-Original-To: dev-commits-src-main@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 4SYxl40VFTz51jfw; Mon, 20 Nov 2023 19:04:32 +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 4SYxl374zfz3Nm3; Mon, 20 Nov 2023 19:04:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700507072; 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=OaKL5eHCov4wZ51DKUoC7fQ5dBiU1aluFuoBwTGjL8w=; b=J/O016PfkJIhOgtUa54KM8NpDkmVbtn1V5gpB0Xu8wt6R/QyKU2SCtK7/97utWnxargug4 ca0TzFYhPZ7+8WHpa9uVIX3pOquHmYr9FIvRCB1zYimImPvgOGwAekEqIJ0s6onl4L1hkb PoZ69cV4e83/YxVEAyc4yWoG8BNrU3IXCtt+I48IXeZ7u2PCNjt/DghOsPZFbN08f30F2P b8vjYt7gZDCwYVOEdVy6neZuifyxtuqUOrl3bIf55ngKNf2d81kJEtsw7HWEtzzxVHioWj sIay9zbxqwr2eGKOCZl4BhLIu1YtWLqF/V8HQUaSLz0ciT5oRvHtmULlm9CPDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700507072; 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=OaKL5eHCov4wZ51DKUoC7fQ5dBiU1aluFuoBwTGjL8w=; b=xAZaEc0CwvU/eq5sn4vaSyN1pBg3CZ4MSfukuP4k7ZX8561Chodg6feUx98l70uNn8yMo1 Rw+hdnrOXFQ4NxAlZvNNpGeCDlRPpHC/JsuiFAMUfWCqjZ6hPMDQdl+3wymMU+hVztpAo0 7aETG/LG+GPB5FKKXLXPT5i2HQvZPwnexpgqwJJlPatt6RHYq3fi3Kpj/1AkkplOHt3gCw oNPlzixPjlSuJYdqWDhl2ikFvIsCwwzRjSwexh1vbc1AOaKdwCfphDZ3kstQL02VNv2Px2 xPBRfwRul3+ysm7Yz7QZvXRRaHkYZBQnNidPblEXHd/phXT/E0H9xmCKunGuUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700507072; a=rsa-sha256; cv=none; b=Hmwwp2zNPANHWkLb09uZ3t3HM7z5XD3aM20RBj7PcxM4IF9KQ1z1nKHAMqrbhqxmY2Psdl YCKTpK5F7orONj0fYKFG4c7Gsi5qF9V+dFm8LcId+WzeuMBcgamNA7/YBp7uYS311pJHoy cSx0cqm4ZXqBhLx5N1I+sQsr+Z9E76m304ynsFIViGKgEIpmcWBs9S4QUK8HZSVlfDa1Cg fzerRlMivqULwrJiQLm8cmyPYSLfYso5/6SAPQaO6/ivqeg5ESiS9NXW/OzwgBmVDseoEX zNE4HXilXHggRqE1c0uVB87rIaqlyU05dKX8TCCeK21VBUpWKdxssr0nwBwpCQ== 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 4SYxl367gwz13gH; Mon, 20 Nov 2023 19:04:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKJ4VAs091327; Mon, 20 Nov 2023 19:04:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKJ4V04091324; Mon, 20 Nov 2023 19:04:31 GMT (envelope-from git) Date: Mon, 20 Nov 2023 19:04:31 GMT Message-Id: <202311201904.3AKJ4V04091324@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "R. Christian McDonald" Subject: git: 0b01d45783c3 - main - loader: fix EFI ACPI detection List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rcm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0b01d45783c3ee5a544c882d1b147e4a60382c41 Auto-Submitted: auto-generated The branch main has been updated by rcm: URL: https://cgit.FreeBSD.org/src/commit/?id=0b01d45783c3ee5a544c882d1b147e4a60382c41 commit 0b01d45783c3ee5a544c882d1b147e4a60382c41 Author: R. Christian McDonald AuthorDate: 2023-11-20 17:02:24 +0000 Commit: R. Christian McDonald CommitDate: 2023-11-20 19:03:59 +0000 loader: fix EFI ACPI detection lua was previously unable to determine ACPI presence because this probing was postponed until the final loading and execution of the kernel. This patch resolves that by detecting ACPI early (similar to the order of operations in the legacy i386 loader). Reviewed by: kevans Approved by: kp Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D42459 --- stand/efi/loader/arch/amd64/elf64_freebsd.c | 44 ----------------------- stand/efi/loader/arch/arm64/exec.c | 54 +---------------------------- stand/efi/loader/main.c | 42 ++++++++++++++++++++++ 3 files changed, 43 insertions(+), 97 deletions(-) diff --git a/stand/efi/loader/arch/amd64/elf64_freebsd.c b/stand/efi/loader/arch/amd64/elf64_freebsd.c index 196efb048064..5a41ea99867e 100644 --- a/stand/efi/loader/arch/amd64/elf64_freebsd.c +++ b/stand/efi/loader/arch/amd64/elf64_freebsd.c @@ -41,17 +41,8 @@ #include "bootstrap.h" -#include "platform/acfreebsd.h" -#include "acconfig.h" -#define ACPI_SYSTEM_XFACE -#include "actypes.h" -#include "actbl.h" - #include "loader_efi.h" -static EFI_GUID acpi_guid = ACPI_TABLE_GUID; -static EFI_GUID acpi20_guid = ACPI_20_TABLE_GUID; - extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, bool exit_bs); @@ -104,9 +95,6 @@ elf64_exec(struct preloaded_file *fp) Elf_Ehdr *ehdr; vm_offset_t modulep, kernend, trampcode, trampstack; int err, i; - ACPI_TABLE_RSDP *rsdp; - char buf[24]; - int revision; bool copy_auto; copy_auto = copy_staging == COPY_STAGING_AUTO; @@ -114,38 +102,6 @@ elf64_exec(struct preloaded_file *fp) copy_staging = fp->f_kernphys_relocatable ? COPY_STAGING_DISABLE : COPY_STAGING_ENABLE; - /* - * Report the RSDP to the kernel. While this can be found with - * a BIOS boot, the RSDP may be elsewhere when booted from UEFI. - */ - - rsdp = efi_get_table(&acpi20_guid); - if (rsdp == NULL) { - rsdp = efi_get_table(&acpi_guid); - } - if (rsdp != NULL) { - sprintf(buf, "0x%016llx", (unsigned long long)rsdp); - setenv("acpi.rsdp", buf, 1); - revision = rsdp->Revision; - if (revision == 0) - revision = 1; - sprintf(buf, "%d", revision); - setenv("acpi.revision", buf, 1); - strncpy(buf, rsdp->OemId, sizeof(rsdp->OemId)); - buf[sizeof(rsdp->OemId)] = '\0'; - setenv("acpi.oem", buf, 1); - sprintf(buf, "0x%016x", rsdp->RsdtPhysicalAddress); - setenv("acpi.rsdt", buf, 1); - if (revision >= 2) { - /* XXX extended checksum? */ - sprintf(buf, "0x%016llx", - (unsigned long long)rsdp->XsdtPhysicalAddress); - setenv("acpi.xsdt", buf, 1); - sprintf(buf, "%d", rsdp->Length); - setenv("acpi.xsdt_length", buf, 1); - } - } - if ((md = file_findmetadata(fp, MODINFOMD_ELFHDR)) == NULL) return (EFTYPE); ehdr = (Elf_Ehdr *)&(md->md_data); diff --git a/stand/efi/loader/arch/arm64/exec.c b/stand/efi/loader/arch/arm64/exec.c index 09be15b2b6f3..ef410a7d556c 100644 --- a/stand/efi/loader/arch/arm64/exec.c +++ b/stand/efi/loader/arch/arm64/exec.c @@ -40,16 +40,6 @@ #include "loader_efi.h" #include "cache.h" -#include "platform/acfreebsd.h" -#include "acconfig.h" -#define ACPI_SYSTEM_XFACE -#define ACPI_USE_SYSTEM_INTTYPES -#include "actypes.h" -#include "actbl.h" - -static EFI_GUID acpi_guid = ACPI_TABLE_GUID; -static EFI_GUID acpi20_guid = ACPI_20_TABLE_GUID; - static int elf64_exec(struct preloaded_file *amp); static int elf64_obj_exec(struct preloaded_file *amp); @@ -73,52 +63,10 @@ elf64_exec(struct preloaded_file *fp) vm_offset_t clean_addr; size_t clean_size; struct file_metadata *md; - ACPI_TABLE_RSDP *rsdp; Elf_Ehdr *ehdr; - char buf[24]; - int err, revision; + int err; void (*entry)(vm_offset_t); - /* - * Report the RSDP to the kernel. The old code used the 'hints' method - * to communicate this to the kernel, but this is now considered legacy. - * Instead, move to setting different tunables that start with acpi. - * The old 'hints' can be removed before we branch for FreeBSD 15. - */ - - rsdp = efi_get_table(&acpi20_guid); - if (rsdp == NULL) { - rsdp = efi_get_table(&acpi_guid); - } - if (rsdp != NULL) { - sprintf(buf, "0x%016llx", (unsigned long long)rsdp); - setenv("hint.acpi.0.rsdp", buf, 1); - setenv("acpi.rsdp", buf, 1); - revision = rsdp->Revision; - if (revision == 0) - revision = 1; - sprintf(buf, "%d", revision); - setenv("hint.acpi.0.revision", buf, 1); - setenv("acpi.revision", buf, 1); - strncpy(buf, rsdp->OemId, sizeof(rsdp->OemId)); - buf[sizeof(rsdp->OemId)] = '\0'; - setenv("hint.acpi.0.oem", buf, 1); - setenv("acpi.oem", buf, 1); - sprintf(buf, "0x%016x", rsdp->RsdtPhysicalAddress); - setenv("hint.acpi.0.rsdt", buf, 1); - setenv("acpi.rsdt", buf, 1); - if (revision >= 2) { - /* XXX extended checksum? */ - sprintf(buf, "0x%016llx", - (unsigned long long)rsdp->XsdtPhysicalAddress); - setenv("hint.acpi.0.xsdt", buf, 1); - setenv("acpi.xsdt", buf, 1); - sprintf(buf, "%d", rsdp->Length); - setenv("hint.acpi.0.xsdt_length", buf, 1); - setenv("acpi.xsdt_length", buf, 1); - } - } - if ((md = file_findmetadata(fp, MODINFOMD_ELFHDR)) == NULL) return(EFTYPE); diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 11b10dd44d5e..d6ba7ec3da44 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -60,6 +60,12 @@ #include "efizfs.h" #include "framebuffer.h" +#include "platform/acfreebsd.h" +#include "acconfig.h" +#define ACPI_SYSTEM_XFACE +#include "actypes.h" +#include "actbl.h" + #include "loader_efi.h" struct arch_switch archsw; /* MI/MD interface boundary */ @@ -896,6 +902,39 @@ ptov(uintptr_t x) return ((caddr_t)x); } +static void +acpi_detect(void) +{ + ACPI_TABLE_RSDP *rsdp; + char buf[24]; + int revision; + + if ((rsdp = efi_get_table(&acpi20)) == NULL) + if ((rsdp = efi_get_table(&acpi)) == NULL) + return; + + sprintf(buf, "0x%016llx", (unsigned long long)rsdp); + setenv("acpi.rsdp", buf, 1); + revision = rsdp->Revision; + if (revision == 0) + revision = 1; + sprintf(buf, "%d", revision); + setenv("acpi.revision", buf, 1); + strncpy(buf, rsdp->OemId, sizeof(rsdp->OemId)); + buf[sizeof(rsdp->OemId)] = '\0'; + setenv("acpi.oem", buf, 1); + sprintf(buf, "0x%016x", rsdp->RsdtPhysicalAddress); + setenv("acpi.rsdt", buf, 1); + if (revision >= 2) { + /* XXX extended checksum? */ + sprintf(buf, "0x%016llx", + (unsigned long long)rsdp->XsdtPhysicalAddress); + setenv("acpi.xsdt", buf, 1); + sprintf(buf, "%d", rsdp->Length); + setenv("acpi.xsdt_length", buf, 1); + } +} + EFI_STATUS main(int argc, CHAR16 *argv[]) { @@ -942,6 +981,9 @@ main(int argc, CHAR16 *argv[]) /* Get our loaded image protocol interface structure. */ (void) OpenProtocolByHandle(IH, &imgid, (void **)&boot_img); + /* Report the RSDP early. */ + acpi_detect(); + /* * Chicken-and-egg problem; we want to have console output early, but * some console attributes may depend on reading from eg. the boot From nobody Mon Nov 20 19:04:32 2023 X-Original-To: dev-commits-src-main@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 4SYxl52C61z51jn9; Mon, 20 Nov 2023 19:04:33 +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 4SYxl51BL8z3Nvk; Mon, 20 Nov 2023 19:04:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700507073; 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=Cf6/uq7gsSRK7Yn0mJqvPcUl+Hr3BVzcACpEDIXoqyo=; b=QfMMUvdQ+mv+XCEd7XgFKuH+sFJ0yyonImQm0tOYu70kTNfjzNqmlzRZSwkhNkzoLcyK97 79aGTrEqE249TKrh5uKJyAXASNXGbCcE6chNO39FH6CWTCaJ4UCjBAexSuMIHfP6vO8cxc UBZsvMPFUVAsk58wbitrHP+yyUgaBHTl/RwD5xTc24jzS4k7VMqdWwyGs1/K2gmfI4C67p +UQV1BZ8zNMVtytbHQq+eMd/kW8pkKDMeC8aC8C1HVapkp1Jcfynfk+37AowgnP2rUAuwN w4PRBov4ii6U00R5FvSKDLwuuwJJGbb3NAe1RwGkFL3p5L1ijsy3fimh0z1cMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700507073; 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=Cf6/uq7gsSRK7Yn0mJqvPcUl+Hr3BVzcACpEDIXoqyo=; b=op82wk3fs5/7kImyh406fPdBCdo2QWYLKPff5tm4chXgMAhXiArNvktTZDrJlddD/BEjgT mBz9O4CFuDYpOJlanPr/6gb84RESymyiwYFlxHmYJHY5Ihy4krMHoTNtbtUIuxuDrFGqf5 Ax5R6Ym5l4LDOpOmSJ+/gu4DH3y1ABRLeV8/EH+7t47edx9Z9HeSMKHNP+v8y/XwEkHorr A4jWRAUlTs8fN1EdL3FaR1SmdFtqnZ5dvcZDiCR7iwQIMTzEwiG5lHYy8knWr4Yqu/IqPs y/qiXHkXqL+1qLJIAfu7gE4L+VQdofBBePcl52TOWyLZkNwxWav1+iin1FysYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700507073; a=rsa-sha256; cv=none; b=Xqz3V6m7I1SZSsCvjS3CWBgASbmRs1uQAL8K2/0lGoEqJqTjsGh/FG8LXD7joIdDWcU+Qe jqu3mnVnyzX8G5+0bgXh58bD49ZiipkWzpHEoHQ7p0ecn4eW851pnqJcTdzUUjZuwO8/Ce Mr4otvVUiCFw5SpZj/kmo3AlCxwSkO+mhpN7vn4HpKaFRGJWb2JPs91Sr54F6U7E6YfIuV spH9uwSMgBPpJYvr/aoY1AZVxQf8IzBPKvPYZXXofiUNpJLHehHxkJU08OrhE7VK70Wost XLdfEAm1rBGRAnroPj4LSQQhsJ/X5fgnFNyYih28LisP+4mpIYGSysX7it30kQ== 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 4SYxl5028qz13rr; Mon, 20 Nov 2023 19:04:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKJ4W04091378; Mon, 20 Nov 2023 19:04:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKJ4WZL091375; Mon, 20 Nov 2023 19:04:32 GMT (envelope-from git) Date: Mon, 20 Nov 2023 19:04:32 GMT Message-Id: <202311201904.3AKJ4WZL091375@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "R. Christian McDonald" Subject: git: e0f3dc82727f - main - loader: improve lua ACPI detection and handling List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rcm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e0f3dc82727f236b0bea495d8a4d6e6dc630854d Auto-Submitted: auto-generated The branch main has been updated by rcm: URL: https://cgit.FreeBSD.org/src/commit/?id=e0f3dc82727f236b0bea495d8a4d6e6dc630854d commit e0f3dc82727f236b0bea495d8a4d6e6dc630854d Author: R. Christian McDonald AuthorDate: 2023-11-20 17:13:08 +0000 Commit: R. Christian McDonald CommitDate: 2023-11-20 19:03:59 +0000 loader: improve lua ACPI detection and handling This is a follow-up patch to https://reviews.freebsd.org/D42459 that modifies the loader lua to use the correct loader variables for determining ACPI availability. This also fixes a bug where ACPI can be inadvertently disabled when setting System Defaults at the loader menu. Reviewed by: imp, kevans Approved by: kp Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D42483 --- stand/lua/core.lua | 39 +++++++++++++++------------------------ stand/lua/core.lua.8 | 24 ++++++++++-------------- stand/lua/menu.lua | 2 +- 3 files changed, 26 insertions(+), 39 deletions(-) diff --git a/stand/lua/core.lua b/stand/lua/core.lua index 8a481ee0b782..718783309687 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -32,6 +32,7 @@ local hook = require("hook") local core = {} +local default_acpi = false local default_safe_mode = false local default_single_user = false local default_verbose = false @@ -46,20 +47,14 @@ local function composeLoaderCmd(cmd_name, argstr) end local function recordDefaults() - -- On i386, hint.acpi.0.rsdp will be set before we're loaded. On !i386, - -- it will generally be set upon execution of the kernel. Because of - -- this, we can't (or don't really want to) detect/disable ACPI on !i386 - -- reliably. Just set it enabled if we detect it and leave well enough - -- alone if we don't. - local boot_acpi = core.isSystem386() and core.getACPIPresent(false) local boot_single = loader.getenv("boot_single") or "no" local boot_verbose = loader.getenv("boot_verbose") or "no" + + default_acpi = core.getACPI() default_single_user = boot_single:lower() ~= "no" default_verbose = boot_verbose:lower() ~= "no" - if boot_acpi then - core.setACPI(true) - end + core.setACPI(default_acpi) core.setSingleUser(default_single_user) core.setVerbose(default_verbose) end @@ -137,18 +132,18 @@ function core.setSingleUser(single_user) core.su = single_user end -function core.getACPIPresent(checking_system_defaults) - local c = loader.getenv("hint.acpi.0.rsdp") +function core.hasACPI() + return loader.getenv("acpi.rsdp") ~= nil +end - if c ~= nil then - if checking_system_defaults then - return true - end - -- Otherwise, respect disabled if it's set - c = loader.getenv("hint.acpi.0.disabled") - return c == nil or tonumber(c) ~= 1 +function core.getACPI() + if not core.hasACPI() then + return false end - return false + + -- Otherwise, respect disabled if it's set + local c = loader.getenv("hint.acpi.0.disabled") + return c == nil or tonumber(c) ~= 1 end function core.setACPI(acpi) @@ -358,7 +353,7 @@ function core.loadEntropy() end function core.setDefaults() - core.setACPI(core.getACPIPresent(true)) + core.setACPI(default_acpi) core.setSafeMode(default_safe_mode) core.setSingleUser(default_single_user) core.setVerbose(default_verbose) @@ -441,10 +436,6 @@ function core.isSerialBoot() return false end -function core.isSystem386() - return loader.machine_arch == "i386" -end - -- Is the menu skipped in the environment in which we've booted? function core.isMenuSkipped() return string.lower(loader.getenv("beastie_disable") or "") == "yes" diff --git a/stand/lua/core.lua.8 b/stand/lua/core.lua.8 index 39ae2166d442..61eab6fe24f6 100644 --- a/stand/lua/core.lua.8 +++ b/stand/lua/core.lua.8 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 21, 2018 +.Dd November 20, 2023 .Dt CORE.LUA 8 .Os .Sh NAME @@ -90,7 +90,7 @@ constants. .Ss Exported functions The following functions are exported from .Nm : -.Bl -tag -width core.getACPIPresent -offset indent +.Bl -tag -width core.setSingleUser -offset indent .It Fn core.setVerbose verbose Sets or unsets .Ev boot_verbose . @@ -103,15 +103,14 @@ Sets or unsets If .Fa singleUser is omitted, toggle the current single user setting. -.It Fn core.getACPIPresent checkingSystemDefaults -Check whether ACPI is present. -This will only be accurate for i386-compatible loaders, including non-UEFI -loaders on amd64 systems. -If -.Fa checkingSystemDefaults -is true, ignore the current value of -.Ev hint.acpi.0.disabled . -Otherwise, return true only if ACPI is both present and not disabled. +.It Fn core.getACPI +Return true if ACPI is both present and not explicitly disabled by +.Ev hints.acpi.0.disabled . +.It Fn core.hasACPI +Checks whether ACPI support is present. +This requires the loader to probe the system and set +.Ev acpi.rsdp +early before starting the interpreter. .It Fn core.setACPI acpi Sets or unsets .Ev acpi_load , @@ -202,9 +201,6 @@ This checks .Ev boot_serial , and .Ev boot_multicons . -.It Fn core.isSystem386 -Returns true if this bootloader was compiled as an i386 binary. -This generally applies to i386 loaders as well as non-UEFI loaders on amd64. .It Fn core.deepCopyTable tbl Recursively deep copies .Fa tbl diff --git a/stand/lua/menu.lua b/stand/lua/menu.lua index 7da03ad9e673..4a948acf8241 100644 --- a/stand/lua/menu.lua +++ b/stand/lua/menu.lua @@ -176,7 +176,7 @@ menu.boot_options = { -- acpi { entry_type = core.MENU_ENTRY, - visible = core.isSystem386, + visible = core.hasACPI, name = function() return OnOff(color.highlight("A") .. "CPI :", core.acpi) From nobody Mon Nov 20 20:51:42 2023 X-Original-To: dev-commits-src-main@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 4SZ06l12yYz51qXr; Mon, 20 Nov 2023 20:51:43 +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 4SZ06l0c2lz3YKM; Mon, 20 Nov 2023 20:51:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700513503; 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=9jMycp66TU9DrJY467EqoPsugLUYg+XPskp98+i73CA=; b=S3oMGZ28WRHhzGG1nRS4vDy/2Rzf3TA8cLQP/aIwRzUJLo9WuV1qoYqpDNRTwq0M7Q2yTO ykxuwXDXlK/133CHi4AE31Q0ugRN6pejWb2WlFa6uJmxevkAjb0zgnQX40l7TYwhB12TL7 M91chC94POZjCJxg+i4afSa+VVMe1P2DSSUPs1apekpofCjWJxElTYDEelHQaRrBq91JTo kM1ILZr0SDkA12iWlQynZHfgI/dxyI+kg2ussH4G8c7hvL3cT7IbLIHCVkrsBViqGKsHUE 8wTW46nM1re27Uc0a8VuXpmju5ZL8Han1+Z7vwvu7JG92aEei9RnBoiMFl6QnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700513503; 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=9jMycp66TU9DrJY467EqoPsugLUYg+XPskp98+i73CA=; b=wQtelFqkqUNFAOISHrXZAstc5nQshzk+7Q0HixVqgMPi24pR44U21R+/1ILG7cnhZv82Au TAyagg/iscT1O8XStw5afRz8qCA285Ux5EBj+OBV0RD+De7frnGtR7k/zxm/9InbwFmbNY XHGgsKkD0kNEHdzQk4SwKEdRQUUMzmfnHEmtP5LOkb3FP2zGGurQlDUBwBdsxzPlG/RmPf DoXRgsLdiqm9PaRw8zoYIKZGiXSHUZQaYOKFylTrYu/TzfOanhUuwxtYruOLDTpwmBn6Xd w8tQYuz1+o0XsZXgrjdb+EccuyXAURaYIDVChj0z+6P0/ko1m7Esl8Nts8f4cg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700513503; a=rsa-sha256; cv=none; b=rl4gM3nKB3ZWmsVi2O/RRGdaM85Xka0VyDfuXVKJQFOi0+uT4V/52oHrsNlFwuDZ+JFUQT 26RsyCX2gT6iy9U7HDNeVg0BDCPPooWBFDp8bwvWQVN56Ow4oKOv4pTXMvZXQb6okfOKrJ zVWmnwj77ivWX9uzBSG7wtNwj543ZJMafA2D60ILj77QVjwJUkp+LUzjJrcVLmSYgjoMVN 7TZl5iFwq6wYM8G8RvREqg+CbpJh9eHW3gadM9t6/S1JrvRCTY7ug4XWpg7oGtcShVYnzY cthGdOJz+6uVUvAks+zwHfCHMFLCqbUBdQdif/BhpRav2OqL6uUdZCc+VLDmPA== 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 4SZ06k6nGRz16LC; Mon, 20 Nov 2023 20:51:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKKpgDG069072; Mon, 20 Nov 2023 20:51:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKKpgqt069069; Mon, 20 Nov 2023 20:51:42 GMT (envelope-from git) Date: Mon, 20 Nov 2023 20:51:42 GMT Message-Id: <202311202051.3AKKpgqt069069@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Arthur Kiyanovski Subject: git: fec0c3fb08cc - main - Add myself (akiyano) to calendar.freebsd List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: akiyano X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fec0c3fb08cc0943a16e5074cdf0efe7862b17ee Auto-Submitted: auto-generated The branch main has been updated by akiyano: URL: https://cgit.FreeBSD.org/src/commit/?id=fec0c3fb08cc0943a16e5074cdf0efe7862b17ee commit fec0c3fb08cc0943a16e5074cdf0efe7862b17ee Author: Arthur Kiyanovski AuthorDate: 2023-11-19 14:35:37 +0000 Commit: Arthur Kiyanovski CommitDate: 2023-11-20 20:50:52 +0000 Add myself (akiyano) to calendar.freebsd Approved by: cperciva (mentor) --- usr.bin/calendar/calendars/calendar.freebsd | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index 37ce4839d581..20813eb17e09 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -289,6 +289,7 @@ 07/16 Suleiman Souhlal born in Roma, Italy, 1983 07/16 Davide Italiano born in Milazzo, Italy, 1989 07/17 Michael Chin-Yuan Wu born in Taipei, Taiwan, Republic of China, 1980 +07/18 Arthur Kiyanovski Born in Kilia, Republic of Ukraine, USSR, 1985 07/19 Masafumi NAKANE born in Okazaki, Aichi, Japan, 1972 07/19 Simon L. Nielsen born in Copenhagen, Denmark, 1980 07/19 Gleb Smirnoff born in Kharkov, USSR, 1981 From nobody Mon Nov 20 20:53:00 2023 X-Original-To: dev-commits-src-main@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 4SZ08D44K1z51qsL; Mon, 20 Nov 2023 20:53:00 +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 4SZ08D3YJdz3YjX; Mon, 20 Nov 2023 20:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700513580; 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=7O6nv95yxdFWjjN7dKR3qAbMGQ9HhY+EQ+Xl5pRlmWE=; b=h9+otp5LI5+DMfFnD30r+B/d4j1lJ4BvCUD4+x5JlW1uTF4r8t6xD3EqnGyNF+kFfcwA91 ZdESF25f3dQOJGARrETZ8+pZUmLAWBoS8nu+HxDkYqAe8MWdjrctOtEAYBhb16lOksrVvG scfGucOeY/0YEk1TNtLaN7jMsfhKVe1vg7iNLuF/9edP9rfc8yMwpr2jHVC7vwuN11m6E3 bBOttyjsGRM6pt+K2pb16XJcnKREhYowkVbYVXUJnHayfpQkaNUET6GMTP3aUMLQ9jT6FZ fFLFkanKyJ6Fnb51DBIFKl44672zpjOKPHJKmTicfgnv/D5BDVXQN0zpBhzXsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700513580; 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=7O6nv95yxdFWjjN7dKR3qAbMGQ9HhY+EQ+Xl5pRlmWE=; b=L2O4vwWs4p2drFP7prFFQhurjIT8vy6tYv0lrxvcBbsXhW9qLyQhDmdfWez3VVUEPgZOUp vibCAh2M+E1Bx/VxLSPi+EnrmIPVhLrpl8poHYN0v2wMDv3h81tOE/mqqelGFvU+yqn7zx HG+L/W4MzU5iGC9NojQIUGewxmteg/MJJ1dxTU4znB+9FSheIMmpc+eKInfggzNM6hY0A1 q5cCy3lnVAgFxk1fhr7+SagNnZLLrDtO/uIlZxMQpIf7rLzsGWt9BYvG6VxMcaxg/UeMLW WxXXl87xxIJEIXFCu87aS/oJYs6vte5drOdWHdXchzjWW4lP4vWDmhT2GCHugQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700513580; a=rsa-sha256; cv=none; b=MVmVeY7yJVQdkXbAhmBESna9xiEOqIM2bJzoSvHtLBElUVUp6afud8DyR3iXRm09YuEYH1 l+R45XnZBHAd1FdlK0DNFqQwvLyP+CQU6jHS4ryBCxCeYO2pNFtge4yGV5udPyCtAe/bN+ 1LJeIqfJg0hOo2XHGQx72jEhsQgqaJJzjBuSa09MqHtFzFmXYE61jbBfCL8SwrFygjeNTc GSdEpIqwtwOQhRtiXrOZSfMdSLNjR9/tSnqowrii2a7qLC6QQwXAOluvyrGqpqTLEvWGvy HZOMqoDc/rrFT1OFCCZ55sAdXka7h5qtC2opyUCNl+xDjZl0AaUwtWcDN9FI7Q== 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 4SZ08D2d8Vz16LY; Mon, 20 Nov 2023 20:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKKr0o3074290; Mon, 20 Nov 2023 20:53:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKKr0kW074287; Mon, 20 Nov 2023 20:53:00 GMT (envelope-from git) Date: Mon, 20 Nov 2023 20:53:00 GMT Message-Id: <202311202053.3AKKr0kW074287@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 0a45a7e99fc3 - main - Fix share/zoneinfo for DIRDEPS_BUILD List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0a45a7e99fc3061e91732ad88671721e95082d5e Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=0a45a7e99fc3061e91732ad88671721e95082d5e commit 0a45a7e99fc3061e91732ad88671721e95082d5e Author: Simon J. Gerraty AuthorDate: 2023-11-20 20:51:25 +0000 Commit: Simon J. Gerraty CommitDate: 2023-11-20 20:52:43 +0000 Fix share/zoneinfo for DIRDEPS_BUILD The tranditional build makes multiple passes through the tree. The DIRDEPS_BUILD visits each directory only once per architecture, thus makefiles should be able to everything they need in a single pass. The use of TZS!= when doing make(*install*) only works if the directory has previously been visited to do zoneinfo since before the zoneinfo target is run TZS will be empty. To fix this, have the zoneinfo target capture the list of files to zoneinfo, and install-zoneinfo use that list. Rename that target to zonefiles - since that is now what it does. This is more efficient - we only gather the list of zones when it is likely to have changed, and allows the makefile to do everything in a single pass. Reviewed by: stevek Differential Revision: https://reviews.freebsd.org/D42624 --- share/zoneinfo/Makefile | 28 +++++++++++----------------- share/zoneinfo/Makefile.depend | 1 - 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/share/zoneinfo/Makefile b/share/zoneinfo/Makefile index 60ae1f76f5b5..d4b37ce991aa 100644 --- a/share/zoneinfo/Makefile +++ b/share/zoneinfo/Makefile @@ -78,9 +78,9 @@ TZBUILDSUBDIRS= \ TZBUILDSUBDIRS+= US Mexico Chile Canada Brazil .if !defined(_SKIP_BUILD) -all: zoneinfo +all: zonefiles .endif -META_TARGETS+= zoneinfo install-zoneinfo +META_TARGETS+= zonefiles install-zoneinfo # # Produce “fat” zoneinfo files for backward compatibility. @@ -89,33 +89,27 @@ ZICFLAGS?= -b fat .if ${MK_DIRDEPS_BUILD} == "yes" ZIC= ${STAGE_HOST_OBJTOP}/usr/sbin/zic +# we do everything in a single visit +install-zoneinfo: zonefiles .endif -zoneinfo: ${TDATA} +zonefiles: ${TDATA} mkdir -p ${TZBUILDDIR} (cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS}) (umask 022; cd ${.CURDIR}; \ ${ZIC:Uzic} -D -d ${TZBUILDDIR} ${ZICFLAGS} -m ${NOBINMODE} \ ${LEAPFILE} ${TZFILES}) - -# -# Sort TZS to ensure they are the same every build. find -s might -# be a shorter way to express this, but it's non-portable. Any -# differences between the two don't matter for this purpose. -# -.if make(*install*) -TZS!= cd ${TZBUILDDIR} && find * -type f | LC_ALL=C sort -.endif + (cd ${TZBUILDDIR} && find * -type f | LC_ALL=C sort) > ${.TARGET} beforeinstall: install-zoneinfo install-zoneinfo: mkdir -p ${DESTDIR}/usr/share/zoneinfo (cd ${DESTDIR}/usr/share/zoneinfo; mkdir -p ${TZBUILDSUBDIRS}) -.for f in ${TZS} - ${INSTALL} ${TAG_ARGS} \ - -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ - ${TZBUILDDIR}/${f} ${DESTDIR}/usr/share/zoneinfo/${f} -.endfor + for f in `cat zonefiles`; do \ + ${INSTALL} ${TAG_ARGS} \ + -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ + ${TZBUILDDIR}/$${f} ${DESTDIR}/usr/share/zoneinfo/$${f}; \ + done ${INSTALL} ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ ${CONTRIBDIR}/zone.tab ${DESTDIR}/usr/share/zoneinfo/ ${INSTALL} ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ diff --git a/share/zoneinfo/Makefile.depend b/share/zoneinfo/Makefile.depend index 777ef7ba01c5..141855c83ab0 100644 --- a/share/zoneinfo/Makefile.depend +++ b/share/zoneinfo/Makefile.depend @@ -1,7 +1,6 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - usr.bin/xinstall.host \ usr.sbin/zic.host \ From nobody Mon Nov 20 22:37:19 2023 X-Original-To: dev-commits-src-main@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 4SZ2Sb3p6Zz51CLt; Mon, 20 Nov 2023 22:37:19 +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 4SZ2Sb3JFKz4MpZ; Mon, 20 Nov 2023 22:37:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700519839; 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=3ylFFmRZZk7nNhSsB9t0990KdYQJ9UVUdxfMgxWU9q0=; b=Px1aK6AMW0FQUzFP6HVzkt5VeYUhCFhyPSiP6VAdE6zNmQO55d0xOd5jCepw6Jh3YfIBhD qM+fJSbBwxdg4KFM8RYYjqfs8TWSA2sqcxphkVMsavkX2EBg0hZdy8zqWN0HRwR1gAkRNN fvPQWfyvzwJwqaKVViSYtpKOP6+HJQDkRimcOAVDZzabOl5tp+AsaTVBUsfZZp3ULTdPNV vOvNf9FZgfcCE5e0Yrp7JbVRoASzLZFk96c1GYB/c1fA1yeyMegUwP18fCTJ7uj4oUbv2t FQxqVaZsHVKuLwgK/RU4l0XL27UXgBG4kFqLtAYLe/tuipbtDKiNhr4MsZZXqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700519839; 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=3ylFFmRZZk7nNhSsB9t0990KdYQJ9UVUdxfMgxWU9q0=; b=acznmg2hOXyZ7oY6xdzf99GsLpGo7Tc7jj/IN+3K5YagDr/3cOKJZpQdjuz1IbBfwTgTN5 rBczHfOsdkGPjcgqciSAAvGw1amf/g5RswY7V78JrYmxDnL45f+Zq+JkrX4wKSUt7A35+z lcSJ07423TynI3Di6uDwtcMDTDuz8ro4dDxEU8mD1DucJKLLZCva0Tsd7vX7jqgppP8DgW 1+6Qq4sHoX18t7FGWjz/de9TRVJ+o9Mbx//PbWuRfaPUz5n2vbpsi1EOgpOakbUESk3nUd X6HlugS/uNNpCWR2Hg03FuZaW6HwM/5oKkzc7V+5nisTQvX3F7Wf27akx/oj3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700519839; a=rsa-sha256; cv=none; b=iSoTgThsT0tEqqP48Y9l8vWijwrXde9LxTICyIMbk+L4ceuaa10/LLySSKian9aCJKkHoN Z6JplPS0v6zX0P7+nAiXiHixUhUqzaD6eNzp+BCboyOXmJkMmM1LdWupIwLruWzCkhqBjg C3qw5Cv6CCqhcmp5k+slzFZCdStia8vZri31VqGEatSSGx6WYftTnb3M9pIRvJbIiTlwXo 3HZ8naGxPIm9XJ6aT2PeXrqFLoFrH55AlQVP6Zqq7p/pj6jm6Z/lsWmgVRWp6AZV6eNr4D 7buUipYbrac+9TqB/Qei7Dg7J3ga35tVKI9KdgL9zibb2wBkTdIsiqHljbG+RA== 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 4SZ2Sb2MNCz18Gd; Mon, 20 Nov 2023 22:37:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKMbJ8f041368; Mon, 20 Nov 2023 22:37:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKMbJDv041365; Mon, 20 Nov 2023 22:37:19 GMT (envelope-from git) Date: Mon, 20 Nov 2023 22:37:19 GMT Message-Id: <202311202237.3AKMbJDv041365@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 367e8adb4be9 - main - tests/netgraph: start ng_socket test suite List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 367e8adb4be91ca3c0d40c085eaf47467d0ad25d Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=367e8adb4be91ca3c0d40c085eaf47467d0ad25d commit 367e8adb4be91ca3c0d40c085eaf47467d0ad25d Author: Gleb Smirnoff AuthorDate: 2023-11-20 22:36:58 +0000 Commit: Gleb Smirnoff CommitDate: 2023-11-20 22:36:58 +0000 tests/netgraph: start ng_socket test suite Just one check now, check node name. --- tests/sys/netgraph/Makefile | 2 ++ tests/sys/netgraph/socket.c | 69 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) diff --git a/tests/sys/netgraph/Makefile b/tests/sys/netgraph/Makefile index 74e4046482ef..8bf91c68ad6b 100644 --- a/tests/sys/netgraph/Makefile +++ b/tests/sys/netgraph/Makefile @@ -14,11 +14,13 @@ TEST_METADATA.ng_macfilter_test+= required_programs="perl" ATF_TESTS_C+= basic \ bridge \ hub \ + socket \ vlan_rotate \ SRCS.basic= basic.c util.c SRCS.bridge= bridge.c util.c SRCS.hub= hub.c util.c +SRCS.socket= socket.c SRCS.vlan_rotate=vlan_rotate.c util.c LIBADD+= netgraph diff --git a/tests/sys/netgraph/socket.c b/tests/sys/netgraph/socket.c new file mode 100644 index 000000000000..b5216dcc2c39 --- /dev/null +++ b/tests/sys/netgraph/socket.c @@ -0,0 +1,69 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2023 Gleb Smirnoff + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include +#include + +#include + +#include + +ATF_TC_WITHOUT_HEAD(getsockname); +ATF_TC_BODY(getsockname, tc) +{ + struct sockaddr_ng sg; + socklen_t len = sizeof(struct sockaddr_ng); +#define NAME "0123456789012345678901234567891" /* 31 chars */ + char name[NG_NODESIZ] = NAME; + int cs; + +#if 0 + /* Unnamed node. */ + ATF_REQUIRE(NgMkSockNode(NULL, &cs, NULL) == 0); + ATF_REQUIRE(getsockname(cs, (struct sockaddr *)&sg, &len) == 0); + close(cs); + /* Unnamed node doesn't return any name/ID now. */ +#endif + + /* Named node. */ + ATF_REQUIRE(NgMkSockNode(name, &cs, NULL) == 0); + ATF_REQUIRE(getsockname(cs, (struct sockaddr *)&sg, &len) == 0); +#if 0 + /* sockaddr_ng truncates name now. */ + ATF_REQUIRE(strcmp(sg.sg_data, NAME) == 0); +#else + ATF_REQUIRE(strncmp(sg.sg_data, NAME, sizeof(sg.sg_data)) == 0); +#endif +} + +ATF_TP_ADD_TCS(tp) +{ + ATF_TP_ADD_TC(tp, getsockname); + + return (atf_no_error()); +} From nobody Mon Nov 20 22:38:44 2023 X-Original-To: dev-commits-src-main@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 4SZ2VF15mXz51CKG; Mon, 20 Nov 2023 22:38:45 +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 4SZ2VF0KP7z4NRC; Mon, 20 Nov 2023 22:38:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700519925; 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=hzraNAlo2w/BLcQq/T3F0UuBhb+Vn/qXTJtQQVtzNSA=; b=cRQfzTuZKGxXjNS4HIkBIZ7Bcdxm71kTKNF/EwB2m/2wGQoiAoio9PU90K34pqBhD0bZEf r36VuggBdON5DBaKnpjXwdpBOEs4OkUM7iTc6xVgwfIv+sio8dGWHd6Iiz37n4dzoBUyWj lXW2w+u/RmNuCfw7AQQKZLp5Ex5z3M84qyIjjfFqvzEfay1Vt4R46yzo0eCur9bm0xJ+Wl JjB525DS75nX+RiB/KcBI4G/rlxWq7eipMlm7848GvXEz3zxFxo1C5GmP1OtN34OOFdQfo qnJxMccrp1dz/azhf9/mJ7jEmy9yhNyskOQaeU7MiUXxIOvduHeXOb1dhAfzNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700519925; 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=hzraNAlo2w/BLcQq/T3F0UuBhb+Vn/qXTJtQQVtzNSA=; b=EBzCUTm8MTC6/G37N9O8EkwOB0w3by1j+RopHw8I7g8KFTmuprtmy+eUhwBSQY7cNwMwVp nSIKzhZOI8MIE53vBzKsLx6YY+qiMDRONEbUvA7+kxAfLmn2/sMEx1O400EGPxMwdpIytD NfU5m+hKpbUxP1fN99/jxL48oyNe2GqIy0TXj29y2yZlHEPIYKyAIfULM7ilhKTa+lIsvr a1eTNWYJXJd3742u+Ch5eyl2jI/5Q/KN/lulqRmCGVpW73eG7kS24wSL9MEM6tBpyjfjLO NxZEz6JdNscZNZCnzJXjdQ6VSrUBjmwENTQZqhKScdFieV7kBBl1qcGTb4VX4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700519925; a=rsa-sha256; cv=none; b=sIXdHVmsADLd0qbliHBlpX6Cxek4MikUlXqTQET+UG4toDuseJyqT81Yqu1n4jy60ZH6c8 RhCgclA3G755TvCb4XThs4KOtBQS/z+2OrqEwk3yo8vJ6gg+V9SpO4gIXf6e5ptaDcdVCJ PgVTIHgHQ2ysgy7dQKrGGD5kz9naD3zJQctaQzmF9WFVS4HoKrSEQIPuVDT9piuklo38Mf scj4dQI8xJtcdstdflqXEFubvFvdK+jYAxAZrZ3/qsmQXaKOpq/pEbdT+RIGXsFZXU6gjR qR9MYjWqwzLfjq6LrIdy+UlONS7E2q0rsauDeNjFCUMAqrMRC1MbjAaKx497MQ== 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 4SZ2VD6WPTz18f7; Mon, 20 Nov 2023 22:38:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AKMciq5041707; Mon, 20 Nov 2023 22:38:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AKMciB6041704; Mon, 20 Nov 2023 22:38:44 GMT (envelope-from git) Date: Mon, 20 Nov 2023 22:38:44 GMT Message-Id: <202311202238.3AKMciB6041704@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: bbbd7aab1bed - main - inpcb: garbage collect in_pcbnotifyall() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bbbd7aab1bed9122e7137ee0957d50c9ef22b315 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=bbbd7aab1bed9122e7137ee0957d50c9ef22b315 commit bbbd7aab1bed9122e7137ee0957d50c9ef22b315 Author: Gleb Smirnoff AuthorDate: 2023-11-20 22:38:31 +0000 Commit: Gleb Smirnoff CommitDate: 2023-11-20 22:38:31 +0000 inpcb: garbage collect in_pcbnotifyall() --- sys/netinet/in_pcb.c | 28 +--------------------------- sys/netinet/in_pcb.h | 2 -- 2 files changed, 1 insertion(+), 29 deletions(-) diff --git a/sys/netinet/in_pcb.c b/sys/netinet/in_pcb.c index 2586c107ceaf..dbae52103c61 100644 --- a/sys/netinet/in_pcb.c +++ b/sys/netinet/in_pcb.c @@ -1805,7 +1805,7 @@ inpcb_fini(void *mem, int size) * in_pcbdetach(). * * XXXRW: Possibly in_pcbdrop() should also prevent future notifications by - * in_pcbnotifyall() and in_pcbpurgeif0()? + * in_pcbpurgeif0()? */ void in_pcbdrop(struct inpcb *inp) @@ -1879,32 +1879,6 @@ in_getpeeraddr(struct socket *so, struct sockaddr **nam) return 0; } -void -in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr faddr, int errno, - struct inpcb *(*notify)(struct inpcb *, int)) -{ - struct inpcb *inp, *inp_temp; - - INP_INFO_WLOCK(pcbinfo); - CK_LIST_FOREACH_SAFE(inp, &pcbinfo->ipi_listhead, inp_list, inp_temp) { - INP_WLOCK(inp); -#ifdef INET6 - if ((inp->inp_vflag & INP_IPV4) == 0) { - INP_WUNLOCK(inp); - continue; - } -#endif - if (inp->inp_faddr.s_addr != faddr.s_addr || - inp->inp_socket == NULL) { - INP_WUNLOCK(inp); - continue; - } - if ((*notify)(inp, errno)) - INP_WUNLOCK(inp); - } - INP_INFO_WUNLOCK(pcbinfo); -} - static bool inp_v4_multi_match(const struct inpcb *inp, void *v __unused) { diff --git a/sys/netinet/in_pcb.h b/sys/netinet/in_pcb.h index 19d281937b52..aa9bcade4b32 100644 --- a/sys/netinet/in_pcb.h +++ b/sys/netinet/in_pcb.h @@ -686,8 +686,6 @@ struct inpcb * struct inpcb * in_pcblookup_mbuf(struct inpcbinfo *, struct in_addr, u_int, struct in_addr, u_int, int, struct ifnet *, struct mbuf *); -void in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr, - int, struct inpcb *(*)(struct inpcb *, int)); void in_pcbref(struct inpcb *); void in_pcbrehash(struct inpcb *); void in_pcbremhash_locked(struct inpcb *); From nobody Tue Nov 21 00:21:28 2023 X-Original-To: dev-commits-src-main@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 4SZ4mm6mg2z51MCq; Tue, 21 Nov 2023 00:21:28 +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 4SZ4mm6GF2z4VXG; Tue, 21 Nov 2023 00:21:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700526088; 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=qYclDWX6w0qVWL0Qorndku4nJwgmEajCCPCR3KJymk8=; b=olCvJcM/iok4hWArjzVWvptOHPynB0ErWuEmo14M4kNwAtsb5QXU7WC+YnWD+5KXqkbNB+ uTf0q9NQgjVdIIEMGT6M0OmLIReuUZfSnRrsJlp8tj0PXuc0U0nm90shXj8/iLvGQzBDto r2sqCz4P9Y3zTwg3TC5NntSnEPlGJ+c6pOgWtAn5w4cz160sNrwE7fgU1o3tq3He4XJXkI n6/5soJ8e0+352ZNUmO75Qrfc4wwDrLzkXEHTmwGC755KOBFEDdLw/xK/uACeueutAvMtE YVuI1nNF12CzkyB/rIpLV7k+zuVvlwsM7Q6OKWQcjA6DDBqUGPItq0a6Ail0MA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700526088; 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=qYclDWX6w0qVWL0Qorndku4nJwgmEajCCPCR3KJymk8=; b=vUKEOHiYfPCNcUEzHZyi8mQQp31ENuU5Yp0jjo9PHsvx6p6Ih03hNkG66Pt7pxCv5osfK7 1LgSMYKipoFFfIBTiet2gHXqrX/kFX8ZYjxn3JIdZgIO/dF+UbUlyd+uT1QYSAl9rJjcdY TAZH3Xf6futq5df3og4TwiamRL2auNfGqPdm0xGdZF0WcGwvjhIbW5KE/a+2prWaJ+mS7H NXuQFRWqpzvOfY7b5v2V10g7vDZzM7wotJNGllGklpLkjEh7RwioYm2QDYEWJ9Emm7TlfA aXuYrB+I8FDPUbu+dXHRoMTZXH5few9uZGX3M7e6BmqPVYNtqz64z99siYbSZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700526088; a=rsa-sha256; cv=none; b=bltjpwKHcbfq/tWLLfS0dDHabUCgsYpEd/+x0rJ9fBh61q5UZwXP5CUKpXBdGjexvH0oYn fXcxug+QZoqyF2qplMy9SKz6+s4zvVwHO99eXwwppmsiSvwHxOxMjvr+HuWQlbBs3b7kqn qlNpOTAF33lO1aS6PxJImMhcJFaq6UvAc0RkyNAUijnaB/1ux3xuXBMqu1/xUqfGXWy2Wo LL4tEnHBZhhc0DjlFWpVmPnh8h0NHAb9N5l5eueKIyqqY9x2tMyE842UvKLehNUsgGfcZK HTfpiITt+qCeMYhsawkhqqavsgBuavKwc6TJylPoKhwcxAsseAHKkyXs/MJSFA== 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 4SZ4mm5Klpz1C9K; Tue, 21 Nov 2023 00:21:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL0LS5i022285; Tue, 21 Nov 2023 00:21:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL0LShd022282; Tue, 21 Nov 2023 00:21:28 GMT (envelope-from git) Date: Tue, 21 Nov 2023 00:21:28 GMT Message-Id: <202311210021.3AL0LShd022282@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: db94e7c3f9a2 - main - vis: relocate _DIAGASSERT() define List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: db94e7c3f9a2344958667e756015393ad3124b3e Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=db94e7c3f9a2344958667e756015393ad3124b3e commit db94e7c3f9a2344958667e756015393ad3124b3e Author: Brooks Davis AuthorDate: 2023-11-21 00:21:11 +0000 Commit: Brooks Davis CommitDate: 2023-11-21 00:21:11 +0000 vis: relocate _DIAGASSERT() define Other similar files from NetBSD define it unconditionally as a local diff. Reviewed by: imp (as part of D42686) --- contrib/libc-vis/vis.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/contrib/libc-vis/vis.c b/contrib/libc-vis/vis.c index fc3b50d6c7a5..2f9eab25b480 100644 --- a/contrib/libc-vis/vis.c +++ b/contrib/libc-vis/vis.c @@ -61,7 +61,6 @@ __RCSID("$NetBSD: vis.c,v 1.83 2023/08/12 12:48:52 riastradh Exp $"); #endif /* LIBC_SCCS and not lint */ #ifdef __FBSDID __FBSDID("$FreeBSD$"); -#define _DIAGASSERT(x) assert(x) #endif #include "namespace.h" @@ -86,6 +85,8 @@ __weak_alias(strvisx,_strvisx) #include #include +#define _DIAGASSERT(x) assert(x) + /* * The reason for going through the trouble to deal with character encodings * in vis(3), is that we use this to safe encode output of commands. This From nobody Tue Nov 21 00:21:29 2023 X-Original-To: dev-commits-src-main@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 4SZ4mp0r4mz51M9b; Tue, 21 Nov 2023 00:21:30 +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 4SZ4mp06PLz4Vm7; Tue, 21 Nov 2023 00:21:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700526090; 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=eC17YGhJAWvYjBlyYfgp4PpjfXaVG+s6qnAPtSYGQAY=; b=n/5bXrDie562mKGyTdZqh1pzspga6nAXGGocpZ0juEINOXNdrpoQcCGDPcuZZaWENna3FS o8KI3Neriwc0L6YDqLN/unNuehCJdXN+/3WlSt3+DCaoyZaVnpsuhDtmoa4tNX7JjdgHL4 2GBvcB41y0JsbTwKrKaP873ECup03FLBySiPSFPsamRGIkRaNHS9kV/6e2Qa5FjJmiySWa gbIq8lkogdBb8iQsYoNeC1kEUN5mQnDIxQXARcBSAt+O15I8k0JWn8E+xqcVkiZQ8albgw uK3IszMAFXeBZpU21J2fvK3nuVKNEfANVZEbqQ7KtIetXZIM7lkiwNFfJ1Sgkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700526090; 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=eC17YGhJAWvYjBlyYfgp4PpjfXaVG+s6qnAPtSYGQAY=; b=i8lAVQdtWucADVbS707Tf6aULwsj2qLYyCUnOfgn1nrH24KcXKzsjweUpDdEp26Ofem9ho /5Y3JGEBlHOSCAGsHASoj0EKq6vhzERLQaFdUFyp2ZL3I6ZwMSyzb9wk5+AXJcZdGlRgYE SIgDJ2nwtjcP8FNJCRG7yaxNpyuWPEifH+f3JTJAUt8taon66QkoNai1RjDmiABnjypTpZ Himl5T3ol0knR4x7LV6xQaInpwuq8BkBicT5OFxK6aSrqTgJaAbLTivJN4Iim+STbfTW8f 8Xdt153M0p9Ofl0vI4dIe2ysbVK0nE+hC18shmF4kkg7aRe74NuJQzpprT4sIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700526090; a=rsa-sha256; cv=none; b=CErxVc4jbEdVNtkBjfiYm6XOZShKjxi0NA5elP41xEyHajV9sCgfx1EIom1QGKy++UEXPW J5+pKv15UaFpCqREu5bMxlLN4xWOmb1sCo4RwgbVZV82T8MWGam1plVpkm6R2Q0l/XsgDV uzCqFTIYyqgHSIw5uFBAYutP0sG6mVoqtK0MVaSLjhk1QAzOaF8i+E3jEdFrO4AVkUdytm bpynpQl4WozJglKufSQj7p6OcBFpkXBYZx8gb5E9xEDOkFQOJFNK+uQu2L+MuU19QQENMm krGmZUs0Ne35FWsEXf5g7vWZaQv7SGi36zgAsFxov3cVcisd2ZPAeGY8ICO9tg== 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 4SZ4mn6KHSz1CZG; Tue, 21 Nov 2023 00:21:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL0LTVT022330; Tue, 21 Nov 2023 00:21:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL0LTWP022327; Tue, 21 Nov 2023 00:21:29 GMT (envelope-from git) Date: Tue, 21 Nov 2023 00:21:29 GMT Message-Id: <202311210021.3AL0LTWP022327@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: ea2be8ed2835 - main - Remove __FBSDID from netbsd libc sources List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ea2be8ed283597062853935a5a29dfd67973044b Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=ea2be8ed283597062853935a5a29dfd67973044b commit ea2be8ed283597062853935a5a29dfd67973044b Author: Brooks Davis AuthorDate: 2023-11-21 00:21:11 +0000 Commit: Brooks Davis CommitDate: 2023-11-21 00:21:11 +0000 Remove __FBSDID from netbsd libc sources I added them per then-current practice when I imported them, but now they are just gratuious local diffs. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42686 --- contrib/libc-pwcache/pwcache.c | 1 - contrib/libc-vis/unvis.c | 1 - contrib/libc-vis/vis.c | 3 --- 3 files changed, 5 deletions(-) diff --git a/contrib/libc-pwcache/pwcache.c b/contrib/libc-pwcache/pwcache.c index 321e43900bd1..180935c75b42 100644 --- a/contrib/libc-pwcache/pwcache.c +++ b/contrib/libc-pwcache/pwcache.c @@ -77,7 +77,6 @@ static char sccsid[] = "@(#)cache.c 8.1 (Berkeley) 5/31/93"; __RCSID("$NetBSD: pwcache.c,v 1.31 2010/03/23 20:28:59 drochner Exp $"); #endif #endif /* LIBC_SCCS and not lint */ -__FBSDID("$FreeBSD$"); #include "namespace.h" diff --git a/contrib/libc-vis/unvis.c b/contrib/libc-vis/unvis.c index f290d8db271a..62a350bfa912 100644 --- a/contrib/libc-vis/unvis.c +++ b/contrib/libc-vis/unvis.c @@ -37,7 +37,6 @@ static char sccsid[] = "@(#)unvis.c 8.1 (Berkeley) 6/4/93"; __RCSID("$NetBSD: unvis.c,v 1.45 2022/04/19 20:32:15 rillig Exp $"); #endif #endif /* LIBC_SCCS and not lint */ -__FBSDID("$FreeBSD$"); #include "namespace.h" #include diff --git a/contrib/libc-vis/vis.c b/contrib/libc-vis/vis.c index 2f9eab25b480..623acfe92e1d 100644 --- a/contrib/libc-vis/vis.c +++ b/contrib/libc-vis/vis.c @@ -59,9 +59,6 @@ #if defined(LIBC_SCCS) && !defined(lint) __RCSID("$NetBSD: vis.c,v 1.83 2023/08/12 12:48:52 riastradh Exp $"); #endif /* LIBC_SCCS and not lint */ -#ifdef __FBSDID -__FBSDID("$FreeBSD$"); -#endif #include "namespace.h" #include From nobody Tue Nov 21 00:21:30 2023 X-Original-To: dev-commits-src-main@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 4SZ4mq1LMXz51MHT; Tue, 21 Nov 2023 00:21:31 +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 4SZ4mq0sVhz4W3d; Tue, 21 Nov 2023 00:21:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700526091; 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=e2Y19elpMA06663CTgNUuvqSL8rTQNx2Ctnpa87s62U=; b=qHn2WFOq7kS7Ej4//BgdOk41150pIdQkKZJNtMa3BAdbIANXD3TMDZp7hpOnqLDNlz2gdB AebXKIWmDS72vwkNpQwT03KQBtQMkxGqhLRlaMyrB7INPBwPXJLD9ULuzxFwvew6uXhzr6 MdmCUjvkBf0RnEtkPKDT+uMBxIb64LP/U1pw2Krkvl6VU9w+qeMu7mPIiXd4oT/4BMx+cI KiAhwCzqBBWXtEPsXpDi9vrP+gL29/QlNmNuyMKprBQXZy0SqI9ilqY5VRDQLJm9pSvuA+ wbzUa2/UjuiSGVakvrDaPQg5yRR6wThHs5b+YJQkZNVMXP7V+dckN/dvjKABqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700526091; 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=e2Y19elpMA06663CTgNUuvqSL8rTQNx2Ctnpa87s62U=; b=gmDmFjAokRlYK3Q9e91AHuUTE2okimCFH+HXX+0uDn96UACpF7W3quyl+/FvIG+jq4s+db Iv0PoysAPI3CBpLotkO/8N7r43/vlq0eB/pnaPJg8xb+4dQtLAy5a/7I8qA9KvtCLyMdpI 1PZlEfGKu4Yi9E5GQql65watOuDL2niC/omWGIEhUAduM5cOFPACGlrZ8Ssz70Jc0YEPSP /GY/SAuVjXGiRl7rVGqGxqZcDxo9HUvD+iMJ5Ng7MZ79L088X1w+x0JcfLho70PUkVJ3cJ xBkPrO+51jI7Bs8nO5Bu4LZxVFbziSpfbSS52E6Pxlbru1i8GWwEDWX+3Zo3PA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700526091; a=rsa-sha256; cv=none; b=QYOIzPPVQLlYTzApBR6elEMEoGyvloj533Nti9vxeHk8DcDmZZlYzs71/wp0NzsfGiJLPz SEez68ONTgI1I9j16/Jy7bPkDb1iL0uY4LG3mXLkZbClDool6e/f5ZNTE+p30/LhRKYqsS U+q88X+WIaoSCxHOo6Tb3SeiBA3lD5ItiyNWrIwK/NJcHWYVhp11qyr7fp+NHa+4sh3Noz +2OmaDP+CRWXVma9ctPCVTSNiPF2bv024YM+5E8gN6aI4WAAfnkHzwD/YaeIACW0KKFD5z y9sors62VkauVX7VWL/y7dRLWd3u21YQucwA1fWCqN41+HiscdYT0VhY1Yq8aQ== 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 4SZ4mp74Y7z1C9L; Tue, 21 Nov 2023 00:21:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL0LUa4022372; Tue, 21 Nov 2023 00:21:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL0LULo022369; Tue, 21 Nov 2023 00:21:30 GMT (envelope-from git) Date: Tue, 21 Nov 2023 00:21:30 GMT Message-Id: <202311210021.3AL0LULo022369@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: bbde5c0725a5 - main - pf: Remove __FBSDID() macro use List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bbde5c0725a5b34c456b3818cc69d17f22cef9f8 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=bbde5c0725a5b34c456b3818cc69d17f22cef9f8 commit bbde5c0725a5b34c456b3818cc69d17f22cef9f8 Author: Brooks Davis AuthorDate: 2023-11-21 00:21:11 +0000 Commit: Brooks Davis CommitDate: 2023-11-21 00:21:11 +0000 pf: Remove __FBSDID() macro use These are local additions that no longer make sense with the transition to git. This partially reverts a10f530f936b7b2e3a19c406ae199b91a48f34d3. Reviewed by: kp, imp Differential Revision: https://reviews.freebsd.org/D42687 --- contrib/pf/authpf/authpf.c | 3 --- contrib/pf/ftp-proxy/ftp-proxy.c | 3 --- contrib/pf/pflogd/pflogd.c | 3 --- contrib/pf/pflogd/privsep.c | 3 --- 4 files changed, 12 deletions(-) diff --git a/contrib/pf/authpf/authpf.c b/contrib/pf/authpf/authpf.c index 5ffa5b9cfe43..9858c1c50ced 100644 --- a/contrib/pf/authpf/authpf.c +++ b/contrib/pf/authpf/authpf.c @@ -16,9 +16,6 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#include -__FBSDID("$FreeBSD$"); - #include #include #include diff --git a/contrib/pf/ftp-proxy/ftp-proxy.c b/contrib/pf/ftp-proxy/ftp-proxy.c index 04d749dd0fff..d8f8b8e67d1f 100644 --- a/contrib/pf/ftp-proxy/ftp-proxy.c +++ b/contrib/pf/ftp-proxy/ftp-proxy.c @@ -16,9 +16,6 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#include -__FBSDID("$FreeBSD$"); - #include #include #include diff --git a/contrib/pf/pflogd/pflogd.c b/contrib/pf/pflogd/pflogd.c index 2b1b0df769a7..6df97f8b84f4 100644 --- a/contrib/pf/pflogd/pflogd.c +++ b/contrib/pf/pflogd/pflogd.c @@ -30,9 +30,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include -__FBSDID("$FreeBSD$"); - #include #include #include diff --git a/contrib/pf/pflogd/privsep.c b/contrib/pf/pflogd/privsep.c index 2e3895d2be77..326b4af6fe66 100644 --- a/contrib/pf/pflogd/privsep.c +++ b/contrib/pf/pflogd/privsep.c @@ -17,9 +17,6 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#include -__FBSDID("$FreeBSD$"); - #include #include #include From nobody Tue Nov 21 01:05:44 2023 X-Original-To: dev-commits-src-main@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 4SZ5lr5lPQz51QVG; Tue, 21 Nov 2023 01:05:44 +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 4SZ5lr5P5zz4bj8; Tue, 21 Nov 2023 01:05:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700528744; 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=of6NpEjA6eKW3YjbIL7bdn++fsAJPNsOcSgcS08nJYg=; b=maQyPqXHeIXJfSdl2k7mTviWiP6KzxGBv8J4LIbLjh92QKtgth5YUtsPwlvDtKguhTOw+b XF506GJUhN2A/HKjUMnC0Z9zXm8/LdoKXqQ9jgR17wqpY7WrKS1Lf2B4JMz/gkmug3T4b8 HJCHLkQciyAGtqlwODbbqRh2UHX4edDHljlriKaYhTGjpmLwecokJwIt7+1OXX4TRPC/D6 NQtJqJCM57R0M8OYNnL+6Bl+0OAr176AEFUqpCkGi+XM4KKyvBSMp6L5KobdW/V1XERKEy 7cegoEgGKoMzxsz92mmb6dwx12xd+C7ihe4ZDCM7Xuk/ieTdIEU29+Ui6RgIRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700528744; 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=of6NpEjA6eKW3YjbIL7bdn++fsAJPNsOcSgcS08nJYg=; b=CRJBl2W4hTqL++25zY3rEeD+12fTRZJ9p5+wmA9Xi6QOApleTGWZFdZM9+Av5KOGLQWZz5 FeOi74ADxhVyHwJhnzS/mB077Bwy08vCEN+KdfBujRpP8jfIVeAk9Zeuyeb05FtmNXy9Kw R/bjg339IDwuuZovE1LFExXyOJtWj+VV6wI9zgdwitAmk6tvW5TmwwYuF8OLHirQSiomBv YAt1TNfMFjjpChwSXRyWATfrhXDtPVg55C42qJOEireYhLTMCe2IFtXBpwvjfahtxXdOuM kK2V33bxz50NMHhyK6NHEvUlqKuD8eJn5sT7tte558rQ8eJ5vjb+2mr+WXP9EQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700528744; a=rsa-sha256; cv=none; b=jIQQcMCHG/AbOGq2LV3L41u3BonI4rmRdaZZrCQvlPzldkXtXkY1es3KgHu4BUreD4/hTI xUrHvY//FNxkEPlHkZ6Swh9zMxm+5rkrqXLUjCJ2G6Hn1/uhs4cMBwOnyDshBbs2go2yis YEoqW8B6q2O57jVCEp0pJSWBE0xUnCEeWJZEeyCArGlo1T14A+cvBWzLTuemEFvt18rq5R ArJLqx/iwRS8h55/ZzsG6Bjn18M4jvBXhsnf1S0jr0NlX+1aU+gGCjf/nI3eYlYYux30wj KnVApFlagpeTDkHjd5y/WB3c6KQyqNlJESLH/N1I/V2SUAAcx9qs0EkfmOmpyQ== 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 4SZ5lr4STszWH; Tue, 21 Nov 2023 01:05:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL15iT1092118; Tue, 21 Nov 2023 01:05:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL15iLX092114; Tue, 21 Nov 2023 01:05:44 GMT (envelope-from git) Date: Tue, 21 Nov 2023 01:05:44 GMT Message-Id: <202311210105.3AL15iLX092114@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Martin Matuska Subject: git: a2b560cc69eb - main - zfs: merge openzfs/zfs@a94860a6d List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a2b560cc69eb254c92caf2027a69cadf9865d273 Auto-Submitted: auto-generated The branch main has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=a2b560cc69eb254c92caf2027a69cadf9865d273 commit a2b560cc69eb254c92caf2027a69cadf9865d273 Merge: bbde5c0725a5 a94860a6dee1 Author: Martin Matuska AuthorDate: 2023-11-21 00:39:04 +0000 Commit: Martin Matuska CommitDate: 2023-11-21 00:46:00 +0000 zfs: merge openzfs/zfs@a94860a6d Notable upstream pull request merges: #15511 92dc4ad83 Consider `dnode_t` allocations in dbuf cache size accounting #15514 22c8c33a5 Use abd_zero_off() where applicable #15515 5a3bffab1 ZIO: Optimize zio_flush() #15527 cd67bc0ae freebsd: remove __FBSDID macro use Obtained from: OpenZFS OpenZFS commit: a94860a6dee1c07bb96ee36dafcba40b804560cc sys/contrib/openzfs/cmd/dbufstat.in | 20 +++---- sys/contrib/openzfs/include/sys/dmu.h | 13 +++++ sys/contrib/openzfs/lib/libshare/os/freebsd/nfs.c | 3 -- sys/contrib/openzfs/lib/libspl/os/freebsd/mnttab.c | 3 -- .../openzfs/lib/libzfs/os/freebsd/libzfs_zmount.c | 3 -- .../lib/libzutil/os/linux/zutil_setproctitle.c | 27 +--------- .../openzfs/module/os/freebsd/spl/spl_acl.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_atomic.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_dtrace.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_kmem.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_kstat.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_misc.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_policy.c | 3 -- .../module/os/freebsd/spl/spl_procfs_list.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_sunddi.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_sysevent.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_taskq.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_vfs.c | 3 -- sys/contrib/openzfs/module/os/freebsd/spl/spl_vm.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_zlib.c | 3 -- .../openzfs/module/os/freebsd/spl/spl_zone.c | 3 -- .../openzfs/module/os/freebsd/zfs/crypto_os.c | 3 -- sys/contrib/openzfs/module/os/freebsd/zfs/dmu_os.c | 3 -- .../openzfs/module/os/freebsd/zfs/kmod_core.c | 3 -- .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 3 -- .../openzfs/module/os/freebsd/zfs/vdev_label_os.c | 2 +- .../openzfs/module/os/freebsd/zfs/zfs_file_os.c | 3 -- .../module/os/freebsd/zfs/zfs_ioctl_compat.c | 3 -- .../openzfs/module/os/freebsd/zfs/zfs_ioctl_os.c | 3 -- sys/contrib/openzfs/module/zfs/dbuf.c | 63 +++++++++++++++++++--- sys/contrib/openzfs/module/zfs/dbuf_stats.c | 13 ++--- sys/contrib/openzfs/module/zfs/dnode.c | 19 +++++-- sys/contrib/openzfs/module/zfs/mmp.c | 3 +- sys/contrib/openzfs/module/zfs/vdev_label.c | 6 ++- sys/contrib/openzfs/module/zfs/zil.c | 2 +- sys/contrib/openzfs/module/zfs/zio.c | 36 ++++++------- .../openzfs/tests/zfs-tests/include/libtest.shlib | 6 +++ sys/modules/zfs/zfs_config.h | 4 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 39 files changed, 136 insertions(+), 155 deletions(-) diff --cc sys/modules/zfs/zfs_config.h index 3fb946f3de98,000000000000..bcd23c9ea276 mode 100644,000000..100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@@ -1,1149 -1,0 +1,1149 @@@ +/* + */ + +/* zfs_config.h. Generated from zfs_config.h.in by configure. */ +/* zfs_config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* bio_end_io_t wants 1 arg */ +/* #undef HAVE_1ARG_BIO_END_IO_T */ + +/* lookup_bdev() wants 1 arg */ +/* #undef HAVE_1ARG_LOOKUP_BDEV */ + +/* submit_bio() wants 1 arg */ +/* #undef HAVE_1ARG_SUBMIT_BIO */ + +/* bdi_setup_and_register() wants 2 args */ +/* #undef HAVE_2ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 2 args */ +/* #undef HAVE_2ARGS_VFS_GETATTR */ + +/* zlib_deflate_workspacesize() wants 2 args */ +/* #undef HAVE_2ARGS_ZLIB_DEFLATE_WORKSPACESIZE */ + +/* bdi_setup_and_register() wants 3 args */ +/* #undef HAVE_3ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 3 args */ +/* #undef HAVE_3ARGS_VFS_GETATTR */ + +/* vfs_getattr wants 4 args */ +/* #undef HAVE_4ARGS_VFS_GETATTR */ + +/* kernel has access_ok with 'type' parameter */ +/* #undef HAVE_ACCESS_OK_TYPE */ + +/* posix_acl has refcount_t */ +/* #undef HAVE_ACL_REFCOUNT */ + +/* add_disk() returns int */ +/* #undef HAVE_ADD_DISK_RET */ + +/* Define if host toolchain supports AES */ +#define HAVE_AES 1 + +/* Define if you have [rt] */ +#define HAVE_AIO_H 1 + +#ifdef __amd64__ +#ifndef RESCUE +/* Define if host toolchain supports AVX */ +#define HAVE_AVX 1 +#endif + +/* Define if host toolchain supports AVX2 */ +#define HAVE_AVX2 1 + +/* Define if host toolchain supports AVX512BW */ +#define HAVE_AVX512BW 1 + +/* Define if host toolchain supports AVX512CD */ +#define HAVE_AVX512CD 1 + +/* Define if host toolchain supports AVX512DQ */ +#define HAVE_AVX512DQ 1 + +/* Define if host toolchain supports AVX512ER */ +#define HAVE_AVX512ER 1 + +/* Define if host toolchain supports AVX512F */ +#define HAVE_AVX512F 1 + +/* Define if host toolchain supports AVX512IFMA */ +#define HAVE_AVX512IFMA 1 + +/* Define if host toolchain supports AVX512PF */ +#define HAVE_AVX512PF 1 + +/* Define if host toolchain supports AVX512VBMI */ +#define HAVE_AVX512VBMI 1 + +/* Define if host toolchain supports AVX512VL */ +#define HAVE_AVX512VL 1 +#endif + +/* bdevname() is available */ +/* #undef HAVE_BDEVNAME */ + +/* bdev_check_media_change() exists */ +/* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_63 */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_OLD */ + +/* bdev_kobj() exists */ +/* #undef HAVE_BDEV_KOBJ */ + +/* bdev_max_discard_sectors() is available */ +/* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */ + +/* bdev_max_secure_erase_sectors() is available */ +/* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */ + +/* block_device_operations->submit_bio() returns void */ +/* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */ + +/* bdev_whole() is available */ +/* #undef HAVE_BDEV_WHOLE */ + +/* bio_alloc() takes 4 arguments */ +/* #undef HAVE_BIO_ALLOC_4ARG */ + +/* bio->bi_bdev->bd_disk exists */ +/* #undef HAVE_BIO_BDEV_DISK */ + +/* bio->bi_opf is defined */ +/* #undef HAVE_BIO_BI_OPF */ + +/* bio->bi_status exists */ +/* #undef HAVE_BIO_BI_STATUS */ + +/* bio has bi_iter */ +/* #undef HAVE_BIO_BVEC_ITER */ + +/* bio_*_io_acct() available */ +/* #undef HAVE_BIO_IO_ACCT */ + +/* bio_max_segs() is implemented */ +/* #undef HAVE_BIO_MAX_SEGS */ + +/* bio_set_dev() is available */ +/* #undef HAVE_BIO_SET_DEV */ + +/* bio_set_dev() GPL-only */ +/* #undef HAVE_BIO_SET_DEV_GPL_ONLY */ + +/* bio_set_dev() is a macro */ +/* #undef HAVE_BIO_SET_DEV_MACRO */ + +/* bio_set_op_attrs is available */ +/* #undef HAVE_BIO_SET_OP_ATTRS */ + +/* blkdev_get_by_path() exists and takes 4 args */ +/* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */ + +/* blkdev_get_by_path() handles ERESTARTSYS */ +/* #undef HAVE_BLKDEV_GET_ERESTARTSYS */ + +/* blkdev_issue_discard() is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD */ + +/* blkdev_issue_secure_erase() is available */ +/* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */ + +/* blkdev_put() accepts void* as arg 2 */ +/* #undef HAVE_BLKDEV_PUT_HOLDER */ + +/* blkdev_reread_part() exists */ +/* #undef HAVE_BLKDEV_REREAD_PART */ + +/* blkg_tryget() is available */ +/* #undef HAVE_BLKG_TRYGET */ + +/* blkg_tryget() GPL-only */ +/* #undef HAVE_BLKG_TRYGET_GPL_ONLY */ + +/* blk_alloc_disk() exists */ +/* #undef HAVE_BLK_ALLOC_DISK */ + +/* blk_alloc_queue() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */ + +/* blk_alloc_queue_rh() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */ + +/* blk_cleanup_disk() exists */ +/* #undef HAVE_BLK_CLEANUP_DISK */ + +/* blk_mode_t is defined */ +/* #undef HAVE_BLK_MODE_T */ + +/* block multiqueue is available */ +/* #undef HAVE_BLK_MQ */ + +/* blk queue backing_dev_info is dynamic */ +/* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */ + +/* blk_queue_discard() is available */ +/* #undef HAVE_BLK_QUEUE_DISCARD */ + +/* blk_queue_flag_clear() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_CLEAR */ + +/* blk_queue_flag_set() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_SET */ + +/* blk_queue_flush() is available */ +/* #undef HAVE_BLK_QUEUE_FLUSH */ + +/* blk_queue_flush() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_FLUSH_GPL_ONLY */ + +/* blk_queue_secdiscard() is available */ +/* #undef HAVE_BLK_QUEUE_SECDISCARD */ + +/* blk_queue_secure_erase() is available */ +/* #undef HAVE_BLK_QUEUE_SECURE_ERASE */ + +/* blk_queue_update_readahead() exists */ +/* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */ + +/* blk_queue_write_cache() exists */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE */ + +/* blk_queue_write_cache() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE_GPL_ONLY */ + +/* BLK_STS_RESV_CONFLICT is defined */ +/* #undef HAVE_BLK_STS_RESV_CONFLICT */ + +/* Define if release() in block_device_operations takes 1 arg */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */ + +/* Define if revalidate_disk() in block_device_operations */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */ + +/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the Mac OS X function + CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */ + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* check_disk_change() exists */ +/* #undef HAVE_CHECK_DISK_CHANGE */ + +/* clear_inode() is available */ +/* #undef HAVE_CLEAR_INODE */ + +/* dentry uses const struct dentry_operations */ +/* #undef HAVE_CONST_DENTRY_OPERATIONS */ + +/* copy_from_iter() is available */ +/* #undef HAVE_COPY_FROM_ITER */ + +/* copy_splice_read exists */ +/* #undef HAVE_COPY_SPLICE_READ */ + +/* copy_to_iter() is available */ +/* #undef HAVE_COPY_TO_ITER */ + +/* cpu_has_feature() is GPL-only */ +/* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */ + +/* yes */ +/* #undef HAVE_CPU_HOTPLUG */ + +/* current_time() exists */ +/* #undef HAVE_CURRENT_TIME */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* DECLARE_EVENT_CLASS() is available */ +/* #undef HAVE_DECLARE_EVENT_CLASS */ + +/* dentry aliases are in d_u member */ +/* #undef HAVE_DENTRY_D_U_ALIASES */ + +/* dequeue_signal() takes 4 arguments */ +/* #undef HAVE_DEQUEUE_SIGNAL_4ARG */ + +/* lookup_bdev() wants dev_t arg */ +/* #undef HAVE_DEVT_LOOKUP_BDEV */ + +/* sops->dirty_inode() wants flags */ +/* #undef HAVE_DIRTY_INODE_WITH_FLAGS */ + +/* disk_check_media_change() exists */ +/* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */ + +/* disk_*_io_acct() available */ +/* #undef HAVE_DISK_IO_ACCT */ + +/* disk_update_readahead() exists */ +/* #undef HAVE_DISK_UPDATE_READAHEAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* d_make_root() is available */ +/* #undef HAVE_D_MAKE_ROOT */ + +/* d_prune_aliases() is available */ +/* #undef HAVE_D_PRUNE_ALIASES */ + +/* dops->d_revalidate() operation takes nameidata */ +/* #undef HAVE_D_REVALIDATE_NAMEIDATA */ + +/* eops->encode_fh() wants child and parent inodes */ +/* #undef HAVE_ENCODE_FH_WITH_INODE */ + +/* sops->evict_inode() exists */ +/* #undef HAVE_EVICT_INODE */ + +/* FALLOC_FL_ZERO_RANGE is defined */ +/* #undef HAVE_FALLOC_FL_ZERO_RANGE */ + +/* fault_in_iov_iter_readable() is available */ +/* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */ + +/* filemap_range_has_page() is available */ +/* #undef HAVE_FILEMAP_RANGE_HAS_PAGE */ + +/* fops->aio_fsync() exists */ +/* #undef HAVE_FILE_AIO_FSYNC */ + +/* file_dentry() is available */ +/* #undef HAVE_FILE_DENTRY */ + +/* fops->fadvise() exists */ +/* #undef HAVE_FILE_FADVISE */ + +/* file_inode() is available */ +/* #undef HAVE_FILE_INODE */ + +/* flush_dcache_page() is GPL-only */ +/* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */ + +/* iops->follow_link() cookie */ +/* #undef HAVE_FOLLOW_LINK_COOKIE */ + +/* iops->follow_link() nameidata */ +/* #undef HAVE_FOLLOW_LINK_NAMEIDATA */ + +/* Define if compiler supports -Wformat-overflow */ +/* #undef HAVE_FORMAT_OVERFLOW */ + +/* fsync_bdev() is declared in include/blkdev.h */ +/* #undef HAVE_FSYNC_BDEV */ + +/* fops->fsync() with range */ +/* #undef HAVE_FSYNC_RANGE */ + +/* fops->fsync() without dentry */ +/* #undef HAVE_FSYNC_WITHOUT_DENTRY */ + +/* yes */ +/* #undef HAVE_GENERIC_FADVISE */ + +/* generic_fillattr requires struct mnt_idmap* */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP */ + +/* generic_fillattr requires struct mnt_idmap* and u32 request_mask */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP_REQMASK */ + +/* generic_fillattr requires struct user_namespace* */ +/* #undef HAVE_GENERIC_FILLATTR_USERNS */ + +/* generic_*_io_acct() 3 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_3ARG */ + +/* generic_*_io_acct() 4 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_4ARG */ + +/* generic_readlink is global */ +/* #undef HAVE_GENERIC_READLINK */ + +/* generic_setxattr() exists */ +/* #undef HAVE_GENERIC_SETXATTR */ + +/* generic_write_checks() takes kiocb */ +/* #undef HAVE_GENERIC_WRITE_CHECKS_KIOCB */ + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* iops->get_acl() exists */ +/* #undef HAVE_GET_ACL */ + +/* iops->get_acl() takes rcu */ +/* #undef HAVE_GET_ACL_RCU */ + +/* has iops->get_inode_acl() */ +/* #undef HAVE_GET_INODE_ACL */ + +/* iops->get_link() cookie */ +/* #undef HAVE_GET_LINK_COOKIE */ + +/* iops->get_link() delayed */ +/* #undef HAVE_GET_LINK_DELAYED */ + +/* group_info->gid exists */ +/* #undef HAVE_GROUP_INFO_GID */ + +/* has_capability() is available */ +/* #undef HAVE_HAS_CAPABILITY */ + +/* iattr->ia_vfsuid and iattr->ia_vfsgid exist */ +/* #undef HAVE_IATTR_VFSID */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* iops->getattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_GETATTR */ + +/* iops->setattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_SETATTR */ + +/* APIs for idmapped mount are present */ +/* #undef HAVE_IDMAP_MNT_API */ + +/* Define if compiler supports -Wimplicit-fallthrough */ +/* #undef HAVE_IMPLICIT_FALLTHROUGH */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_INFINITE_RECURSION */ + +/* inode_get_ctime() exists in linux/fs.h */ +/* #undef HAVE_INODE_GET_CTIME */ + +/* yes */ +/* #undef HAVE_INODE_LOCK_SHARED */ + +/* inode_owner_or_capable() exists */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE */ + +/* inode_owner_or_capable() takes mnt_idmap */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */ + +/* inode_owner_or_capable() takes user_ns */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */ + +/* inode_set_ctime_to_ts() exists in linux/fs.h */ +/* #undef HAVE_INODE_SET_CTIME_TO_TS */ + +/* inode_set_flags() exists */ +/* #undef HAVE_INODE_SET_FLAGS */ + +/* inode_set_iversion() exists */ +/* #undef HAVE_INODE_SET_IVERSION */ + +/* inode->i_*time's are timespec64 */ +/* #undef HAVE_INODE_TIMESPEC64_TIMES */ + +/* timestamp_truncate() exists */ +/* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* in_compat_syscall() is available */ +/* #undef HAVE_IN_COMPAT_SYSCALL */ + +/* iops->create() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_CREATE_IDMAP */ + +/* iops->create() takes struct user_namespace* */ +/* #undef HAVE_IOPS_CREATE_USERNS */ + +/* iops->mkdir() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKDIR_IDMAP */ + +/* iops->mkdir() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKDIR_USERNS */ + +/* iops->mknod() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKNOD_IDMAP */ + +/* iops->mknod() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKNOD_USERNS */ + +/* iops->permission() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_PERMISSION_IDMAP */ + +/* iops->permission() takes struct user_namespace* */ +/* #undef HAVE_IOPS_PERMISSION_USERNS */ + +/* iops->rename() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_RENAME_IDMAP */ + +/* iops->rename() takes struct user_namespace* */ +/* #undef HAVE_IOPS_RENAME_USERNS */ + +/* iops->setattr() exists */ +/* #undef HAVE_IOPS_SETATTR */ + +/* iops->symlink() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_SYMLINK_IDMAP */ + +/* iops->symlink() takes struct user_namespace* */ +/* #undef HAVE_IOPS_SYMLINK_USERNS */ + +/* iov_iter_advance() is available */ +/* #undef HAVE_IOV_ITER_ADVANCE */ + +/* iov_iter_count() is available */ +/* #undef HAVE_IOV_ITER_COUNT */ + +/* iov_iter_fault_in_readable() is available */ +/* #undef HAVE_IOV_ITER_FAULT_IN_READABLE */ + +/* iov_iter_revert() is available */ +/* #undef HAVE_IOV_ITER_REVERT */ + +/* iov_iter_type() is available */ +/* #undef HAVE_IOV_ITER_TYPE */ + +/* iov_iter types are available */ +/* #undef HAVE_IOV_ITER_TYPES */ + +/* yes */ +/* #undef HAVE_IO_SCHEDULE_TIMEOUT */ + +/* Define to 1 if you have the `issetugid' function. */ +#define HAVE_ISSETUGID 1 + +/* iter_iov() is available */ +/* #undef HAVE_ITER_IOV */ + +/* kernel has kernel_fpu_* functions */ +/* #undef HAVE_KERNEL_FPU */ + +/* kernel has asm/fpu/api.h */ +/* #undef HAVE_KERNEL_FPU_API_HEADER */ + +/* kernel fpu internal */ +/* #undef HAVE_KERNEL_FPU_INTERNAL */ + +/* kernel has asm/fpu/internal.h */ +/* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */ + +/* uncached_acl_sentinel() exists */ +/* #undef HAVE_KERNEL_GET_ACL_HANDLE_CACHE */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_KERNEL_INFINITE_RECURSION */ + +/* kernel does stack verification */ +/* #undef HAVE_KERNEL_OBJTOOL */ + +/* kernel has linux/objtool.h */ +/* #undef HAVE_KERNEL_OBJTOOL_HEADER */ + +/* kernel_read() take loff_t pointer */ +/* #undef HAVE_KERNEL_READ_PPOS */ + +/* timer_list.function gets a timer_list */ +/* #undef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST */ + +/* struct timer_list has a flags member */ +/* #undef HAVE_KERNEL_TIMER_LIST_FLAGS */ + +/* timer_setup() is available */ +/* #undef HAVE_KERNEL_TIMER_SETUP */ + +/* kernel_write() take loff_t pointer */ +/* #undef HAVE_KERNEL_WRITE_PPOS */ + +/* kmem_cache_create_usercopy() exists */ +/* #undef HAVE_KMEM_CACHE_CREATE_USERCOPY */ + +/* kstrtoul() exists */ +/* #undef HAVE_KSTRTOUL */ + +/* ktime_get_coarse_real_ts64() exists */ +/* #undef HAVE_KTIME_GET_COARSE_REAL_TS64 */ + +/* ktime_get_raw_ts64() exists */ +/* #undef HAVE_KTIME_GET_RAW_TS64 */ + +/* kvmalloc exists */ +/* #undef HAVE_KVMALLOC */ + +/* Define if you have [aio] */ +/* #undef HAVE_LIBAIO */ + +/* Define if you have [blkid] */ +/* #undef HAVE_LIBBLKID */ + +/* Define if you have [crypto] */ +#define HAVE_LIBCRYPTO 1 + +/* Define if you have [tirpc] */ +/* #undef HAVE_LIBTIRPC */ + +/* Define if you have [udev] */ +/* #undef HAVE_LIBUDEV */ + +/* Define if you have [uuid] */ +/* #undef HAVE_LIBUUID */ + +/* linux/blk-cgroup.h exists */ +/* #undef HAVE_LINUX_BLK_CGROUP_HEADER */ + +/* lseek_execute() is available */ +/* #undef HAVE_LSEEK_EXECUTE */ + +/* makedev() is declared in sys/mkdev.h */ +/* #undef HAVE_MAKEDEV_IN_MKDEV */ + +/* makedev() is declared in sys/sysmacros.h */ +/* #undef HAVE_MAKEDEV_IN_SYSMACROS */ + +/* Noting that make_request_fn() returns blk_qc_t */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_QC */ + +/* Noting that make_request_fn() returns void */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_VOID */ + +/* iops->mkdir() takes umode_t */ +/* #undef HAVE_MKDIR_UMODE_T */ + +/* Define to 1 if you have the `mlockall' function. */ +#define HAVE_MLOCKALL 1 + +/* lookup_bdev() wants mode arg */ +/* #undef HAVE_MODE_LOOKUP_BDEV */ + +/* Define if host toolchain supports MOVBE */ +#define HAVE_MOVBE 1 + +/* new_sync_read()/new_sync_write() are available */ +/* #undef HAVE_NEW_SYNC_READ */ + +/* folio_wait_bit() exists */ +/* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */ + +/* part_to_dev() exists */ +/* #undef HAVE_PART_TO_DEV */ + +/* iops->getattr() takes a path */ +/* #undef HAVE_PATH_IOPS_GETATTR */ + +/* Define if host toolchain supports PCLMULQDQ */ +#define HAVE_PCLMULQDQ 1 + +/* percpu_counter_add_batch() is defined */ +/* #undef HAVE_PERCPU_COUNTER_ADD_BATCH */ + +/* percpu_counter_init() wants gfp_t */ +/* #undef HAVE_PERCPU_COUNTER_INIT_WITH_GFP */ + +/* posix_acl_chmod() exists */ +/* #undef HAVE_POSIX_ACL_CHMOD */ + +/* posix_acl_from_xattr() needs user_ns */ +/* #undef HAVE_POSIX_ACL_FROM_XATTR_USERNS */ + +/* posix_acl_release() is available */ +/* #undef HAVE_POSIX_ACL_RELEASE */ + +/* posix_acl_release() is GPL-only */ +/* #undef HAVE_POSIX_ACL_RELEASE_GPL_ONLY */ + +/* posix_acl_valid() wants user namespace */ +/* #undef HAVE_POSIX_ACL_VALID_WITH_NS */ + +/* proc_ops structure exists */ +/* #undef HAVE_PROC_OPS_STRUCT */ + +/* iops->put_link() cookie */ +/* #undef HAVE_PUT_LINK_COOKIE */ + +/* iops->put_link() delayed */ +/* #undef HAVE_PUT_LINK_DELAYED */ + +/* iops->put_link() nameidata */ +/* #undef HAVE_PUT_LINK_NAMEIDATA */ + +/* If available, contains the Python version number currently in use. */ +#define HAVE_PYTHON "3.7" + +/* qat is enabled and existed */ +/* #undef HAVE_QAT */ + +/* struct reclaim_state has reclaimed */ +/* #undef HAVE_RECLAIM_STATE_RECLAIMED */ + +/* register_shrinker is vararg */ +/* #undef HAVE_REGISTER_SHRINKER_VARARG */ + +/* register_sysctl_table exists */ +/* #undef HAVE_REGISTER_SYSCTL_TABLE */ + +/* iops->rename2() exists */ +/* #undef HAVE_RENAME2 */ + +/* struct inode_operations_wrapper takes .rename2() */ +/* #undef HAVE_RENAME2_OPERATIONS_WRAPPER */ + +/* iops->rename() wants flags */ +/* #undef HAVE_RENAME_WANTS_FLAGS */ + +/* REQ_DISCARD is defined */ +/* #undef HAVE_REQ_DISCARD */ + +/* REQ_FLUSH is defined */ +/* #undef HAVE_REQ_FLUSH */ + +/* REQ_OP_DISCARD is defined */ +/* #undef HAVE_REQ_OP_DISCARD */ + +/* REQ_OP_FLUSH is defined */ +/* #undef HAVE_REQ_OP_FLUSH */ + +/* REQ_OP_SECURE_ERASE is defined */ +/* #undef HAVE_REQ_OP_SECURE_ERASE */ + +/* REQ_PREFLUSH is defined */ +/* #undef HAVE_REQ_PREFLUSH */ + +/* revalidate_disk() is available */ +/* #undef HAVE_REVALIDATE_DISK */ + +/* revalidate_disk_size() is available */ +/* #undef HAVE_REVALIDATE_DISK_SIZE */ + +/* struct rw_semaphore has member activity */ +/* #undef HAVE_RWSEM_ACTIVITY */ + +/* struct rw_semaphore has atomic_long_t member count */ +/* #undef HAVE_RWSEM_ATOMIC_LONG_COUNT */ + +/* linux/sched/signal.h exists */ +/* #undef HAVE_SCHED_SIGNAL_HEADER */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SECURITY_PAM_MODULES_H 1 + +/* setattr_prepare() accepts mnt_idmap */ +/* #undef HAVE_SETATTR_PREPARE_IDMAP */ + +/* setattr_prepare() is available, doesn't accept user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_NO_USERNS */ + +/* setattr_prepare() accepts user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_USERNS */ + +/* iops->set_acl() exists, takes 3 args */ +/* #undef HAVE_SET_ACL */ + +/* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */ +/* #undef HAVE_SET_ACL_IDMAP_DENTRY */ + +/* iops->set_acl() takes 4 args */ +/* #undef HAVE_SET_ACL_USERNS */ + +/* iops->set_acl() takes 4 args, arg2 is struct dentry * */ +/* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */ + +/* set_cached_acl() is usable */ +/* #undef HAVE_SET_CACHED_ACL_USABLE */ + +/* set_special_state() exists */ +/* #undef HAVE_SET_SPECIAL_STATE */ + +/* struct shrink_control exists */ +/* #undef HAVE_SHRINK_CONTROL_STRUCT */ + +/* kernel_siginfo_t exists */ +/* #undef HAVE_SIGINFO */ + +/* signal_stop() exists */ +/* #undef HAVE_SIGNAL_STOP */ + +/* new shrinker callback wants 2 args */ +/* #undef HAVE_SINGLE_SHRINKER_CALLBACK */ + +/* cs->count_objects exists */ +/* #undef HAVE_SPLIT_SHRINKER_CALLBACK */ + +#if defined(__amd64__) || defined(__i386__) +/* Define if host toolchain supports SSE */ +#define HAVE_SSE 1 + +/* Define if host toolchain supports SSE2 */ +#define HAVE_SSE2 1 + +/* Define if host toolchain supports SSE3 */ +#define HAVE_SSE3 1 + +/* Define if host toolchain supports SSE4.1 */ +#define HAVE_SSE4_1 1 + +/* Define if host toolchain supports SSE4.2 */ +#define HAVE_SSE4_2 1 + +/* Define if host toolchain supports SSSE3 */ +#define HAVE_SSSE3 1 +#endif + +/* STACK_FRAME_NON_STANDARD is defined */ +/* #undef HAVE_STACK_FRAME_NON_STANDARD */ + +/* standalone exists */ +/* #undef HAVE_STANDALONE_LINUX_STDARG */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strlcat' function. */ +#define HAVE_STRLCAT 1 + +/* Define to 1 if you have the `strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* submit_bio is member of struct block_device_operations */ +/* #undef HAVE_SUBMIT_BIO_IN_BLOCK_DEVICE_OPERATIONS */ + +/* super_setup_bdi_name() exits */ +/* #undef HAVE_SUPER_SETUP_BDI_NAME */ + +/* super_block->s_user_ns exists */ +/* #undef HAVE_SUPER_USER_NS */ + +/* sync_blockdev() is declared in include/blkdev.h */ +/* #undef HAVE_SYNC_BLOCKDEV */ + +/* struct kobj_type has default_groups */ +/* #undef HAVE_SYSFS_DEFAULT_GROUPS */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* i_op->tmpfile() exists */ +/* #undef HAVE_TMPFILE */ + +/* i_op->tmpfile() uses old dentry signature */ +/* #undef HAVE_TMPFILE_DENTRY */ + +/* i_op->tmpfile() has mnt_idmap */ +/* #undef HAVE_TMPFILE_IDMAP */ + +/* i_op->tmpfile() has userns */ +/* #undef HAVE_TMPFILE_USERNS */ + +/* totalhigh_pages() exists */ +/* #undef HAVE_TOTALHIGH_PAGES */ + +/* kernel has totalram_pages() */ +/* #undef HAVE_TOTALRAM_PAGES_FUNC */ + +/* Define to 1 if you have the `udev_device_get_is_initialized' function. */ +/* #undef HAVE_UDEV_DEVICE_GET_IS_INITIALIZED */ + +/* kernel has __kernel_fpu_* functions */ +/* #undef HAVE_UNDERSCORE_KERNEL_FPU */ + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* iops->getattr() takes struct user_namespace* */ +/* #undef HAVE_USERNS_IOPS_GETATTR */ + +/* iops->setattr() takes struct user_namespace* */ +/* #undef HAVE_USERNS_IOPS_SETATTR */ + +/* user_namespace->ns.inum exists */ +/* #undef HAVE_USER_NS_COMMON_INUM */ + +/* iops->getattr() takes a vfsmount */ +/* #undef HAVE_VFSMOUNT_IOPS_GETATTR */ + +/* fops->clone_file_range() is available */ +/* #undef HAVE_VFS_CLONE_FILE_RANGE */ + +/* fops->copy_file_range() is available */ +/* #undef HAVE_VFS_COPY_FILE_RANGE */ + +/* fops->dedupe_file_range() is available */ +/* #undef HAVE_VFS_DEDUPE_FILE_RANGE */ + +/* aops->direct_IO() uses iovec */ +/* #undef HAVE_VFS_DIRECT_IO_IOVEC */ + +/* aops->direct_IO() uses iov_iter without rw */ +/* #undef HAVE_VFS_DIRECT_IO_ITER */ + +/* aops->direct_IO() uses iov_iter with offset */ +/* #undef HAVE_VFS_DIRECT_IO_ITER_OFFSET */ + +/* aops->direct_IO() uses iov_iter with rw and offset */ +/* #undef HAVE_VFS_DIRECT_IO_ITER_RW_OFFSET */ + +/* filemap_dirty_folio exists */ +/* #undef HAVE_VFS_FILEMAP_DIRTY_FOLIO */ + +/* file_operations_extend takes .copy_file_range() and .clone_file_range() */ *** 241 LINES SKIPPED *** From nobody Tue Nov 21 01:18:42 2023 X-Original-To: dev-commits-src-main@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 4SZ62p2PW5z51RrF; Tue, 21 Nov 2023 01:18:42 +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 4SZ62p1jwjz4dLN; Tue, 21 Nov 2023 01:18:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700529522; 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=Nfoq+kgDX0pOPJ3bWlYgVdWJvS9aYygYwymMh7XY3Cc=; b=uy7ZtATGqHmgWlH+D3GD1Nihfj0Ed8EBw7elIWn3e32e+Y0Mdd8yIOsukYi6bqEJMRDMLj mdyDJmjERl4jwLxyjmmkafbprrfe9K461P+264D/5hCwJqxvQ53h1tVq2UFhXs+AA7LvHB CpcTwjT/8+x6/BegxrVy2Vbt+uj8e0lY06umgS6Lo/AYw+r8CyRBvBbsoZVcSzIQi83RF0 w7yeCyJu8IwbFP79ON5yn5FEPnLJcLy5B0YomKGkAIp41PBGxDi4i0Tg8OuqiTbL0cOyh1 Ptr/s6m37IvjgPw3FV73IPiTIeED6SJ1CUmc7NB9dcZNq4NcyO67t1nSNL79UA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700529522; 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=Nfoq+kgDX0pOPJ3bWlYgVdWJvS9aYygYwymMh7XY3Cc=; b=RTrOusS6lbDsQevXyFIfRVkqp4wmqv3xo2NQ8ZToAVQfdKCqToJi62HDvEqHPJ+TBRnlVW czP9ah4Co3kMCkl9alU4RHSmkhliCtpbuw2hd0oEyKLZIBy8XACprp8bTQBwf0rnIhxSMi gJyNyS7iI0wQBNPWIMgk6qBBf1O/j9OjoLXODZwYI0k2Qskl6UdgkCpbfpyYFN9O+gwuBk tkVz7kZQZoSnyuXbGtDzggJIwWf4v/5VnUIhE6eZukfCdUc2y7CDkKrTjG73eDLFd6gcBa ncOfGrlRuTjh9EqFegk3fbv6RCcby3hUz2FNl0TyaDpOMoEd3Hknpi3aOy+1Mg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700529522; a=rsa-sha256; cv=none; b=WGEeX+4Bz+SfM28YI3k1p3Jd7yMwPHU4b1zqcB785QCceupbjutHoPniHtODyyUz9gkb18 pv+1eiGat8tQ5b7l6HV6VDZhVWpm6THkvzCdxs4VzVyKK9D9qtLVns52CRBB4qdnYHbad5 5KChnyWUZXBLaCCLu4IQwGLgMBd2HeDE4mofZGY6ihwO1T64I8wDpqUMVUH7VeL0FZal6k LBuwymJBRgAsqGEeBVv8BzgUtu+ZYpNiBQQTW/tGSBaNb5HKSaIiUB8gITy18q2NJItpfr 6Pfj9BbOq//D6oHjFNhPv9IPOXiAyMb55SoQCnETkUYWVmpzcc/grZVbi0aHTg== 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 4SZ62p0pBdzQC; Tue, 21 Nov 2023 01:18:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL1Igg1008630; Tue, 21 Nov 2023 01:18:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL1Ig9h008627; Tue, 21 Nov 2023 01:18:42 GMT (envelope-from git) Date: Tue, 21 Nov 2023 01:18:42 GMT Message-Id: <202311210118.3AL1Ig9h008627@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Robert Wing Subject: git: fb51ddb20d57 - main - bhyve: increase fbuf display resolution limit List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fb51ddb20d57a43d666508e600af1bc7ac85c4e8 Auto-Submitted: auto-generated The branch main has been updated by rew: URL: https://cgit.FreeBSD.org/src/commit/?id=fb51ddb20d57a43d666508e600af1bc7ac85c4e8 commit fb51ddb20d57a43d666508e600af1bc7ac85c4e8 Author: Robert Wing AuthorDate: 2023-11-21 01:17:53 +0000 Commit: Robert Wing CommitDate: 2023-11-21 01:17:53 +0000 bhyve: increase fbuf display resolution limit This enables connecting to the VNC server at a higher resolution. Reviewed by: corvink, markj Differential Revision: https://reviews.freebsd.org/D42620 --- usr.sbin/bhyve/pci_fbuf.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/usr.sbin/bhyve/pci_fbuf.c b/usr.sbin/bhyve/pci_fbuf.c index a6bf508a46e6..9a4d7900751a 100644 --- a/usr.sbin/bhyve/pci_fbuf.c +++ b/usr.sbin/bhyve/pci_fbuf.c @@ -71,10 +71,10 @@ static int fbuf_debug = 1; #define DMEMSZ 128 -#define FB_SIZE (16*MB) +#define FB_SIZE (32*MB) -#define COLS_MAX 1920 -#define ROWS_MAX 1200 +#define COLS_MAX 3840 +#define ROWS_MAX 2160 #define COLS_DEFAULT 1024 #define ROWS_DEFAULT 768 From nobody Tue Nov 21 03:30:33 2023 X-Original-To: dev-commits-src-main@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 4SZ8yy0TgFz51fNY; Tue, 21 Nov 2023 03:30:34 +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 4SZ8yx73rHz3Pvc; Tue, 21 Nov 2023 03:30:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700537434; 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=WDDXLMuBLkYtS0w45E2nvd0SpT/dgM5mAht4NraPZvY=; b=OMIpdIjETS9mfc1Z16iUrvXMt94N6p6lihtQ2glPqBvZj+rKolZoD+LmNJu+cuP+6tzEao sb+nuEwKVSIsoQEWnzp0MVUoPdWJFfXxpYzFwEL9UsDqV6abKXAn/LArf2Le9a6hMa6yYc qLAZrDMdxc2nca/HYHzbbIdXxliP8hDeAKTfXvqZvTAugHJEht1nT12T26mGz/jz3OEk3O DnKsr3+6Z0LVzWfP5xVelr+AZD2kkl8QUEP4Ep2Lr0uDQRpXvNB2XhiCTnnGgv7ck0UiyO ZoIvy/WWeQdhORgZ84TWQOSq72k+p/sFy/SOcuPwuxMD1L9/kX5D6TVSis1qfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700537434; 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=WDDXLMuBLkYtS0w45E2nvd0SpT/dgM5mAht4NraPZvY=; b=OL3mxAva18b2txYvXu8sGHVItEISIzYb/NL9ymSnq88+3FaM0BBypYpthVfQkdaNlm71F4 atatmGHVIzUz80guaoofE0lU2ftRwvBTYH+qGmQjVr9SJEs1tm0wiSAflgrNWpswqWTrIE ygHX73BxTJhrXcBJ73RaMDvH6g6goBA7MAHJcMXPWq3iaH49eYDiRrBz5/viy4Cja9JLhg 7/VV3TAlo6EtoegsY1BTfcb8Fnb2xK9v8ccFmQ3FTHi4biDylqd+Cf6zBb3Hw++wzpzegG NgJDHKQEH+yaFXyWoum0o7OQvEU9liYYkrw7gtSAHdyQhSj507oAE7NnaObT3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700537434; a=rsa-sha256; cv=none; b=CCvIIirzx0t+ONNaBqVC9ylG5BWobjul3vpyJc6Ka85lIELLq8vNs5IK0G54FsZwX/ZTcL 28csbwYarvtKvg8rwyYBb8KwX5mctn7Bb6I/MrLNo4usDJlqYKat+6OhSavaTc2mzaTHqK F/9J8ncQcnIIx1tycq3tfLm6fsve+7HV9MKvzma9pMcYPBAQ0Si0+BAXr5sKqHf7wHRNac ZZyBg1d6Fi0ndugNlQDAvT/kmEdn303fCToBk/C+jG4Fdr2fqhJvKF21whqmB+IJzORM7p xE8UbY/8pLg22OBPKfdVMvpXqSBzOQ06xXkG13vKO7xKw9wGAgxl4dOlQ0juQw== 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 4SZ8yx66htz47f; Tue, 21 Nov 2023 03:30:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL3UXRs035693; Tue, 21 Nov 2023 03:30:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL3UXko035690; Tue, 21 Nov 2023 03:30:33 GMT (envelope-from git) Date: Tue, 21 Nov 2023 03:30:33 GMT Message-Id: <202311210330.3AL3UXko035690@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: f213da893ca8 - main - Makefile.inc1: Remove beri straggler List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f213da893ca8c7c76e1656b36d3a10f93f9a1760 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=f213da893ca8c7c76e1656b36d3a10f93f9a1760 commit f213da893ca8c7c76e1656b36d3a10f93f9a1760 Author: Warner Losh AuthorDate: 2023-11-21 03:30:02 +0000 Commit: Warner Losh CommitDate: 2023-11-21 03:30:02 +0000 Makefile.inc1: Remove beri straggler Beri's boot loader needed md5 to build. It was the only thing that needed that, so remove it (confirmed with univers and grep). Sponsored by: Netflix --- Makefile.inc1 | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index f47b9f66b69e..82f3ef061d98 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2535,11 +2535,6 @@ _basic_bootstrap_tools+=usr.bin/mkfifo # jot is needed for the mkimg tests _basic_bootstrap_tools+=usr.bin/jot -.if ${MK_BOOT} != "no" -# md5 is used by boot/beri (and possibly others) -_basic_bootstrap_tools+=sbin/md5 -.endif - # tzsetup is needed as an install tool .if ${MK_ZONEINFO} != "no" _basic_bootstrap_tools+=usr.sbin/tzsetup From nobody Tue Nov 21 03:30:34 2023 X-Original-To: dev-commits-src-main@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 4SZ8yz1SMBz51fGZ; Tue, 21 Nov 2023 03:30:35 +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 4SZ8yz0kW2z3Q1w; Tue, 21 Nov 2023 03:30:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700537435; 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=efufbhj4lge8Lo+D9EtEheVCrBR75sIvd6lBo6oEXzs=; b=WD8UOXBuG2CfkK5uecikOjmWeBch5doHHzu0i5mC7PiRX9A57rbteiXut+3Do9weQr4SAE KhNzpjDN/ESdWLWrigtOssE7hH3CW2muFqVUdC81vddGlhV9nYvBg6rISjmXJXbio5tk1a E8wmGr8BBwgG7ZvKvplRpy04zTsWHrNj3g3au1OwLn1Wz8oBCQsEEa/dKQk9unC2xAVkOs fs8ZzYzlBZst8XFC34wyh0LYhx0zj71OQOFeFu/qx4XOzxcpOxLscHEFb3rYMMHoDRbqbv BlMW3o5YGmOt8Sa48qKaQv5dmJxWWhDF4dSBGPId+Z7LLkKtj+fttsrOhSU83g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700537435; 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=efufbhj4lge8Lo+D9EtEheVCrBR75sIvd6lBo6oEXzs=; b=L9mBtQJNKLDZ+eiZ/IlLPvK3vnUS/NGAXxFn9a79b1Lqg9VNUvtmwTa8mQkDnk9fqoEI3w fAqxIAr1jF0MmEmCxXFXwm/18nIrTWsxr/dGHGb1bQsZdwqIQ27yySARRQBvJ6h+aE31QC PtrS7jvygsFjoMOCpvczJf1vu7qZelhsDAAz8WJtwAYIoyn4hKVF3Nm81S/WFbpAbHqQnN CXHpyPRhLqyEUpzkwrvo+K8N7nkfQw9L5+Xp6CGSiWp5TCPyc97d2M1EXHVrjX8Vzg7T6u L9cEU1A90aoVb2tFa66LSzmxgSL1RjAHdZXFB9F77+HyxJrJNXLxeiq6M0uzmw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700537435; a=rsa-sha256; cv=none; b=DbS0iB3Y9w5CmHoRTqSbmp2mgYyl6CDphOuBpfw1wG5X/CIVxL+2eQnDemqgcMHezMabcd IhTNttc9Cf7pRNLCNIuj8U5YPHILjFdbKAqdDus73WELSyszG0JfIwam4S+N4RhEfR9I9U y6gWMRzzFgKjxzdlbiZJmKu8CNEYOLqtFiWx9UxhrhFKVnD4yLMvrKaRU8H6hMhM2hGOxG xCbVgerXxoMvoVk+N829l1XbFmaooHX9l8XDasPaKIFoJnfPTLO00NUE15RoQkar98aS4b Lzd0GWPI/lzkDGKLL4FTtY5GiR4gE1YJ/I6Q4MY9ATk5RiZSwvjZ/8FnXys1kg== 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 4SZ8yy6sN3z3m1; Tue, 21 Nov 2023 03:30:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AL3UY95035732; Tue, 21 Nov 2023 03:30:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AL3UYoe035729; Tue, 21 Nov 2023 03:30:34 GMT (envelope-from git) Date: Tue, 21 Nov 2023 03:30:34 GMT Message-Id: <202311210330.3AL3UYoe035729@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 0abe05aeac29 - main - stand: bandaide for acpi List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0abe05aeac29d99786401b9078e97dcead35f7f3 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=0abe05aeac29d99786401b9078e97dcead35f7f3 commit 0abe05aeac29d99786401b9078e97dcead35f7f3 Author: Warner Losh AuthorDate: 2023-11-21 03:30:16 +0000 Commit: Warner Losh CommitDate: 2023-11-21 03:30:16 +0000 stand: bandaide for acpi Old binaries do not set acpi.rsdp early enough. So when we boot with an older loader.efi from an ESP that's not been updated, we assume there's no ACPI on this system. This is unwise. Put a band-aide on this until we can implement a proper 'feature' variable that the binary reports so we can do conditionals for things like this in the future. This is at best a rapid-response stop-gap. Glanced at by: kevans Sponsored by: Netflix --- UPDATING | 6 ++++++ stand/lua/core.lua | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index 763f8f29a4f0..8b503e1ccfb6 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20231120: + If you have an arm64 system that uses ACPI, you will need to update your + loader.efi in the ESP when you update past this point. Detection of ACPI + was moved earlier in the binary so the scripts could use it, but old + binaries don't have this, so we default to 'no ACPI' in this case. + 20231113: The WITHOUT_LLD_IS_LD option has been removed. When LLD is enabled it is always installed as /usr/bin/ld. diff --git a/stand/lua/core.lua b/stand/lua/core.lua index 718783309687..f4a2815769c9 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -136,9 +136,14 @@ function core.hasACPI() return loader.getenv("acpi.rsdp") ~= nil end +function core.isX86() + return loader.machine_arch == "i386" or loader.machine_arch == "amd64" +end + function core.getACPI() if not core.hasACPI() then - return false + -- x86 requires ACPI pretty much + return false or core.isX86() end -- Otherwise, respect disabled if it's set From nobody Tue Nov 21 11:17:19 2023 X-Original-To: dev-commits-src-main@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 4SZMKW405Fz51QDf; Tue, 21 Nov 2023 11:17:19 +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 4SZMKW3PMDz3LJv; Tue, 21 Nov 2023 11:17:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700565439; 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=HiyR4NILW7cHy8kPBP3/OuzTe4ehpE8Ob3+MAgQ8o7s=; b=Tut0mOJygXKIixujNfh3RGv6ViFb0Z8TJ3PP+NXpkK54HIh9YXUPEt7iOC0xk0zBY15IET BEu+MOx+JWdiU0GQK7shB4C6TwBiNMyOseTuH8aDI3O4DTPrgrCG0DPlCyFKRRcMt5TnBD +RYhejp/IcsWvPZNRRdJ2HD+8ge7iP14eaf5Y9xE19tv2erp64BtO/sI/jXyUsR0ZQos95 DrA1SdOa9s8EMzq/JFLlLJAkkLXxQVRIFS084PYPJ5ckeHOB/J+JlcQHROdPuLfLP9h28q v4RFAWhwgMe8OuR1w1iRKJjrWz99yiaBRscKDPt2dmDc0dg/LkHMO2x9SSF+AA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700565439; 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=HiyR4NILW7cHy8kPBP3/OuzTe4ehpE8Ob3+MAgQ8o7s=; b=XK/bzHKLy4qf9b4akjCUFj+DV8FfCnTjseGYviflPP2OIrNMT+8FapTue0ocUxdEjSAB2p Qo582kxui+CgbTSxkdnoRusxstcNMec90ZPs65C2qn4dEIepr/N6eaqufcoRrWI7ROCWjt K/oXD7vpiNZxWXUNIIlQrdlTO+V3d5wrPBt8GNgQIwba+Dzm8VQQmvLT7xua0jMVR0c2/A ND97+/RLtDc7p6oUjxvRtL+I6AuRGnwoC1E39K/0F4HNFprq8CymW445Yl4Hwa4XhBdaIe b0AZDhjDMzqgglV0H+06SJNLt6UeU8lP8jOQknwdZuP+howXhhlrUmkWa07Ssg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700565439; a=rsa-sha256; cv=none; b=tnifwK6CVSm4KAIhyWp6LipPOUbcePpvoAMyUO+oHS3AvVKrRi+60/zEUjhXmS27zWBebU 6HSAGW+CPBAKTqFCPuh7pdgkEsL2Vc6YZIKZ2JZPSQy+xSf85jGhJAi2bMZWkeyEImAw6t ynkufD9Qp9QDM4k1v/H0lFNnqMEIP7Hh6OiOFm16vJoZEsZTdbUu3pVHc28fzK9aUVTD+P IAITl6f2XJfGuEoqFebrwCGiDnhR4jluhWxC/sUUoGgIdaz4klGCRqd3pFiBrc49GerkkD ZyL5kc7VQij7BwJzo4IVyI3j6/39NW/hq5AS82m7MXW9Yf+oB/T+hetOzeWRxA== 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 4SZMKW2QsdzYcd; Tue, 21 Nov 2023 11:17:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALBHJxJ009671; Tue, 21 Nov 2023 11:17:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALBHJIf009668; Tue, 21 Nov 2023 11:17:19 GMT (envelope-from git) Date: Tue, 21 Nov 2023 11:17:19 GMT Message-Id: <202311211117.3ALBHJIf009668@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: f3a83b3a6257 - main - arm64: Remove an old comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f3a83b3a6257ea0fd5aba66ff42218350228b321 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=f3a83b3a6257ea0fd5aba66ff42218350228b321 commit f3a83b3a6257ea0fd5aba66ff42218350228b321 Author: Andrew Turner AuthorDate: 2023-11-15 18:18:15 +0000 Commit: Andrew Turner CommitDate: 2023-11-21 09:30:45 +0000 arm64: Remove an old comment This was missed when removing kern_delta Sponsored by: Arm Ltd --- sys/arm64/arm64/locore.S | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S index 0b177438da82..bace478901a5 100644 --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -134,8 +134,6 @@ virtdone: sub sp, sp, #BOOTPARAMS_SIZE mov x0, sp - /* Negate the delta so it is VA -> PA */ - str x1, [x0, #BP_MODULEP] adrp x25, initstack add x25, x25, :lo12:initstack From nobody Tue Nov 21 11:17:20 2023 X-Original-To: dev-commits-src-main@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 4SZMKX5J9Zz51Q84; Tue, 21 Nov 2023 11:17:20 +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 4SZMKX4dlMz3LGn; Tue, 21 Nov 2023 11:17:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700565440; 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=StEhzTFBKLYJRzw943W6pCVz74iHF93yDlR4Gd5Q16Y=; b=QHNtEJ9dr0n5fwgXfUS6bMZB/r2nGthPBOEEAS4gdcI/XTPDKqrkp15F/omriU03lXtHn1 luxQMPro3a+eBeZXtc+BOjTy0Hjs/rtXM2KsSE4J6Wi1wyhQ02VQQhCHaKUWfz8W8RhNkz QDvLdtgEPQFoQ7nl/8d1xTTrE1yDKFjq42HqmGs0+87ZaGLsXKegdjhykXfUN/gER8hdJC mkGQOmwuHOvg/2cAtY9wJR19J7WUAIHZ9KGD+HAnnXHDYWRTn+KOrNCLOUAUN1mbJPeisc VVhYQtO54qX4rQ11Gq48DbRtErDL1xNCHjnPhBbWwDX1sDSuTwD51wutpknoRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700565440; 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=StEhzTFBKLYJRzw943W6pCVz74iHF93yDlR4Gd5Q16Y=; b=UGpf81rhM5kRTqzvlDPkzIwnfkoMcn6ss1PipBhvGDlb11p5arfQM4Aq9WmZY6mw+0aT+E YQFyPp2lqH3k+A4Adl+WJO8ssSyfXUhvDEohbnutYVoCSRm7DCgvNCkh8gJ6NKUFBHo6tf RMFzKSNHZQUPSR/yFOQHNTXeGLQTVmOpOIH2pNowNpKHD9+wx9IEXWvbnkElH1O4VZ3s0d ZRV5SDCzEnKurYoo4u3FBXPx+AJf4mRd8EA7Ss1pSlRDZ7R8/pvG8FfrVF9TWZanpvDJem pcTEU81AKwHj/Hz9CmluDwpjZ5ZPSNUrP8T9GIrdDtpAzSt8UD9Ed/liMnI3uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700565440; a=rsa-sha256; cv=none; b=oHWv1zfkwOOUtkvj2MBoSoBz7ef6GXdCrNkBCLWszpPmXF3jXe4qLUNiyP31zJ2qVV632h nUAnNAwCZqm3YgjtJe8gitCOL9TvtAdfWQWUxiLb94pU6+QVLNFbtea53PVi0S9v1Tj6Du M+nfAqxHTQO72X+KGmVEOAtAEnIjbX/fcuviY/ThXn7smhvrW6ll0LqnnawgE9DxKxTo/O P/pGmnDuTRTXovTpEktwZ1VxRSJ7+qje7bXZc2XM4Iwj6/9mMY2Kk/gS0wIxafE5eBOcR2 QGtH4KjwlP2TkbdeV70QfZX4dsL+2bd5u0Z0D+lvWmixKHkB1OAG669pyDpJ3Q== 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 4SZMKX3QcZzYTj; Tue, 21 Nov 2023 11:17:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALBHK3C009722; Tue, 21 Nov 2023 11:17:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALBHKjC009720; Tue, 21 Nov 2023 11:17:20 GMT (envelope-from git) Date: Tue, 21 Nov 2023 11:17:20 GMT Message-Id: <202311211117.3ALBHKjC009720@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: fd5aaf2ea017 - main - libc: Teach libc about the BTI elf note List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fd5aaf2ea0178b03aa93c35245053247e5d3840c Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=fd5aaf2ea0178b03aa93c35245053247e5d3840c commit fd5aaf2ea0178b03aa93c35245053247e5d3840c Author: Andrew Turner AuthorDate: 2023-10-12 14:22:18 +0000 Commit: Andrew Turner CommitDate: 2023-11-21 10:02:51 +0000 libc: Teach libc about the BTI elf note Add the Branch Target Identification (BTI) note to libc assembly sources. As all obect files need the note for the library to have it we need to insert it in all asm files. Reviewed by: emaste, markj Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42228 --- lib/libc/aarch64/gen/_ctx_start.S | 4 ++++ lib/libc/aarch64/gen/_setjmp.S | 3 +++ lib/libc/aarch64/gen/fabs.S | 4 ++++ lib/libc/aarch64/gen/setjmp.S | 3 +++ lib/libc/aarch64/gen/sigsetjmp.S | 3 +++ lib/libc/aarch64/string/memmove.S | 4 ++++ lib/libc/aarch64/sys/cerror.S | 4 ++++ lib/libc/aarch64/sys/syscall.S | 3 +++ lib/libc/aarch64/sys/vfork.S | 3 +++ lib/libc/sys/Makefile.inc | 7 +++++++ 10 files changed, 38 insertions(+) diff --git a/lib/libc/aarch64/gen/_ctx_start.S b/lib/libc/aarch64/gen/_ctx_start.S index 15edcf21d463..a4049e6c241a 100644 --- a/lib/libc/aarch64/gen/_ctx_start.S +++ b/lib/libc/aarch64/gen/_ctx_start.S @@ -27,9 +27,13 @@ */ #include +#include + ENTRY(_ctx_start) blr x19 /* Call func from makecontext */ mov x0, x20 /* Load ucp saved in makecontext */ bl _C_LABEL(ctx_done) bl _C_LABEL(abort) END(_ctx_start) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/gen/_setjmp.S b/lib/libc/aarch64/gen/_setjmp.S index 4fc9ce304893..037eccf1a48a 100644 --- a/lib/libc/aarch64/gen/_setjmp.S +++ b/lib/libc/aarch64/gen/_setjmp.S @@ -30,6 +30,7 @@ #include #include +#include ENTRY(_setjmp) /* Store the magic value and stack pointer */ @@ -101,3 +102,5 @@ botch: bl _C_LABEL(abort) #endif END(_longjmp) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/gen/fabs.S b/lib/libc/aarch64/gen/fabs.S index 29e4b89d5ee1..91967a10299b 100644 --- a/lib/libc/aarch64/gen/fabs.S +++ b/lib/libc/aarch64/gen/fabs.S @@ -24,7 +24,11 @@ */ #include +#include + ENTRY(fabs) fabs d0, d0 ret END(fabs) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/gen/setjmp.S b/lib/libc/aarch64/gen/setjmp.S index ecc677de2620..97d98ae2fb52 100644 --- a/lib/libc/aarch64/gen/setjmp.S +++ b/lib/libc/aarch64/gen/setjmp.S @@ -30,6 +30,7 @@ #include #include +#include ENTRY(setjmp) sub sp, sp, #16 @@ -119,3 +120,5 @@ botch: bl _C_LABEL(longjmperror) bl _C_LABEL(abort) END(longjmp) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/gen/sigsetjmp.S b/lib/libc/aarch64/gen/sigsetjmp.S index cdff7a46c85b..daf3914b6278 100644 --- a/lib/libc/aarch64/gen/sigsetjmp.S +++ b/lib/libc/aarch64/gen/sigsetjmp.S @@ -28,6 +28,7 @@ #include #include +#include ENTRY(sigsetjmp) cmp x1, #0 @@ -52,3 +53,5 @@ ENTRY(siglongjmp) .Lmagic: .quad _JB_MAGIC__SETJMP END(siglongjmp) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/string/memmove.S b/lib/libc/aarch64/string/memmove.S index e2f99790e0da..6ca014b3a565 100644 --- a/lib/libc/aarch64/string/memmove.S +++ b/lib/libc/aarch64/string/memmove.S @@ -3,3 +3,7 @@ * as it stops MISRCS from picking up the C implementation and rtld expects * to copy the memmove object file into its object directory. */ + +#include +#include +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/sys/cerror.S b/lib/libc/aarch64/sys/cerror.S index a83514bc2511..85e75af8ec0d 100644 --- a/lib/libc/aarch64/sys/cerror.S +++ b/lib/libc/aarch64/sys/cerror.S @@ -25,6 +25,8 @@ */ #include +#include + ENTRY(cerror) .hidden cerror sub sp, sp, #16 @@ -37,3 +39,5 @@ ENTRY(cerror) add sp, sp, #16 ret END(cerror) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/sys/syscall.S b/lib/libc/aarch64/sys/syscall.S index 2c7e207f82f7..037c4b12ddae 100644 --- a/lib/libc/aarch64/sys/syscall.S +++ b/lib/libc/aarch64/sys/syscall.S @@ -27,6 +27,9 @@ */ #include +#include #include "SYS.h" RSYSCALL(syscall) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/aarch64/sys/vfork.S b/lib/libc/aarch64/sys/vfork.S index f9489738a3c7..03ae5a6325ba 100644 --- a/lib/libc/aarch64/sys/vfork.S +++ b/lib/libc/aarch64/sys/vfork.S @@ -25,6 +25,7 @@ */ #include +#include #include "SYS.h" ENTRY(__sys_vfork) @@ -38,3 +39,5 @@ ENTRY(__sys_vfork) mov lr, x2 ret END(__sys_vfork) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) diff --git a/lib/libc/sys/Makefile.inc b/lib/libc/sys/Makefile.inc index e9a9f8f5935c..53c7a1c20580 100644 --- a/lib/libc/sys/Makefile.inc +++ b/lib/libc/sys/Makefile.inc @@ -124,12 +124,18 @@ NOTE_GNU_STACK='\t.section .note.GNU-stack,"",%%progbits\n' .else NOTE_GNU_STACK='' .endif +.if ${MACHINE_CPUARCH} == "aarch64" +FEATURE_NOTE='\#include \nGNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL)' +.else +FEATURE_NOTE='' +.endif ${SASM}: printf '/* %sgenerated by libc/sys/Makefile.inc */\n' @ > ${.TARGET} printf '#include "compat.h"\n' >> ${.TARGET} printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' >> ${.TARGET} printf ${NOTE_GNU_STACK} >>${.TARGET} + printf ${FEATURE_NOTE} >> ${.TARGET} ${SPSEUDO}: printf '/* %sgenerated by libc/sys/Makefile.inc */\n' @ > ${.TARGET} @@ -137,6 +143,7 @@ ${SPSEUDO}: printf '#include "SYS.h"\nPSEUDO(${.PREFIX:S/_//})\n' \ >> ${.TARGET} printf ${NOTE_GNU_STACK} >>${.TARGET} + printf ${FEATURE_NOTE} >> ${.TARGET} MAN+= abort2.2 \ accept.2 \ From nobody Tue Nov 21 11:17:21 2023 X-Original-To: dev-commits-src-main@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 4SZMKY64X4z51Q86; Tue, 21 Nov 2023 11:17:21 +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 4SZMKY5VdTz3LHD; Tue, 21 Nov 2023 11:17:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700565441; 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=11T/ZNmpIpoE7/Saduu7o6yGUVLKYroitzV6joEfgIs=; b=f0S7gEZ5AOil94DEgWaufqAfqaSjIXSoJ/cBL6RyxD5Y5g8A3F5PdIUZO67IC4Ag2XbGo8 f+XVgw4r3HWwjavJBPmp6b55USiBFL8y8Jx8fznv62i63IAx3H1uu6DrWwi5ANcGLKer81 ZfZ1YyaedoVzAzYPbT5b2gIQrKrWtl8ao5606XgFPRXg+HaDND76fWMNk3/a89R7jBwl+i mMcFuC9C3uflDf1QveM9HImfIHYiQt1UXkxuaM2q/+fKwFBmkF3D6LIBPvTCVB5NmyiRLS rZPVx2DyHMpWpOj0p9byVtlxcBULVucrJJuWtrt3Sl/ZKhMNKYah/AXvhHIqCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700565441; 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=11T/ZNmpIpoE7/Saduu7o6yGUVLKYroitzV6joEfgIs=; b=xdTyZ9ZTca0kc0Sghzh9nOMSRsutEP3U3mkKHXwIrQRPy9+5aeF1Jkbf/9FdVV7DGzQ8R6 apHoMRljkx/3OAqlLpApTOyYp0BAacaqNGSxBw+fQ2/tWWnE83NyQLzu0HFQNplmdcfb0V BLnSWGEUAI3VCZPkEYCqvXk8horcPLWolDltYO7fPjpdP7fFRpfxq59eh/Q3hB+p/CuoUx nYHYQj0Qy5YEG5yBZEO8jLwUWHGT0eUT5hfZ8KBp2fAGDd5eOpKYwM0VeCvQoaIsonyVUr HSKui8fFTR20MNBT/GfQSWtBRFFwDGBA40Gr0RG8h7SM1huWBSf362QW+xukHg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700565441; a=rsa-sha256; cv=none; b=ftqp55jhnehpNxETWN0bN1FvzjCVvqOp1GpNtA1/exQgHSYuNnxYGYXPxirUFJ5AJYMHzQ lMSsYL8DbJu5rFNLO6ygvH+B7eBA0xghH3Kpd0k71XvGQ0xW/zW/yxoUoOAHo2TriyX8Zc tSZI8jvgK2tA1THsOsMNYilzQIP2M7QRU5crhv8MPDULGImYHvnRn8+dYISR1TTuMuIWOd 04EUiK2nU/FHmHQqc3lMuZRLQ0R2kijUItgGtaVXmxuNYWEIp973CAJ1Dq4dacYXnDnwAs IezqlxHyrkFcZmmg3vZI0oUmtFlg3c7su0i50+HGXY5CIXmR6mY5+WtZCLXu3w== 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 4SZMKY4XspzYqs; Tue, 21 Nov 2023 11:17:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALBHLYM009776; Tue, 21 Nov 2023 11:17:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALBHL8j009773; Tue, 21 Nov 2023 11:17:21 GMT (envelope-from git) Date: Tue, 21 Nov 2023 11:17:21 GMT Message-Id: <202311211117.3ALBHL8j009773@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 1b9096cd1d2f - main - arm64: Set the Guarded Page flag in the kernel List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1b9096cd1d2fce1edb7077aebd3512cc61c54371 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=1b9096cd1d2fce1edb7077aebd3512cc61c54371 commit 1b9096cd1d2fce1edb7077aebd3512cc61c54371 Author: Andrew Turner AuthorDate: 2023-10-03 14:03:51 +0000 Commit: Andrew Turner CommitDate: 2023-11-21 10:02:58 +0000 arm64: Set the Guarded Page flag in the kernel Now the kernel and modules are built with branch protection we can enablethe Guarded Page flag in the page tables. This causes indirect branches to a location without a correct landing pad instruction to raise an exception. This should help mitigate some attacks where a function pointer is changed to point somewhere other than the start of the function, however it doesn't stop an attacker pointing it to an unintended function. Reviewed by: alc, scottph (both earlier version), markj Sponsored by: Arm Ltd Sponsored by: The FreeBSD Foundation (earlier version) Differential Revision: https://reviews.freebsd.org/D42080 --- sys/arm64/arm64/locore.S | 6 ++++++ sys/arm64/arm64/pmap.c | 51 ++++++++++++++++++++++++++++++++++++++---------- sys/arm64/include/pte.h | 1 + 3 files changed, 48 insertions(+), 10 deletions(-) diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S index bace478901a5..8b0564298296 100644 --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -676,6 +676,9 @@ LENTRY(build_l2_block_pagetable) orr x12, x7, #L2_BLOCK orr x12, x12, #(ATTR_DEFAULT) orr x12, x12, #(ATTR_S1_UXN) +#ifdef __ARM_FEATURE_BTI_DEFAULT + orr x12, x12, #(ATTR_S1_GP) +#endif /* Only use the output address bits */ lsr x9, x9, #L2_SHIFT @@ -745,6 +748,9 @@ LENTRY(build_l3_page_pagetable) orr x12, x7, #L3_PAGE orr x12, x12, #(ATTR_DEFAULT) orr x12, x12, #(ATTR_S1_UXN) +#ifdef __ARM_FEATURE_BTI_DEFAULT + orr x12, x12, #(ATTR_S1_GP) +#endif /* Only use the output address bits */ lsr x9, x9, #L3_SHIFT diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c index adb5e3312e50..cafeeb4362ef 100644 --- a/sys/arm64/arm64/pmap.c +++ b/sys/arm64/arm64/pmap.c @@ -180,7 +180,12 @@ #define pmap_l1_pindex(v) (NUL2E + ((v) >> L1_SHIFT)) #define pmap_l2_pindex(v) ((v) >> L2_SHIFT) -#define PMAP_SAN_PTE_BITS (ATTR_DEFAULT | ATTR_S1_XN | \ +#ifdef __ARM_FEATURE_BTI_DEFAULT +#define ATTR_KERN_GP ATTR_S1_GP +#else +#define ATTR_KERN_GP 0 +#endif +#define PMAP_SAN_PTE_BITS (ATTR_DEFAULT | ATTR_S1_XN | ATTR_KERN_GP | \ ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK) | ATTR_S1_AP(ATTR_S1_AP_RW)) struct pmap_large_md_page { @@ -474,6 +479,8 @@ static void _pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t m, static int pmap_unuse_pt(pmap_t, vm_offset_t, pd_entry_t, struct spglist *); static __inline vm_page_t pmap_remove_pt_page(pmap_t pmap, vm_offset_t va); +static pt_entry_t pmap_pte_bti(pmap_t pmap, vm_offset_t va); + /* * These load the old table data and store the new value. * They need to be atomic as the System MMU may write to the table at @@ -1080,7 +1087,7 @@ pmap_bootstrap_l2_block(struct pmap_bootstrap_state *state, int i) MPASS((state->pa & L2_OFFSET) == 0); MPASS(state->l2[l2_slot] == 0); pmap_store(&state->l2[l2_slot], PHYS_TO_PTE(state->pa) | - ATTR_DEFAULT | ATTR_S1_XN | + ATTR_DEFAULT | ATTR_S1_XN | ATTR_KERN_GP | ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK) | L2_BLOCK); } MPASS(state->va == (state->pa - dmap_phys_base + DMAP_MIN_ADDRESS)); @@ -1115,7 +1122,7 @@ pmap_bootstrap_l3_page(struct pmap_bootstrap_state *state, int i) MPASS((state->pa & L3_OFFSET) == 0); MPASS(state->l3[l3_slot] == 0); pmap_store(&state->l3[l3_slot], PHYS_TO_PTE(state->pa) | - ATTR_DEFAULT | ATTR_S1_XN | + ATTR_DEFAULT | ATTR_S1_XN | ATTR_KERN_GP | ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK) | L3_PAGE); } MPASS(state->va == (state->pa - dmap_phys_base + DMAP_MIN_ADDRESS)); @@ -1156,7 +1163,7 @@ pmap_bootstrap_dmap(vm_paddr_t min_pa) &bs_state.l1[pmap_l1_index(bs_state.va)], PHYS_TO_PTE(bs_state.pa) | ATTR_DEFAULT | ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK) | - ATTR_S1_XN | L1_BLOCK); + ATTR_S1_XN | ATTR_KERN_GP | L1_BLOCK); } MPASS(bs_state.pa <= physmap[i + 1]); @@ -1985,7 +1992,7 @@ pmap_kenter(vm_offset_t sva, vm_size_t size, vm_paddr_t pa, int mode) ("pmap_kenter: Mapping is not page-sized")); attr = ATTR_DEFAULT | ATTR_S1_AP(ATTR_S1_AP_RW) | ATTR_S1_XN | - ATTR_S1_IDX(mode) | L3_PAGE; + ATTR_KERN_GP | ATTR_S1_IDX(mode) | L3_PAGE; old_l3e = 0; va = sva; while (size != 0) { @@ -2109,7 +2116,7 @@ pmap_qenter(vm_offset_t sva, vm_page_t *ma, int count) m = ma[i]; pa = VM_PAGE_TO_PHYS(m); attr = ATTR_DEFAULT | ATTR_S1_AP(ATTR_S1_AP_RW) | ATTR_S1_XN | - ATTR_S1_IDX(m->md.pv_memattr) | L3_PAGE; + ATTR_KERN_GP | ATTR_S1_IDX(m->md.pv_memattr) | L3_PAGE; pte = pmap_l2_to_l3(pde, va); old_l3e |= pmap_load_store(pte, PHYS_TO_PTE(pa) | attr); @@ -4008,6 +4015,10 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot) mask |= ATTR_S1_XN; nbits |= ATTR_S1_XN; } + if (pmap == kernel_pmap) { + mask |= ATTR_KERN_GP; + nbits |= ATTR_KERN_GP; + } if (mask == 0) return; @@ -4436,7 +4447,6 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, new_l3 = (pt_entry_t)(PHYS_TO_PTE(pa) | ATTR_DEFAULT | L3_PAGE); new_l3 |= pmap_pte_memattr(pmap, m->md.pv_memattr); new_l3 |= pmap_pte_prot(pmap, prot); - if ((flags & PMAP_ENTER_WIRED) != 0) new_l3 |= ATTR_SW_WIRED; if (pmap->pm_stage == PM_STAGE1) { @@ -4478,6 +4488,9 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, lock = NULL; PMAP_LOCK(pmap); + /* Wait until we lock the pmap to protect the bti rangeset */ + new_l3 |= pmap_pte_bti(pmap, va); + if ((flags & PMAP_ENTER_LARGEPAGE) != 0) { KASSERT((m->oflags & VPO_UNMANAGED) != 0, ("managed largepage va %#lx flags %#x", va, flags)); @@ -4746,6 +4759,7 @@ pmap_enter_2mpage(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, new_l2 = (pd_entry_t)(PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | ATTR_DEFAULT | ATTR_S1_IDX(m->md.pv_memattr) | ATTR_S1_AP(ATTR_S1_AP_RO) | L2_BLOCK); + new_l2 |= pmap_pte_bti(pmap, va); if ((m->oflags & VPO_UNMANAGED) == 0) { new_l2 |= ATTR_SW_MANAGED; new_l2 &= ~ATTR_AF; @@ -5117,6 +5131,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, pa = VM_PAGE_TO_PHYS(m); l3_val = PHYS_TO_PTE(pa) | ATTR_DEFAULT | ATTR_S1_IDX(m->md.pv_memattr) | ATTR_S1_AP(ATTR_S1_AP_RO) | L3_PAGE; + l3_val |= pmap_pte_bti(pmap, va); if ((prot & VM_PROT_EXECUTE) == 0 || m->md.pv_memattr == VM_MEMATTR_DEVICE) l3_val |= ATTR_S1_XN; @@ -6562,7 +6577,8 @@ pmap_mapbios(vm_paddr_t pa, vm_size_t size) l2 = pmap_l1_to_l2(pde, va); old_l2e |= pmap_load_store(l2, PHYS_TO_PTE(pa) | ATTR_DEFAULT | ATTR_S1_XN | - ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK) | L2_BLOCK); + ATTR_KERN_GP | ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK) | + L2_BLOCK); va += L2_SIZE; pa += L2_SIZE; @@ -7834,6 +7850,19 @@ pmap_is_valid_memattr(pmap_t pmap __unused, vm_memattr_t mode) return (mode >= VM_MEMATTR_DEVICE && mode <= VM_MEMATTR_WRITE_THROUGH); } +static pt_entry_t +pmap_pte_bti(pmap_t pmap, vm_offset_t va __diagused) +{ + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + MPASS(ADDR_IS_CANONICAL(va)); + + if (pmap->pm_stage != PM_STAGE1) + return (0); + if (pmap == kernel_pmap) + return (ATTR_KERN_GP); + return (0); +} + #if defined(KASAN) static vm_paddr_t pmap_san_early_kernstart; static pd_entry_t *pmap_san_early_l2; @@ -8029,12 +8058,13 @@ sysctl_kmaps_dump(struct sbuf *sb, struct pmap_kernel_map_range *range, break; } - sbuf_printf(sb, "0x%016lx-0x%016lx r%c%c%c%c %6s %d %d %d %d\n", + sbuf_printf(sb, "0x%016lx-0x%016lx r%c%c%c%c%c %6s %d %d %d %d\n", range->sva, eva, (range->attrs & ATTR_S1_AP_RW_BIT) == ATTR_S1_AP_RW ? 'w' : '-', (range->attrs & ATTR_S1_PXN) != 0 ? '-' : 'x', (range->attrs & ATTR_S1_UXN) != 0 ? '-' : 'X', (range->attrs & ATTR_S1_AP(ATTR_S1_AP_USER)) != 0 ? 'u' : 's', + (range->attrs & ATTR_S1_GP) != 0 ? 'g' : '-', mode, range->l1blocks, range->l2blocks, range->l3contig, range->l3pages); @@ -8084,7 +8114,8 @@ sysctl_kmaps_table_attrs(pd_entry_t table) static pt_entry_t sysctl_kmaps_block_attrs(pt_entry_t block) { - return (block & (ATTR_S1_AP_MASK | ATTR_S1_XN | ATTR_S1_IDX_MASK)); + return (block & (ATTR_S1_AP_MASK | ATTR_S1_XN | ATTR_S1_IDX_MASK | + ATTR_S1_GP)); } /* diff --git a/sys/arm64/include/pte.h b/sys/arm64/include/pte.h index aebe24cb82af..f067feabe365 100644 --- a/sys/arm64/include/pte.h +++ b/sys/arm64/include/pte.h @@ -80,6 +80,7 @@ typedef uint64_t pt_entry_t; /* page table entry */ #define ATTR_CONTIGUOUS (1UL << 52) #define ATTR_DBM (1UL << 51) +#define ATTR_S1_GP (1UL << 50) #define ATTR_S1_nG (1 << 11) #define ATTR_AF (1 << 10) #define ATTR_SH(x) ((x) << 8) From nobody Tue Nov 21 11:27:56 2023 X-Original-To: dev-commits-src-main@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 4SZMYm3YKSz51QnD; Tue, 21 Nov 2023 11:27:56 +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 4SZMYm2y1Tz3MyF; Tue, 21 Nov 2023 11:27:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700566076; 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=2SA2XLkMkH8rpKEzI/s3SNIEZ+vfkbCDIlh1H96L7yw=; b=yIDD/AhmPCPVlyx0ZEatUYH61XK3mu3bnnbR+uyHluyWqDm7RUfJLqmidwSSydqnUTAgTo UlvviRElAkyQaRBn+Dqt+qzuui4dRPLBCDFkDPh2KS/UfO+lHOzV5Gk9xE2Ak+qFUQHuAH XLtH2zPxKIkxZaPTm5Bq7/8w+OQlblROl/17B+p+SQ2PV6G+IUhvEaswsEaPHKiD77yPtg EGGsRpW5Dh8v+Mu7co0bJkA0TAOdIH1iRkCU/VAkiO6n8gzCW+GwxVClXGs/RPeiRPt+CN NneT9b9kp4CB2ZgStneSFoehyxeMGNkSwuiJQe5DeXlpbPdH7QoKbiHROVuG9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700566076; 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=2SA2XLkMkH8rpKEzI/s3SNIEZ+vfkbCDIlh1H96L7yw=; b=Wtgbbl8IlghpA6m2HO5oEIrWqTIbqyr47Dh/Lfm/KRx2JI5OtR4ku9Goqkewj15HJfPtMT 6fCIevSffhuy246ra9j7Xqi1H7lnlWKmqC9qozIurI/vDPiyINjdNrSgO1bSXp9SocMzqw oNtkoYkwDxP5JIPm8nogoqEkitpREJ1O/jiuTaPDSi46vYE0BwGc5iG5GY9o0mjIgHN9LD oKV0nzUFEJVRUB+42LKDGuYrgo/b2lbK2KyaqWqFGbSZrFvrRuS5jkMemlqQtScYVia/3v YSB+yL1Ege2s3kA+N4XRiAwGjy4ROt8Cewg98eejIoSRrkApm70kT2zGEbqR7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700566076; a=rsa-sha256; cv=none; b=oQNQC7OrW9CJ6yPes1zM/rov/2l76Jy+qTbX3gI4824Rdt6RgVLnSjrPnM4fjlESXMiJd5 IHCEH/2z+ubCjFppnPP9Xau7OgtjK1S2Xi7xVrj+eqT8JfyjFlsPCWhPoYZJG55SdH07+i wraZcC7raXflmt7jDyazzQ7nbWpy9zSc3wIfpii+weNZBXRRyqnpDPwweotNf/y2pEcXZZ hZR8tyxKTs/jci3gy+w9oTtofYEJmV5sC8TwgVN8ssxQb6m5xTsAawMuskKlfvhYoMPub6 +2DKVlwJH+X5SELYskT4M9ihUFOlF/SS4yu0ZBFIodgVkf0pR/8ycRI9arvwEA== 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 4SZMYm1tzkzYdG; Tue, 21 Nov 2023 11:27:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALBRubw025938; Tue, 21 Nov 2023 11:27:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALBRujJ025935; Tue, 21 Nov 2023 11:27:56 GMT (envelope-from git) Date: Tue, 21 Nov 2023 11:27:56 GMT Message-Id: <202311211127.3ALBRujJ025935@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 25d0310ed881 - main - arm64: Mark the armv8 crc32c as supporting BTI List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 25d0310ed881e86cec9ab5cf37dd8471e88ad554 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=25d0310ed881e86cec9ab5cf37dd8471e88ad554 commit 25d0310ed881e86cec9ab5cf37dd8471e88ad554 Author: Andrew Turner AuthorDate: 2023-11-14 15:01:58 +0000 Commit: Andrew Turner CommitDate: 2023-11-21 11:25:43 +0000 arm64: Mark the armv8 crc32c as supporting BTI This is built into a test so needs the BTI elf note for the rest of the test to be built with BTI support enabled. As the assembly uses the ENTRY macro it already supports BTI, so mark it as such. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42595 --- sys/libkern/arm64/crc32c_armv8.S | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/libkern/arm64/crc32c_armv8.S b/sys/libkern/arm64/crc32c_armv8.S index 32bf00ee477d..649afff4b711 100644 --- a/sys/libkern/arm64/crc32c_armv8.S +++ b/sys/libkern/arm64/crc32c_armv8.S @@ -26,6 +26,8 @@ */ #include +#include + .arch_extension crc /* @@ -76,3 +78,5 @@ last_byte: end: ret END(armv8_crc32c) + +GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL) From nobody Tue Nov 21 12:29:06 2023 X-Original-To: dev-commits-src-main@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 4SZNwM0g25z51WNK; Tue, 21 Nov 2023 12:29:07 +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 4SZNwL6wjLz3TPD; Tue, 21 Nov 2023 12:29:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569747; 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=h/Fnj4jKR1PSgKFFFail5+yGjKpiUF+dEYl/JTjM2IY=; b=Yk79pZyeqhrN4aizUkbTPUrcF9/abw3x18EzmgO2m8Nnzk9/cKnZFw0n8sIv3lNCl8qOnB N1E/OvY55cUwpGckTSA8KklIB/HuZU1J2MpsOlRXif9hQBLLWvMoHt3WIB1DD0Y9Me8Mlv fEup429MvRB713PddMi8vICk6QC1d1ooG0d1CrRXFA4c2D4W5IBdQXRYdQhx3bRUTz1RcW Y2n4mMB44lwkf7Q4Rd0qbj+i1Rfi3srIRPXNmiKy7lixXPzyf+c/olOiYf0ZITSPrplrMT 7VIJ5KLugZFBFmF4+ggqrvptAYnPjASYMN72Qx/oaa1BVcHLguxvBf5QqOFpow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569747; 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=h/Fnj4jKR1PSgKFFFail5+yGjKpiUF+dEYl/JTjM2IY=; b=FshBece0DPKnFyOOCDYXmxKf9iV293kxTvQDJs0uz6PGjTqrK7jEATFNn7zZRByQgKYGHc K5TCbnDbM88D/hVKFTGXRkgq4AXAR9hJaob6LF1UzxQbUXxmZQ7s5LWznwYMZUj0rM/ZMt R4YmJ8vmfkcK4nYoQFBYAGXWjdT9o2G2gO+LK0fHREr1G4DZ94JYaxZdBW/0F7SJy8vsWZ nJj1gyMBbODdNQNuwYIbJQmFOQ2/whYEqDT2NsR1cy88VnndK18KCQvwMJuaA6ZYdO4SaF NUbKde5Wd3jmOTtM9Cslw96OdRklvCx85OGEbcWJuO/4dRy5q6L+EeowZ9Q60w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700569747; a=rsa-sha256; cv=none; b=Vs3NqSTKImo3wfPkwPRiPPZtGQV+YyWXg1DVvucSvvA7WuFBVC0PKZE2Z2dhdOImGOgIuR ezSBJSXo5jUG12YnbKBlRmLaE6gMCiXUzyBgREOtsl7ZGTmcpk2ctZKob6U8WJjpgz1Mul 9Jur6UoZ/lz+u924jDdOxX2GC3qXoH5BL3Kgyagduj71i7dwvD4QZUsJv+nNEOc5Li81oS 12hMcmuof7v6ZEHwCvD/qE4ewiWR3Z0gl1jN8PLAu87g53+Q7C/RB0SMIXjFRT7JD9BzgX 5ci34ctNrPfEvJRnQdqn5K89sOlpvS1vk0SCCEkhaI80uF6Qb+xUNWCTjU9VPQ== 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 4SZNwL60RVzb7P; Tue, 21 Nov 2023 12:29:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALCT6Gq026581; Tue, 21 Nov 2023 12:29:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALCT6ZM026578; Tue, 21 Nov 2023 12:29:06 GMT (envelope-from git) Date: Tue, 21 Nov 2023 12:29:06 GMT Message-Id: <202311211229.3ALCT6ZM026578@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 46f3a29ee144 - main - sys/sysctl.h: FEATURE_ADD() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 46f3a29ee144a7d2e74c8b3d6c5c7b28562c29e2 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=46f3a29ee144a7d2e74c8b3d6c5c7b28562c29e2 commit 46f3a29ee144a7d2e74c8b3d6c5c7b28562c29e2 Author: Konstantin Belousov AuthorDate: 2023-11-20 22:43:07 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-21 11:55:52 +0000 sys/sysctl.h: FEATURE_ADD() A macro to dynamically register report of the kernel feature. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42641 --- sys/sys/sysctl.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/sys/sysctl.h b/sys/sys/sysctl.h index 9176d2c3efdd..bc7a2bc601a1 100644 --- a/sys/sys/sysctl.h +++ b/sys/sys/sysctl.h @@ -927,6 +927,12 @@ TAILQ_HEAD(sysctl_ctx_list, sysctl_ctx_entry); #define FEATURE(name, desc) \ SYSCTL_INT_WITH_LABEL(_kern_features, OID_AUTO, name, \ CTLFLAG_RD | CTLFLAG_CAPRD, SYSCTL_NULL_INT_PTR, 1, desc, "feature") +/* Same for the dynamic registration. */ +#define FEATURE_ADD(name, desc) \ + sysctl_add_oid(NULL, SYSCTL_CHILDREN(&sysctl___kern_features), \ + OID_AUTO, name, \ + CTLFLAG_RD | CTLFLAG_CAPRD | CTLTYPE_INT | CTLFLAG_MPSAFE, \ + NULL, 1, sysctl_handle_int, "I", desc, "feature"); #endif /* _KERNEL */ From nobody Tue Nov 21 12:29:07 2023 X-Original-To: dev-commits-src-main@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 4SZNwN1Kn2z51W8C; Tue, 21 Nov 2023 12:29:08 +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 4SZNwN0bzXz3TKB; Tue, 21 Nov 2023 12:29:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569748; 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=PktfeDv4e2nYpZJ+OrEqmQlTZRJixgmn5f9sw2SOGJc=; b=lDPJxP5I5E+WZlbomSyAJsCO6tXu7Sq0ZMeB3tpnmlGvDmtvVT8+27G5yTVU6VfbbvLKfQ lmUit95KUk9ZMcYli0ehyBhA17NCsd82g1JwGN4oq9BvAdaFumk+702XN6VFqXCAs7sHCN CekuM/6eFdee4wLU167eXLJVjOzrVdhBdQg31Xv2/9NFNeJcan7nxH/Cts+dMcI55rWqly mnnWY8cgmSf6cCmVxvGl+r1fz8z5OzH3k7ZrV09likb9pS6BNt/jJZiWVUPp1IBSW7Jw2f aEbE0V/X0QunO5+PzPaFBJOHCUUv2sCHy5IX8RRD2na+5dwc69xb4Dowq386MA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569748; 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=PktfeDv4e2nYpZJ+OrEqmQlTZRJixgmn5f9sw2SOGJc=; b=m2YHzn4JZqGWS4l+WWUSJhewDo1dk621Zt67GV1w21StUpjPiFhl+ow2SLGimvigyKn3fr gtQ1NOVBpWkoesWFi26GDabtGRC6KcwdWBDCtSW+zF7DjbFdwU4YYQG9ZNHHThbN+zoaSy Ll3ugOf9bjHpmEnPNEay/nHFPmEwSMLFwasU4CTkkaOC2uIIAzpWlmbvpfXgbgp0qvLYo0 oHOTkgTG+zCJcFehMms6ZR+s/w6yEHgAnPSc5QtZlACmNyG0jBsio/pjAnMSuNOp9YgGXt 5aFAZkKoSzA/4qB7lk43XgvzBT5e+Bk4IQOZDkKhSce5UOAHPVERyPBgwUaWVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700569748; a=rsa-sha256; cv=none; b=R8L2n1kGIrkrnoV5IXznolmBb45tON2pqbiYOl+UNfNIi4cDuIQ7VE5lLMAq8ip8HKgZAB 0c1FuX1JUM1S1FeJBplKu/LkYMe00iDrm7tdBK568xwPHP1YOM+dNjS32cJKmG93okoTZR eojQvdRHmep61zunI1rK5pshQ1cEu9QdIagWZjpXh+eDNpkf6DVmzmu33Kx8ZaxFMS3Ysr 18tQ/PdKEmA7hrEIF0yDQou8nsOP11wIKQfkRpB/nFfRV3x+4WY1uW5t6ft6RWr1fZTGAl 4NlXpFkN2knQUFhKb8EY4obRR1O0nfEfOXHszIeaUYtjoujE2t1Ua7luROGd/A== 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 4SZNwM6n0jzbLf; Tue, 21 Nov 2023 12:29:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALCT7YA026638; Tue, 21 Nov 2023 12:29:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALCT7xZ026635; Tue, 21 Nov 2023 12:29:07 GMT (envelope-from git) Date: Tue, 21 Nov 2023 12:29:07 GMT Message-Id: <202311211229.3ALCT7xZ026635@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 5a2bbacea56f - main - FEATURE compat_freebsd_32bit: only report on arm64 when support is present List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5a2bbacea56f40e91c5371d5d6a210afd797fd3b Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5a2bbacea56f40e91c5371d5d6a210afd797fd3b commit 5a2bbacea56f40e91c5371d5d6a210afd797fd3b Author: Konstantin Belousov AuthorDate: 2023-11-16 21:06:36 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-21 11:55:59 +0000 FEATURE compat_freebsd_32bit: only report on arm64 when support is present depending on hardware support for aarch32. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42641 --- sys/arm64/arm64/elf32_machdep.c | 2 ++ sys/compat/freebsd32/freebsd32_misc.c | 13 ++++++++++++- sys/compat/freebsd32/freebsd32_util.h | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/sys/arm64/arm64/elf32_machdep.c b/sys/arm64/arm64/elf32_machdep.c index 4acb68b09108..de0ee9607ad1 100644 --- a/sys/arm64/arm64/elf32_machdep.c +++ b/sys/arm64/arm64/elf32_machdep.c @@ -160,6 +160,8 @@ register_elf32_brand(void *arg) if (ID_AA64PFR0_EL0_VAL(READ_SPECIALREG(id_aa64pfr0_el1)) == ID_AA64PFR0_EL0_64_32) { elf32_insert_brand_entry(&freebsd32_brand_info); + } else { + compat_freebsd_32bit = 0; } } SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, register_elf32_brand, NULL); diff --git a/sys/compat/freebsd32/freebsd32_misc.c b/sys/compat/freebsd32/freebsd32_misc.c index c26e7b97e717..d9266f57ac94 100644 --- a/sys/compat/freebsd32/freebsd32_misc.c +++ b/sys/compat/freebsd32/freebsd32_misc.c @@ -123,7 +123,18 @@ #include #include -FEATURE(compat_freebsd_32bit, "Compatible with 32-bit FreeBSD"); +int compat_freebsd_32bit = 1; + +static void +register_compat32_feature(void *arg) +{ + if (!compat_freebsd_32bit) + return; + + FEATURE_ADD("compat_freebsd_32bit", "Compatible with 32-bit FreeBSD"); +} +SYSINIT(freebsd32, SI_SUB_EXEC, SI_ORDER_ANY, register_compat32_feature, + NULL); struct ptrace_io_desc32 { int piod_op; diff --git a/sys/compat/freebsd32/freebsd32_util.h b/sys/compat/freebsd32/freebsd32_util.h index 67f0c099792a..c32c7a2ef4c1 100644 --- a/sys/compat/freebsd32/freebsd32_util.h +++ b/sys/compat/freebsd32/freebsd32_util.h @@ -122,4 +122,6 @@ struct image_args; int freebsd32_exec_copyin_args(struct image_args *args, const char *fname, enum uio_seg segflg, uint32_t *argv, uint32_t *envv); +extern int compat_freebsd_32bit; + #endif /* !_COMPAT_FREEBSD32_FREEBSD32_UTIL_H_ */ From nobody Tue Nov 21 12:29:08 2023 X-Original-To: dev-commits-src-main@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 4SZNwP29JRz51Wdh; Tue, 21 Nov 2023 12:29:09 +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 4SZNwP1QHRz3TV8; Tue, 21 Nov 2023 12:29:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569749; 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=2NEXep5DtTyX++dKLqNGPY/+WeQVD5VbMJ0seXQHbBo=; b=GG3+CrXK9Rg56PlViq8rb24NLox1J+VIUWH//xdXKJgVx6bi2qKDS3y3ywUPeweGqlj9VQ lexKMtPGOlFK9wB9criZQYxtpx0pep+MFlkti7AI2++vpxPswiEmM9xFOn78lypjeMFY+n RH8pM/SVdms2z4EVR11Yqa68jWCpx4NcCs8T5zQmSBTLQzV6BOwQZAJysbuIF+oK9oANXF TTBBppQuL8Aj+PNMka0Lz8Y9eeo4iYGa2UwscI/FurKCKov9qgBc/lluGxk38GKv4Io/Xg XYwmPFQ1ipJmZn5fIBbHEwgnFwctaiqJSYRMRYZuoWJ8kcybtIUaiJf2K2zLCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569749; 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=2NEXep5DtTyX++dKLqNGPY/+WeQVD5VbMJ0seXQHbBo=; b=KgFnq7o4qfM4JAeJPWbbm7Ti1A9yjg6tXYj+vSKmJojMqt+llhsYM0lKO7IkRKnYkIyrDL bhjLpQRQy+WcXwN+qkJNlXTXPnK10I5v9hiGEvLS80SK62X6vws4nNJcbpXHmZbE5Cd1Df 5lQJfx3GGQdgD0aW+yGHbRiZ5vNOIjb/nd9Zqpq4QSuBGrHuM4iIrvrWezCXacdeh7Uhet mIjFLN/H4h+UOQRWG1NchbwbGACgHTj3dQ63MjBlIGsLZ9+PyL8jZb8fElWCpf5nuT1TLh s+DPY5SvIxkZPilRO/OLWM3KevNX92S7kKRl2EBWadKmG3gqwRfn0dLiLeK2vw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700569749; a=rsa-sha256; cv=none; b=LTG/S+RXi2RGKKki3BpzcNxW/kG0Lwaz21FhrkzcbqfGL2J3rbQhOblC54Lj8lY/g8CXMw 8I9wuNdtOotgE2rT5MHsFY+9RJkTFTWBSiphaFVlM726n0YVBmoEHTs3WU+0eDJRlPKbdG MG14OuSIj3yT9DFV/oslYEvgUC6NEGN88huVd3RcnPLYan2YPyYytiUnthZK4GrIl01CrZ oRF36XzJYFONvxmNsiEXX1yjDyMXhpdWVfGOhDfDs+1qDZDu6swbaeNEhU5V1eE2AdCLeO JDfpfcrq3D8UOFZ4DXDKOdrE9fZznNrkPLHDa10Y0EgdMsu0rKmZRjglVybdxw== 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 4SZNwP0VN6zbRj; Tue, 21 Nov 2023 12:29:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALCT8SN026684; Tue, 21 Nov 2023 12:29:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALCT8Eq026681; Tue, 21 Nov 2023 12:29:08 GMT (envelope-from git) Date: Tue, 21 Nov 2023 12:29:08 GMT Message-Id: <202311211229.3ALCT8Eq026681@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 26b36a64be41 - main - sysctl kern.supported_archs: return correct value List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 26b36a64be410cacbec1a5cabec091bf7de2b251 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=26b36a64be410cacbec1a5cabec091bf7de2b251 commit 26b36a64be410cacbec1a5cabec091bf7de2b251 Author: Konstantin Belousov AuthorDate: 2023-11-16 21:58:45 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-21 11:56:06 +0000 sysctl kern.supported_archs: return correct value in case COMPAT_FREEBSD32 was enabled in config but hardware does not support executing 32bit binaries. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42641 --- sys/kern/kern_mib.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/sys/kern/kern_mib.c b/sys/kern/kern_mib.c index b60c3c689449..c54dee21a1e1 100644 --- a/sys/kern/kern_mib.c +++ b/sys/kern/kern_mib.c @@ -316,16 +316,25 @@ SYSCTL_PROC(_hw, HW_MACHINE_ARCH, machine_arch, CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_CAPRD | CTLFLAG_MPSAFE, NULL, 0, sysctl_hw_machine_arch, "A", "System architecture"); -#ifndef MACHINE_ARCHES #ifdef COMPAT_FREEBSD32 -#define MACHINE_ARCHES MACHINE_ARCH " " MACHINE_ARCH32 -#else -#define MACHINE_ARCHES MACHINE_ARCH -#endif +#include #endif -SYSCTL_STRING(_kern, OID_AUTO, supported_archs, CTLFLAG_RD | CTLFLAG_MPSAFE, - MACHINE_ARCHES, 0, "Supported architectures for binaries"); +static int +sysctl_kern_supported_archs(SYSCTL_HANDLER_ARGS) +{ + const char *supported_archs; + + supported_archs = +#ifdef COMPAT_FREEBSD32 + compat_freebsd_32bit ? MACHINE_ARCH " " MACHINE_ARCH32 : +#endif + MACHINE_ARCH; + return (SYSCTL_OUT(req, supported_archs, strlen(supported_archs) + 1)); +} +SYSCTL_PROC(_kern, OID_AUTO, supported_archs, CTLFLAG_RD | CTLFLAG_MPSAFE | + CTLFLAG_CAPRD | CTLTYPE_STRING, NULL, 0, sysctl_kern_supported_archs, "A", + "Supported architectures for binaries"); static int sysctl_hostname(SYSCTL_HANDLER_ARGS) From nobody Tue Nov 21 12:29:10 2023 X-Original-To: dev-commits-src-main@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 4SZNwQ3TyFz51Wh8; Tue, 21 Nov 2023 12:29:10 +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 4SZNwQ2ksRz3Tbv; Tue, 21 Nov 2023 12:29:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569750; 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=FWKviXEwUCcEv88m2pB/whFcFg9p86fT3/N6VwNKtl4=; b=skQnefIakBQUVCyBqEWPCzk7SLHhYEQ++JaP6fl/IjhmInSlU34Vy0cltBN6Xagh214ri+ 6DfwpMrEPCz8TX5hMmq1T49JMZF9VjWDoKkRcPOqKZ6tWfc9x9IIB1cPXvcf8xmJ4qgF04 kl1kfCLPRKrd1/sSdOiJm6ZQIgJSOR+L7Y3mm6prO44rukxRzw+ZA3UC8hFoYdgfeWrR20 L19gBqjC8ysFY46J+ndTvr7bYEowxyXxw6bAT2RvH5UlydOzeTMhChDaR+zSSbAcu698zh Qj7TJBAfgzdDrzuvXbBctGkZOZ9RSo3I31VgANgBfxhfPqWw65nxx+qe7NEskw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700569750; 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=FWKviXEwUCcEv88m2pB/whFcFg9p86fT3/N6VwNKtl4=; b=Rw0Gvezv5nqTyPVS/8Hg9jaz6AOy4lPD/4gxHi0aDMT+BDTlzIXMdm7Jor1y+23OHb2XNp Th0wmSEXswY53DQ33vO+K+deseV/xeZXq4/Te0G9i2XTFloER9ETBUGv7hx6Shnd2hfVz+ y3vKENVQ3ACL3SjKHwUPLq6mjeahAgaDbugnV89DY1N0PoXFi8oauxaP9+Z23DGVmcSIYJ BHGJiEcKnZxPu0KfVAyco9IjoLEYjxGe8oy+NDn358v3O9tgNFMKhTNOZYMvqzAMpT392q 0V8wMmlO+RMPSMOutq5UBDcqwf0s8bQeCRuS5suCtOifhSPJQJUD/KntMbOmwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700569750; a=rsa-sha256; cv=none; b=eLM1WhGPwxWHNs8B1kT9JlS50FCs3tCZ+mPyHXTQYcaN1n5raK68raKAqxTgCZOsopMTq7 i+OIQFynlmba6sbDT+0QKxf0YRa1LSDMqfH3Oei8jn3nSGm7Kex83jhA0FzOS+j49RedX7 KoASKxERUDfp4RaSqpoNBQORwXfcxNE0Ci15bPVxZnUD0OJL5v2+OQQw3+dB5p6aXaBpcY 2AVg026+loYgtPRt4z71bnuNja4sP5rehQngz6gc+L1wLs4fM9lKbxuFVEkBPIW7UpKZud 7orQQwPf8rXZeh/xDvLoKhPbMx2AFGKdF2WJQ45orfCb2gr71LkRRg7QX/MOOw== 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 4SZNwQ1SZSzbNV; Tue, 21 Nov 2023 12:29:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALCTAO4026726; Tue, 21 Nov 2023 12:29:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALCTAFf026723; Tue, 21 Nov 2023 12:29:10 GMT (envelope-from git) Date: Tue, 21 Nov 2023 12:29:10 GMT Message-Id: <202311211229.3ALCTAFf026723@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: bddc7a8a94ff - main - Tweak compat_freebsd32_bit feature name List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bddc7a8a94ff50bc0eacad5b11f954353a7e8c30 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=bddc7a8a94ff50bc0eacad5b11f954353a7e8c30 commit bddc7a8a94ff50bc0eacad5b11f954353a7e8c30 Author: Konstantin Belousov AuthorDate: 2023-11-18 22:40:58 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-21 11:56:15 +0000 Tweak compat_freebsd32_bit feature name Mark the current name 'compat_freebsd_32bit' as legacy, and add the new name 'compat_freebsd32'. This seems to help with some make and shell uses. Requested by: jrtc27 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42641 --- sys/compat/freebsd32/freebsd32_misc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/compat/freebsd32/freebsd32_misc.c b/sys/compat/freebsd32/freebsd32_misc.c index d9266f57ac94..2f5cf95b4e4a 100644 --- a/sys/compat/freebsd32/freebsd32_misc.c +++ b/sys/compat/freebsd32/freebsd32_misc.c @@ -131,7 +131,9 @@ register_compat32_feature(void *arg) if (!compat_freebsd_32bit) return; - FEATURE_ADD("compat_freebsd_32bit", "Compatible with 32-bit FreeBSD"); + FEATURE_ADD("compat_freebsd32", "Compatible with 32-bit FreeBSD"); + FEATURE_ADD("compat_freebsd_32bit", + "Compatible with 32-bit FreeBSD (legacy feature name)"); } SYSINIT(freebsd32, SI_SUB_EXEC, SI_ORDER_ANY, register_compat32_feature, NULL); From nobody Tue Nov 21 15:59:38 2023 X-Original-To: dev-commits-src-main@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 4SZTbG58rXz51r4c; Tue, 21 Nov 2023 15:59:38 +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 4SZTbG4bCjz4Rkm; Tue, 21 Nov 2023 15:59:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700582378; 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=lJFRbyEscJRiVKyKIhaps6K1Us3vprUScvgbjj3iMCw=; b=A3WkNxIKDM8sA5GOy/cfkQQgSzgnTr6etYHbSXj7rMcwBqWHCr8GNzEbth1TBOK59srDcj dmt1b/ZOqLxtTSfwgTdFGRCAV3t6/vEDB5FFb/Tma8R53dTsms8EVhu2zktf6FTPG/0Kkv scQxhJBKVBt0l+8WHzEYu2cE1aPiLWA+FrkagN7gsCH7FDnkOIHr0QAT3krfz0vMDbzg6e llwePvIb4KrfWfPqZqpZ3ypmI9T/ETyjq+3JvHJTYWh9C7LmcqJF5BZChSZDVk/mWDs9W9 1QcMQJx9oRzop1iZaEe4Ft/jxOfq9W77fCSrmGP8HWLfwDr/zZclJ8r+H11zeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700582378; 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=lJFRbyEscJRiVKyKIhaps6K1Us3vprUScvgbjj3iMCw=; b=KxotksM4zoF1NHjMp9c053dEQ0dk5GIgccvoU7TuvP8ox5NcefwBa/EyyKUjlWr0rUAL/b y8OqCDg99ahx6hENyVF6KVnEzcooEU2ak72WWkdxFoN2YMlzSxbJhaXQCnx8entcZ8W04N ADdsPRb7Gk1SkjTtMnvGIjTtWRtRCR0kxmQ1DgPCQzkrW85RIlP9rswE1KDkh+HAteNTcs BD+0aE9BKM0Qn0gM6mU2fwseRCAaJUwS5Rfi39QvZ18f5vCtpkkt31BWbSo0BbJHJpikq9 OhPBPiZ7g7FYQ5uxkDks/vR7mOJW7RJMqyYizRawhuSrm43CRuxFoOgtI3Bsbw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700582378; a=rsa-sha256; cv=none; b=osbnAHmiVHqQ9P/PzW4jHG7BROYEwHhxBduIO+TG79oAclhQH5b9F/yWG7IvLlkz9JW60a F4QjTTRjEBGRUF714sZg6WIrwQNEqL+Kd/g10tf9j+3ml9AmsTFyzAacwN1ZGabOps32zb R476tpX7BDMwehEUSjGCZrzTpmzwjNAJ/qJApov3+yOs+YaRAKRCSI0AbqtZbybjUlgdO0 EelXNbhmT0le+TvClKO0ZTjP3We/kBst0gWva31CqJGOhV/CS0OaQco20BuTjWX3vFg/QY KL8k+SlaLQZq51yy/RxC7MswEHwHbpM7iqvfpF9zFeInunvuu2gYtLuDQv4gEQ== 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 4SZTbG3c0jzhL5; Tue, 21 Nov 2023 15:59:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALFxcQ4077412; Tue, 21 Nov 2023 15:59:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALFxct5077409; Tue, 21 Nov 2023 15:59:38 GMT (envelope-from git) Date: Tue, 21 Nov 2023 15:59:38 GMT Message-Id: <202311211559.3ALFxct5077409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 488bc7e9a777 - main - stand/efi: Request ACPI use the system inttypes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 488bc7e9a77763dde6919d3c83e57d1fc8175ca2 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=488bc7e9a77763dde6919d3c83e57d1fc8175ca2 commit 488bc7e9a77763dde6919d3c83e57d1fc8175ca2 Author: Warner Losh AuthorDate: 2023-11-21 15:56:35 +0000 Commit: Warner Losh CommitDate: 2023-11-21 15:59:05 +0000 stand/efi: Request ACPI use the system inttypes With the system inttypes, we build on all platforms again. Suggested by: andrew Fixes: 0b01d45783c3 Sponsored by: Netflix --- stand/efi/loader/main.c | 1 + 1 file changed, 1 insertion(+) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index d6ba7ec3da44..6514fd6cd8ce 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -60,6 +60,7 @@ #include "efizfs.h" #include "framebuffer.h" +#define ACPI_USE_SYSTEM_INTTYPES #include "platform/acfreebsd.h" #include "acconfig.h" #define ACPI_SYSTEM_XFACE From nobody Tue Nov 21 16:52:32 2023 X-Original-To: dev-commits-src-main@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 4SZVmJ6dNyz51wFP; Tue, 21 Nov 2023 16:52:32 +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 4SZVmJ69lKz4bQN; Tue, 21 Nov 2023 16:52:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700585552; 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=Me6MFNXdB21bhqkn8rhW1lcZ62e2gNtJSfkrehXQgD4=; b=ZbVAg/Avs3xxaEUvVRJl78+/JLFZlDSiqvUk5WR5H5bUyJMIyXL/OquSmgzf3CiXYoG3eM g5Cp94edM9sCEZ1cc6QCOIh/mSdhWMj7TX7aCsGmRKj7zm2THcX6Mdo5ODhojl442QECUC vVfRPTYKnuskaJLNpDEzHrxR32TEkdQQo3nu8KqL0qEVF+aWyhr1U3ofOabIj1unpJiuxs bBv73Lok6cx8dn8Cw0xxwWHZzH0HoU7hRb5JtJ7NoQVltwhxwutXmjttczflWwqnYmtPv/ QCUFVYfZObAqNdrJVpYq27Bv5No4fTeA4NwqkNWOnKormtORss+lo9k8Kg6YLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700585552; 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=Me6MFNXdB21bhqkn8rhW1lcZ62e2gNtJSfkrehXQgD4=; b=He3x4X3SjUydtpT9Vxd8IwF1KvYEkUW/2s3chlxvixQ5/4pIfatLlJ9Z0l7EWwVRoLeDhM QvMAPVCzfHMuropKP7l7ZKl+43fKoE4EwJKP/UAVhtVOwTRf2dkAINtna/mRchSJwPkMo0 cO0g+W6cNILyixczcPbRiUzplPh9HnBGn0E17eDSfNx6/RsG3Vzpy88gkmjUkv/qi4FaTb J2XFm8fEY8QA2Yx/70jovp8Uhixb5vRwk/RVTzcxJ0TcW1e9nXzeXmttzODu6L9uQsK76u 4bSGZeSElpAmsaz9ARh4hJDaQ5u5+Up2tLdPxY5C2gUmVO9buG6PzrY1QOw5aQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700585552; a=rsa-sha256; cv=none; b=C7cHX8axljAWu1zyymHO6igEZdV+ZeOZ3uBxRSAZRRc+/tyjYJb3Scn1EpWnCs33ZLGCO8 qq1vImq/duF9xeNFfDn1KQwF+BxO7vWhwGZo3yTQYHRsZdPLP0dU5xN2vYQE8twMx5Nvnz bjxCkpG+iLILBwUWhQqxzzxLsoNmcBm9i++Yo03ZkCSSCxpEluB7XYFsmXYh0H6wwxgf/h jjWo06Qi58osoUPYp+d89AWWFmcEcgfq3ZtiWDzSZXnBXAAH3hKid3nYc8gW365j4G599q MBLhV6Wvmv3LmAEuTqhiHnyU7CjvZz9OkJ8VkS2D9K3tzwBWv+BXEwl2LMR0CA== 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 4SZVmJ5FMDzjWl; Tue, 21 Nov 2023 16:52:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALGqWej076814; Tue, 21 Nov 2023 16:52:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALGqWVM076811; Tue, 21 Nov 2023 16:52:32 GMT (envelope-from git) Date: Tue, 21 Nov 2023 16:52:32 GMT Message-Id: <202311211652.3ALGqWVM076811@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Somers Subject: git: 04cfe6c12ccc - main - aio_read.2: correct the description of aio_buf List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: asomers X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 04cfe6c12ccc75624dc87ab8f44c4852b16f0c4f Auto-Submitted: auto-generated The branch main has been updated by asomers: URL: https://cgit.FreeBSD.org/src/commit/?id=04cfe6c12ccc75624dc87ab8f44c4852b16f0c4f commit 04cfe6c12ccc75624dc87ab8f44c4852b16f0c4f Author: Alan Somers AuthorDate: 2023-11-15 17:31:24 +0000 Commit: Alan Somers CommitDate: 2023-11-21 16:52:02 +0000 aio_read.2: correct the description of aio_buf Looks like a copypasta from aio_write.2. [skip ci] Reported by: Paul Floyd MFC after: 1 week Sponsored by: Axcient Reviewed by: jilles (manpages) Differential Revision: https://reviews.freebsd.org/D42621 --- lib/libc/sys/aio_read.2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/sys/aio_read.2 b/lib/libc/sys/aio_read.2 index 1470c70438a3..c6f062fa406d 100644 --- a/lib/libc/sys/aio_read.2 +++ b/lib/libc/sys/aio_read.2 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 2, 2021 +.Dd November 15, 2023 .Dt AIO_READ 2 .Os .Sh NAME @@ -51,7 +51,7 @@ beginning at the offset .Fn aio_read will read .Fa iocb->aio_nbytes -from the buffer pointed to by +into the buffer pointed to by .Fa iocb->aio_buf , whereas .Fn aio_readv From nobody Tue Nov 21 17:23:25 2023 X-Original-To: dev-commits-src-main@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 4SZWRx5pZbz51ymd; Tue, 21 Nov 2023 17:23:25 +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 4SZWRx56xxz4fX4; Tue, 21 Nov 2023 17:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700587405; 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=nNaLtT0Uz9fq04ERVgnCpPMLTAidzo6F3M0duGRw2M8=; b=Dfcf2lIs7ckChW+jeiLSI+d34w4xxAe+faX/4WE+leTY36u3dg1sKSOiaJNCKKuTaMziN2 ZvPwyzcW168pHjkYzDsxnm/Zl4trq7HIen8cYGWUPH77INmSUA0JAp5GHr/672LJgHNkeZ XRoiky+3MKFjZbdDd+cWPPFBqFwv/9UXt4eWPJmo06SLuQhtIshvQjvzW6q/wfgGwV1/Jr mVy0Lq9XaPisYEBHFCSoKj1tDBN1euiCWpb0u3tC+R5VordHOu8gJe+OVD0DF5QVEK5Zlk pmnVuFIO5FG3RmSpEoG6LXPBXICLMA5AUgV//rce493anABCx6HJPm30AH48EQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700587405; 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=nNaLtT0Uz9fq04ERVgnCpPMLTAidzo6F3M0duGRw2M8=; b=DQxcWNRVtzFje2PoLpPKBel9OiVaJAvSiVY9/caqzzn3APikHTa3IdFFDyAU7286mkrMxC zUBEBillZD0EFPRMSDIAU88+ZZUNuXVdxY4cBF3B/vgvZeRH6ctO/uQnjVSHECj5A6udqI E1yBlSaDzBNd7est713M1dwq6SIuX409cakMpC1ZrpGx7dyH7BnyLsSBk0iTswVAvW4g9j OsxU0lGozYGT4KiWNF6/EOeEWKv06PMWvrXYb9je4UTwCSHfeJ4XFf9K/SsaCP7t565wKx WZfQM4NonvTWhlMEqSLXtuWn/Re8hpATHYRdezc8iGWY5+/xJimxK2oyLU40xw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700587405; a=rsa-sha256; cv=none; b=UGgE/UJKyBbA0MzWH+iKMC4IxJWCcQN8AbgkCkVO8ce43GQ91ucwQsjhxS7xvwb3QtNJYQ xrf8xMxndbwUMKHC7SpESYe4YgZZ2evalgZX/Pv7JLyyal/f7uq9bDbiu3UHQfwdElSZdI o0lLNuB3IEhA33CWTp85R2QeaVJ0rFru0of7mH9K5s37aXO9/Qcpy8TUV6/QY6+KsjnGAu 6i5dkZLC7YiBvnmnpoDWT+/EIKGrxf3/Aijb4SyAKctwIe4Zxsjf9/h9LPiwpIcMBFrNCV 5/DvWDt3HYOVsS2uzSk7Ti6v8lTjsHlPWMUEGiCz7V0rpifiTtL+BLDW7KC/rg== 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 4SZWRx49PPzl1W; Tue, 21 Nov 2023 17:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALHNPk0027394; Tue, 21 Nov 2023 17:23:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALHNPgK027391; Tue, 21 Nov 2023 17:23:25 GMT (envelope-from git) Date: Tue, 21 Nov 2023 17:23:25 GMT Message-Id: <202311211723.3ALHNPgK027391@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 219a6ca91957 - main - tcp: uninline tcp_account_for_send() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 219a6ca919576c4f7e783720f66a458d51476f3d Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=219a6ca919576c4f7e783720f66a458d51476f3d commit 219a6ca919576c4f7e783720f66a458d51476f3d Author: Gleb Smirnoff AuthorDate: 2023-11-21 17:21:41 +0000 Commit: Gleb Smirnoff CommitDate: 2023-11-21 17:21:41 +0000 tcp: uninline tcp_account_for_send() This allows to clear inclusion of "opt_kern_tls.h" from a system header. Reviewed by: rscheff, tuexen Differential Revision: https://reviews.freebsd.org/D42696 --- sys/netinet/tcp_subr.c | 27 +++++++++++++++++++++++++++ sys/netinet/tcp_var.h | 26 +------------------------- 2 files changed, 28 insertions(+), 25 deletions(-) diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 27b0eae83837..083a8b1ea384 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -4678,3 +4678,30 @@ tcp_get_srtt(struct tcpcb *tp, int granularity) return (srtt); } + +void +tcp_account_for_send(struct tcpcb *tp, uint32_t len, uint8_t is_rxt, + uint8_t is_tlp, bool hw_tls) +{ + + if (is_tlp) { + tp->t_sndtlppack++; + tp->t_sndtlpbyte += len; + } + /* To get total bytes sent you must add t_snd_rxt_bytes to t_sndbytes */ + if (is_rxt) + tp->t_snd_rxt_bytes += len; + else + tp->t_sndbytes += len; + +#ifdef KERN_TLS + if (hw_tls && is_rxt && len != 0) { + uint64_t rexmit_percent; + + rexmit_percent = (1000ULL * tp->t_snd_rxt_bytes) / + (10ULL * (tp->t_snd_rxt_bytes + tp->t_sndbytes)); + if (rexmit_percent > ktls_ifnet_max_rexmit_pct) + ktls_disable_ifnet(tp); + } +#endif +} diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index 2236a1385b44..2119c9dbe58f 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -38,7 +38,6 @@ #include #ifdef _KERNEL -#include "opt_kern_tls.h" #include #include #include @@ -1358,6 +1357,7 @@ VNET_DECLARE(struct hhook_head *, tcp_hhh[HHOOK_TCP_LAST + 1]); #define V_tcp_hhh VNET(tcp_hhh) #endif +void tcp_account_for_send(struct tcpcb *, uint32_t, uint8_t, uint8_t, bool); int tcp_addoptions(struct tcpopt *, u_char *); struct tcpcb * tcp_close(struct tcpcb *); @@ -1591,30 +1591,6 @@ tcp_set_flags(struct tcphdr *th, uint16_t flags) th->th_x2 = (flags >> 8) & 0x0f; th->th_flags = flags & 0xff; } - -static inline void -tcp_account_for_send(struct tcpcb *tp, uint32_t len, uint8_t is_rxt, - uint8_t is_tlp, bool hw_tls) -{ - if (is_tlp) { - tp->t_sndtlppack++; - tp->t_sndtlpbyte += len; - } - /* To get total bytes sent you must add t_snd_rxt_bytes to t_sndbytes */ - if (is_rxt) - tp->t_snd_rxt_bytes += len; - else - tp->t_sndbytes += len; - -#ifdef KERN_TLS - if (hw_tls && is_rxt && len != 0) { - uint64_t rexmit_percent = (1000ULL * tp->t_snd_rxt_bytes) / (10ULL * (tp->t_snd_rxt_bytes + tp->t_sndbytes)); - if (rexmit_percent > ktls_ifnet_max_rexmit_pct) - ktls_disable_ifnet(tp); - } -#endif - -} #endif /* _KERNEL */ #endif /* _NETINET_TCP_VAR_H_ */ From nobody Tue Nov 21 17:23:26 2023 X-Original-To: dev-commits-src-main@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 4SZWRy6cy4z51yyq; Tue, 21 Nov 2023 17:23:26 +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 4SZWRy5xqkz4fmG; Tue, 21 Nov 2023 17:23:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700587406; 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=S9uvgZxNT98qY3OuAVZl8w/PciyQAqFUetIxBWFTHs0=; b=ulcSAu7J//qD0aHthLkAtZGKnam19kJTINMg1Yd6wdYyne+JvkuNkkfYPIwQmdxBSWppHu UPMg7SyjEmvjZAWnNcVjAw/8pk9ivmMMTsfZZt1ieFpjJusznIZXiEldMicEhS5k3GYsBA Ogwmf/YVE0dIVK4l7Ern2fm/MeCVHfknEuZnTDvcEbNpt3yrM9XWllGGyT2E3sDijDj16g z3GlzAdABVO60Ug9MKbQpiN+YTK9aoKrw5gWEHN2OvyOmCsaMI7JSxRfz6cMORHm3zVjlj xS6gRGRkncfMw2QdBylm3m+oMf00LvAJ//kgWbmTetpRxu5ssPinpSak5wxwkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700587406; 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=S9uvgZxNT98qY3OuAVZl8w/PciyQAqFUetIxBWFTHs0=; b=e2QZmtkife027nnkNbhhQYDTVXgOIXmF+2cv4yydw5ukRrw/v/BlDYaFRZre5Q4GHkT875 c9iMaZEbb4J4X8gJQkp0CwWUxJe8PPjiPRD9dQPmaV50A3jtiCqEhbiq+Vyr0T2olbd/dv eoIGHqvGd/vnYqRp0VtgjuoTUwEqLvgIWqJQKPmEpXm8tc+de50G6AagbomKMumzkbpn0S e9qWujtaW2qT/KDeQTQYBLl5Ld5VvV+7qndxPt6REiSHBEfzxZt6Wn95H4HjpCkzynm/84 YgqEVmTBqxQlWgut3Z9hX3rg7iRoidzJvXlqz4bEqd7pfbo1TLTCLXZTw5XAWw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700587406; a=rsa-sha256; cv=none; b=kKNG7wDCdKW15QLTMtc1n/+2QPMdGstzwiVkNsbTrxdvMBSbpq3So+QzRnq4IC4o6JCdHx OKPueWy0rAjEC3vdK9rWvpTKNcCSC85/csB7ms8D7DFbIZadprgGEZ/svxHgm6dRHJ6TmR FcRtIY4EhyTmKtiI8UR/UXLExNb61Zj8MgrUHkCYAa538x9kxnnyWbLu2q/bHLoxO6L1B7 ptoG3Tq/9r/kflQoWWG6RdiuZuLLdIaZNozyUm3u7wbMHirnLgCCFmEwDtD6bksPGf6O7h Z/BaRlSBS6KUfu1TSEznnCkaTHu9b/nZVrFW+v3sp+k4yzNjA8jdk2sF38xIeA== 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 4SZWRy4qX8zky3; Tue, 21 Nov 2023 17:23:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALHNQjq027439; Tue, 21 Nov 2023 17:23:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALHNQ7n027436; Tue, 21 Nov 2023 17:23:26 GMT (envelope-from git) Date: Tue, 21 Nov 2023 17:23:26 GMT Message-Id: <202311211723.3ALHNQ7n027436@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: f90306501856 - main - hpts: install kernel module List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f9030650185622d7cf8a7c81c4b3a3763539de24 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=f9030650185622d7cf8a7c81c4b3a3763539de24 commit f9030650185622d7cf8a7c81c4b3a3763539de24 Author: Gleb Smirnoff AuthorDate: 2023-11-21 17:22:46 +0000 Commit: Gleb Smirnoff CommitDate: 2023-11-21 17:22:46 +0000 hpts: install kernel module It is important to instantly load tcp_rack.ko and tcp_bbr.ko Reviewed by: tuexen, imp Differential Revision: https://reviews.freebsd.org/D42697 --- sys/modules/tcp/Makefile | 6 ++---- sys/modules/tcp/hpts/Makefile | 6 ++++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/sys/modules/tcp/Makefile b/sys/modules/tcp/Makefile index 364c0326c40d..3b6df4bc18e9 100644 --- a/sys/modules/tcp/Makefile +++ b/sys/modules/tcp/Makefile @@ -1,15 +1,13 @@ -# -# - .include -SUBDIR= \ +SUBDIR= ${_hpts} \ ${_tcp_bbr} \ ${_tcp_rack} \ ${_tcpmd5} \ .if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \ defined(ALL_MODULES) +_hpts= hpts _tcp_bbr= bbr _tcp_rack= rack .if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MTCP_SIGNATURE} diff --git a/sys/modules/tcp/hpts/Makefile b/sys/modules/tcp/hpts/Makefile new file mode 100644 index 000000000000..4ca462d7f612 --- /dev/null +++ b/sys/modules/tcp/hpts/Makefile @@ -0,0 +1,6 @@ +.PATH: ${SRCTOP}/sys/netinet + +KMOD= tcphpts +SRCS= tcp_hpts.c opt_inet.h opt_inet6.h opt_rss.h device_if.h bus_if.h + +.include From nobody Tue Nov 21 17:53:57 2023 X-Original-To: dev-commits-src-main@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 4SZX794S24z5227r; Tue, 21 Nov 2023 17:53:57 +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 4SZX792SxTz4kZ9; Tue, 21 Nov 2023 17:53:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700589237; 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=jxILAvt051F+E9SXoLuY7RytaX7ONtbPIQMydUjjHPs=; b=L1qMvvzaB8cFfP6pxoxf5gaL3VKvANtZ+SxRsdkWOh1qBvmbGNOj3Zo4vN5Bjt/r4zQo3r u+xfaZau59R0VGaO+l5pSJC1Ud8Ax0/V698nShL31g05YHKXO+XKp/ocnrqJFlz1D1Vg24 UcSL8FJHWbVu10jXxqSFQ14NIb4DqjmoJT1w1LCq40YTeTIu0THdyfQ1sBARlpJI9MJqDC ks4seZ0RpyIqBmKmBrorf5YVK8aTeX9yBSy3PIjVXkhP0n2JZZdQJ/kB0sxagl6xIM6EIi XqVVXuxJlqHYqU99pE5qwKjyeJ8zUN4DeNgN84OpaIOr9wFS0yGVNiNrWF0aUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700589237; 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=jxILAvt051F+E9SXoLuY7RytaX7ONtbPIQMydUjjHPs=; b=f6TtoYP2rrWpE07xxYsi/O6pwGRgWNbqZBWe0MyZM0OcXoJPtha9cgLPl+sFtmKkSYveYg KFq3SRj0AIqV2s4BQuW37LgP/FTWnc38qWhZndyVtPztXN3yO/CYAbM+kHRzBtvCsyFIO/ Fj939V8JrYQ6o7ecU0uwTZsOeN4eWv3BpKvGiX6Go/qmkaIaCoZ0fqj7asNkQvvGbSHCpI GliR9atQbmnqU3oG6voDRXTLD3TbOe/AchMcG/7MqOykdg/lwWR8NpkUH81QkkQ1IWVUiw V21myvxiyW+ge+Aqo3sMx6JYUFSJpN7ate2+FiFl/wyTlCOtoLmWYhjg7sckng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700589237; a=rsa-sha256; cv=none; b=g+XfPzR9KtbSZptk/E/EVvO8jV7oeiIh3u2nX9MI3kmm1bK8RwKvHtSZ5na4WRuPv1YcfQ Nja18MlqbOua0QdqFirl8/rdQyfqTq/xCi/z27R4AMgO8UphB1WslU1reVQK8SFKeRInBL ScmJBp1Xm1ci6j4mnocGc/1F5XBxPm2b2C975QbvF03z0dqM//k0W69CMawAE81uG0UMMn HbWDynGK9BHyLw/4EJKAPa6Jwwxsyhayl7NlKOSkEVtO31eeJuA9aQW5+UYbf84LTMaJvg HALTMkrUD50fFNbkZbQK80YDzwpqOT9G4kSVIwD2vQtAC7BQbKoVGmdNQyv+vg== 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 4SZX791YP5zlV4; Tue, 21 Nov 2023 17:53:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALHrvR5078523; Tue, 21 Nov 2023 17:53:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALHrvZ0078521; Tue, 21 Nov 2023 17:53:57 GMT (envelope-from git) Date: Tue, 21 Nov 2023 17:53:57 GMT Message-Id: <202311211753.3ALHrvZ0078521@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 96f193b290a1 - main - Compile RACK when options TCP_RACK, not TCP_BBR List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 96f193b290a1aa735ff1833983d654c01ed8902e Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=96f193b290a1aa735ff1833983d654c01ed8902e commit 96f193b290a1aa735ff1833983d654c01ed8902e Author: Alex Xu (Hello71) AuthorDate: 2023-11-21 00:09:56 +0000 Commit: Mitchell Horne CommitDate: 2023-11-21 17:51:10 +0000 Compile RACK when options TCP_RACK, not TCP_BBR Signed-off-by: Alex Xu (Hello71) Fixes: 3a338c5341 ("Add the BBR and RACK stacks to the LINT kernel.") Pull Request: https://github.com/freebsd/freebsd-src/pull/907 --- sys/conf/files | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/files b/sys/conf/files index 1fecda73bf4e..c5cd70415931 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4364,7 +4364,7 @@ netinet/tcp_reass.c optional inet | inet6 netinet/tcp_sack.c optional inet | inet6 netinet/tcp_stacks/bbr.c optional inet tcp_bbr | inet6 tcp_bbr \ compile-with "${NORMAL_C} -DMODNAME=tcp_bbr -DSTACKNAME=bbr" -netinet/tcp_stacks/rack.c optional inet tcp_bbr | inet6 tcp_bbr \ +netinet/tcp_stacks/rack.c optional inet tcp_rack | inet6 tcp_rack \ compile-with "${NORMAL_C} -DMODNAME=tcp_rack -DSTACKNAME=rack" netinet/tcp_stacks/rack_bbr_common.c optional inet tcp_bbr | inet tcp_rack | inet6 tcp_bbr | inet6 tcp_rack netinet/tcp_stacks/sack_filter.c optional inet tcp_bbr | inet tcp_rack | inet6 tcp_bbr | inet6 tcp_rack From nobody Tue Nov 21 18:35:48 2023 X-Original-To: dev-commits-src-main@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 4SZY3S2dS9z524kK; Tue, 21 Nov 2023 18:35:48 +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 4SZY3S266zz4nwc; Tue, 21 Nov 2023 18:35:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700591748; 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=cmYZLKFoUZ/QlyswuDsqR0uK6NOzY3QlPWYETdKMS0A=; b=nJJKyU1FQ8qognN3T2uOmCyLgQdYRWe3Sko6LUBelNzA2HSpDMV0EmB14ap7JgCiMTuBe+ 4poz/YureEjdSlkSl+OeXw0WQUYOVjUHLP86QRhPFfeYChMZ7+9ekQVkuA/QYR0wEk2kYF gH7YbKCwZoS1BzA4eSGihEoweGyUD6H5y8y76LrlkkCeeURnSjfMbI6v5AkNn/AMHsqvoO kDoiS9PZ26fXd5nCkk7ILrUvXTkmsN2ctZHe0Q5qWhGOTpuvG/FBn7teh3puZBb0IOi/9g emrfjlx8Q5OAOQ45SRPF/Su9pRXhiYf8VtzHwFTMPpaAfVPB5iX6Sg5tWrdqWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700591748; 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=cmYZLKFoUZ/QlyswuDsqR0uK6NOzY3QlPWYETdKMS0A=; b=JPjPSwTJ6+H6shJ7UpInD8wmiuJwtiE21bOKXvcRtZyIjd7nMS/5ezxodobt0jkrGXyFNX xoYXdNSKFNGkeLSPlx3PLDPBMGGXPUcPTETRG4Mq6dnAfLjPe96pXka4+VDPG/Hl/051Az 9zi1VFMuG950/iNTXGVZuNb9nW5E+6lQROPKHXYummYQkVtg7AazXHRACuLiTPWCa1TTM9 ETe2Hey5OT0jxnybzo4YsP2zaCeUC9FPtz2O1tZqrfEHn4JJP3/SBbSbH5iBAIsduXsLg3 Vc8reIM7PhJR33iO5qc3ge4dwKZMaMhc/6GFxq7uXo9dKSr1yANeddAvFOvOXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700591748; a=rsa-sha256; cv=none; b=JaKXkJ88UvUk1TGlT+59VdObrTwCGf/O1gX48VfGVlLZxqpI8NOes8Uu0A4PqwZ+h27kup DlE/vGz7ybO5A5T3H7JEdKffohJ9o9Ml2mZaTsxpwx2Cf0QQ6A03bfsKXeF7TEzMTXO/YB mnTTEMQhLMsGwNm3XHUQQ/DL9hCplTdayreWzOKbm7wriv8x8qq83RGf1a0RZoEQ18waoh P8qAGs8jSunvxZfdaMvxX3lj33ZDNkUabWpn6S/aswqyX05U902EH4yd8MKDG/yI53Aw2Q lXYBVmyBV95e6y9eSZ9tLrZYRr5cKcz2OE9R1z8aFGahj3O5NjbpweYv0RBTAA== 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 4SZY3S19Z4zmkK; Tue, 21 Nov 2023 18:35:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALIZmYJ045703; Tue, 21 Nov 2023 18:35:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALIZmdd045700; Tue, 21 Nov 2023 18:35:48 GMT (envelope-from git) Date: Tue, 21 Nov 2023 18:35:48 GMT Message-Id: <202311211835.3ALIZmdd045700@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 2f68ae6150aa - main - makesyscall: Simplify a bit emitting syscall declarations List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2f68ae6150aa51d724e22c7e6748adfe2bc932d7 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2f68ae6150aa51d724e22c7e6748adfe2bc932d7 commit 2f68ae6150aa51d724e22c7e6748adfe2bc932d7 Author: Olivier Certner AuthorDate: 2023-10-12 13:47:03 +0000 Commit: Mark Johnston CommitDate: 2023-11-21 18:25:34 +0000 makesyscall: Simplify a bit emitting syscall declarations Reviewed by: kevans, imp MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42168 --- sys/tools/makesyscalls.lua | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/sys/tools/makesyscalls.lua b/sys/tools/makesyscalls.lua index bf631ac2ffdd..8a56310f0068 100644 --- a/sys/tools/makesyscalls.lua +++ b/sys/tools/makesyscalls.lua @@ -865,18 +865,15 @@ local function handle_noncompat(sysnum, thr_flag, flags, sysflags, rettype, local protoflags = get_mask({"NOPROTO", "NODEF"}) if flags & protoflags == 0 then + local sys_prefix = "sys_" if funcname == "nosys" or funcname == "lkmnosys" or funcname == "sysarch" or funcname:find("^freebsd") or funcname:find("^linux") then - write_line("sysdcl", string.format( - "%s\t%s(struct thread *, struct %s *)", - rettype, funcname, argalias)) - else - write_line("sysdcl", string.format( - "%s\tsys_%s(struct thread *, struct %s *)", - rettype, funcname, argalias)) + sys_prefix = "" end - write_line("sysdcl", ";\n") + write_line("sysdcl", string.format( + "%s\t%s%s(struct thread *, struct %s *);\n", + rettype, sys_prefix, funcname, argalias)) write_line("sysaue", string.format("#define\t%sAUE_%s\t%s\n", config.syscallprefix, funcalias, auditev)) end From nobody Tue Nov 21 18:35:49 2023 X-Original-To: dev-commits-src-main@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 4SZY3T52XNz524my; Tue, 21 Nov 2023 18:35:49 +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 4SZY3T2cssz4pM0; Tue, 21 Nov 2023 18:35:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700591749; 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=RPdnHBmXuKirXziWIol9kKx4nYkCslQcTjSxcOTYYmI=; b=UtO6f0NI6GJtgJ+guMAPE9YVwQgIWGhNV1l9ZzEubJerwXlplB4AnwE1tOXeb6Ha/BrNa2 HN5dT7JImA4NqUQX0EWitM0fA1AfCBVle3j+jocAzE2b3KKdWFt6A1utTxGGZ9FlVX02dx t5UuW5XDX04vEUWZNrPr9ftZgFwOa4183c8QliaDAoXM2xs2mYhV+3imcCgF81EWgSCv5E 3ZJBOvtsv3I/WDlQr4IJMTpVmaWoHOp8Sie5bSDLvDnxAwJF1l7VPoNLi2xymMJZ4Cm++m zBgTgVtGaRRrDeISuiB4LRDqz1WGyXS2rZtUB5xXxSGW5ORiAte20YkPxELPDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700591749; 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=RPdnHBmXuKirXziWIol9kKx4nYkCslQcTjSxcOTYYmI=; b=jc65WnH3YritMQULTui839qPKRUqQ29fWNGFCWtod/ad0GT3h4fnLRuPpdQZquq+OvI3Jj D7mKz6caH4STqL6zTR3cfnZ1qEsaH4vimg/7By51pBQFZr8ts/lRz15oig7SAFCneXfJCK 6Se0dz5iQLecClwBb4ZJXwf+i0WEHJnVYuLh1xIWUsSI8omUoZsWaHJaVNlibJhkgRRS5S dHoN0B17aFXxfkdX1lQZIYkThCa21EdnbpcxuWX2frwrDFnLOTRDHvqnQMByshyxqy4SGQ zEG/aDECB2UsSGHO339fmtV99x9XH73Bfj/knJuLoQLyd6G+fTdUpdDQ48KyjA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700591749; a=rsa-sha256; cv=none; b=ZeKduLdasqyRdXAU5iwDekWK7Xw7kkOKxwUS3kJDCD1earPPwmq0q6aw8k5wdXsn3knwMC HaTBpWKMw82H95shMxZ+ZvboSh4PUamNhjXPy669EzWsRwI90P+VAfMAmfYN2s9xVwL2n5 2vvmYDypKFDTlVMMbOQktrh3iCqdLTN/A9glVSJvZw7UmZdh492P9F/E/ltzIOn1VLsdeT cjxDU/e9gAuMVdkV69/nft3zpP8X4dAr6bpKrnCcg/jn6FvJxMXFfx7FvGiuOzDJiCRJ17 Py+F7ZufqdpSRKK62cxOZ/KzgiF5b1AO64aouu/Sj9eYKzmpGSUYysayBg7eUA== 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 4SZY3T1ggJzmkL; Tue, 21 Nov 2023 18:35:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALIZnOE045743; Tue, 21 Nov 2023 18:35:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALIZnNi045740; Tue, 21 Nov 2023 18:35:49 GMT (envelope-from git) Date: Tue, 21 Nov 2023 18:35:49 GMT Message-Id: <202311211835.3ALIZnNi045740@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 9d882de2da20 - main - Remove sysctl 'kern.smp.forward_signal_enabled' List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9d882de2da2099f534776ba4a6278e8c0bc87660 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=9d882de2da2099f534776ba4a6278e8c0bc87660 commit 9d882de2da2099f534776ba4a6278e8c0bc87660 Author: Olivier Certner AuthorDate: 2023-10-20 13:43:29 +0000 Commit: Mark Johnston CommitDate: 2023-11-21 18:25:34 +0000 Remove sysctl 'kern.smp.forward_signal_enabled' It seems this was an "emergency" knob to revert a newly introduced behavior. Overall, we want better system-wide signal receive latency, and it doesn't seem that some contrary policy was ever needed (and if that comes up, it should rather be implemented, e.g., per-process). Suggested by: kib Reviewed by: kib, jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42315 --- sys/kern/subr_smp.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c index 7cbf83928786..399665b47751 100644 --- a/sys/kern/subr_smp.c +++ b/sys/kern/subr_smp.c @@ -113,12 +113,6 @@ SYSCTL_INT(_kern_smp, OID_AUTO, topology, CTLFLAG_RDTUN, &smp_topology, 0, "Topology override setting; 0 is default provided by hardware."); #ifdef SMP -/* Enable forwarding of a signal to a process running on a different CPU */ -static int forward_signal_enabled = 1; -SYSCTL_INT(_kern_smp, OID_AUTO, forward_signal_enabled, CTLFLAG_RW, - &forward_signal_enabled, 0, - "Forwarding of a signal to a process on a different CPU"); - /* Variables needed for SMP rendezvous. */ static volatile int smp_rv_ncpus; static void (*volatile smp_rv_setup_func)(void *arg); @@ -205,8 +199,6 @@ forward_signal(struct thread *td) if (!smp_started || cold || KERNEL_PANICKED()) return; - if (!forward_signal_enabled) - return; /* No need to IPI ourself. */ if (td == curthread) From nobody Tue Nov 21 18:38:52 2023 X-Original-To: dev-commits-src-main@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 4SZY7110jwz524wJ; Tue, 21 Nov 2023 18:38:53 +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 4SZY710T3Wz4q03; Tue, 21 Nov 2023 18:38:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700591933; 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=tXML+MrgYfrbEaJRRt31iBcSNTtZnUCEefLPofuJ3nE=; b=ZgnOOAKQSWt4Ti7wWDKgSMkuSc7SdcQV3x6TWqvbDhoO1SgYHzoHW0PHp3QIP5h9ngMaW1 bFb7M74XC1LunE7d9PSxU9f/j+3AK2vqMQfpnYAdFee6u019oSZF/Jw2cpWm+SSACeDHf7 UKmLrNfsbgtHoLDe+z3fcjpgUZ+hXUiJ/S3Z2DOW3xfUm+xJOh17Z8fpwKrNVK60gdgGrz RwDu98hO7UJV+snUjT14YP4r3RIIHKJGI5h1tL/TqO0lK2QlxPIM9kvwFiacfMCmSlHgJ0 3Srv32SFLddWaZ2XdPizKm8nwnPl3J0ijiwkGdHno1/Cx+8yInmd9Am0P0AvKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700591933; 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=tXML+MrgYfrbEaJRRt31iBcSNTtZnUCEefLPofuJ3nE=; b=EclAO5BaYUIguuYMGqZ6jMqL/5lKyvOvZo6NpzFeh29VniAXVDmDBkR9rC/CL2QOofgmbi 0T2/SXO+eVbYvnlm6W5oiiQeONWsfWb/pHMYgO30OiWUGEmVw6hCGUKSYVTSVp/C/8w3ti fiRnsNQT6sP1/tbtVEuqDRXRxlRg2gDqwohlJgEIZUOfnVQN5oxsDAOYErOeQ8Begi92oJ HIlRa9goWeYsDpG7QdDHIYbTgN9fw/yz2O2a6ITEcozSlvd38ORM16j45S1Uwz30Ts09ct W2qd/aNmioW4eZsbPhnv3zSdhx/K4tS24aA8T7soxKWpPrS0zdZ/idCdsxQ+xg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700591933; a=rsa-sha256; cv=none; b=x/p0DkRC/05YZaBhitLxWrSUYOEq+TTiw2cDrvsjyl2PRo4mi10JvefseAfH0zuwiJpAak jsZIG82a7jN0NUHqiQzzBO5NN+R5AYhsE4fLGfqdpzTdyAevoAQVoczVQ4A9ACok9KZ68f xP+txDHv2igJPm/jC2kCc6s1nwz9ZtNu5cpjFSu3AwQG3bbzKyNn2EERM05IONzY1dJ2AT 7lrsF4hXgy/P+BqQ7KemEYMciJtzbP/35G4HTOiVnZmDTYnwlAVaasS7AlLSBpZhrxgH2M 3qiJNaZRA0gt+PLl7iOJUD92oQNNyXw95WBrgrrjlSc57h15iIeoCK02tY2zgw== 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 4SZY706dYtzmLl; Tue, 21 Nov 2023 18:38:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALIcqng046307; Tue, 21 Nov 2023 18:38:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALIcqS0046304; Tue, 21 Nov 2023 18:38:52 GMT (envelope-from git) Date: Tue, 21 Nov 2023 18:38:52 GMT Message-Id: <202311211838.3ALIcqS0046304@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: e4789047ffd1 - main - stand/efi: Define ACPI_USE_SYSTEM_INTTYPES to be 1 instead of blank List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e4789047ffd1319be337711ae4b6c594378f31b2 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e4789047ffd1319be337711ae4b6c594378f31b2 commit e4789047ffd1319be337711ae4b6c594378f31b2 Author: Warner Losh AuthorDate: 2023-11-21 18:36:18 +0000 Commit: Warner Losh CommitDate: 2023-11-21 18:38:46 +0000 stand/efi: Define ACPI_USE_SYSTEM_INTTYPES to be 1 instead of blank To avoid a redefinition warning... This needs to be redone correctly, but this gets amd64 building again... My amd64 environment is polluted with something that caues earlier failures which I ignored... Fixes: 488bc7e9a777 Sponsored by: Netflix --- stand/efi/loader/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 6514fd6cd8ce..a650abb3b68c 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -60,7 +60,7 @@ #include "efizfs.h" #include "framebuffer.h" -#define ACPI_USE_SYSTEM_INTTYPES +#define ACPI_USE_SYSTEM_INTTYPES 1 #include "platform/acfreebsd.h" #include "acconfig.h" #define ACPI_SYSTEM_XFACE From nobody Tue Nov 21 22:48:26 2023 X-Original-To: dev-commits-src-main@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 4SZffz1F9Jz51DV1; Tue, 21 Nov 2023 22:48:27 +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 4SZffz0Qkjz4M9W; Tue, 21 Nov 2023 22:48:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700606907; 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=jU7wmwJvaJp/c4iCpWwOO0/T3OC/f1Mc1RrRUVNzblY=; b=nWsCHOKXsKoKXjc0nxmBGphy/oh4+pTwgSx5OqoBC9cpjkwAPaafe9Bb8qH7OceV1h2Sjy GQyr1uUukclxNqil2VNDmEwACamXj12+1jaXYf6unjCUChGzFndd21y0tVGgEFhZj1bMlR Djxytmw+m5axrd8/n5fWiPniR/F5pfLlPHffQd5nVqlhBz0CQzyRbvAvgr71EJpyk3U1QI 22yPQwZf1jxqsLjFGMxPmIHu3rNOA1JeSJaChpSosNGtyGhp3I/gnP0QiDApsPtCycbQiF SW9I/eIX5vArm5gnjvpT10ndFhL6GGIDwsBL6/gKlHpFHBLmqIqt2LNTMRyj7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700606907; 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=jU7wmwJvaJp/c4iCpWwOO0/T3OC/f1Mc1RrRUVNzblY=; b=C6v46TCDD1HeH0yj9R5TsY7INMG08TzlkFiq6VvF2z3PLD1uq7rVZDCCTAdvtTfUbwvQ5R ARlYko0uqeQtpyV58EtHzb0U/e5w2VZ8DPifJlxhr0n1+4ufHT5kMCe2eV30AthbiP9UjU tApuAw0cHHWPUglNqgKsRPv1/lY0puUqcagkGV5xrKkOMQzka4FnmxggVksnAxGscvpwhS vEkaC68ghcJmxrpxapVHlDe4F/mxWfoUJ/cd5ftEQRBzwfM21OoyW0OfLH9gmSble6H1F9 3xUmu8MAqThqOPzc47MEFivhedmsvkbBfP0vYSGoW3bJCNs6jcuTkm+nVxbC8A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700606907; a=rsa-sha256; cv=none; b=YzoTWAV0+7huyvPyr89ixYulLYxZW0PMflyQ6Lvwu+OUjBqk4ldi/lTNHpQtI7XyDQKNtv iQ/pnpYvL9tKfSj8DxDXfQVgPanazh8tD7tBpbUNTDo5E+X+Uq0GtVFt0HDq6HMi/9CAM8 RrEdzFYp1ODMGA6KodUf0CiH43HTyjf/o4DANIPml4jma0MNuKeOFtFCUCAvqOweB1Oke/ VvRbhKrU95BLhczxLCj8fEKv6+C8in3nleg2zdn0xT04KpgkN7KUbZKJ8hjxCLLu5kO9ZA VR+W+LZ9L0IxQI/2mp8q2J0y8sl9k9dpvRy4gN0a6T+z8IVwku3hfP/J4o4cNg== 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 4SZffy6bkSzsqs; Tue, 21 Nov 2023 22:48:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALMmQnl064419; Tue, 21 Nov 2023 22:48:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALMmQZJ064416; Tue, 21 Nov 2023 22:48:26 GMT (envelope-from git) Date: Tue, 21 Nov 2023 22:48:26 GMT Message-Id: <202311212248.3ALMmQZJ064416@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 1818f3fda9c1 - main - ps: s/kern.max_pid/kern.pid_max/ in a comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1818f3fda9c1a9a97f23b6dc6d0a63eb6f8d8b20 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=1818f3fda9c1a9a97f23b6dc6d0a63eb6f8d8b20 commit 1818f3fda9c1a9a97f23b6dc6d0a63eb6f8d8b20 Author: Brooks Davis AuthorDate: 2023-11-21 22:43:14 +0000 Commit: Brooks Davis CommitDate: 2023-11-21 22:46:01 +0000 ps: s/kern.max_pid/kern.pid_max/ in a comment Sponsored by: DARPA --- bin/ps/ps.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/ps/ps.c b/bin/ps/ps.c index 3a7a0f54cca0..16d8a0a58d3c 100644 --- a/bin/ps/ps.c +++ b/bin/ps/ps.c @@ -112,7 +112,7 @@ static int needcomm; /* -o "command" */ static int needenv; /* -e */ static int needuser; /* -o "user" */ static int optfatal; /* Fatal error parsing some list-option. */ -static int pid_max; /* kern.max_pid */ +static int pid_max; /* kern.pid_max */ static enum sort { DEFAULT, SORTMEM, SORTCPU } sortby = DEFAULT; From nobody Tue Nov 21 22:48:27 2023 X-Original-To: dev-commits-src-main@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 4SZfg01bVMz51DPB; Tue, 21 Nov 2023 22:48:28 +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 4SZfg00w5zz4MDZ; Tue, 21 Nov 2023 22:48:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700606908; 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=R4WsqSeGhaiELo8CV+R5kORQal7wJvTuC4ketqaYn6M=; b=czSeQzgrq6OgPmvJxTB1XMTmyqaP11IW7CcuHl0ZOeuyXTnf3elLZCbu0E7vLJWFACbpi3 ukUZbE3eRLwC3ikP5+Vz93wR3XIVnCzpoL8KFJ6Fyq0Z49tC5xd7p/FEa4px3iOXFlHwpf KC8N9GE6Ab21LxgGL63TTPyOlHeNs8sxIWvzOMujDY6llgpxKgXQMe8LQ4zHDAu17y4s4s 74kLoXuGUhSU281Ew20l9a5EJQ9nJQQqzaehbNofDmyq1ypsHmncQmD9jLdxftyo7+01ZY /SaQxdIFyLRuGv1q51cysuqqHqGC9KVWdWDf2eq6ckvXHpBWlm5pGF9ea8SQ4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700606908; 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=R4WsqSeGhaiELo8CV+R5kORQal7wJvTuC4ketqaYn6M=; b=kpaHJVv0InZGn+MDcfs+pnNnLK3WI8SVd5d9aER8bBQn57bgKNCm/AFRiz2IPHnamoAwqN JpDjmIsgj4jVjzPw/o1x/exwH9NZAn76uFYjVP3kWD24DnPKHCFrrmWHdcpxwzVKhotZ+t V03QIkPi2MPNyptr9duf+HGZxfW0KGWdPyeetL+Z4Klmr0kmXMWxh2gJlpqfrGuiVCLgGC By3rYWqwgHp0Gd79t4/J0doPFxBTKsrRAQynbpmB6MakB3vzK+3y0PfjnIt6D973z7gxSh v5Sy7kCWrAxt2wvLEWTmXjOlyqAJVMJi6ndfYfMVggP8yR8IJYSMiI81epV/uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700606908; a=rsa-sha256; cv=none; b=tsWoSqYlhYp56MAz3of5Zq3eYL8lsy9r3TDj8YWpZYaaxTeLJTjtudzNnQ3U41Isfut3FL ppUBOj/DMUmkPWgwTfn1Qfed3YE8+h6dpzL/LOlpD084uYLGvhqlXzKNWyeJFIyWI07Hsf dn9r3UNAajv44/UmAN0uMQ9KTJ9L78gPL+NZmy3GjJtKpt7NdPmg5GM1aF1eaIDx1oNdJN gGmncnOKYjQD6hj11WplMSs4YTVsV7G97ul8kkBTDXVXJ+8VdSgEPqvrQxoenh0wppnK0z 7HwDPh0v/YigtabLEFNJ/Rm7PezTMsNiiORmjAWsFToU2o+fWp8SvlfRPCqf1Q== 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 4SZffz74xbztt1; Tue, 21 Nov 2023 22:48:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ALMmREE064471; Tue, 21 Nov 2023 22:48:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ALMmRmq064468; Tue, 21 Nov 2023 22:48:27 GMT (envelope-from git) Date: Tue, 21 Nov 2023 22:48:27 GMT Message-Id: <202311212248.3ALMmRmq064468@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 9fc0ff9d85b1 - main - libc: remove some obsolete VCS data List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9fc0ff9d85b1497b45a4c6d74e0bc7eea9dcf37b Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=9fc0ff9d85b1497b45a4c6d74e0bc7eea9dcf37b commit 9fc0ff9d85b1497b45a4c6d74e0bc7eea9dcf37b Author: Brooks Davis AuthorDate: 2023-11-21 22:46:43 +0000 Commit: Brooks Davis CommitDate: 2023-11-21 22:46:43 +0000 libc: remove some obsolete VCS data These wide char support files were copied from the previous versions with expanded $FreeBSD$ strings in #if 0 blocks. Remove them and the scssid definitions in the same #if 0 blocks. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42688 --- lib/libc/locale/wcstoimax.c | 6 ------ lib/libc/locale/wcstoll.c | 6 ------ lib/libc/locale/wcstoull.c | 6 ------ lib/libc/locale/wcstoumax.c | 6 ------ lib/libc/stdio/vswprintf.c | 3 --- lib/libc/stdio/vswscanf.c | 6 ------ 6 files changed, 33 deletions(-) diff --git a/lib/libc/locale/wcstoimax.c b/lib/libc/locale/wcstoimax.c index 2c0997e7ea91..29e12f809812 100644 --- a/lib/libc/locale/wcstoimax.c +++ b/lib/libc/locale/wcstoimax.c @@ -34,12 +34,6 @@ * SUCH DAMAGE. */ -#if 0 -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "from @(#)strtol.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ -__FBSDID("FreeBSD: src/lib/libc/stdlib/strtoimax.c,v 1.8 2002/09/06 11:23:59 tjr Exp "); -#endif #include #include #include diff --git a/lib/libc/locale/wcstoll.c b/lib/libc/locale/wcstoll.c index 1712c6be3f56..01ee701af016 100644 --- a/lib/libc/locale/wcstoll.c +++ b/lib/libc/locale/wcstoll.c @@ -34,12 +34,6 @@ * SUCH DAMAGE. */ -#if 0 -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)strtoq.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ -__FBSDID("FreeBSD: src/lib/libc/stdlib/strtoll.c,v 1.19 2002/09/06 11:23:59 tjr Exp "); -#endif #include #include #include diff --git a/lib/libc/locale/wcstoull.c b/lib/libc/locale/wcstoull.c index b2edd3d9cea1..db77acd2a55d 100644 --- a/lib/libc/locale/wcstoull.c +++ b/lib/libc/locale/wcstoull.c @@ -34,12 +34,6 @@ * SUCH DAMAGE. */ -#if 0 -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)strtouq.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ -__FBSDID("FreeBSD: src/lib/libc/stdlib/strtoull.c,v 1.18 2002/09/06 11:23:59 tjr Exp "); -#endif #include #include #include diff --git a/lib/libc/locale/wcstoumax.c b/lib/libc/locale/wcstoumax.c index bf517965ba3e..6a3861618e3e 100644 --- a/lib/libc/locale/wcstoumax.c +++ b/lib/libc/locale/wcstoumax.c @@ -34,12 +34,6 @@ * SUCH DAMAGE. */ -#if 0 -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "from @(#)strtoul.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ -__FBSDID("FreeBSD: src/lib/libc/stdlib/strtoumax.c,v 1.8 2002/09/06 11:23:59 tjr Exp "); -#endif #include #include #include diff --git a/lib/libc/stdio/vswprintf.c b/lib/libc/stdio/vswprintf.c index d8c1d6720ebe..e90a05c4cc14 100644 --- a/lib/libc/stdio/vswprintf.c +++ b/lib/libc/stdio/vswprintf.c @@ -34,9 +34,6 @@ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#if 0 -__FBSDID("FreeBSD: src/lib/libc/stdio/vasprintf.c,v 1.16 2002/08/21 16:19:57 mike Exp "); -#endif #include #include #include diff --git a/lib/libc/stdio/vswscanf.c b/lib/libc/stdio/vswscanf.c index 8fecb81f96bb..be21f4a53f7b 100644 --- a/lib/libc/stdio/vswscanf.c +++ b/lib/libc/stdio/vswscanf.c @@ -37,12 +37,6 @@ * SUCH DAMAGE. */ -#if 0 -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)vsscanf.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ -__FBSDID("FreeBSD: src/lib/libc/stdio/vsscanf.c,v 1.11 2002/08/21 16:19:57 mike Exp "); -#endif #include #include #include From nobody Wed Nov 22 03:02:33 2023 X-Original-To: dev-commits-src-main@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 4SZmJB1c37z51d8w; Wed, 22 Nov 2023 03:02:34 +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 4SZmJB1RH9z3SmZ; Wed, 22 Nov 2023 03:02:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700622154; 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=yz2ast5E2j0rWr4RXNPP8qHI3Of9ob2L5P5ofo/sxxU=; b=BAQaocOVofidfdU0KMSrejRAYDpa5zt4F83syeNeVoskvLaBOveOi7d4NtCpOTtLU5Yke2 b/Sm4H94hZjty4Q/nDrBZQzoCob9Rf8UNThC8tDQ6wpeziXc+rEg7Cyoo3wIVkE6/f4YVJ 5K9BxO2PHnxM6DKPTZdAla9FodY33QNT7cmBa6qWUPAtVMUZA7nj+5Cy3XX2l5g/HMRgpV xq8e6DguKe50XmGNPEcQYcsm0ma49pSHY15XecsEx32wSFrPG8UN/AqlLK4QkAyPfm0e/9 S/bAWelnw7nKZujMnihS7+ZE4ftpDBb3hDOI0IsUi+AsUm610OtG3b8GXK6UYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700622154; 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=yz2ast5E2j0rWr4RXNPP8qHI3Of9ob2L5P5ofo/sxxU=; b=Pfs58ct1oXUhTD5ThBOp4NAwNyKSVwYt96zmC/D2d8brrMmt2s4V8CgEPxoSy3ra9iJc0y bnBPGfsrGCL/MnvKX8tisd2PalQb95JFgl0Itex7TB83CS0jP8pJ0RmuqxeIYztPzI1z+c NnYl46DVPycGrtzYpHaH9TjHoploGSF+jZQkMD8XIALpOx8+UWfCZkjEWlJpfkF4c4ZVDn E3Hbu4CrgrHqabHRmjNqztYu9zUmgKv46fVscs25+d0DuTisJ8sMld5J7qU1oIKC5nIXjc R7+1Ngl8iS9Lwn/YEtY/GZsGh8znbxr5MXkHClGdC3CqOTRdRcnPFB/9ZBgzgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700622154; a=rsa-sha256; cv=none; b=iExi9j6qcHBJF7fj73BIBmascPdjUSXEVK+aeanN5bQtotz69BhTKJ4QZgulBpbI+7kcFb 09geJycaPGqBjI21fvmn/hS32zJUQQpvrnXSIugP+NkHcM4D23Ys3Dr+zaIm3hfPnt4/rg ay/6iS4yrvDbPLuMIG7BxzoGKEy6jirNHo8QcszW+6slZOPHg7BQyD0kePnkFrR2iR3Scz R1/aQO/4ydN1yBrO6PqZEMXb7HVPrLTqN/GBWu9Z19YzXX0QZwhhQoaUPELDqRiSeUav/c jChoRpxPXbfPmZS/1sRT6uB1GZIuaYeR4Razb4bZKDjTaVCeg05uCTiNwrDl8Q== 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 4SZmJB0TX2z11cc; Wed, 22 Nov 2023 03:02:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AM32Xwo099815; Wed, 22 Nov 2023 03:02:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AM32XiN099812; Wed, 22 Nov 2023 03:02:33 GMT (envelope-from git) Date: Wed, 22 Nov 2023 03:02:33 GMT Message-Id: <202311220302.3AM32XiN099812@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 7a1bc422d109 - main - stand/efi: Consolidate integer types List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7a1bc422d109a7cee56dcfbac616eda613c1c43e Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=7a1bc422d109a7cee56dcfbac616eda613c1c43e commit 7a1bc422d109a7cee56dcfbac616eda613c1c43e Author: Warner Losh AuthorDate: 2023-11-22 02:58:20 +0000 Commit: Warner Losh CommitDate: 2023-11-22 02:58:20 +0000 stand/efi: Consolidate integer types We have no need for 5 different copies of these. Sponsored by: Netflix Reviewed by: rcm, kevans, andrew Differential Revision: https://reviews.freebsd.org/D42699 --- stand/efi/include/amd64/efibind.h | 83 --------------------------------------- stand/efi/include/arm/efibind.h | 35 ----------------- stand/efi/include/arm64/efibind.h | 76 ----------------------------------- stand/efi/include/efi.h | 31 +++++++++++++++ stand/efi/include/i386/efibind.h | 83 --------------------------------------- stand/efi/include/riscv/efibind.h | 76 ----------------------------------- stand/efi/loader/main.c | 1 - 7 files changed, 31 insertions(+), 354 deletions(-) diff --git a/stand/efi/include/amd64/efibind.h b/stand/efi/include/amd64/efibind.h index 2f900786fb9d..d005ade221c4 100644 --- a/stand/efi/include/amd64/efibind.h +++ b/stand/efi/include/amd64/efibind.h @@ -26,89 +26,6 @@ Revision History #pragma pack() - -#ifdef __FreeBSD__ -#include -#else -// -// Basic int types of various widths -// - -#if (__STDC_VERSION__ < 199901L ) - - // No ANSI C 1999/2000 stdint.h integer width declarations - - #ifdef _MSC_EXTENSIONS - - // Use Microsoft C compiler integer width declarations - - typedef unsigned __int64 uint64_t; - typedef __int64 int64_t; - typedef unsigned __int32 uint32_t; - typedef __int32 int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #else - #ifdef UNIX_LP64 - - // Use LP64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long uint64_t; - typedef long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #else - - // Assume P64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long long uint64_t; - typedef long long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #endif - #endif -#endif -#endif /* __FreeBSD__ */ - -// -// Basic EFI types of various widths -// - -#ifndef ACPI_THREAD_ID /* ACPI's definitions are fine */ -#define ACPI_USE_SYSTEM_INTTYPES 1 /* Tell ACPI we've defined types */ - -typedef uint64_t UINT64; -typedef int64_t INT64; - -#ifndef _BASETSD_H_ - typedef uint32_t UINT32; - typedef int32_t INT32; -#endif - -typedef uint16_t UINT16; -typedef int16_t INT16; -typedef uint8_t UINT8; -typedef int8_t INT8; - -#endif - -#undef VOID -#define VOID void - - -typedef int64_t INTN; -typedef uint64_t UINTN; - #ifdef EFI_NT_EMULATOR #define POST_CODE(_Data) #else diff --git a/stand/efi/include/arm/efibind.h b/stand/efi/include/arm/efibind.h index 8bc9f4b56eb2..a08d26ac84c4 100644 --- a/stand/efi/include/arm/efibind.h +++ b/stand/efi/include/arm/efibind.h @@ -40,41 +40,6 @@ Abstract: #endif -#ifdef __FreeBSD__ -#include -#else -// -// Assume standard IA-32 alignment. -// BugBug: Need to check portability of long long -// -typedef unsigned long long uint64_t; -typedef long long int64_t; -typedef unsigned int uint32_t; -typedef int int32_t; -typedef unsigned short uint16_t; -typedef short int16_t; -typedef unsigned char uint8_t; -typedef signed char int8_t; -#endif - -typedef uint64_t UINT64; -typedef int64_t INT64; -typedef uint32_t UINT32; -typedef int32_t INT32; -typedef uint16_t UINT16; -typedef int16_t INT16; -typedef uint8_t UINT8; -typedef int8_t INT8; - -#undef VOID -#define VOID void - -// -// Native integer size in stdint.h -// -typedef uint32_t UINTN; -typedef int32_t INTN; - #define EFIERR(a) (0x80000000 | a) #define EFI_ERROR_MASK 0x80000000 #define EFIERR_OEM(a) (0xc0000000 | a) diff --git a/stand/efi/include/arm64/efibind.h b/stand/efi/include/arm64/efibind.h index 4fdfd9f21386..417da1b4d4ff 100644 --- a/stand/efi/include/arm64/efibind.h +++ b/stand/efi/include/arm64/efibind.h @@ -26,82 +26,6 @@ Revision History #pragma pack() - -#ifdef __FreeBSD__ -#include -#else -// -// Basic int types of various widths -// - -#if (__STDC_VERSION__ < 199901L ) - - // No ANSI C 1999/2000 stdint.h integer width declarations - - #ifdef _MSC_EXTENSIONS - - // Use Microsoft C compiler integer width declarations - - typedef unsigned __int64 uint64_t; - typedef __int64 int64_t; - typedef unsigned __int32 uint32_t; - typedef __int32 int32_t; - typedef unsigned __int16 uint16_t; - typedef __int16 int16_t; - typedef unsigned __int8 uint8_t; - typedef __int8 int8_t; - #else - #ifdef UNIX_LP64 - - // Use LP64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long uint64_t; - typedef long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #else - - // Assume P64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long long uint64_t; - typedef long long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #endif - #endif -#endif -#endif /* __FreeBSD__ */ - -// -// Basic EFI types of various widths -// - - -typedef uint64_t UINT64; -typedef int64_t INT64; -typedef uint32_t UINT32; -typedef int32_t INT32; -typedef uint16_t UINT16; -typedef int16_t INT16; -typedef uint8_t UINT8; -typedef int8_t INT8; - - -#undef VOID -#define VOID void - - -typedef int64_t INTN; -typedef uint64_t UINTN; - //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // BugBug: Code to debug // diff --git a/stand/efi/include/efi.h b/stand/efi/include/efi.h index 20776dcee2fc..b603c3a78205 100644 --- a/stand/efi/include/efi.h +++ b/stand/efi/include/efi.h @@ -39,6 +39,37 @@ Revision History #define EFI_FIRMWARE_MINOR_REVISION 62 #define EFI_FIRMWARE_REVISION ((EFI_FIRMWARE_MAJOR_REVISION <<16) | (EFI_FIRMWARE_MINOR_REVISION)) +// +// Basic EFI types of various widths. +// + +#include +#ifndef ACPI_THREAD_ID /* ACPI's definitions are fine */ +#define ACPI_USE_SYSTEM_INTTYPES 1 /* Tell ACPI we've defined types */ + +typedef uint64_t UINT64; +typedef int64_t INT64; +typedef uint32_t UINT32; +typedef int32_t INT32; +typedef uint16_t UINT16; +typedef int16_t INT16; +typedef uint8_t UINT8; +typedef int8_t INT8; + +#ifdef __LP64__ +typedef int64_t INTN; +typedef uint64_t UINTN; +#else +typedef int32_t INTN; +typedef uint32_t UINTN; +#endif + +#endif + +#undef VOID +#define VOID void + + #include "efibind.h" #include "efidef.h" #include "efidevp.h" diff --git a/stand/efi/include/i386/efibind.h b/stand/efi/include/i386/efibind.h index 6123a98d1b9b..e4cbceae8216 100644 --- a/stand/efi/include/i386/efibind.h +++ b/stand/efi/include/i386/efibind.h @@ -26,89 +26,6 @@ Revision History #pragma pack() - -#ifdef __FreeBSD__ -#include -#else -// -// Basic int types of various widths -// - -#if (__STDC_VERSION__ < 199901L ) - - // No ANSI C 1999/2000 stdint.h integer width declarations - - #ifdef _MSC_EXTENSIONS - - // Use Microsoft C compiler integer width declarations - - typedef unsigned __int64 uint64_t; - typedef __int64 int64_t; - typedef unsigned __int32 uint32_t; - typedef __int32 int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #else - #ifdef UNIX_LP64 - - // Use LP64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long uint64_t; - typedef long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #else - - // Assume P64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long long uint64_t; - typedef long long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #endif - #endif -#endif -#endif /* __FreeBSD__ */ - -// -// Basic EFI types of various widths -// - -#ifndef ACPI_THREAD_ID /* ACPI's definitions are fine, use those */ -#define ACPI_USE_SYSTEM_INTTYPES 1 /* Tell ACPI we've defined types */ - -typedef uint64_t UINT64; -typedef int64_t INT64; - -#ifndef _BASETSD_H_ - typedef uint32_t UINT32; - typedef int32_t INT32; -#endif - -typedef uint16_t UINT16; -typedef int16_t INT16; -typedef uint8_t UINT8; -typedef int8_t INT8; - -#endif - -#undef VOID -#define VOID void - - -typedef int32_t INTN; -typedef uint32_t UINTN; - #ifdef EFI_NT_EMULATOR #define POST_CODE(_Data) #else diff --git a/stand/efi/include/riscv/efibind.h b/stand/efi/include/riscv/efibind.h index 4fdfd9f21386..417da1b4d4ff 100644 --- a/stand/efi/include/riscv/efibind.h +++ b/stand/efi/include/riscv/efibind.h @@ -26,82 +26,6 @@ Revision History #pragma pack() - -#ifdef __FreeBSD__ -#include -#else -// -// Basic int types of various widths -// - -#if (__STDC_VERSION__ < 199901L ) - - // No ANSI C 1999/2000 stdint.h integer width declarations - - #ifdef _MSC_EXTENSIONS - - // Use Microsoft C compiler integer width declarations - - typedef unsigned __int64 uint64_t; - typedef __int64 int64_t; - typedef unsigned __int32 uint32_t; - typedef __int32 int32_t; - typedef unsigned __int16 uint16_t; - typedef __int16 int16_t; - typedef unsigned __int8 uint8_t; - typedef __int8 int8_t; - #else - #ifdef UNIX_LP64 - - // Use LP64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long uint64_t; - typedef long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #else - - // Assume P64 programming model from C_FLAGS for integer width declarations - - typedef unsigned long long uint64_t; - typedef long long int64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef char int8_t; - #endif - #endif -#endif -#endif /* __FreeBSD__ */ - -// -// Basic EFI types of various widths -// - - -typedef uint64_t UINT64; -typedef int64_t INT64; -typedef uint32_t UINT32; -typedef int32_t INT32; -typedef uint16_t UINT16; -typedef int16_t INT16; -typedef uint8_t UINT8; -typedef int8_t INT8; - - -#undef VOID -#define VOID void - - -typedef int64_t INTN; -typedef uint64_t UINTN; - //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // BugBug: Code to debug // diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index a650abb3b68c..d6ba7ec3da44 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -60,7 +60,6 @@ #include "efizfs.h" #include "framebuffer.h" -#define ACPI_USE_SYSTEM_INTTYPES 1 #include "platform/acfreebsd.h" #include "acconfig.h" #define ACPI_SYSTEM_XFACE From nobody Wed Nov 22 12:31:12 2023 X-Original-To: dev-commits-src-main@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 4Sb0wK26zwz51W0H; Wed, 22 Nov 2023 12:31:13 +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 4Sb0wK1MRhz4Fsp; Wed, 22 Nov 2023 12:31:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700656273; 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=5uD32aHtqtSKhMmUa1L5o/HVPTLT8KQQuFKEAaScFio=; b=TL84tDxWtwQ/BKJrdxAPq2CCmpa/586sMwaMWHcbd8CEd1/4bRLGSh8WE0R0UHqqAdzwds 14mIigVxQbEhmsHlvVWuBBYHJCbTDth0+HFPCDtkCGwhoXpNi7IQSFWPvRsJ9EwhbioWYT iVb/6g/yF/Jkcn8NOBcyVvBTSYQqnupJiNj1hwEw/twMBmapzIkH+zp+mI+jVijXbmOanL DjE8YZnRsJjhF+D+pXRuvKqphtQaNU0sp2aoABfbUfikYvBXHyfn+cS3B/geobc11/kX1h FVSVeFdoZ51O1BtlLOyOH5t1gK3cpVADz1DnuFSaaAd8tUV7Y1JCUJZJ7tTVuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700656273; 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=5uD32aHtqtSKhMmUa1L5o/HVPTLT8KQQuFKEAaScFio=; b=p1TwAQj8vyOsdVs3vzGKx2qAXe+zKwN4mSgfPahqhhyuCYH5NV2i4asPYKzQj9Sxk2ApdN TNCM7DibzZCc1Zrlwy8c1/dbAoy19XwsDoVYnzEllyHrTuxD6kzg6eB98tj9G3y/6mh1gg NquS/nvBQge6xac0a4ksG0NXNnBNEGL5emmevb0P8RYzs+4kY9PJfONkaCSD2Pnpq76cv7 64boo1x7m6aS8rNLI7gyV4+5fa+xS4DMPf4mORhx1j00yLZPGTloVn1JyLa8G5GKhTv265 GUhiPAqBqPTdv0FiplPlRfEtwkeX2nzAEmPrjAAuQRaqCZtvfNBctzGlVcWqwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700656273; a=rsa-sha256; cv=none; b=SKO8OvhrhlUfxDM27jsoGPMfhc7rsAgzaVGztXAzPnJqlIYx9MVz1JywN4NMF64ojPaKXH bUyM8gbVnZuyFcXbt6QmSIpiVfaWVyGxjKHPEM9aeb0itpnIL+2APC5cW0NVOKwNJwXZmr dxgxsEZTqcsSBHz7sPw8LCw6/DXgmSKXI3RUa+yeqgGbytN8kczZ1VHJal6pbbZkVE41hq mygJgyszwt4ey6sSaOxRgn4yY3MtJ2vMC+jkVzk3AhMVGX3otTD+q8BY1H0TCuWQ1WoSTg Cmj+/BolfSkBiTjAYYGJAaGxMloCANTTl9va+EMhBWuYjmX46K1wo8DNcr0nnw== 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 4Sb0wK0R5Mz37D; Wed, 22 Nov 2023 12:31:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMCVCtM045169; Wed, 22 Nov 2023 12:31:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMCVCxS045166; Wed, 22 Nov 2023 12:31:12 GMT (envelope-from git) Date: Wed, 22 Nov 2023 12:31:12 GMT Message-Id: <202311221231.3AMCVCxS045166@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mateusz Piotrowski <0mp@FreeBSD.org> Subject: git: 8ec79e8ae07d - main - loader.efi.8: Fix a typo List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: 0mp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8ec79e8ae07d34a371eeb09329ad32993aecd906 Auto-Submitted: auto-generated The branch main has been updated by 0mp: URL: https://cgit.FreeBSD.org/src/commit/?id=8ec79e8ae07d34a371eeb09329ad32993aecd906 commit 8ec79e8ae07d34a371eeb09329ad32993aecd906 Author: Mateusz Piotrowski <0mp@FreeBSD.org> AuthorDate: 2023-11-22 12:24:41 +0000 Commit: Mateusz Piotrowski <0mp@FreeBSD.org> CommitDate: 2023-11-22 12:25:34 +0000 loader.efi.8: Fix a typo MFC after: 3 days Sponsored by: Klara, Inc. --- stand/man/loader.efi.8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stand/man/loader.efi.8 b/stand/man/loader.efi.8 index 827c4ced7f2e..cc24b25594f9 100644 --- a/stand/man/loader.efi.8 +++ b/stand/man/loader.efi.8 @@ -30,7 +30,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 4, 2022 +.Dd November 22, 2023 .Dt LOADER.EFI 8 .Os .Sh NAME @@ -352,7 +352,7 @@ The default location for the ESP mount point is documented in .Xr hier 7 . .Sh EXAMPLES .Ss Updating loader.efi on the ESP -The following examples shows how to install a new +The following example shows how to install a new .Nm on the ESP. .Pp From nobody Wed Nov 22 13:49:20 2023 X-Original-To: dev-commits-src-main@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 4Sb2fS4q6Hz51f6w; Wed, 22 Nov 2023 13:49:20 +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 4Sb2fS4Gcbz4NMc; Wed, 22 Nov 2023 13:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700660960; 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=r877dg+P0XyDZUtuVE6XXvGQeIYbRRvgX/U4VzBMpRc=; b=Gu3wwtVU29ubIcEONbrYx3cIRCY52vnnWcEQq7U0qI/3KIYCtI/bLDJdeJySGzfA+pSxyh pcZSNv7ZDcJYvzCJsFfuaT1IXRS5jCrHf9mKzlC116u2TVV7Dv2YaYIbSzOZe55VnvUSd1 yF6aSn+tF34i3IjevYdflbYAr5iGsP7lg070We5mGlCDuUXX0coq+XBlV/maIPc2mKFNkl 4eY0YwpajV/fqWQLcK1oQ3PzXKmrAJVjYzH/uyfjNcaZnaTIHv/bB4LHypIKVT452v542g lA+G1+hVuxPPd/tA5ZMLaExCji/IB+WA+bjyhUFTOH45t/UwnwRUfE7OuGd1iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700660960; 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=r877dg+P0XyDZUtuVE6XXvGQeIYbRRvgX/U4VzBMpRc=; b=kbVWdRa2TnMRn6zkCILX+7Sq3kJUhXeE23c7b/Vh8nI3gh/heDEawRFQ3DvzPjMAhEUziK eIjYKGa7tz3UwPk9O6co6hiduDsyuFDrPeMAj9BgJCCHNdQMIgBbjYkm7SYSldCCSQTpWU /BoURcOiVYulD0Y7/sGChFXwFFhj6PuUnMSL7AGeJ3OgTY3cO+ygZjWrVoNuUgrId/Eji6 B8hW8amQu0yf/2SC2FuzLzcgPWkdOrRkiHwAL0/MwuP+WuqaLFwQXoF/yk7Fh6x8buvr41 XpCtoXGkkTPVvaE1dCtYTABYxRnRVpS0j3OVOIE6ERMUHfsVDkN+tv5dnpC1ew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700660960; a=rsa-sha256; cv=none; b=bR0FGmCijix8+kQ1jq2uhFqMLeLXD/szu1XtEqBixke4p7+vUfB4YftS+F1UW401gyHubN nbR5rnshr5Eil8RjObzjTricM5YXYPAemwXC/Zjj7UxOXM16WUABe4qVvwfWOStmmGNIfs vPlzmkcxZWt40OmWafjttUcR29uRPkOif7kGp0lyejFXf59j5G8NjNa1dzyIZ9JQn38Qoi 6rSWP1/dmpN6dbU3VCmgSKJmY7C+//1nEi9CTAR/L443qm0qph3DPKR1RGrTNVPv2hOTR0 JBTDS5x/YB04oVOgaXrF3zuYwsrhm7IeqodSyqon1XId+DZ/mW2kWsTo8G+5+g== 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 4Sb2fS3KBPz6BD; Wed, 22 Nov 2023 13:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMDnKHO068976; Wed, 22 Nov 2023 13:49:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMDnKZk068973; Wed, 22 Nov 2023 13:49:20 GMT (envelope-from git) Date: Wed, 22 Nov 2023 13:49:20 GMT Message-Id: <202311221349.3AMDnKZk068973@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: b01cad6d3a85 - main - ip_mroute: handle V_mfchashtbl allocation failure List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b01cad6d3a8523101e7915809144f47e3045067f Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=b01cad6d3a8523101e7915809144f47e3045067f commit b01cad6d3a8523101e7915809144f47e3045067f Author: Kristof Provost AuthorDate: 2023-11-22 13:44:03 +0000 Commit: Kristof Provost CommitDate: 2023-11-22 13:47:14 +0000 ip_mroute: handle V_mfchashtbl allocation failure We allocate V_mfchashtbl with HASH_NOWAIT (which maps to M_NOWAIT), so this allocation may fail. As we didn't handle that failure we could end up dereferencing a NULL pointer later (e.g. during X_ip_mrouter_done()). Do the obvious thing and fail out if we cannot allocate the table. See also: https://redmine.pfsense.org/issues/14917 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netinet/ip_mroute.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/netinet/ip_mroute.c b/sys/netinet/ip_mroute.c index cda5f160e8fb..f789c6eed835 100644 --- a/sys/netinet/ip_mroute.c +++ b/sys/netinet/ip_mroute.c @@ -708,6 +708,10 @@ ip_mrouter_init(struct socket *so, int version) V_mfchashtbl = hashinit_flags(mfchashsize, M_MRTABLE, &V_mfchash, HASH_NOWAIT); + if (V_mfchashtbl == NULL) { + MRW_WUNLOCK(); + return (ENOMEM); + } /* Create upcall ring */ mtx_init(&V_bw_upcalls_ring_mtx, "mroute upcall buf_ring mtx", NULL, MTX_DEF); From nobody Wed Nov 22 17:06:46 2023 X-Original-To: dev-commits-src-main@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 4Sb72G47x1z52Kqy; Wed, 22 Nov 2023 17:06:46 +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 4Sb72G3hbqz3PX9; Wed, 22 Nov 2023 17:06:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700672806; 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=CkqWVqicYN6oJi9buD7rEK642ymLoyCypzK7th3qgJ0=; b=kZ0grHTRsAXcXaX32IOXgPBNYB0muqGit5Sz4LpqPdc6Xug04+wI15jQ9GIyz9abbvjWjr zINLOBZxnnvaWDZyTTJ9Ni5PUtzhY/yPK1pb0RPC6V1LpiyzizxXtbLfOzm7QogMHqqoEe kK9QKTaCH3hIxSLGphmdNqBgVAiDVV9jRbCo5Lx7ITqJSpiuC9Nz8NUI4GU7qu6Pq8dj4u YkRwIkgWGEzkp+6gH74RL40yXf6bOSoofT5rKATFLUm/FWYeAXEi5tAcZ8R5dwqZI+59ky 2Tt8LfOeJwAVECwXXAlG3RY2XSfMDLboDLWN+tVBmZqXGcYEsdMsJHvF32hOsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700672806; 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=CkqWVqicYN6oJi9buD7rEK642ymLoyCypzK7th3qgJ0=; b=Nc1X9kr7AO9A07Kn/t1XqAnDKLcnXCC6PuTlDPs6va/oZ1+Z8vf+2uj1hEwLl9myXXG5E4 C98/o+rCjuVKqk1YrK0TVEEP+sMqnDwTa0LPp5ae85u83FARninbBqh8VZJhMYJdeuH+fk iWYHs44jSPLulpJaR0txaO8bar6O5AqKofVXhXSk6mDII0hkJjUnwnw8jsgm7jyp+tzawp xffcooT7ovPtVVz9cwfQ801gKlhbs1X4qq8rscUdBuutQQTA6vhX3RP3Q+bSrO4miVa2BD XdixDAz690CWl69R2JoxeeJNBVs3AAhQvDdoP4U4+o03oKzalZjLIOy0ykt3SA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700672806; a=rsa-sha256; cv=none; b=ETF1OtIXV8QXiRF9mDxVQwBFhHfxQsZkCEUeWQ7CzDyTV7O0W7W+kn1OR5w9huOpa+xADK fEVXZ8ghgs1N5IbcQNH5/th27fEg8w3t3PWEUp3WkheqUOThzEpitWcMwAZIz02EkV7MpP wSsEJSxO0LCQpFOTjBRXgjNeFoSi87F1BrbfXii0h/qnS1so2z4uV/QC/Oo0/6D9XsQrpl 52WHSQ4arB1AQ5NVC9nW4d2EOVJigpq7e6X9zCU7je1p5qa3l9B6ZyTFGueXtWmsRhad4q 629HC/WSxF+4Kfo7tDrLykvygnGKDosOl6P8fyUAKBoJDzEAnEuL+BKKI9AC4Q== 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 4Sb72G2g2WzCKy; Wed, 22 Nov 2023 17:06:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMH6kTp002664; Wed, 22 Nov 2023 17:06:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMH6kNd002661; Wed, 22 Nov 2023 17:06:46 GMT (envelope-from git) Date: Wed, 22 Nov 2023 17:06:46 GMT Message-Id: <202311221706.3AMH6kNd002661@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: a19ed3495d55 - main - gpiobus: Use bus_generic_rl_* methods List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a19ed3495d5556281ea39995d962b93a637183f0 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a19ed3495d5556281ea39995d962b93a637183f0 commit a19ed3495d5556281ea39995d962b93a637183f0 Author: John Baldwin AuthorDate: 2023-11-22 17:06:22 +0000 Commit: John Baldwin CommitDate: 2023-11-22 17:06:22 +0000 gpiobus: Use bus_generic_rl_* methods Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42715 --- sys/dev/gpio/gpiobus.c | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/sys/dev/gpio/gpiobus.c b/sys/dev/gpio/gpiobus.c index be2fef549460..65e8d1a775fe 100644 --- a/sys/dev/gpio/gpiobus.c +++ b/sys/dev/gpio/gpiobus.c @@ -755,24 +755,6 @@ gpiobus_hinted_child(device_t bus, const char *dname, int dunit) } } -static int -gpiobus_set_resource(device_t dev, device_t child, int type, int rid, - rman_res_t start, rman_res_t count) -{ - struct gpiobus_ivar *devi; - struct resource_list_entry *rle; - - dprintf("%s: entry (%p, %p, %d, %d, %p, %ld)\n", - __func__, dev, child, type, rid, (void *)(intptr_t)start, count); - devi = GPIOBUS_IVAR(child); - rle = resource_list_add(&devi->rl, type, rid, start, - start + count - 1, count); - if (rle == NULL) - return (ENXIO); - - return (0); -} - static int gpiobus_read_ivar(device_t dev, device_t child, int which, uintptr_t *result) { @@ -1075,7 +1057,9 @@ static device_method_t gpiobus_methods[] = { DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), DEVMETHOD(bus_config_intr, bus_generic_config_intr), DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), - DEVMETHOD(bus_set_resource, gpiobus_set_resource), + DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), + DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), + DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_alloc_resource, gpiobus_alloc_resource), DEVMETHOD(bus_release_resource, gpiobus_release_resource), DEVMETHOD(bus_activate_resource, bus_generic_activate_resource), From nobody Wed Nov 22 17:06:47 2023 X-Original-To: dev-commits-src-main@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 4Sb72H4bDmz52L2f; Wed, 22 Nov 2023 17:06:47 +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 4Sb72H44CQz3Pcw; Wed, 22 Nov 2023 17:06:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700672807; 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=b6VeelrZrRQ2ZdWCQWGB1SpmSKJsJGMqm71+zF2cS5A=; b=wsEVFdBJnMIUJnV2cn3TZPgwIODIIG05J6VGF37GJmhCqQ+hOQmVg1KbP7IN9sg9HsI2Ze EoM9cxdea8ScmpeoqBpG5RmJKUfq56w9Wb8l1A8cpALD/1ytQ0SptI0JK8ngPzMJKrWY3X EfYTXHjKmqDHSLYnibEV5zIXRDxeS/4iNhZPwVG7l1tdMFMaXAKsBdXR1DCCW1MQjVV1Mc znKUYgXNft18VUF67W6PwPkckgaSvCN4jXwpejU5RV6dkznNojYFT4frAT3DEc6GbksT5J 4NIG9XPvFZGcQft0IYoEGlH2WJkNPIivUOETrCXGi8nhp0rofhIxgVQHUV7nNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700672807; 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=b6VeelrZrRQ2ZdWCQWGB1SpmSKJsJGMqm71+zF2cS5A=; b=Ryx83Uwn6TURrWHsdJ1Im2itxFS1TfRdDdIU7MGX7dY+oNxBWIQiJ2lTd8iw8zoW4ejjQ1 fw861VrWmITwGSESQIx0RAmVuRvDjRdcvluwtLVMVByjhQ+ME3/piLbN0aviPJ332/td9a z584qFqnkANRZjF04Jiui+e7jbHIiFCBnBW8TtDDBoE0aVWUTQYaCP8UaZirg1yWSf/aqK EaR7qUaIPPgCujDbKT6PcRpVyfgOcj52tGIyBybam6MiTcigrrB7RC/GHWLdMB8uL76Ogn UKtDgpy/gqaPulTfU9wMJxpO1gdYt8PTrxBwnYAyf7TMipe4o3BxNjgCPowt4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700672807; a=rsa-sha256; cv=none; b=aLZ4cte8ZlkB3n5PZlRZ3x4N7i/TN4ShxPHfEMWe4cscGOlUWjDvQFkg/J6F39JawB9Xt9 v6QoxVDsNhWWjo1sWdbjwXVTr3gRawmQJkenghuImafAIVU2DoG27v863wgBxf4AD28tML wnsk156/RbARO5nPBuo+HFqXYCMx46ihot1HwzBXy7PIJXmyuyv6ow9Fvo9Y7WZIruQRdr EHjijV6VYidPqZD9Pres6HP1ODSYkxmFLz4qeZBAxz5aTIqIR1sUYWANDEx0/P7Gt4rQsR gZb3WeFL+d1Sib4EEk3ctda9qJ6MxdEz2Z5J9ghJY20CTMLm6OI57uD0wM26KA== 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 4Sb72H36m1zC72; Wed, 22 Nov 2023 17:06:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMH6lf0002703; Wed, 22 Nov 2023 17:06:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMH6lPQ002700; Wed, 22 Nov 2023 17:06:47 GMT (envelope-from git) Date: Wed, 22 Nov 2023 17:06:47 GMT Message-Id: <202311221706.3AMH6lPQ002700@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: ecf2106c0701 - main - arm64/amd64/riscv nexus: Use bus_generic_rl_* List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ecf2106c0701e522b8c643f8ea37550b3e58ba57 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=ecf2106c0701e522b8c643f8ea37550b3e58ba57 commit ecf2106c0701e522b8c643f8ea37550b3e58ba57 Author: John Baldwin AuthorDate: 2023-11-22 17:06:33 +0000 Commit: John Baldwin CommitDate: 2023-11-22 17:06:33 +0000 arm64/amd64/riscv nexus: Use bus_generic_rl_* Reviewed by: mhorne, imp Differential Revision: https://reviews.freebsd.org/D42716 --- sys/arm64/arm64/nexus.c | 16 +--------------- sys/riscv/riscv/nexus.c | 18 +++--------------- sys/x86/x86/nexus.c | 48 +++--------------------------------------------- 3 files changed, 7 insertions(+), 75 deletions(-) diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index 6ba73cd456ef..dee86bce656a 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -112,7 +112,6 @@ static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; static bus_map_resource_t nexus_map_resource; static bus_release_resource_t nexus_release_resource; -static bus_set_resource_t nexus_set_resource; #ifdef SMP static bus_bind_intr_t nexus_bind_intr; @@ -141,7 +140,7 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_map_resource, nexus_map_resource), DEVMETHOD(bus_release_resource, nexus_release_resource), - DEVMETHOD(bus_set_resource, nexus_set_resource), + DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), #ifdef SMP DEVMETHOD(bus_bind_intr, nexus_bind_intr), #endif @@ -435,19 +434,6 @@ nexus_get_reslist(device_t dev, device_t child) return (&ndev->nx_resources); } -static int -nexus_set_resource(device_t dev, device_t child, int type, int rid, - rman_res_t start, rman_res_t count) -{ - struct nexus_device *ndev = DEVTONX(child); - struct resource_list *rl = &ndev->nx_resources; - - /* XXX this should return a success/failure indicator */ - resource_list_add(rl, type, rid, start, start + count - 1, count); - - return (0); -} - static int nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) diff --git a/sys/riscv/riscv/nexus.c b/sys/riscv/riscv/nexus.c index 48878807bb7e..2e693e6cf655 100644 --- a/sys/riscv/riscv/nexus.c +++ b/sys/riscv/riscv/nexus.c @@ -86,7 +86,6 @@ static bus_alloc_resource_t nexus_alloc_resource; static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; static bus_map_resource_t nexus_map_resource; -static bus_set_resource_t nexus_set_resource; static bus_release_resource_t nexus_release_resource; static bus_config_intr_t nexus_config_intr; @@ -113,9 +112,11 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_adjust_resource, nexus_adjust_resource), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), + DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), + DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_map_resource, nexus_map_resource), - DEVMETHOD(bus_set_resource, nexus_set_resource), + DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_release_resource, nexus_release_resource), DEVMETHOD(bus_config_intr, nexus_config_intr), DEVMETHOD(bus_describe_intr, nexus_describe_intr), @@ -395,19 +396,6 @@ nexus_get_reslist(device_t dev, device_t child) return (&ndev->nx_resources); } -static int -nexus_set_resource(device_t dev, device_t child, int type, int rid, - rman_res_t start, rman_res_t count) -{ - struct nexus_device *ndev = DEVTONX(child); - struct resource_list *rl = &ndev->nx_resources; - - /* XXX this should return a success/failure indicator */ - resource_list_add(rl, type, rid, start, start + count - 1, count); - - return (0); -} - static int nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) diff --git a/sys/x86/x86/nexus.c b/sys/x86/x86/nexus.c index c90a8d252845..4896271b92bd 100644 --- a/sys/x86/x86/nexus.c +++ b/sys/x86/x86/nexus.c @@ -101,12 +101,9 @@ static bus_activate_resource_t nexus_activate_resource; static bus_adjust_resource_t nexus_adjust_resource; static bus_alloc_resource_t nexus_alloc_resource; static bus_deactivate_resource_t nexus_deactivate_resource; -static bus_delete_resource_t nexus_delete_resource; -static bus_get_resource_t nexus_get_resource; static bus_get_resource_list_t nexus_get_reslist; static bus_map_resource_t nexus_map_resource; static bus_release_resource_t nexus_release_resource; -static bus_set_resource_t nexus_set_resource; static bus_unmap_resource_t nexus_unmap_resource; #ifdef SMP @@ -145,12 +142,12 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_adjust_resource, nexus_adjust_resource), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), - DEVMETHOD(bus_get_resource, nexus_get_resource), + DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), DEVMETHOD(bus_get_resource_list, nexus_get_reslist), - DEVMETHOD(bus_delete_resource, nexus_delete_resource), + DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), DEVMETHOD(bus_map_resource, nexus_map_resource), DEVMETHOD(bus_release_resource, nexus_release_resource), - DEVMETHOD(bus_set_resource, nexus_set_resource), + DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), #ifdef SMP DEVMETHOD(bus_bind_intr, nexus_bind_intr), @@ -645,45 +642,6 @@ nexus_get_reslist(device_t dev, device_t child) return (&ndev->nx_resources); } -static int -nexus_set_resource(device_t dev, device_t child, int type, int rid, - rman_res_t start, rman_res_t count) -{ - struct nexus_device *ndev = DEVTONX(child); - struct resource_list *rl = &ndev->nx_resources; - - /* XXX this should return a success/failure indicator */ - resource_list_add(rl, type, rid, start, start + count - 1, count); - return (0); -} - -static int -nexus_get_resource(device_t dev, device_t child, int type, int rid, - rman_res_t *startp, rman_res_t *countp) -{ - struct nexus_device *ndev = DEVTONX(child); - struct resource_list *rl = &ndev->nx_resources; - struct resource_list_entry *rle; - - rle = resource_list_find(rl, type, rid); - if (!rle) - return (ENOENT); - if (startp) - *startp = rle->start; - if (countp) - *countp = rle->count; - return (0); -} - -static void -nexus_delete_resource(device_t dev, device_t child, int type, int rid) -{ - struct nexus_device *ndev = DEVTONX(child); - struct resource_list *rl = &ndev->nx_resources; - - resource_list_delete(rl, type, rid); -} - static int nexus_get_cpus(device_t dev, device_t child, enum cpu_sets op, size_t setsize, cpuset_t *cpuset) From nobody Wed Nov 22 18:14:15 2023 X-Original-To: dev-commits-src-main@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 4Sb8X92LF7z51LMJ; Wed, 22 Nov 2023 18:14:17 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Sb8X91vZkz3ZGN; Wed, 22 Nov 2023 18:14:17 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700676857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nC6OdJPPe5KqXFFjeoG5iBeZEhrAbJjLmIdALjFnqww=; b=B5Gp4qoKeXXZQqSQgIqVTlXP4WReUeK6k+64O+C8q4W70nupJHcXEyYVXDBfBbIILtaLlK lm3OlxBm+BC7P0iC9RPWwDyyS/hQR+Ewj54iv4TwsEf5j+LpX7UBzCMUXlXmV50ZHuksnF AW4+Q5Leo3wu/hbypY+CUSCwnqqI0VyGduPudIEpoPPaBv/lGRh6RG5mOXt7pCu2nVLx0E yuoQkDT+hFI57GKGk+hdyhwToieQqQMDy87boA+nvhh49K4KVqy9NUqu2SoqXi96Xf8Cgl /YM7H4KfChXNCJmtPlw0HBWNsrWxCcvdyhMB1lDUPgK+MBnqLK6GA/WkfSbJyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700676857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nC6OdJPPe5KqXFFjeoG5iBeZEhrAbJjLmIdALjFnqww=; b=rpW2Q2x91pL+ucg0iw6Aq69KiU9GhdwXK3oEzbVD6xtJYp5b/K2jHbWU3d71H/CY5elKXv xBWL11jAtsPgmUcLQC4OZty2LP9k6x1ysMLmlMmdFgeuz4WTHzY5ZYh2PcEzqmN7Bsj/jU d47/aJHm90KoNkBd7iHK6m8xzp+O4Vs77Z+nXK2sN6NZmc1OOpcADxdIyupFE1zicen8M0 OIoLdtXdRSzSVFTkVKEvzTd0vjYRKfaPzSqur8WBtEkZJTSaZwwzp6aIJisXL+I8tK0HeN HmXI7orhPV1EFyCbrt2PiSE/0bHW9i9jsEBFFMBnqLj7cEmeI+lxwfkEhfNh4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700676857; a=rsa-sha256; cv=none; b=HE+aG3UDgGQU7ISJEtLXy1lINOQc+d0cVRs7bziz21zyF7uARnkF4oOluu5XX5cB9ESmd2 sAbmIlho+WO1bCi/vszm7OO2kCbx4Pq3uE4RokGbhVZ27leNhViXhzujOh2VJ5gcmKdiSh R5gFp/ZCWLY37iFOKRD0e4+wUHDQjUj6c+rM5h4LHlqJvsxgBZDx7IMzfizaz6zDm8SS6/ nx3v3Aco6vHLW9kCXYYZAR6YcpyE3Mw4aZi7s2iktD/4RotDVSSEU8pINh06ZeAIDNQN6s ms1JOiX0uAzc2OIOCoYLlbTrjQlrqAXm7BC4ynMkSd0k9KC+/EqkW640cyRgDg== Received: from [IPV6:2601:648:8384:fd00:51ff:8c8b:b16b:8ec9] (unknown [IPv6:2601:648:8384:fd00:51ff:8c8b:b16b:8ec9]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Sb8X84Y7Nz83G; Wed, 22 Nov 2023 18:14:16 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: Date: Wed, 22 Nov 2023 10:14:15 -0800 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 9eecef052155 - main - Add an Armv8 rndr random number provider Content-Language: en-US To: Andrew Turner Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" , Jessica Clarke References: <202311151812.3AFICLIs077567@gitrepo.freebsd.org> <2423E245-0F1B-4195-A766-166183774421@freebsd.org> From: John Baldwin In-Reply-To: <2423E245-0F1B-4195-A766-166183774421@freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 11/15/23 4:29 PM, Jessica Clarke wrote: > On 15 Nov 2023, at 18:27, Jessica Clarke wrote: >> >> On 15 Nov 2023, at 18:12, Andrew Turner wrote: >>> >>> The branch main has been updated by andrew: >>> >>> URL: https://cgit.FreeBSD.org/src/commit/?id=9eecef052155646fbc5f8f533b952b372572d06a >>> >>> commit 9eecef052155646fbc5f8f533b952b372572d06a >>> Author: Andrew Turner >>> AuthorDate: 2023-11-15 17:42:02 +0000 >>> Commit: Andrew Turner >>> CommitDate: 2023-11-15 18:05:08 +0000 >>> >>> Add an Armv8 rndr random number provider >>> >>> Armv8.5 adds an optional random number generator. This is implemented >>> as two special registers one to read a random number, the other to >>> re-seed the entropy pool before reading a random number. Both registers >>> will set the condition flags to tell the caller they can't produce a >>> random number in a reasonable amount of time. >>> >>> Without a signal to reseed the entropy pool use the latter register >>> to provide random numbers to the kernel pool. If at a later time we >>> had a way to tell the provider if it needs to reseed or not we could >>> use the former. >>> >>> On an Amazon AWS Graviton3 VM this never failed, however this may not >>> be the case on low end CPUs so retry reading the random number 10 times >>> before returning an error. >>> >>> Reviewed by: imp, delphij (csprng) >>> Sponsored by: The FreeBSD Foundation >>> Sponsored by: Arm Ltd >>> Differential Revision: https://reviews.freebsd.org/D35411 >>> --- >>> sys/arm64/conf/std.dev | 1 + >>> sys/conf/files.arm64 | 2 + >>> sys/dev/random/armv8rng.c | 135 +++++++++++++++++++++++++++++++++++++++ >>> sys/dev/random/random_harvestq.c | 1 + >>> sys/modules/Makefile | 2 + >>> sys/modules/armv8_rng/Makefile | 11 ++++ >>> sys/sys/random.h | 1 + >>> 7 files changed, 153 insertions(+) >>> >>> diff --git a/sys/arm64/conf/std.dev b/sys/arm64/conf/std.dev >>> index 74d2407e0aec..0ebf2e775b11 100644 >>> --- a/sys/arm64/conf/std.dev >>> +++ b/sys/arm64/conf/std.dev >>> @@ -53,6 +53,7 @@ device vt_simplefb >>> >>> # Pseudo devices. >>> device crypto # core crypto support >>> +device armv8_rng # Armv8.5 rndr RNG >>> device loop # Network loopback >>> device ether # Ethernet support >>> device vlan # 802.1Q VLAN support >>> diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 >>> index 38b9e40463eb..9ccead6a98e1 100644 >>> --- a/sys/conf/files.arm64 >>> +++ b/sys/conf/files.arm64 >>> @@ -379,6 +379,8 @@ dev/psci/psci.c standard >>> dev/psci/smccc_arm64.S standard >>> dev/psci/smccc.c standard >>> >>> +dev/random/armv8rng.c optional armv8_rng !random_loadable >>> + >>> dev/safexcel/safexcel.c optional safexcel fdt >>> >>> dev/sdhci/sdhci_xenon.c optional sdhci_xenon sdhci >>> diff --git a/sys/dev/random/armv8rng.c b/sys/dev/random/armv8rng.c >>> new file mode 100644 >>> index 000000000000..3cca42a5bbf3 >>> --- /dev/null >>> +++ b/sys/dev/random/armv8rng.c >>> @@ -0,0 +1,135 @@ >>> +/*- >>> + * Copyright (c) 2022 The FreeBSD Foundation >>> + * >>> + * This software was developed by Andrew Turner under sponsorship from >>> + * the FreeBSD Foundation. >>> + * >>> + * Redistribution and use in source and binary forms, with or without >>> + * modification, are permitted provided that the following conditions >>> + * are met: >>> + * 1. Redistributions of source code must retain the above copyright >>> + * notice, this list of conditions and the following disclaimer. >>> + * 2. Redistributions in binary form must reproduce the above copyright >>> + * notice, this list of conditions and the following disclaimer in the >>> + * documentation and/or other materials provided with the distribution. >>> + * >>> + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND >>> + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE >>> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE >>> + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE >>> + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL >>> + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS >>> + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) >>> + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT >>> + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY >>> + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF >>> + * SUCH DAMAGE. >>> + */ >>> + >>> +#include >>> + >>> +#include >>> +#include >>> +#include >>> +#include >>> +#include >>> +#include >>> +#include >>> +#include >>> + >>> +#include >>> + >>> +#include >>> + >>> +static u_int random_rndr_read(void *, u_int); >>> + >>> +static bool has_rndr; >>> +static struct random_source random_armv8_rndr = { >>> + .rs_ident = "Armv8 rndr RNG", >>> + .rs_source = RANDOM_PURE_ARMV8, >>> + .rs_read = random_rndr_read, >>> +}; >>> + >>> +static inline int >>> +random_rndr_read_one(u_long *buf) >>> +{ >>> + u_long val; >>> + int loop, ret; >>> + >>> + loop = 10; >>> + do { >>> + __asm __volatile( >>> + ".arch_extension rng \n" >>> + "mrs %0, rndrrs \n" /* Read the random number */ >>> + "cset %w1, ne \n" /* 1 on success, 0 on failure */ >>> + ".arch_extension norng \n" >>> + : "=&r" (val), "=&r"(ret) :: "cc"); >> >> Early clobber doesn’t make sense with no inputs. > > This also breaks the aarch64 ubuntu-20.04 GitHub build, as its LLVM > doesn’t know about the RNG extension. Can you please stop breaking the > arm64 kernel build with older LLVM, this is far from the first time > it’s happened, and some of those never got fixed upstream, we just had > to hack around them downstream. The aarch64 GitHub build is still broken and has been broken now for a week. Can this be fixed to work with that version or should we deprecated support for LLVM 12 for aarch64? Morello LLVM is at LLVM 13 currently. -- John Baldwin From nobody Wed Nov 22 18:30:12 2023 X-Original-To: dev-commits-src-main@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 4Sb8tX4Xt8z51PG3; Wed, 22 Nov 2023 18:30:12 +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 4Sb8tX4659z3cLF; Wed, 22 Nov 2023 18:30:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700677812; 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=Z28dwRMyJiKQ6/GOULXDNSl7WfLDpQUyVsMB77XIpcA=; b=onuhkR2EbyXvJikaUcikzPV5bqOjFms+f+bUigBYSaM2Cx46qUM8/Rhtj93s4Bqt+021lb P4Yh7NIozdHmUToKaF+7I0q5ixdon592LJigsubck71PJbueHkWiihTJoFBJV1PNbAKLFj 73tDJjT5O9/HC0QvaKigLlsf3TSAmiH0TBua8wnU4rPi521fMN+J5dVF7WqlTO0ws2rtjd FPIMKwBavuZtcEMQeDcBcr1EAPUANHQtkLInwHRLlYUZNccU7Fm33P8LKHdwbtC2ZdRyR5 fI2W9YmuL+v2kRETj/XXdlPTGn4577ZicrtjpPsgH8UYprRaLtCpEEciEEn6Ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700677812; 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=Z28dwRMyJiKQ6/GOULXDNSl7WfLDpQUyVsMB77XIpcA=; b=G+xoFnfZgNmzrF9zMTSbgsDjdn1gq0lq/U1OgcmX2RGJS+bwiF2OKWNqcjHj6qWJl96no9 Xl36GEDTtyu4LS9l+byuh277ANejni9I2NLinhocuj30KicvMcqM5aCyLUg98IFlCJmKfF 0tL+77R060oqnVf+iG8a6mtqR0XZOvNhvuhR3UCkZ7OcM3iHOTDDQy0R19Sh9szDswuCcE VMsalQF08BhQWBFr+hoPL4rF0RyPFm+ilm507PhFqnkclosWe0VW6HfLYcHpzb4yGfx7wx I1pknVc8YPy3FZaB9M+o3t7JJfFWExdTSg8bH0h2Jllc1TnLME8hskgKJwmGeA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700677812; a=rsa-sha256; cv=none; b=imI2JbYLK1+WYDJvC3s/d2wwOf38xGemPQDJZ/3DbPkCPVQOD7ZhIZVfQ+TKKEYlKl/5UL fQ7ca+fOj7miwhBkJaBuS1rx14BPO20/MT8gelGy8FBDdquj3CaSHpPy+D6bCQRz8XyTIn eATQfgS+hgyvABjXaCMLWZN6f9UV7sB2x/rYvwugXhGHP9DRm064aG5enJ3kZQchBkZCVC /m9K4j9l7UP4Uut0J+nyMNGGM3Uc6x/1YSAfKiyE3QLeN/IwauCYsixyZe6C4/g3lF7S3p DcJIJ2GSJW4cmn1VbC1QoETxBz+X1dR5vLC7DO2fT2IVH8qSaLtRNlUOCzK1ag== 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 4Sb8tX34DCzVpc; Wed, 22 Nov 2023 18:30:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMIUCsc041661; Wed, 22 Nov 2023 18:30:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMIUCCB041652; Wed, 22 Nov 2023 18:30:12 GMT (envelope-from git) Date: Wed, 22 Nov 2023 18:30:12 GMT Message-Id: <202311221830.3AMIUCCB041652@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dimitry Andric Subject: git: 4c9a0adad182 - main - compiler-rt: avoid segfaults when re-exec'ing with ASLR List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4c9a0adad18263ec8725d9bfc5f560c6ad1da8bd Auto-Submitted: auto-generated The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=4c9a0adad18263ec8725d9bfc5f560c6ad1da8bd commit 4c9a0adad18263ec8725d9bfc5f560c6ad1da8bd Author: Dimitry Andric AuthorDate: 2023-11-22 18:23:06 +0000 Commit: Dimitry Andric CommitDate: 2023-11-22 18:23:06 +0000 compiler-rt: avoid segfaults when re-exec'ing with ASLR After 930a7c2ac67e ("compiler-rt: re-exec with ASLR disabled when necessary") and 96fe7c8ab0f6 ("compiler-rt: support ReExec() on FreeBSD"), binaries linked against the sanitizer libraries may segfault due to procctl(2) being intercepted. Instead, the non-intercepted internal_procctl() should be called. Similarly, the ReExec() function that re-executes the binary after turning off ASLR should not call elf_aux_info(3) and realpath(3), since these will also be intercepted. Instead, loop directly over the elf aux info vector to find the executable path, and avoid calling realpath(3) since it is actually unwanted for this use case. Fixes: 930a7c2ac67e, 96fe7c8ab0f6 MFC after: 3 days --- .../compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp | 2 +- .../lib/sanitizer_common/sanitizer_linux_libcdep.cpp | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp b/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp index 3f544623c6fb..ebbd14eca72f 100644 --- a/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp +++ b/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp @@ -2323,7 +2323,7 @@ void CheckASLR() { "and binaries compiled with PIE\n" "ASLR will be disabled and the program re-executed.\n"); int aslr_ctl = PROC_ASLR_FORCE_DISABLE; - CHECK_NE(procctl(P_PID, 0, PROC_ASLR_CTL, &aslr_ctl), -1); + CHECK_NE(internal_procctl(P_PID, 0, PROC_ASLR_CTL, &aslr_ctl), -1); ReExec(); } # elif SANITIZER_PPC64V2 diff --git a/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp b/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp index ff62fc4af430..58310e05b359 100644 --- a/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp +++ b/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp @@ -56,6 +56,7 @@ // that, it was never implemented. So just define it to zero. #undef MAP_NORESERVE #define MAP_NORESERVE 0 +extern const Elf_Auxinfo *__elf_aux_vector; #endif #if SANITIZER_NETBSD @@ -947,11 +948,11 @@ void ReExec() { const char *pathname = "/proc/self/exe"; #if SANITIZER_FREEBSD - char exe_path[PATH_MAX]; - if (elf_aux_info(AT_EXECPATH, exe_path, sizeof(exe_path)) == 0) { - char link_path[PATH_MAX]; - if (realpath(exe_path, link_path)) - pathname = link_path; + for (const auto *aux = __elf_aux_vector; aux->a_type != AT_NULL; aux++) { + if (aux->a_type == AT_EXECPATH) { + pathname = static_cast(aux->a_un.a_ptr); + break; + } } #elif SANITIZER_NETBSD static const int name[] = { From nobody Wed Nov 22 19:18:01 2023 X-Original-To: dev-commits-src-main@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 4Sb9xk0r9Sz51ZBB; Wed, 22 Nov 2023 19:18: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 4Sb9xk0Q2Cz4GlH; Wed, 22 Nov 2023 19:18:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700680682; 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=0AFyLgAzsN3A6xZSjW1PLhpYFBb1B8ASOMYhwPEat90=; b=Qo6BfkwP6dpQb6fp8L3bOy3ow8E0FVRN09QmVR3J+1JYUDEnJwO3SR4qTF02hzrR8H35tL 3SkAkUY/pCiHNJ13RYwoASbJPfgljZ0gytY3Ved9Huw7LHa3V9BATZkiWe3tEbonB0ZSJb BaWwOdRANY+z9d14NbsnBO3L5NW+WOwEoFdo0VqfK9WZ7CzoJZzf0tx4tGHA3dnbiVMMRh fRtDtUeIaF5qOEbnVxomcOr5C0oYFRD+/Lt/OYwbwsdPzWXbjLDKLsa1qo3RCozBIIRKNq F+CW9mwREhHNK2LPfzKJ6opOShu6QPmQm+c4CDk+KRPUZBVfbf5qbORpKV4U7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700680682; 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=0AFyLgAzsN3A6xZSjW1PLhpYFBb1B8ASOMYhwPEat90=; b=U3bw7MoDMfvH8e4cYO+SQL/1hwrZ5rnPc4CK2v7gyPzuzDZDgfkrJ5y2P5H7T/9IwIdYcN PmHXmyTpmaXNm3aHSuns84pVx4AfxoiMzYZJV43bXc8A4REqJQP4p1u8TD2FudWqlXggQQ 6OyacwoLR386k1AXd/WeOAXuJbjvJ97GT+hlU6w0i3a8UDsQEDdNCG7+BMAemII/IkxN9k lwyObcZpxU3hA9EUrFCEGYFre/X3m4h4vxKw+0xvk99bGpBomD2Q4XcQnVsDe2z1d7kqeZ 8emWn5AkegQ4lgs9Jc7UTJTK9aP8O2gKUdR3sVZQAKMxA4a8ahnTWzI1CDOiYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700680682; a=rsa-sha256; cv=none; b=d2pjhxr4XWz+/rmNJJyNaPSgDEM356vvYhc7RC263G905YLZ9spVXYz87rxoVFLXO+vSwj hWe8Gdlqham2jI71xUR9NKMDQtFwiULwICrKZ4NZG4qyudi/g3hdxyIUto9hqOb4RMMRhd 2NSLRs+4sY/P/cVZGeF3ILTfhHFK+5tetURUR5HhY++7r/oogmqO3kg7bTTjcIS3O0CYjO +QJwfBda8AT9NCpzWcNsdyhbnNPJuYwCqjXYfUdNw2Yf6S/tE2gWRanGCuS2De0dMH56Y9 +0i/1mv54GXcyZKvTwndMCjoSmfnrOUeA6CW4QzbCx6wboPvvLsXs4LyAuVpcw== 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 4Sb9xj6ZqyzWxN; Wed, 22 Nov 2023 19:18:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMJI18U020166; Wed, 22 Nov 2023 19:18:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMJI1VY020163; Wed, 22 Nov 2023 19:18:01 GMT (envelope-from git) Date: Wed, 22 Nov 2023 19:18:01 GMT Message-Id: <202311221918.3AMJI1VY020163@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: e0205aa325c0 - main - kern_rctl.c: Minimal includes when RCTL not defined List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e0205aa325c0936ccdd0e635576875786c41f6c3 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=e0205aa325c0936ccdd0e635576875786c41f6c3 commit e0205aa325c0936ccdd0e635576875786c41f6c3 Author: Olivier Certner AuthorDate: 2023-10-19 14:28:06 +0000 Commit: Ed Maste CommitDate: 2023-11-22 19:17:17 +0000 kern_rctl.c: Minimal includes when RCTL not defined If RCTL is not defined, only the system call stubs returning ENOSYS are compiled in. In this case, don't waste time including most headers since their code is not used. Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation --- sys/kern/kern_rctl.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_rctl.c b/sys/kern/kern_rctl.c index 799fcd76b77e..8e65fabeddc9 100644 --- a/sys/kern/kern_rctl.c +++ b/sys/kern/kern_rctl.c @@ -28,6 +28,8 @@ * SUCH DAMAGE. */ +#ifdef RCTL + #include #include #include @@ -56,7 +58,6 @@ #include #include -#ifdef RCTL #ifndef RACCT #error "The RCTL option requires the RACCT option" #endif @@ -2204,6 +2205,9 @@ rctl_init(void) #else /* !RCTL */ +#include +#include + int sys_rctl_get_racct(struct thread *td, struct rctl_get_racct_args *uap) { @@ -2239,4 +2243,4 @@ sys_rctl_remove_rule(struct thread *td, struct rctl_remove_rule_args *uap) return (ENOSYS); } -#endif /* !RCTL */ +#endif /* RCTL */ From nobody Wed Nov 22 19:18:02 2023 X-Original-To: dev-commits-src-main@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 4Sb9xl48FQz51ZFr; Wed, 22 Nov 2023 19:18:03 +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 4Sb9xl13Q6z4GlS; Wed, 22 Nov 2023 19:18:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700680683; 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=C4sEnQi41a1/wyYm7GAfs2KCT+KviXC+lvi+hPMbFDk=; b=MFzM+RUGgQ6CpJQvLfxLoH5OzIgln4ZxMD7GL+7OAsX13QxhHs5skDAh8bQqXOQbmpTWFd 8dWlUYzibSrVrSHHrSVWEMbOPWWWffXiCmd7UjoiPQVQbo5nlHOtjXH+pCbbNTSlHA+aTn rB5wRAuTdKr6OxAbjm9J/X06ObWfpnPuwMts/xtkd9FDJ6EkHw8d4PFVVKU88TNEJRNutZ +/5qYPTvEwjQE1/q3TXdHowLCBj/YiPR6jEmKT3JBHFZ94lo9I+QYeZ2BILFTxyV8FP7Qt So6w0JeZSgsAOp7zFS1iJfk0O22d1nVxKjxcxFPKfcn1M6GHot8nDL4Du/YESQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700680683; 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=C4sEnQi41a1/wyYm7GAfs2KCT+KviXC+lvi+hPMbFDk=; b=bTKXlntFw9cEFDi5qRuDbT0FZg+gPm1RorprcHmpZG25REPCbGQBAwVGn+AjgcK0PiOHs/ bIPgqsdij7ul0bBXJvoA4Pvqz/cn1lFn8MdOrpQBS0rILz0XU9fAARAZQaOsE36PHUktwE sksnh029W2ytrJ3X02cbAcJUUcZSwfkECtn9G7SpxUjzD8mKoMKAaosHww3tff58VCI5eF epAV5vl9bWcI1fSetznBmpmolGf1VdLWoeuKAK5gBespc5jIGDNjrWgnKPM2oXO9uRke6p C0ovX1F4APV50o8GiFTzq8iVTrpW+KPLppVmezzOr9cszfjs4p1MoyaFjdld4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700680683; a=rsa-sha256; cv=none; b=xV/jWa/tfsqpQN7ikc0m6ZqTVQiJ52Tifi6Yv0iBalEOyGgEJS20Vg0muSPNf4M/Dht4st pyo6mO4Z79bflvHeaLtOsGlktRWHbNtIFpZvMPsqVnITWP+V+zIlvQCh4bI9bhZgbhNHLG 7hOl4v+lIVmrfcIlTE2NN1s0Gey8/wsatwk//YzDI2TmQDPd+me8btfMynmIG+k2hup0jK VxpuYKGble9y8SazPwLJojgukOFJvHPP/oF3/imBjKT+JARPF49WuvZgNuOawuar8zPe7K Dj6ugD4ss/i9+bKMVpGCOOhsZ+8+5G3OfzjSV/mO0Jvao2F7h6s+T/J2BZqGvw== 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 4Sb9xl08YZzXBB; Wed, 22 Nov 2023 19:18:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMJI2n7020216; Wed, 22 Nov 2023 19:18:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMJI2gX020213; Wed, 22 Nov 2023 19:18:02 GMT (envelope-from git) Date: Wed, 22 Nov 2023 19:18:02 GMT Message-Id: <202311221918.3AMJI2gX020213@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 7fa08d415283 - main - kern_racct.c: Don't compile if RACCT undefined List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7fa08d415283c9a0c1e2b57edfbb13d722c25735 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=7fa08d415283c9a0c1e2b57edfbb13d722c25735 commit 7fa08d415283c9a0c1e2b57edfbb13d722c25735 Author: Olivier Certner AuthorDate: 2023-11-21 17:33:08 +0000 Commit: Ed Maste CommitDate: 2023-11-22 19:17:17 +0000 kern_racct.c: Don't compile if RACCT undefined Just skip compiling this file if RACCT isn't defined. This allows to skip including headers that no code uses at all, and also to remove the whole file's #ifdef/#endif bracketing. Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation --- sys/conf/files | 2 +- sys/kern/kern_racct.c | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index c5cd70415931..7ffcbe6e0dda 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -3795,7 +3795,7 @@ kern/kern_priv.c standard kern/kern_proc.c standard kern/kern_procctl.c standard kern/kern_prot.c standard -kern/kern_racct.c standard +kern/kern_racct.c optional racct kern/kern_rangelock.c standard kern/kern_rctl.c standard kern/kern_resource.c standard diff --git a/sys/kern/kern_racct.c b/sys/kern/kern_racct.c index 37b77243fe0e..43c3da0c2320 100644 --- a/sys/kern/kern_racct.c +++ b/sys/kern/kern_racct.c @@ -59,8 +59,6 @@ #include #endif -#ifdef RACCT - FEATURE(racct, "Resource Accounting"); /* @@ -1364,5 +1362,3 @@ racct_init(void) prison0.pr_prison_racct = prison_racct_find("0"); } SYSINIT(racct, SI_SUB_RACCT, SI_ORDER_FIRST, racct_init, NULL); - -#endif /* !RACCT */ From nobody Wed Nov 22 20:17:03 2023 X-Original-To: dev-commits-src-main@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 4SbCFq2JJpz51n0n; Wed, 22 Nov 2023 20:17:03 +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 4SbCFq1ZD4z4Q5h; Wed, 22 Nov 2023 20:17:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684223; 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=dbmm3YhK+kKmk0ypzZCgQxVdqY1JalyrPYxCE+NBDzs=; b=GAb4J34UN1yADK5Fuo/aNWWJGK5QuiaO9LCdEZFmj1GzGyLUDZTJReyLvt6c3MmK2PYAMU rWZ48ERTgVo9cfpgMt7eZX4MdfpFduojm5LSqSNsqTaZ03WsJl5N7G6PT4vc6/zHT9itPS nXfk/GJQpwoGL/R+ns5NBGDbsH4sAqxyQG6lqM1Qkavhjw5WOBHA1k3vplZBToPyLa8bXR 1DVilpnOkL5rqHbqAFhe/N84LB0pU6UdCFDIIE5H9fcjyutu2khriyIThqloL1iBw3I6ed DeoAh+xea1uAS0Rg0gMPhBnvi56BJd5Z7AR7knhp2BXcq4j91QFoyVAwAfIOTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684223; 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=dbmm3YhK+kKmk0ypzZCgQxVdqY1JalyrPYxCE+NBDzs=; b=DWRTGwW6sjq1U2uY8pRTnunnK09pTXiamjyY0EGyT/uzQxu7eqhRTjT9SZnbFGmDdvX/30 XTgeJV1igjoaAjI5j/VJa3Tak4UNY3HIURoE23rZiqybx+RsnRLqT/X+jow6yE1l8+bdRs OhRZdi8jDW18ZvwI7oIfSVf1zIAgi6X8quwOpKah+vGxG9R8i9ZPlvoS8YupX56/mY/d9c 74Eb5kLy1xF0vwefBOdX6WN2FeD5r9EfqzskxzNlJfUpMJHcxov+zVOR+nh5vhuiRAEngp O/1P5Kq9x4yzLZnwXtLTvrLaJBYXYGDH6U2bR2xlCzHZOhj1AgXObacrTfq5Fw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700684223; a=rsa-sha256; cv=none; b=nZUBsHI/AG7peLvmejH9UMan0HW7W6AG5WDlc0zmYNmBQFgNWS07hIL1t2VdLmrsQ6uHcp het/Ytyq43HTaOp6+SEIMn8eBdP9a9zstbAr0+PEZyU+6unl3VTLJdsGsGIw0Su0GkTyqd FBdgE7iZKr7LmKv3XyCGsnOFxD3a86g/eaXXv2sBmIy4o3xYn+MYqOL4PLL+3SE/+4Llgp hPIJLXOnAOs+VS3MamXipAHBPSVxLYARAiUULM1VBk7jeBX/gH6Y2WEd0HMSTd3ZY5LBw5 BYXIQsFX5XjVK/A/AlQ6W4XzREr3fAfXtG9pVoCzlf7Y6/MSWfv62exc/qgYbw== 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 4SbCFq0cCWzY8j; Wed, 22 Nov 2023 20:17:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMKH3kV019986; Wed, 22 Nov 2023 20:17:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMKH3qS019983; Wed, 22 Nov 2023 20:17:03 GMT (envelope-from git) Date: Wed, 22 Nov 2023 20:17:03 GMT Message-Id: <202311222017.3AMKH3qS019983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Motin Subject: git: 6332e0f1a4b3 - main - CAM: Remove return value from xpt_path_sbuf() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6332e0f1a4b34707654d6ae2cd3c1e8799970d0b Auto-Submitted: auto-generated The branch main has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=6332e0f1a4b34707654d6ae2cd3c1e8799970d0b commit 6332e0f1a4b34707654d6ae2cd3c1e8799970d0b Author: Alexander Motin AuthorDate: 2023-11-22 20:10:57 +0000 Commit: Alexander Motin CommitDate: 2023-11-22 20:10:57 +0000 CAM: Remove return value from xpt_path_sbuf() It is wrong to call sbuf_len() on third-party sbuf. If that sbuf has a drain function, it ends up in assertion. But even would it work, it would return not newly written length, but the full one. Searching through the sources I don't see this value used. --- sys/cam/cam_xpt.c | 11 ++++------- sys/cam/cam_xpt.h | 4 ++-- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index 83fef42453fa..22d6c89f5b46 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -3743,19 +3743,18 @@ xpt_print(struct cam_path *path, const char *fmt, ...) sbuf_delete(&sb); } -int +char * xpt_path_string(struct cam_path *path, char *str, size_t str_len) { struct sbuf sb; - int len; sbuf_new(&sb, str, str_len, 0); - len = xpt_path_sbuf(path, &sb); + xpt_path_sbuf(path, &sb); sbuf_finish(&sb); - return (len); + return (str); } -int +void xpt_path_sbuf(struct cam_path *path, struct sbuf *sb) { @@ -3786,8 +3785,6 @@ xpt_path_sbuf(struct cam_path *path, struct sbuf *sb) else sbuf_printf(sb, "X): "); } - - return(sbuf_len(sb)); } path_id_t diff --git a/sys/cam/cam_xpt.h b/sys/cam/cam_xpt.h index 3c8d385fe33b..06ef52580120 100644 --- a/sys/cam/cam_xpt.h +++ b/sys/cam/cam_xpt.h @@ -102,9 +102,9 @@ int xpt_path_comp(struct cam_path *path1, struct cam_path *path2); int xpt_path_comp_dev(struct cam_path *path, struct cam_ed *dev); -int xpt_path_string(struct cam_path *path, char *str, +char * xpt_path_string(struct cam_path *path, char *str, size_t str_len); -int xpt_path_sbuf(struct cam_path *path, struct sbuf *sb); +void xpt_path_sbuf(struct cam_path *path, struct sbuf *sb); path_id_t xpt_path_path_id(struct cam_path *path); target_id_t xpt_path_target_id(struct cam_path *path); lun_id_t xpt_path_lun_id(struct cam_path *path); From nobody Wed Nov 22 20:20:00 2023 X-Original-To: dev-commits-src-main@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 4SbCKD4Ct8z51ngV; Wed, 22 Nov 2023 20:20:00 +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 4SbCKD4005z4QZc; Wed, 22 Nov 2023 20:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684400; 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=nwtDq2qSjiMlMOIjc7O/5pVYuU1NDvyUbBw5NUv/tmM=; b=NJaxkqdHEdelbiUeM+FG3F1faS/ivcq1RV/H2kEiAvnfpYs0Y3/NSFy7qNqf8ah43Cx5un iZwFbMmxw48H0inYRHhltzZqsw+D8lgVMIgABRTGOeoD4PnYBsEuHlju+Iupex4m76LAtf v7ZLkc/Hutd7ZwXiVPmyXnDH8gVx1kpyfofQXAxNPg8B+d/fYJ1gMJX4L4CZL71xY/Tu4p kHTYIvwaVr1PsOa5fXIka26K9UZIx8LmVQ17pe3ckwk+pBQj/vhv1cD5pcuM4h79WIhK9o UEDRtf63R09M7mwb9mLUd3++UR3N0WmK8hqkiD6KxBqURIKJnbsFWgOrStuUBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684400; 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=nwtDq2qSjiMlMOIjc7O/5pVYuU1NDvyUbBw5NUv/tmM=; b=kmjYrfQRxRLDj4et/FJlKhS+yNbzRSXtOCulrDBxPDR6H2OeZfWVAm29RjwpCJqq2G8dlU tf11CFL5Tc2IPkHMEr67S5A+GGt07guUhX8jDynXU9E9KTAczD+M6db24IxxCa615cuLN6 3mXeWGduLH3fiQqFKIpfttI29EbZV0MGILU6a41qJ1uq9fLnjD2Z6GZorD3b1ODInudFwO dQ7XvAC3zj0jMDGDI8Ledy7OkqniVTCtu4M9grmClabm9M15TOl4fRI/AH4VdZcTealuW1 gsqfo6zcXQgNkcvZbNv61lBEfeRahlVGwb4BiNH7gEVyrMLOgHcsBexbE9hZvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700684400; a=rsa-sha256; cv=none; b=d38VIUQ+EjHN5nm1ji1ZKbaZ93EGulwSrKuuUQZOhJKQ+/vjgEQaEqp0s3OXa8NXSje/JG UQIL0A+TQ0hyX/AV4UIFp4H38FrOZE4f4BFuPRkAcqb9sAeH1VVw0SYwQOCTBZ84oZSg2n sbgDweNzQS4mz8/WO7R665M5ZC5mvLk0YwxOArYh+xfo1WkLtKR5otWlClwl7cept2A9FE S8g0aONV4CMJG/Yl1+T8on7JDzhpClUxhoNR0F+gVzpp8uCZI8OYXxtTyaK42AMeWCVu7C 8Kgwj6IqmBeWRUToiwNOkKevbHveChbxRbzoggJn/5HcmYgHUjgLayHADZlDpA== 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 4SbCKD333GzYgt; Wed, 22 Nov 2023 20:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMKK0Rb021139; Wed, 22 Nov 2023 20:20:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMKK0lF021090; Wed, 22 Nov 2023 20:20:00 GMT (envelope-from git) Date: Wed, 22 Nov 2023 20:20:00 GMT Message-Id: <202311222020.3AMKK0lF021090@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: be74aede49fb - main - bhyve: Split backends into separate files List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: be74aede49fb480792448bf563c5079998de7cbd Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=be74aede49fb480792448bf563c5079998de7cbd commit be74aede49fb480792448bf563c5079998de7cbd Author: Mark Johnston AuthorDate: 2023-11-22 19:10:27 +0000 Commit: Mark Johnston CommitDate: 2023-11-22 20:18:46 +0000 bhyve: Split backends into separate files Currently the net_backend structure definition is private to net_backends.c, so all of the backend definitions are there. While adding a new backend to use libslirp, it was noted that this file is somewhat cluttered. Move the netmap and netgraph backends to their own files and clean up includes a bit. No functional change intended. Reviewed by: corvink, jhb MFC after: 3 weeks Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D42689 --- usr.sbin/bhyve/Makefile | 5 +- usr.sbin/bhyve/net_backend_netgraph.c | 191 ++++++++++ usr.sbin/bhyve/net_backend_netmap.c | 384 ++++++++++++++++++++ usr.sbin/bhyve/net_backends.c | 661 +--------------------------------- usr.sbin/bhyve/net_backends.h | 7 +- usr.sbin/bhyve/net_backends_priv.h | 152 ++++++++ 6 files changed, 756 insertions(+), 644 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index de8e87d2ad49..6ce7f6c7ba62 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -33,6 +33,7 @@ SRCS= \ iov.c \ mem.c \ mevent.c \ + net_backend_netmap.c \ net_backends.c \ net_utils.c \ pci_emul.c \ @@ -92,8 +93,8 @@ CFLAGS+=-DINET CFLAGS+=-DINET6 .endif .if ${MK_NETGRAPH_SUPPORT} != "no" -CFLAGS+=-DNETGRAPH -LIBADD+= netgraph +SRCS+= net_backend_netgraph.c +LIBADD+= netgraph .endif .if ${MK_OPENSSL} == "no" CFLAGS+=-DNO_OPENSSL diff --git a/usr.sbin/bhyve/net_backend_netgraph.c b/usr.sbin/bhyve/net_backend_netgraph.c new file mode 100644 index 000000000000..7d1659d611e3 --- /dev/null +++ b/usr.sbin/bhyve/net_backend_netgraph.c @@ -0,0 +1,191 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2019 Vincenzo Maffione + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef WITHOUT_CAPSICUM +#include +#endif +#include +#include + +#ifndef WITHOUT_CAPSICUM +#include +#endif +#include +#include +#include +#include +#include + +#include "config.h" +#include "debug.h" +#include "net_backends.h" +#include "net_backends_priv.h" + +#define NG_SBUF_MAX_SIZE (4 * 1024 * 1024) + +static int +ng_init(struct net_backend *be, const char *devname __unused, + nvlist_t *nvl, net_be_rxeof_t cb, void *param) +{ + struct tap_priv *p = NET_BE_PRIV(be); + struct ngm_connect ngc; + const char *value, *nodename; + int sbsz; + int ctrl_sock; + int flags; + unsigned long maxsbsz; + size_t msbsz; +#ifndef WITHOUT_CAPSICUM + cap_rights_t rights; +#endif + + if (cb == NULL) { + EPRINTLN("Netgraph backend requires non-NULL callback"); + return (-1); + } + + be->fd = -1; + + memset(&ngc, 0, sizeof(ngc)); + + value = get_config_value_node(nvl, "path"); + if (value == NULL) { + EPRINTLN("path must be provided"); + return (-1); + } + strncpy(ngc.path, value, NG_PATHSIZ - 1); + + value = get_config_value_node(nvl, "hook"); + if (value == NULL) + value = "vmlink"; + strncpy(ngc.ourhook, value, NG_HOOKSIZ - 1); + + value = get_config_value_node(nvl, "peerhook"); + if (value == NULL) { + EPRINTLN("peer hook must be provided"); + return (-1); + } + strncpy(ngc.peerhook, value, NG_HOOKSIZ - 1); + + nodename = get_config_value_node(nvl, "socket"); + if (NgMkSockNode(nodename, + &ctrl_sock, &be->fd) < 0) { + EPRINTLN("can't get Netgraph sockets"); + return (-1); + } + + if (NgSendMsg(ctrl_sock, ".", + NGM_GENERIC_COOKIE, + NGM_CONNECT, &ngc, sizeof(ngc)) < 0) { + EPRINTLN("can't connect to node"); + close(ctrl_sock); + goto error; + } + + close(ctrl_sock); + + flags = fcntl(be->fd, F_GETFL); + + if (flags < 0) { + EPRINTLN("can't get socket flags"); + goto error; + } + + if (fcntl(be->fd, F_SETFL, flags | O_NONBLOCK) < 0) { + EPRINTLN("can't set O_NONBLOCK flag"); + goto error; + } + + /* + * The default ng_socket(4) buffer's size is too low. + * Calculate the minimum value between NG_SBUF_MAX_SIZE + * and kern.ipc.maxsockbuf. + */ + msbsz = sizeof(maxsbsz); + if (sysctlbyname("kern.ipc.maxsockbuf", &maxsbsz, &msbsz, + NULL, 0) < 0) { + EPRINTLN("can't get 'kern.ipc.maxsockbuf' value"); + goto error; + } + + /* + * We can't set the socket buffer size to kern.ipc.maxsockbuf value, + * as it takes into account the mbuf(9) overhead. + */ + maxsbsz = maxsbsz * MCLBYTES / (MSIZE + MCLBYTES); + + sbsz = MIN(NG_SBUF_MAX_SIZE, maxsbsz); + + if (setsockopt(be->fd, SOL_SOCKET, SO_SNDBUF, &sbsz, + sizeof(sbsz)) < 0) { + EPRINTLN("can't set TX buffer size"); + goto error; + } + + if (setsockopt(be->fd, SOL_SOCKET, SO_RCVBUF, &sbsz, + sizeof(sbsz)) < 0) { + EPRINTLN("can't set RX buffer size"); + goto error; + } + +#ifndef WITHOUT_CAPSICUM + cap_rights_init(&rights, CAP_EVENT, CAP_READ, CAP_WRITE); + if (caph_rights_limit(be->fd, &rights) == -1) + errx(EX_OSERR, "Unable to apply rights for sandbox"); +#endif + + memset(p->bbuf, 0, sizeof(p->bbuf)); + p->bbuflen = 0; + + p->mevp = mevent_add_disabled(be->fd, EVF_READ, cb, param); + if (p->mevp == NULL) { + EPRINTLN("Could not register event"); + goto error; + } + + return (0); + +error: + tap_cleanup(be); + return (-1); +} + +static struct net_backend ng_backend = { + .prefix = "netgraph", + .priv_size = sizeof(struct tap_priv), + .init = ng_init, + .cleanup = tap_cleanup, + .send = tap_send, + .peek_recvlen = tap_peek_recvlen, + .recv = tap_recv, + .recv_enable = tap_recv_enable, + .recv_disable = tap_recv_disable, + .get_cap = tap_get_cap, + .set_cap = tap_set_cap, +}; + +DATA_SET(net_backend_set, ng_backend); diff --git a/usr.sbin/bhyve/net_backend_netmap.c b/usr.sbin/bhyve/net_backend_netmap.c new file mode 100644 index 000000000000..5ba11b96797c --- /dev/null +++ b/usr.sbin/bhyve/net_backend_netmap.c @@ -0,0 +1,384 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2019 Vincenzo Maffione + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#define NETMAP_WITH_LIBS +#include + +#include + +#include "debug.h" +#include "iov.h" +#include "mevent.h" +#include "net_backends.h" +#include "net_backends_priv.h" + +/* The virtio-net features supported by netmap. */ +#define NETMAP_FEATURES (VIRTIO_NET_F_CSUM | VIRTIO_NET_F_HOST_TSO4 | \ + VIRTIO_NET_F_HOST_TSO6 | VIRTIO_NET_F_HOST_UFO | \ + VIRTIO_NET_F_GUEST_CSUM | VIRTIO_NET_F_GUEST_TSO4 | \ + VIRTIO_NET_F_GUEST_TSO6 | VIRTIO_NET_F_GUEST_UFO) + +struct netmap_priv { + char ifname[IFNAMSIZ]; + struct nm_desc *nmd; + uint16_t memid; + struct netmap_ring *rx; + struct netmap_ring *tx; + struct mevent *mevp; + net_be_rxeof_t cb; + void *cb_param; +}; + +static void +nmreq_init(struct nmreq *req, char *ifname) +{ + + memset(req, 0, sizeof(*req)); + strlcpy(req->nr_name, ifname, sizeof(req->nr_name)); + req->nr_version = NETMAP_API; +} + +static int +netmap_set_vnet_hdr_len(struct net_backend *be, int vnet_hdr_len) +{ + int err; + struct nmreq req; + struct netmap_priv *priv = NET_BE_PRIV(be); + + nmreq_init(&req, priv->ifname); + req.nr_cmd = NETMAP_BDG_VNET_HDR; + req.nr_arg1 = vnet_hdr_len; + err = ioctl(be->fd, NIOCREGIF, &req); + if (err) { + EPRINTLN("Unable to set vnet header length %d", vnet_hdr_len); + return (err); + } + + be->be_vnet_hdr_len = vnet_hdr_len; + + return (0); +} + +static int +netmap_has_vnet_hdr_len(struct net_backend *be, unsigned vnet_hdr_len) +{ + unsigned prev_hdr_len = be->be_vnet_hdr_len; + int ret; + + if (vnet_hdr_len == prev_hdr_len) { + return (1); + } + + ret = netmap_set_vnet_hdr_len(be, vnet_hdr_len); + if (ret) { + return (0); + } + + netmap_set_vnet_hdr_len(be, prev_hdr_len); + + return (1); +} + +static uint64_t +netmap_get_cap(struct net_backend *be) +{ + + return (netmap_has_vnet_hdr_len(be, VNET_HDR_LEN) ? + NETMAP_FEATURES : 0); +} + +static int +netmap_set_cap(struct net_backend *be, uint64_t features __unused, + unsigned vnet_hdr_len) +{ + + return (netmap_set_vnet_hdr_len(be, vnet_hdr_len)); +} + +static int +netmap_init(struct net_backend *be, const char *devname, + nvlist_t *nvl __unused, net_be_rxeof_t cb, void *param) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + + strlcpy(priv->ifname, devname, sizeof(priv->ifname)); + priv->ifname[sizeof(priv->ifname) - 1] = '\0'; + + priv->nmd = nm_open(priv->ifname, NULL, NETMAP_NO_TX_POLL, NULL); + if (priv->nmd == NULL) { + EPRINTLN("Unable to nm_open(): interface '%s', errno (%s)", + devname, strerror(errno)); + return (-1); + } + + priv->memid = priv->nmd->req.nr_arg2; + priv->tx = NETMAP_TXRING(priv->nmd->nifp, 0); + priv->rx = NETMAP_RXRING(priv->nmd->nifp, 0); + priv->cb = cb; + priv->cb_param = param; + be->fd = priv->nmd->fd; + + priv->mevp = mevent_add_disabled(be->fd, EVF_READ, cb, param); + if (priv->mevp == NULL) { + EPRINTLN("Could not register event"); + return (-1); + } + + return (0); +} + +static void +netmap_cleanup(struct net_backend *be) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + + if (priv->mevp) { + mevent_delete(priv->mevp); + } + if (priv->nmd) { + nm_close(priv->nmd); + } + be->fd = -1; +} + +static ssize_t +netmap_send(struct net_backend *be, const struct iovec *iov, + int iovcnt) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + struct netmap_ring *ring; + ssize_t totlen = 0; + int nm_buf_size; + int nm_buf_len; + uint32_t head; + uint8_t *nm_buf; + int j; + + ring = priv->tx; + head = ring->head; + if (head == ring->tail) { + EPRINTLN("No space, drop %zu bytes", count_iov(iov, iovcnt)); + goto txsync; + } + nm_buf = NETMAP_BUF(ring, ring->slot[head].buf_idx); + nm_buf_size = ring->nr_buf_size; + nm_buf_len = 0; + + for (j = 0; j < iovcnt; j++) { + uint8_t *iov_frag_buf = iov[j].iov_base; + int iov_frag_size = iov[j].iov_len; + + totlen += iov_frag_size; + + /* + * Split each iovec fragment over more netmap slots, if + * necessary. + */ + for (;;) { + int copylen; + + copylen = iov_frag_size < nm_buf_size ? iov_frag_size : nm_buf_size; + memcpy(nm_buf, iov_frag_buf, copylen); + + iov_frag_buf += copylen; + iov_frag_size -= copylen; + nm_buf += copylen; + nm_buf_size -= copylen; + nm_buf_len += copylen; + + if (iov_frag_size == 0) { + break; + } + + ring->slot[head].len = nm_buf_len; + ring->slot[head].flags = NS_MOREFRAG; + head = nm_ring_next(ring, head); + if (head == ring->tail) { + /* + * We ran out of netmap slots while + * splitting the iovec fragments. + */ + EPRINTLN("No space, drop %zu bytes", + count_iov(iov, iovcnt)); + goto txsync; + } + nm_buf = NETMAP_BUF(ring, ring->slot[head].buf_idx); + nm_buf_size = ring->nr_buf_size; + nm_buf_len = 0; + } + } + + /* Complete the last slot, which must not have NS_MOREFRAG set. */ + ring->slot[head].len = nm_buf_len; + ring->slot[head].flags = 0; + head = nm_ring_next(ring, head); + + /* Now update ring->head and ring->cur. */ + ring->head = ring->cur = head; +txsync: + ioctl(be->fd, NIOCTXSYNC, NULL); + + return (totlen); +} + +static ssize_t +netmap_peek_recvlen(struct net_backend *be) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + struct netmap_ring *ring = priv->rx; + uint32_t head = ring->head; + ssize_t totlen = 0; + + while (head != ring->tail) { + struct netmap_slot *slot = ring->slot + head; + + totlen += slot->len; + if ((slot->flags & NS_MOREFRAG) == 0) + break; + head = nm_ring_next(ring, head); + } + + return (totlen); +} + +static ssize_t +netmap_recv(struct net_backend *be, const struct iovec *iov, int iovcnt) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + struct netmap_slot *slot = NULL; + struct netmap_ring *ring; + uint8_t *iov_frag_buf; + int iov_frag_size; + ssize_t totlen = 0; + uint32_t head; + + assert(iovcnt); + + ring = priv->rx; + head = ring->head; + iov_frag_buf = iov->iov_base; + iov_frag_size = iov->iov_len; + + do { + uint8_t *nm_buf; + int nm_buf_len; + + if (head == ring->tail) { + return (0); + } + + slot = ring->slot + head; + nm_buf = NETMAP_BUF(ring, slot->buf_idx); + nm_buf_len = slot->len; + + for (;;) { + int copylen = nm_buf_len < iov_frag_size ? + nm_buf_len : iov_frag_size; + + memcpy(iov_frag_buf, nm_buf, copylen); + nm_buf += copylen; + nm_buf_len -= copylen; + iov_frag_buf += copylen; + iov_frag_size -= copylen; + totlen += copylen; + + if (nm_buf_len == 0) { + break; + } + + iov++; + iovcnt--; + if (iovcnt == 0) { + /* No space to receive. */ + EPRINTLN("Short iov, drop %zd bytes", + totlen); + return (-ENOSPC); + } + iov_frag_buf = iov->iov_base; + iov_frag_size = iov->iov_len; + } + + head = nm_ring_next(ring, head); + + } while (slot->flags & NS_MOREFRAG); + + /* Release slots to netmap. */ + ring->head = ring->cur = head; + + return (totlen); +} + +static void +netmap_recv_enable(struct net_backend *be) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + + mevent_enable(priv->mevp); +} + +static void +netmap_recv_disable(struct net_backend *be) +{ + struct netmap_priv *priv = NET_BE_PRIV(be); + + mevent_disable(priv->mevp); +} + +static struct net_backend netmap_backend = { + .prefix = "netmap", + .priv_size = sizeof(struct netmap_priv), + .init = netmap_init, + .cleanup = netmap_cleanup, + .send = netmap_send, + .peek_recvlen = netmap_peek_recvlen, + .recv = netmap_recv, + .recv_enable = netmap_recv_enable, + .recv_disable = netmap_recv_disable, + .get_cap = netmap_get_cap, + .set_cap = netmap_set_cap, +}; + +/* A clone of the netmap backend, with a different prefix. */ +static struct net_backend vale_backend = { + .prefix = "vale", + .priv_size = sizeof(struct netmap_priv), + .init = netmap_init, + .cleanup = netmap_cleanup, + .send = netmap_send, + .peek_recvlen = netmap_peek_recvlen, + .recv = netmap_recv, + .recv_enable = netmap_recv_enable, + .recv_disable = netmap_recv_disable, + .get_cap = netmap_get_cap, + .set_cap = netmap_set_cap, +}; + +DATA_SET(net_backend_set, netmap_backend); +DATA_SET(net_backend_set, vale_backend); diff --git a/usr.sbin/bhyve/net_backends.c b/usr.sbin/bhyve/net_backends.c index de6afab53854..2d11c45f217a 100644 --- a/usr.sbin/bhyve/net_backends.c +++ b/usr.sbin/bhyve/net_backends.c @@ -32,8 +32,7 @@ * features) is exported by net_backends.h. */ -#include -#include /* u_short etc */ +#include #ifndef WITHOUT_CAPSICUM #include #endif @@ -43,153 +42,35 @@ #include #include -#include -#include -#define NETMAP_WITH_LIBS -#include +#include #ifndef WITHOUT_CAPSICUM #include #endif #include #include #include +#include +#include +#include #include #include #include #include -#include #include -#include -#include -#include -#include -#include - -#ifdef NETGRAPH -#include -#include -#include -#endif +#include #include "config.h" #include "debug.h" #include "iov.h" #include "mevent.h" #include "net_backends.h" +#include "net_backends_priv.h" #include "pci_emul.h" -#include - -/* - * Each network backend registers a set of function pointers that are - * used to implement the net backends API. - * This might need to be exposed if we implement backends in separate files. - */ -struct net_backend { - const char *prefix; /* prefix matching this backend */ - - /* - * Routines used to initialize and cleanup the resources needed - * by a backend. The cleanup function is used internally, - * and should not be called by the frontend. - */ - int (*init)(struct net_backend *be, const char *devname, - nvlist_t *nvl, net_be_rxeof_t cb, void *param); - void (*cleanup)(struct net_backend *be); - - /* - * Called to serve a guest transmit request. The scatter-gather - * vector provided by the caller has 'iovcnt' elements and contains - * the packet to send. - */ - ssize_t (*send)(struct net_backend *be, const struct iovec *iov, - int iovcnt); - - /* - * Get the length of the next packet that can be received from - * the backend. If no packets are currently available, this - * function returns 0. - */ - ssize_t (*peek_recvlen)(struct net_backend *be); - - /* - * Called to receive a packet from the backend. When the function - * returns a positive value 'len', the scatter-gather vector - * provided by the caller contains a packet with such length. - * The function returns 0 if the backend doesn't have a new packet to - * receive. - */ - ssize_t (*recv)(struct net_backend *be, const struct iovec *iov, - int iovcnt); - - /* - * Ask the backend to enable or disable receive operation in the - * backend. On return from a disable operation, it is guaranteed - * that the receive callback won't be called until receive is - * enabled again. Note however that it is up to the caller to make - * sure that netbe_recv() is not currently being executed by another - * thread. - */ - void (*recv_enable)(struct net_backend *be); - void (*recv_disable)(struct net_backend *be); - - /* - * Ask the backend for the virtio-net features it is able to - * support. Possible features are TSO, UFO and checksum offloading - * in both rx and tx direction and for both IPv4 and IPv6. - */ - uint64_t (*get_cap)(struct net_backend *be); - - /* - * Tell the backend to enable/disable the specified virtio-net - * features (capabilities). - */ - int (*set_cap)(struct net_backend *be, uint64_t features, - unsigned int vnet_hdr_len); - - struct pci_vtnet_softc *sc; - int fd; - - /* - * Length of the virtio-net header used by the backend and the - * frontend, respectively. A zero value means that the header - * is not used. - */ - unsigned int be_vnet_hdr_len; - unsigned int fe_vnet_hdr_len; - - /* Size of backend-specific private data. */ - size_t priv_size; - - /* Backend-specific private data follows. */ -}; - -#define NET_BE_PRIV(be) ((void *)((be) + 1)) #define NET_BE_SIZE(be) (sizeof(*be) + (be)->priv_size) -SET_DECLARE(net_backend_set, struct net_backend); - -#define VNET_HDR_LEN sizeof(struct virtio_net_rxhdr) - -#define WPRINTF(params) PRINTLN params - -/* - * The tap backend - */ - -struct tap_priv { - struct mevent *mevp; - /* - * A bounce buffer that allows us to implement the peek_recvlen - * callback. In the future we may get the same information from - * the kevent data. - */ - char bbuf[1 << 16]; - ssize_t bbuflen; -}; - -static void +void tap_cleanup(struct net_backend *be) { struct tap_priv *priv = NET_BE_PRIV(be); @@ -216,7 +97,7 @@ tap_init(struct net_backend *be, const char *devname, #endif if (cb == NULL) { - WPRINTF(("TAP backend requires non-NULL callback")); + EPRINTLN("TAP backend requires non-NULL callback"); return (-1); } @@ -225,7 +106,7 @@ tap_init(struct net_backend *be, const char *devname, be->fd = open(tbuf, O_RDWR); if (be->fd == -1) { - WPRINTF(("open of tap device %s failed", tbuf)); + EPRINTLN("open of tap device %s failed", tbuf); goto error; } @@ -234,12 +115,12 @@ tap_init(struct net_backend *be, const char *devname, * notifications with the event loop */ if (ioctl(be->fd, FIONBIO, &opt) < 0) { - WPRINTF(("tap device O_NONBLOCK failed")); + EPRINTLN("tap device O_NONBLOCK failed"); goto error; } if (ioctl(be->fd, VMIO_SIOCSIFFLAGS, up)) { - WPRINTF(("tap device link up failed")); + EPRINTLN("tap device link up failed"); goto error; } @@ -254,7 +135,7 @@ tap_init(struct net_backend *be, const char *devname, priv->mevp = mevent_add_disabled(be->fd, EVF_READ, cb, param); if (priv->mevp == NULL) { - WPRINTF(("Could not register event")); + EPRINTLN("Could not register event"); goto error; } @@ -268,13 +149,13 @@ error: /* * Called to send a buffer chain out to the tap device */ -static ssize_t +ssize_t tap_send(struct net_backend *be, const struct iovec *iov, int iovcnt) { return (writev(be->fd, iov, iovcnt)); } -static ssize_t +ssize_t tap_peek_recvlen(struct net_backend *be) { struct tap_priv *priv = NET_BE_PRIV(be); @@ -304,7 +185,7 @@ tap_peek_recvlen(struct net_backend *be) return (ret); } -static ssize_t +ssize_t tap_recv(struct net_backend *be, const struct iovec *iov, int iovcnt) { struct tap_priv *priv = NET_BE_PRIV(be); @@ -332,7 +213,7 @@ tap_recv(struct net_backend *be, const struct iovec *iov, int iovcnt) return (ret); } -static void +void tap_recv_enable(struct net_backend *be) { struct tap_priv *priv = NET_BE_PRIV(be); @@ -340,7 +221,7 @@ tap_recv_enable(struct net_backend *be) mevent_enable(priv->mevp); } -static void +void tap_recv_disable(struct net_backend *be) { struct tap_priv *priv = NET_BE_PRIV(be); @@ -348,14 +229,14 @@ tap_recv_disable(struct net_backend *be) mevent_disable(priv->mevp); } -static uint64_t +uint64_t tap_get_cap(struct net_backend *be __unused) { return (0); /* no capabilities for now */ } -static int +int tap_set_cap(struct net_backend *be __unused, uint64_t features, unsigned vnet_hdr_len) { @@ -395,508 +276,6 @@ static struct net_backend vmnet_backend = { DATA_SET(net_backend_set, tap_backend); DATA_SET(net_backend_set, vmnet_backend); -#ifdef NETGRAPH - -/* - * Netgraph backend - */ - -#define NG_SBUF_MAX_SIZE (4 * 1024 * 1024) - -static int -ng_init(struct net_backend *be, const char *devname __unused, - nvlist_t *nvl, net_be_rxeof_t cb, void *param) -{ - struct tap_priv *p = NET_BE_PRIV(be); - struct ngm_connect ngc; - const char *value, *nodename; - int sbsz; - int ctrl_sock; - int flags; - unsigned long maxsbsz; - size_t msbsz; -#ifndef WITHOUT_CAPSICUM - cap_rights_t rights; -#endif - - if (cb == NULL) { - WPRINTF(("Netgraph backend requires non-NULL callback")); - return (-1); - } - - be->fd = -1; - - memset(&ngc, 0, sizeof(ngc)); - - value = get_config_value_node(nvl, "path"); - if (value == NULL) { - WPRINTF(("path must be provided")); - return (-1); - } - strncpy(ngc.path, value, NG_PATHSIZ - 1); - - value = get_config_value_node(nvl, "hook"); - if (value == NULL) - value = "vmlink"; - strncpy(ngc.ourhook, value, NG_HOOKSIZ - 1); - - value = get_config_value_node(nvl, "peerhook"); - if (value == NULL) { - WPRINTF(("peer hook must be provided")); - return (-1); - } - strncpy(ngc.peerhook, value, NG_HOOKSIZ - 1); - - nodename = get_config_value_node(nvl, "socket"); - if (NgMkSockNode(nodename, - &ctrl_sock, &be->fd) < 0) { - WPRINTF(("can't get Netgraph sockets")); - return (-1); - } - - if (NgSendMsg(ctrl_sock, ".", - NGM_GENERIC_COOKIE, - NGM_CONNECT, &ngc, sizeof(ngc)) < 0) { - WPRINTF(("can't connect to node")); - close(ctrl_sock); *** 623 LINES SKIPPED *** From nobody Wed Nov 22 20:20:01 2023 X-Original-To: dev-commits-src-main@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 4SbCKF5BL7z51nmM; Wed, 22 Nov 2023 20:20:01 +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 4SbCKF4ZhPz4QXf; Wed, 22 Nov 2023 20:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684401; 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=mlUHvTUEVQJSEYeGahRYGid2NGQg4OZ7/iYAKUXf2ow=; b=NIIrK1crLcBern3VvafqyY/1mwoB4xCvF3PzMPR5BsxgHFAHYqwJx13946Yw8jGi5Loj4Y SthP2CAs/kE/RJZEPU5FqfgbxQNcBCZoZwXs7gY1RWgPbzSSCXtrcGVNG4/hujKz0gIlF5 963rljtnM+LBCBEdTnPRI0iDz2KxsPTCWyV1FfGy6qQlfklg0tAw/UutvCOKbFiM7Rhftt eJs1JWNW9o6FDifjbAKYo9oLuzb5GRcHTmFJfskhv0qgakOm7psWmDwgdRUDcajDIxWV0S Vy4xsHVUBgK4PNrBsO6FTuxqjpgRyDGZ++sFHjDyxbDhT01xC8jhjtDKZxaZAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684401; 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=mlUHvTUEVQJSEYeGahRYGid2NGQg4OZ7/iYAKUXf2ow=; b=bkiWd2y3jAU/NX/01E+CgK7osFgeC8SSvpJ3JuyvW/f5KM0mJwBMGZUsafG/cLtx/QELiP bf7vEU85+6WornsB0aXDPI5aUD9njbCdn3teFvG/rA2GQz1/3YdmTnrD3J6E/pTvWCeIIr uLCGZnOPc8+tO6UXotlhILvUUrARGD/Z9KVMvAgQ0BMjktdwCKpK0tvAb0TPbYF8dcUtuF vm3pRx3gyk4HSEvOgj8nnOYx7L+UJGQG0eNN5SGwRxOxD+em/AWhOgTjFzeoRAfb2AurXx uTalfrkEcBN+4HPI82lxz6eEudGmg1zg9X1m2C50yftdefXR0bFBVokhxr5jZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700684401; a=rsa-sha256; cv=none; b=DkpFxVDQIzFb2TAyhotfpSLIr4MedmgR1ZmzC8c5AYSh3ZRQri3Wn6dsscnSD3fCisXyQ2 LOJbTKGuVHPKB++9Sy7IXEAwwBlqDSrEII0pnC7mPl7xXZP6HxJikFKkYFURCdSf/wNR2c EBtJf/P/neX5si/Tt1wmyIZsRnouAzP3zRFc/NRVLo4PiDbwTkkRWWjT/q7yr66Ed1JDxc bCLKLbPo1R+lNVk8mnmePmprLNU1pesvJ/8Hdx29iQLrLUivOTz1lyskmQvfGFKy8drLBR AbLsKhgr5aWb5NBZNj9N+Yo+IbM+BIlqHvs8ndXrHh3e3cyykLPdP0SpcVQnog== 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 4SbCKF3NvXzXjV; Wed, 22 Nov 2023 20:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMKK1g4022424; Wed, 22 Nov 2023 20:20:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMKK1F1022418; Wed, 22 Nov 2023 20:20:01 GMT (envelope-from git) Date: Wed, 22 Nov 2023 20:20:01 GMT Message-Id: <202311222020.3AMKK1F1022418@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: c5359e2af5ab - main - bhyve: Add a slirp network backend List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c5359e2af5ab582f9a0b862ce90ad3962f9f1d03 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c5359e2af5ab582f9a0b862ce90ad3962f9f1d03 commit c5359e2af5ab582f9a0b862ce90ad3962f9f1d03 Author: Mark Johnston AuthorDate: 2023-11-22 19:11:03 +0000 Commit: Mark Johnston CommitDate: 2023-11-22 20:18:46 +0000 bhyve: Add a slirp network backend This enables a subset of the functionality provided by QEMU's user networking implementation. In particular, it uses net/libslirp, the same library as QEMU. libslirp is permissively licensed but has some dependencies which make it impractical to bring into the base system (glib in particular). I thus opted to make bhyve dlopen the libslirp.so, which can be installed via pkg. The library header is imported into bhyve. The slirp backend takes a "hostfwd" which is identical to QEMU's hostfwd. When configured, bhyve opens a host socket and listens for connections, which get forwarded to the guest. For instance, "hostfwd=tcp::1234-:22" allows one to ssh into the guest by ssh'ing to port 1234 on the host, e.g., via 127.0.0.1. I didn't try to hook up guestfwd support since I don't personally have a use-case for it yet, and I think it won't interact nicely with the capsicum sandbox. Reviewed by: jhb Tested by: rew MFC after: 1 month Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D42510 --- usr.sbin/bhyve/Makefile | 1 + usr.sbin/bhyve/bhyve.8 | 20 +- usr.sbin/bhyve/bhyve_config.5 | 22 +- usr.sbin/bhyve/libslirp.h | 365 ++++++++++++++++++++ usr.sbin/bhyve/net_backend_slirp.c | 662 +++++++++++++++++++++++++++++++++++++ 5 files changed, 1068 insertions(+), 2 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 6ce7f6c7ba62..b6cad38a6c39 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -34,6 +34,7 @@ SRCS= \ mem.c \ mevent.c \ net_backend_netmap.c \ + net_backend_slirp.c \ net_backends.c \ net_utils.c \ pci_emul.c \ diff --git a/usr.sbin/bhyve/bhyve.8 b/usr.sbin/bhyve/bhyve.8 index 0c5d34456b3a..093938277c02 100644 --- a/usr.sbin/bhyve/bhyve.8 +++ b/usr.sbin/bhyve/bhyve.8 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 12, 2023 +.Dd November 20, 2023 .Dt BHYVE 8 .Os .Sh NAME @@ -426,6 +426,10 @@ Network device backends: .Op Cm \&,mac= Ar xx:xx:xx:xx:xx:xx .Op Cm \&,mtu= Ar N .Xc +.It +.Xo +.Cm slirp,hostfwd= Ar proto : Ar hostaddr : Ar hostport - Ar guestaddr : Ar guestport +.Xc .El .Sm on .Pp @@ -469,6 +473,20 @@ must comply with .Xr netgraph 4 addressing rules. .Pp +The slirp backend can be used to provide a NATed network to the guest. +This backend has poor performance but does not require any network +configuration on the host system. +It depends on the +.Pa net/libslirp +port. +The +.Cm hostfwd +option takes a 5-tuple describing how connections from the host are to be +forwarded to the guest. +Multiple rules can be specified, separated by semicolons. +Note that semicolons must be escaped or quoted to prevent the shell from +interpreting them. +.Pp Block storage device backends: .Sm off .Bl -bullet diff --git a/usr.sbin/bhyve/bhyve_config.5 b/usr.sbin/bhyve/bhyve_config.5 index 1322abd67958..d0e5c8ae47d3 100644 --- a/usr.sbin/bhyve/bhyve_config.5 +++ b/usr.sbin/bhyve/bhyve_config.5 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2022 +.Dd November 20, 2023 .Dt BHYVE_CONFIG 5 .Os .Sh NAME @@ -401,6 +401,26 @@ The value of is passed to .Xr nm_open to connect to a netmap port. +.It slirp +Use the slirp backend to provide a userspace network stack. +The +.Va hostfwd +variable is used to configure how packets from the host are translated +before being sent to the guest. +.Bl -column "peerhook" "Format" "Default" +.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description +.It Va hostfwd Ta string Ta Ta +A semicolon-separated list of host forwarding rules, each of the form +.Ar proto:haddr:hport-gaddr:gport , +where +.Ar proto +is either +.Ql tcp +or +.Ql udp . +If the guest address is equal to the empty string, packets will be +forwarded to the first DHCP-assigned address in the guest. +.El .El .Pp If diff --git a/usr.sbin/bhyve/libslirp.h b/usr.sbin/bhyve/libslirp.h new file mode 100644 index 000000000000..a679c4db7913 --- /dev/null +++ b/usr.sbin/bhyve/libslirp.h @@ -0,0 +1,365 @@ +/*- + * SPDX-License-Identifier: BSD-3-Clause + * + * Copyright (c) 1995,1996 Danny Gasparovski. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the copyright holder nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * DANNY GASPAROVSKI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef LIBSLIRP_H +#define LIBSLIRP_H + +#include +#include +#include + +#ifdef _WIN32 +#include +#include +#include +#include +typedef SSIZE_T slirp_ssize_t; +#ifdef BUILDING_LIBSLIRP +# define SLIRP_EXPORT __declspec(dllexport) +#else +# define SLIRP_EXPORT __declspec(dllimport) +#endif +#else +#include +typedef ssize_t slirp_ssize_t; +#include +#include +#define SLIRP_EXPORT +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* Opaque structure containing the slirp state */ +typedef struct Slirp Slirp; + +/* Flags passed to SlirpAddPollCb and to be returned by SlirpGetREventsCb. */ +enum { + SLIRP_POLL_IN = 1 << 0, + SLIRP_POLL_OUT = 1 << 1, + SLIRP_POLL_PRI = 1 << 2, + SLIRP_POLL_ERR = 1 << 3, + SLIRP_POLL_HUP = 1 << 4, +}; + +/* Callback for application to get data from the guest */ +typedef slirp_ssize_t (*SlirpReadCb)(void *buf, size_t len, void *opaque); +/* Callback for application to send data to the guest */ +typedef slirp_ssize_t (*SlirpWriteCb)(const void *buf, size_t len, void *opaque); +/* Timer callback */ +typedef void (*SlirpTimerCb)(void *opaque); +/* Callback for libslirp to register polling callbacks */ +typedef int (*SlirpAddPollCb)(int fd, int events, void *opaque); +/* Callback for libslirp to get polling result */ +typedef int (*SlirpGetREventsCb)(int idx, void *opaque); + +/* For now libslirp creates only a timer for the IPv6 RA */ +typedef enum SlirpTimerId { + SLIRP_TIMER_RA, + SLIRP_TIMER_NUM, +} SlirpTimerId; + +/* + * Callbacks from slirp, to be set by the application. + * + * The opaque parameter is set to the opaque pointer given in the slirp_new / + * slirp_init call. + */ +typedef struct SlirpCb { + /* + * Send an ethernet frame to the guest network. The opaque parameter is the + * one given to slirp_init(). If the guest is not ready to receive a frame, + * the function can just drop the data. TCP will then handle retransmissions + * at a lower pace. + * <0 reports an IO error. + */ + SlirpWriteCb send_packet; + /* Print a message for an error due to guest misbehavior. */ + void (*guest_error)(const char *msg, void *opaque); + /* Return the virtual clock value in nanoseconds */ + int64_t (*clock_get_ns)(void *opaque); + /* Create a new timer with the given callback and opaque data. Not + * needed if timer_new_opaque is provided. */ + void *(*timer_new)(SlirpTimerCb cb, void *cb_opaque, void *opaque); + /* Remove and free a timer */ + void (*timer_free)(void *timer, void *opaque); + /* Modify a timer to expire at @expire_time (ms) */ + void (*timer_mod)(void *timer, int64_t expire_time, void *opaque); + /* Register a fd for future polling */ + void (*register_poll_fd)(int fd, void *opaque); + /* Unregister a fd */ + void (*unregister_poll_fd)(int fd, void *opaque); + /* Kick the io-thread, to signal that new events may be processed because some TCP buffer + * can now receive more data, i.e. slirp_socket_can_recv will return 1. */ + void (*notify)(void *opaque); + + /* + * Fields introduced in SlirpConfig version 4 begin + */ + + /* Initialization has completed and a Slirp* has been created. */ + void (*init_completed)(Slirp *slirp, void *opaque); + /* Create a new timer. When the timer fires, the application passes + * the SlirpTimerId and cb_opaque to slirp_handle_timer. */ + void *(*timer_new_opaque)(SlirpTimerId id, void *cb_opaque, void *opaque); +} SlirpCb; + +#define SLIRP_CONFIG_VERSION_MIN 1 +#define SLIRP_CONFIG_VERSION_MAX 5 + +typedef struct SlirpConfig { + /* Version must be provided */ + uint32_t version; + /* + * Fields introduced in SlirpConfig version 1 begin + */ + /* Whether to prevent the guest from accessing the Internet */ + int restricted; + /* Whether IPv4 is enabled */ + bool in_enabled; + /* Virtual network for the guest */ + struct in_addr vnetwork; + /* Mask for the virtual network for the guest */ + struct in_addr vnetmask; + /* Virtual address for the host exposed to the guest */ + struct in_addr vhost; + /* Whether IPv6 is enabled */ + bool in6_enabled; + /* Virtual IPv6 network for the guest */ + struct in6_addr vprefix_addr6; + /* Len of the virtual IPv6 network for the guest */ + uint8_t vprefix_len; + /* Virtual address for the host exposed to the guest */ + struct in6_addr vhost6; + /* Hostname exposed to the guest in DHCP hostname option */ + const char *vhostname; + /* Hostname exposed to the guest in the DHCP TFTP server name option */ + const char *tftp_server_name; + /* Path of the files served by TFTP */ + const char *tftp_path; + /* Boot file name exposed to the guest via DHCP */ + const char *bootfile; + /* Start of the DHCP range */ + struct in_addr vdhcp_start; + /* Virtual address for the DNS server exposed to the guest */ + struct in_addr vnameserver; + /* Virtual IPv6 address for the DNS server exposed to the guest */ + struct in6_addr vnameserver6; + /* DNS search names exposed to the guest via DHCP */ + const char **vdnssearch; + /* Domain name exposed to the guest via DHCP */ + const char *vdomainname; + /* MTU when sending packets to the guest */ + /* Default: IF_MTU_DEFAULT */ + size_t if_mtu; + /* MRU when receiving packets from the guest */ + /* Default: IF_MRU_DEFAULT */ + size_t if_mru; + /* Prohibit connecting to 127.0.0.1:* */ + bool disable_host_loopback; + /* + * Enable emulation code (*warning*: this code isn't safe, it is not + * recommended to enable it) + */ + bool enable_emu; + + /* + * Fields introduced in SlirpConfig version 2 begin + */ + /* Address to be used when sending data to the Internet */ + struct sockaddr_in *outbound_addr; + /* IPv6 Address to be used when sending data to the Internet */ + struct sockaddr_in6 *outbound_addr6; + + /* + * Fields introduced in SlirpConfig version 3 begin + */ + /* slirp will not redirect/serve any DNS packet */ + bool disable_dns; + + /* + * Fields introduced in SlirpConfig version 4 begin + */ + /* slirp will not reply to any DHCP requests */ + bool disable_dhcp; + + /* + * Fields introduced in SlirpConfig version 5 begin + */ + /* Manufacturer ID (IANA Private Enterprise number) */ + uint32_t mfr_id; + /* + * MAC address allocated for an out-of-band management controller, to be + * retrieved through NC-SI. + */ + uint8_t oob_eth_addr[6]; +} SlirpConfig; + +/* Create a new instance of a slirp stack */ +SLIRP_EXPORT +Slirp *slirp_new(const SlirpConfig *cfg, const SlirpCb *callbacks, + void *opaque); +/* slirp_init is deprecated in favor of slirp_new */ +SLIRP_EXPORT +Slirp *slirp_init(int restricted, bool in_enabled, struct in_addr vnetwork, + struct in_addr vnetmask, struct in_addr vhost, + bool in6_enabled, struct in6_addr vprefix_addr6, + uint8_t vprefix_len, struct in6_addr vhost6, + const char *vhostname, const char *tftp_server_name, + const char *tftp_path, const char *bootfile, + struct in_addr vdhcp_start, struct in_addr vnameserver, + struct in6_addr vnameserver6, const char **vdnssearch, + const char *vdomainname, const SlirpCb *callbacks, + void *opaque); +/* Shut down an instance of a slirp stack */ +SLIRP_EXPORT +void slirp_cleanup(Slirp *slirp); + +/* This is called by the application when it is about to sleep through poll(). + * *timeout is set to the amount of virtual time (in ms) that the application intends to + * wait (UINT32_MAX if infinite). slirp_pollfds_fill updates it according to + * e.g. TCP timers, so the application knows it should sleep a smaller amount of + * time. slirp_pollfds_fill calls add_poll for each file descriptor + * that should be monitored along the sleep. The opaque pointer is passed as + * such to add_poll, and add_poll returns an index. */ +SLIRP_EXPORT +void slirp_pollfds_fill(Slirp *slirp, uint32_t *timeout, + SlirpAddPollCb add_poll, void *opaque); + +/* This is called by the application after sleeping, to report which file + * descriptors are available. slirp_pollfds_poll calls get_revents on each file + * descriptor, giving it the index that add_poll returned during the + * slirp_pollfds_fill call, to know whether the descriptor is available for + * read/write/etc. (SLIRP_POLL_*) + * select_error should be passed 1 if poll() returned an error. */ +SLIRP_EXPORT +void slirp_pollfds_poll(Slirp *slirp, int select_error, + SlirpGetREventsCb get_revents, void *opaque); + +/* This is called by the application when the guest emits a packet on the + * guest network, to be interpreted by slirp. */ +SLIRP_EXPORT +void slirp_input(Slirp *slirp, const uint8_t *pkt, int pkt_len); + +/* This is called by the application when a timer expires, if it provides + * the timer_new_opaque callback. It is not needed if the application only + * uses timer_new. */ +SLIRP_EXPORT +void slirp_handle_timer(Slirp *slirp, SlirpTimerId id, void *cb_opaque); + +/* These set up / remove port forwarding between a host port in the real world + * and the guest network. */ +SLIRP_EXPORT +int slirp_add_hostfwd(Slirp *slirp, int is_udp, struct in_addr host_addr, + int host_port, struct in_addr guest_addr, int guest_port); +SLIRP_EXPORT +int slirp_remove_hostfwd(Slirp *slirp, int is_udp, struct in_addr host_addr, + int host_port); + +#define SLIRP_HOSTFWD_UDP 1 +#define SLIRP_HOSTFWD_V6ONLY 2 +SLIRP_EXPORT +int slirp_add_hostxfwd(Slirp *slirp, + const struct sockaddr *haddr, socklen_t haddrlen, + const struct sockaddr *gaddr, socklen_t gaddrlen, + int flags); +SLIRP_EXPORT +int slirp_remove_hostxfwd(Slirp *slirp, + const struct sockaddr *haddr, socklen_t haddrlen, + int flags); + +/* Set up port forwarding between a port in the guest network and a + * command running on the host */ +SLIRP_EXPORT +int slirp_add_exec(Slirp *slirp, const char *cmdline, + struct in_addr *guest_addr, int guest_port); +/* Set up port forwarding between a port in the guest network and a + * Unix port on the host */ +SLIRP_EXPORT +int slirp_add_unix(Slirp *slirp, const char *unixsock, + struct in_addr *guest_addr, int guest_port); +/* Set up port forwarding between a port in the guest network and a + * callback that will receive the data coming from the port */ +SLIRP_EXPORT +int slirp_add_guestfwd(Slirp *slirp, SlirpWriteCb write_cb, void *opaque, + struct in_addr *guest_addr, int guest_port); + +/* TODO: rather identify a guestfwd through an opaque pointer instead of through + * the guest_addr */ + +/* This is called by the application for a guestfwd, to determine how much data + * can be received by the forwarded port through a call to slirp_socket_recv. */ +SLIRP_EXPORT +size_t slirp_socket_can_recv(Slirp *slirp, struct in_addr guest_addr, + int guest_port); +/* This is called by the application for a guestfwd, to provide the data to be + * sent on the forwarded port */ +SLIRP_EXPORT +void slirp_socket_recv(Slirp *slirp, struct in_addr guest_addr, int guest_port, + const uint8_t *buf, int size); + +/* Remove entries added by slirp_add_exec, slirp_add_unix or slirp_add_guestfwd */ +SLIRP_EXPORT +int slirp_remove_guestfwd(Slirp *slirp, struct in_addr guest_addr, + int guest_port); + +/* Return a human-readable state of the slirp stack */ +SLIRP_EXPORT +char *slirp_connection_info(Slirp *slirp); + +/* Return a human-readable state of the NDP/ARP tables */ +SLIRP_EXPORT +char *slirp_neighbor_info(Slirp *slirp); + +/* Save the slirp state through the write_cb. The opaque pointer is passed as + * such to the write_cb. */ +SLIRP_EXPORT +int slirp_state_save(Slirp *s, SlirpWriteCb write_cb, void *opaque); + +/* Returns the version of the slirp state, to be saved along the state */ +SLIRP_EXPORT +int slirp_state_version(void); + +/* Load the slirp state through the read_cb. The opaque pointer is passed as + * such to the read_cb. The version should be given as it was obtained from + * slirp_state_version when slirp_state_save was called. */ +SLIRP_EXPORT +int slirp_state_load(Slirp *s, int version_id, SlirpReadCb read_cb, + void *opaque); + +/* Return the version of the slirp implementation */ +SLIRP_EXPORT +const char *slirp_version_string(void); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* LIBSLIRP_H */ diff --git a/usr.sbin/bhyve/net_backend_slirp.c b/usr.sbin/bhyve/net_backend_slirp.c new file mode 100644 index 000000000000..1c414f87084c --- /dev/null +++ b/usr.sbin/bhyve/net_backend_slirp.c @@ -0,0 +1,662 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2023 Mark Johnston + * + * This software was developed by the University of Cambridge Computer + * Laboratory (Department of Computer Science and Technology) under Innovate + * UK project 105694, "Digital Security by Design (DSbD) Technology Platform + * Prototype". + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* + * The slirp backend enables unprivileged networking via libslirp, which must be + * installed on the host system via pkg or the ports tree. bhyve dlopen()s + * libslirp.so upon instantiating the slirp backend. Various network parameters + * are hard-coded in _slirp_init(). + * + * Packets received from the guest (i.e., transmitted by the frontend, such as a + * virtio NIC device model) are injected into the slirp backend via slirp_send(). + * Packets to be transmitted to the guest (i.e., inserted into the frontend's + * receive buffers) are buffered in a per-interface socket pair and read by the + * mevent loop. Sockets instantiated by libslirp are monitored by a thread + * which uses poll() and slirp_pollfds_poll() to drive libslirp events; this + * thread also handles timeout events from the libslirp context. + */ + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "config.h" +#include "debug.h" +#include "libslirp.h" +#include "mevent.h" +#include "net_backends.h" +#include "net_backends_priv.h" + +typedef int (*slirp_add_hostxfwd_p_t)(Slirp *, + const struct sockaddr *, socklen_t, const struct sockaddr *, socklen_t, + int); +typedef void (*slirp_cleanup_p_t)(Slirp *); +typedef void (*slirp_input_p_t)(Slirp *, const uint8_t *, int); +typedef Slirp *(*slirp_new_p_t)(const SlirpConfig *, const SlirpCb *, void *); +typedef void (*slirp_pollfds_fill_p_t)(Slirp *, uint32_t *timeout, + SlirpAddPollCb, void *); +typedef void (*slirp_pollfds_poll_p_t)(Slirp *, int, SlirpGetREventsCb, void *); + +/* Function pointer table, initialized by slirp_init_once(). */ +static slirp_add_hostxfwd_p_t slirp_add_hostxfwd_p; +static slirp_cleanup_p_t slirp_cleanup_p; +static slirp_input_p_t slirp_input_p; +static slirp_new_p_t slirp_new_p; +static slirp_pollfds_fill_p_t slirp_pollfds_fill_p; +static slirp_pollfds_poll_p_t slirp_pollfds_poll_p; + +static int +slirp_init_once(void) +{ + static void *handle = NULL; + + if (handle != NULL) + return (0); + handle = dlopen("libslirp.so.0", RTLD_LAZY); + if (handle == NULL) { + EPRINTLN("Unable to open libslirp.so.0: %s", dlerror()); + return (-1); + } + +#define IMPORT_SYM(sym) do { \ + sym##_p = (sym##_p_t)dlsym(handle, #sym); \ + if (sym##_p == NULL) { \ + EPRINTLN("failed to resolve %s", #sym); \ + goto err; \ + } \ +} while (0) + IMPORT_SYM(slirp_add_hostxfwd); + IMPORT_SYM(slirp_cleanup); + IMPORT_SYM(slirp_input); + IMPORT_SYM(slirp_new); + IMPORT_SYM(slirp_pollfds_fill); + IMPORT_SYM(slirp_pollfds_poll); +#undef IMPORT_SYM + + /* + * libslirp uses glib, which uses tzdata to format log messages. Help + * it out. + * + * XXX-MJ glib will also look for charset files, not sure what we can do + * about that... + */ + caph_cache_tzdata(); + + return (0); + +err: + dlclose(handle); + handle = NULL; + return (-1); +} + +struct slirp_priv { + Slirp *slirp; + +#define SLIRP_MTU 2048 + struct mevent *mevp; + int pipe[2]; + + pthread_t pollfd_td; + struct pollfd *pollfds; + size_t npollfds; + + /* Serializes libslirp calls. */ + pthread_mutex_t mtx; +}; + +static void +slirp_priv_init(struct slirp_priv *priv) +{ + int error; + + memset(priv, 0, sizeof(*priv)); + priv->pipe[0] = priv->pipe[1] = -1; + error = pthread_mutex_init(&priv->mtx, NULL); + assert(error == 0); +} + +static void +slirp_priv_cleanup(struct slirp_priv *priv) +{ + int error; + + if (priv->pipe[0] != -1) { + error = close(priv->pipe[0]); + assert(error == 0); + } + if (priv->pipe[1] != -1) { + error = close(priv->pipe[1]); + assert(error == 0); + } + if (priv->mevp) + mevent_delete(priv->mevp); + if (priv->slirp != NULL) + slirp_cleanup_p(priv->slirp); + error = pthread_mutex_destroy(&priv->mtx); + assert(error == 0); +} + +static int64_t +slirp_cb_clock_get_ns(void *param __unused) +{ + struct timespec ts; + int error; + + error = clock_gettime(CLOCK_MONOTONIC, &ts); + assert(error == 0); + return ((int64_t)(ts.tv_sec * 1000000000L + ts.tv_nsec)); +} + +static void +slirp_cb_notify(void *param __unused) +{ +} + +static void +slirp_cb_register_poll_fd(int fd, void *param __unused) +{ + const int one = 1; + + (void)setsockopt(fd, SOL_SOCKET, SO_NOSIGPIPE, &one, sizeof(int)); +} + +static ssize_t +slirp_cb_send_packet(const void *buf, size_t len, void *param) +{ + struct slirp_priv *priv; + ssize_t n; + + priv = param; + + assert(len <= SLIRP_MTU); + n = send(priv->pipe[1], buf, len, 0); + if (n < 0) { + EPRINTLN("slirp_cb_send_packet: send: %s", strerror(errno)); + return (n); + } + assert((size_t)n == len); + + return (n); +} + +static void +slirp_cb_unregister_poll_fd(int fd __unused, void *opaque __unused) +{ +} + +/* Callbacks invoked from within libslirp. */ +static const struct SlirpCb slirp_cbs = { + .clock_get_ns = slirp_cb_clock_get_ns, + .notify = slirp_cb_notify, + .register_poll_fd = slirp_cb_register_poll_fd, + .send_packet = slirp_cb_send_packet, + .unregister_poll_fd = slirp_cb_unregister_poll_fd, +}; + +static int +slirpev2pollev(int events) +{ + int ret; + + ret = 0; + if (events & SLIRP_POLL_IN) + ret |= POLLIN; + if (events & SLIRP_POLL_OUT) + ret |= POLLOUT; + if (events & SLIRP_POLL_PRI) + ret |= POLLPRI; + if (events & SLIRP_POLL_ERR) + ret |= POLLERR; + if (events & SLIRP_POLL_HUP) + ret |= POLLHUP; + return (ret); +} + +static int +pollev2slirpev(int events) +{ + int ret; + + ret = 0; + if (events & POLLIN) + ret |= SLIRP_POLL_IN; + if (events & POLLOUT) + ret |= SLIRP_POLL_OUT; + if (events & POLLPRI) + ret |= SLIRP_POLL_PRI; + if (events & POLLERR) + ret |= SLIRP_POLL_ERR; + if (events & POLLHUP) + ret |= SLIRP_POLL_HUP; + return (ret); +} + +static int +slirp_addpoll_cb(int fd, int events, void *param) +{ + struct slirp_priv *priv; + struct pollfd *pollfd, *pollfds; + size_t i; + + priv = param; + + for (i = 0; i < priv->npollfds; i++) + if (priv->pollfds[i].fd == -1) + break; + if (i == priv->npollfds) { + const size_t POLLFD_GROW = 4; + + priv->npollfds += POLLFD_GROW; + pollfds = realloc(priv->pollfds, + sizeof(*pollfds) * priv->npollfds); + if (pollfds == NULL) + return (-1); + for (i = priv->npollfds - POLLFD_GROW; i < priv->npollfds; i++) + pollfds[i].fd = -1; + priv->pollfds = pollfds; + + i = priv->npollfds - POLLFD_GROW; + } + pollfd = &priv->pollfds[i]; + pollfd->fd = fd; + pollfd->events = slirpev2pollev(events); + pollfd->revents = 0; + + return ((int)i); +} + +static int +slirp_poll_revents(int idx, void *param) +{ + struct slirp_priv *priv; + struct pollfd *pollfd; + + priv = param; + pollfd = &priv->pollfds[idx]; + assert(pollfd->fd != -1); + return (pollev2slirpev(pollfd->revents)); +} + +static void * +slirp_pollfd_td_loop(void *param) +{ + struct slirp_priv *priv; + struct pollfd *pollfds; + size_t npollfds; + uint32_t timeout; + int error; + + pthread_set_name_np(pthread_self(), "slirp pollfd"); + priv = param; + + pthread_mutex_lock(&priv->mtx); + for (;;) { + for (size_t i = 0; i < priv->npollfds; i++) + priv->pollfds[i].fd = -1; + + timeout = UINT32_MAX; + slirp_pollfds_fill_p(priv->slirp, &timeout, slirp_addpoll_cb, + priv); + + pollfds = priv->pollfds; + npollfds = priv->npollfds; + pthread_mutex_unlock(&priv->mtx); + for (;;) { + error = poll(pollfds, npollfds, timeout); + if (error == -1) { + if (errno != EINTR) { + EPRINTLN("poll: %s", strerror(errno)); + exit(1); + } + continue; + } + break; + } + pthread_mutex_lock(&priv->mtx); + slirp_pollfds_poll_p(priv->slirp, error == -1, + slirp_poll_revents, priv); + } +} + +static int +parse_addr(char *addr, struct sockaddr_in *sinp) +{ + char *port; + int error, porti; + + memset(sinp, 0, sizeof(*sinp)); + sinp->sin_family = AF_INET; + sinp->sin_len = sizeof(struct sockaddr_in); + + port = strchr(addr, ':'); + if (port == NULL) + return (EINVAL); + *port++ = '\0'; + + if (strlen(addr) > 0) { + error = inet_pton(AF_INET, addr, &sinp->sin_addr); + if (error != 1) + return (error == 0 ? EPFNOSUPPORT : errno); + } else { + sinp->sin_addr.s_addr = htonl(INADDR_ANY); + } + + porti = strlen(port) > 0 ? atoi(port) : 0; + if (porti < 0 || porti > UINT16_MAX) + return (EINVAL); + sinp->sin_port = htons(porti); + + return (0); +} + +static int +parse_hostfwd_rule(const char *descr, int *is_udp, struct sockaddr *hostaddr, + struct sockaddr *guestaddr) +{ + struct sockaddr_in *hostaddrp, *guestaddrp; + const char *proto; + char *p, *host, *guest; + int error; + + error = 0; + *is_udp = 0; + + p = strdup(descr); + if (p == NULL) + return (ENOMEM); + + host = strchr(p, ':'); + if (host == NULL) { + error = EINVAL; + goto out; + } + *host++ = '\0'; + + proto = p; + *is_udp = strcmp(proto, "udp") == 0; + + guest = strchr(host, '-'); + if (guest == NULL) { + error = EINVAL; + goto out; + } + *guest++ = '\0'; + + hostaddrp = (struct sockaddr_in *)hostaddr; + error = parse_addr(host, hostaddrp); + if (error != 0) + goto out; + + guestaddrp = (struct sockaddr_in *)guestaddr; + error = parse_addr(guest, guestaddrp); + if (error != 0) + goto out; + +out: + free(p); + return (error); +} + +static int +config_one_hostfwd(struct slirp_priv *priv, const char *rule) +{ + struct sockaddr hostaddr, guestaddr; + int error, is_udp; + + error = parse_hostfwd_rule(rule, &is_udp, &hostaddr, &guestaddr); + if (error != 0) { + EPRINTLN("Unable to parse hostfwd rule '%s': %s", + rule, strerror(error)); + return (error); + } + + error = slirp_add_hostxfwd_p(priv->slirp, &hostaddr, hostaddr.sa_len, + &guestaddr, guestaddr.sa_len, is_udp ? SLIRP_HOSTFWD_UDP : 0); + if (error != 0) { + EPRINTLN("Unable to add hostfwd rule '%s': %s", + rule, strerror(errno)); + return (error); + } + + return (0); +} + +static int +_slirp_init(struct net_backend *be, const char *devname __unused, + nvlist_t *nvl, net_be_rxeof_t cb, void *param) +{ + struct slirp_priv *priv = NET_BE_PRIV(be); + SlirpConfig config = { + .version = 4, *** 192 LINES SKIPPED *** From nobody Wed Nov 22 20:20:02 2023 X-Original-To: dev-commits-src-main@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 4SbCKH0C6xz51npS; Wed, 22 Nov 2023 20:20:03 +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 4SbCKG5Dw0z4QdP; Wed, 22 Nov 2023 20:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684402; 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=7vnwrkPhbbGfcpwGj1ipW+GFOiKxsOi1m8v0if1ylz0=; b=jcDZz3+KQA1zNL2706CflBJpLKtwpwRy2vt7ALRywJR3FgKZWFe3Fe45KGrfPgpe0OiRnr D8NT9EhZzMxQG8L7I71vD66CgFWX7UbFSHMz1AFYQS2nNamMmYGxuhnYL+YGE4Tfh4o8xG D41mw6T2WAxiLr09U33j+trA1JSon3tRDxv4I6ssiNsZ6SERZvdr8153jZ72ONg2gYT5U2 wEuCvupQHeNyLubdY8FJ7NuQEUPAbU2YrShUSqKsseWYjtycne4ojg4H0LJUstsWmgCJba JWkLciBJXu4bPmdPRrpG0ajhWaQ1LF4sSw+PQQjRkVK/TVtmKoUUILRqobOIEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700684402; 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=7vnwrkPhbbGfcpwGj1ipW+GFOiKxsOi1m8v0if1ylz0=; b=M8oANUDrunQVBuRMZJqhOA/pCu2ROjSFU3i6wbqX0e6PmY0o2Bwg3/SwRRt62Zg9a3cEAj 37ft4SlPo43l3J8RTKphqjLD2aPZ8iibMIv5lMzD95BlXD8MQyvJq50SCSt6cpH5vAuzRm 4dRyQF8l/eZgBiq9JUpcIO8SxOW99Q0rmxlEKJZ+QcGPoTMHQ9A55O34ham64lxIXFTpls SOgMCwdB9OImS1GzzCR0hwNQtYmCRhWXW8DbPZuPErHzWZLisCvCXGV7WNXGbQXrhjMWLH 4LR4nOiCnO0in/9Cw2XxOY3exiyqQRuXyEElSNZyzBL4e/iwPyrS/iI2JIVOFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700684402; a=rsa-sha256; cv=none; b=txMhIaQPXwjGCE2g7ugOH0Fm3QPhWdjp0OblkU0ZcCauGQByD21GfEnzxSdUPlETQf0YLm 6l4bXuljpTQonSbSQ9+G379p6XGRc54j8EwoQ7YJUx8CqtdrkDxDaEl4crBueDTfXP5g1y P0PiIWcmdi79NU7zCj1pPic6K6e6Z9C5GuqYYdcOhhu6j/HeNhWnKC/fXQ5fHQw0QsiaMW Pi7INMYLNq8gOO0HMbwQIQcwe9aehCRaOk6j5sgkQ6Uuquaizt4kJCwNixbfjV7jkZmyei 1LdL5bCPMa0aHzXzYOyx1yOMbnYpI9NxLGbzWDSpnKrlHzEDZ1F2eSUAU4f6WA== 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 4SbCKG3zL7zYgv; Wed, 22 Nov 2023 20:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMKK2Un022704; Wed, 22 Nov 2023 20:20:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMKK2aL022699; Wed, 22 Nov 2023 20:20:02 GMT (envelope-from git) Date: Wed, 22 Nov 2023 20:20:02 GMT Message-Id: <202311222020.3AMKK2aL022699@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 33c2bd534a22 - main - RELNOTES: Add an entry about bhyve's slirp backend List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 33c2bd534a22b9d2d9f76c3ef5c6b304c99a6d2b Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=33c2bd534a22b9d2d9f76c3ef5c6b304c99a6d2b commit 33c2bd534a22b9d2d9f76c3ef5c6b304c99a6d2b Author: Mark Johnston AuthorDate: 2023-11-22 19:14:53 +0000 Commit: Mark Johnston CommitDate: 2023-11-22 20:19:10 +0000 RELNOTES: Add an entry about bhyve's slirp backend Sponsored by: Innovate UK --- RELNOTES | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/RELNOTES b/RELNOTES index c5c20fe37975..a1dd1e1130fa 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,12 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +c5359e2af5ab: + bhyve(8) has a new network backend, "slirp", which makes use of the + libslirp package to provide a userspace network stack. This backend + makes it possible to access the guest network from the host without + requiring any extra network configuration on the host. + bb830e346bd5: Set the IUTF8 flag by default in tty(4). From nobody Wed Nov 22 20:33:55 2023 X-Original-To: dev-commits-src-main@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 4SbCdH39kkz51r3p; Wed, 22 Nov 2023 20:33:55 +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 4SbCdH2kLLz4VRD; Wed, 22 Nov 2023 20:33:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700685235; 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=jCGo3lipq/ixRQWmFs3RmlO8TuyseXNdn+h5WbuhLFE=; b=KXpH/Qil6/33FPaYsVYTpZapqE/BA78A5b2uQmXEDMeuLGM3EbKKA068Tvqoo8cD92mtce aCM1gEp/Jj5YlEs09kzwG6qAK6mwehBXrTmjfv5PeGXjq0Oq4Aq4TCbZX5CgtAr2IeSOt3 o7DGTd6YOalwjMuox7vu2vZMAEP3qvkPAQaU0MBy2xy20EYQh9KeSP7A8Tx2WfdV+SvCVC kp1OpLLIwwxyGnq1WuWmtqMuzaE9B1gj0wdNauRisEsAauLV64N2usqrukdsQuSJCCIxek h+VThtxxeBEWv93VXU2UIZYs75sp5vd8uX0TbKtrEVPJFcI+HVN1k9xdHJkOqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700685235; 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=jCGo3lipq/ixRQWmFs3RmlO8TuyseXNdn+h5WbuhLFE=; b=PZAqnuJpJIUlxSviHTUcXFeRY8lGlvCIKLWWX0OeP4rW7lbcdliq9a+DciFmlZkbyHrwCY N9F7kHvsJ//ICewjKEn6xLIO3g9hC1fl5+1GeFngZs7sHcsj+O7uZ6nFnDtkHfQ7Mfss9H lEBuqKxJkjPo814bRExitEojycQbcf4xUPWib+2DeinJ3CX143pBJ6C5RAkC53LSz8exnU AYMzSPZH3KBz0hewegA/mhiS7BXkV7TnawFaXnMCI1RNyGlCi+pvWtR5e4BMv5SwIqt7n/ RJuVijhsZWTlEN6P4drDNfytRyaLP0pwKrkW9rZqT1BjLnSDKXGqKgN46hwHNQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700685235; a=rsa-sha256; cv=none; b=SBIBlaRumTGneGAYd+oQenPsLPzC71rvoXy/J5qIVTVVUEcqOUsG3S8sfwrZ4g27f2b6sV vyjyewcbsPprB6TC6XNwSx3g6jXCRIUvMDVvAQIEjrGPT9swhx901vHz/HU41DFkwmVxvb wCoWLbb2/YMcEFF//9BEnkP2cNbWuOGnLYDE/ckyeX8NvloSg5d1cu3y6B/HV6GAT8qMgl gt/l/9YXNdoJbujpIH9jUsSkxdcP6mMRJ9cFZfm24pRNXyDw82ed/uTZzJanfUYGUPUy4o LwstwTU0khRVCWQwEhfFw2FuWDzpiqpXhsSU+z4orDVsI4zc1tv2FKX6iG3/bA== 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 4SbCdH1VbgzZ8t; Wed, 22 Nov 2023 20:33:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMKXt5B053251; Wed, 22 Nov 2023 20:33:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMKXtqM053248; Wed, 22 Nov 2023 20:33:55 GMT (envelope-from git) Date: Wed, 22 Nov 2023 20:33:55 GMT Message-Id: <202311222033.3AMKXtqM053248@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Motin Subject: git: 1b44079584dc - main - CAM: Use sbuf_new_for_sysctl() in more places List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1b44079584dc317230cf810c0fe0a8c401a5c791 Auto-Submitted: auto-generated The branch main has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=1b44079584dc317230cf810c0fe0a8c401a5c791 commit 1b44079584dc317230cf810c0fe0a8c401a5c791 Author: Alexander Motin AuthorDate: 2023-11-22 20:32:16 +0000 Commit: Alexander Motin CommitDate: 2023-11-22 20:33:48 +0000 CAM: Use sbuf_new_for_sysctl() in more places There is no need to allocate buffer, worry about overflows, etc. MFC after: 2 weeks --- sys/cam/ata/ata_da.c | 12 ++++-------- sys/cam/scsi/scsi_da.c | 12 ++++-------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index db2dc3a23b34..caaded5be7ba 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -1425,7 +1425,6 @@ adazonemodesysctl(SYSCTL_HANDLER_ARGS) static int adazonesupsysctl(SYSCTL_HANDLER_ARGS) { - char tmpbuf[180]; struct ada_softc *softc; struct sbuf sb; int error, first; @@ -1433,15 +1432,14 @@ adazonesupsysctl(SYSCTL_HANDLER_ARGS) softc = (struct ada_softc *)arg1; - error = 0; first = 1; - sbuf_new(&sb, tmpbuf, sizeof(tmpbuf), 0); + sbuf_new_for_sysctl(&sb, NULL, 0, req); for (i = 0; i < sizeof(ada_zone_desc_table) / sizeof(ada_zone_desc_table[0]); i++) { if (softc->zone_flags & ada_zone_desc_table[i].value) { if (first == 0) - sbuf_printf(&sb, ", "); + sbuf_cat(&sb, ", "); else first = 0; sbuf_cat(&sb, ada_zone_desc_table[i].desc); @@ -1451,10 +1449,8 @@ adazonesupsysctl(SYSCTL_HANDLER_ARGS) if (first == 1) sbuf_printf(&sb, "None"); - sbuf_finish(&sb); - - error = sysctl_handle_string(oidp, sbuf_data(&sb), sbuf_len(&sb), req); - + error = sbuf_finish(&sb); + sbuf_delete(&sb); return (error); } diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c index e795cecb5d11..175774d83015 100644 --- a/sys/cam/scsi/scsi_da.c +++ b/sys/cam/scsi/scsi_da.c @@ -2734,7 +2734,6 @@ dazonemodesysctl(SYSCTL_HANDLER_ARGS) static int dazonesupsysctl(SYSCTL_HANDLER_ARGS) { - char tmpbuf[180]; struct da_softc *softc; struct sbuf sb; int error, first; @@ -2742,15 +2741,14 @@ dazonesupsysctl(SYSCTL_HANDLER_ARGS) softc = (struct da_softc *)arg1; - error = 0; first = 1; - sbuf_new(&sb, tmpbuf, sizeof(tmpbuf), 0); + sbuf_new_for_sysctl(&sb, NULL, 0, req); for (i = 0; i < sizeof(da_zone_desc_table) / sizeof(da_zone_desc_table[0]); i++) { if (softc->zone_flags & da_zone_desc_table[i].value) { if (first == 0) - sbuf_printf(&sb, ", "); + sbuf_cat(&sb, ", "); else first = 0; sbuf_cat(&sb, da_zone_desc_table[i].desc); @@ -2760,10 +2758,8 @@ dazonesupsysctl(SYSCTL_HANDLER_ARGS) if (first == 1) sbuf_printf(&sb, "None"); - sbuf_finish(&sb); - - error = sysctl_handle_string(oidp, sbuf_data(&sb), sbuf_len(&sb), req); - + error = sbuf_finish(&sb); + sbuf_delete(&sb); return (error); } From nobody Wed Nov 22 22:28:07 2023 X-Original-To: dev-commits-src-main@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 4SbG942YDYz51GDl; Wed, 22 Nov 2023 22:28:08 +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 4SbG940Fvvz4m6Q; Wed, 22 Nov 2023 22:28:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700692088; 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=9N0xuz8D3xjeSCHQoNWDzi66LAPnKs4ASlPAOJf281g=; b=QiZ3hnYGzcM35c3ZZ+2xHapaYnf7OB19UKH6G4XWRwuHo3jExRmDaao5ptDuPq2DDuyQbV 7buz1mtPN93TKL2MA8wq7J8D07dkjtrDsDrTQd0jbMQemMyF9bpkknQeqbxsNCBH5fTFG/ SjCSNyrcW3rgul4/rbCmESw2ZafSm5ySEULG73Fv7RiMJMvUdtKJno1Uw0zNFZAbhfZtkK mB54F1e3JmQRbXcmw5fSfiCls2kQkefashXatPaqrJiN2xOQfDYukewefFPV8dg2V1wwZq n/oUV4kfBIlwgM60l/NbU1HtjqVSQHPNk8ARPDpqlpF9PHXlmvkWkVXC5vIPnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700692088; 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=9N0xuz8D3xjeSCHQoNWDzi66LAPnKs4ASlPAOJf281g=; b=p3tO7H1N60Uxx1tqm6sz93EJJq4c8xtW+zDSTzyDUyN5y9pmPqb1pD4sceQl4kBE5PuZpZ ee0iCGWoNICzO8ZTKJdJl/1/3h63nvCx4yFymGcyxveIDex2YZJQ6sE59WLvqJwocFDlVD OI7zheT3Iczhpk0arF77gb9kubifHT0reSOZstatGb7oxebdIP5YwnSKQXj2flEhYmGw1/ XFJlDhdEMsP/dc28WvyAJ2yuh05c/FbYfPTMazh47BaPLm9Nz3uOPxMbPn71qkzGPtu/Xv WXUHncVIxqUabom5xlwGroICeqvCuPRUzZcOeYCDl3NulJntg4AUmQ9OkLucTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700692088; a=rsa-sha256; cv=none; b=HUBvEa5N0fefG0385nFL5c8WvDVRFx6+mhaQgaNK5ziVUMpHejuWsCOIXw53pT6g3c74UW odANhp3M/ExkbKA3RlV3Yf1G10+Kjeamrv/Kf0ulLV2rSDIPAE5TNH5WOGIOoTWOSkhV07 EWxqpduYbTUc8eOz08HqS/Hp86/32JqrBRF9RzscE8nlaFOLdSmUXVUREesHpTWDSGlqvv uk9rSn55L3JJPLGhuE09g/M+nF52zabfxMsf6Nj5DSnywU0gQ2PZFGNS0E0KF7EzrIkrGN ZQlyGdg4yFHDHQDRjeKmsVf2MdDOYxsDVXuNAXHPpknA6StX+gEbV6ZI9D26yA== 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 4SbG934XNszcd4; Wed, 22 Nov 2023 22:28:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMMS7g6036770; Wed, 22 Nov 2023 22:28:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMMS7Bt036767; Wed, 22 Nov 2023 22:28:07 GMT (envelope-from git) Date: Wed, 22 Nov 2023 22:28:07 GMT Message-Id: <202311222228.3AMMS7Bt036767@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Motin Subject: git: 0a7139485ccb - main - Replace random sbuf_printf() with cheaper cat/putc. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0a7139485ccb8192e7c7c6d93653da92bfcdc196 Auto-Submitted: auto-generated The branch main has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=0a7139485ccb8192e7c7c6d93653da92bfcdc196 commit 0a7139485ccb8192e7c7c6d93653da92bfcdc196 Author: Alexander Motin AuthorDate: 2023-11-22 22:27:17 +0000 Commit: Alexander Motin CommitDate: 2023-11-22 22:27:17 +0000 Replace random sbuf_printf() with cheaper cat/putc. --- sys/kern/kern_cons.c | 2 +- sys/kern/kern_exit.c | 8 ++++---- sys/kern/kern_fail.c | 12 ++++++------ sys/kern/kern_rctl.c | 16 ++++++++-------- sys/kern/kern_sig.c | 12 ++++++------ sys/kern/kern_sysctl.c | 4 ++-- sys/kern/kern_tslog.c | 12 ++++++------ sys/kern/sched_ule.c | 18 +++++++++--------- sys/kern/subr_blist.c | 6 +++--- sys/kern/subr_bus.c | 2 +- sys/kern/subr_prf.c | 14 +++++++------- sys/kern/subr_sleepqueue.c | 4 ++-- sys/kern/subr_stats.c | 6 +++--- sys/kern/subr_witness.c | 6 +++--- sys/kern/tty_info.c | 6 +++--- sys/kern/vfs_mountroot.c | 12 ++++++------ 16 files changed, 70 insertions(+), 70 deletions(-) diff --git a/sys/kern/kern_cons.c b/sys/kern/kern_cons.c index 24952561449b..a8f6b689bff7 100644 --- a/sys/kern/kern_cons.c +++ b/sys/kern/kern_cons.c @@ -333,7 +333,7 @@ sysctl_kern_console(SYSCTL_HANDLER_ARGS) sbuf_clear(sb); STAILQ_FOREACH(cnd, &cn_devlist, cnd_next) sbuf_printf(sb, "%s,", cnd->cnd_cn->cn_name); - sbuf_printf(sb, "/"); + sbuf_putc(sb, '/'); SET_FOREACH(list, cons_set) { cp = *list; if (cp->cn_name[0] != '\0') diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index f9445a481d92..112f9c7b0f33 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -804,13 +804,13 @@ kern_abort2(struct thread *td, const char *why, int nargs, void **uargs) if (error < 0) goto out; } else { - sbuf_printf(sb, "(null)"); + sbuf_cat(sb, "(null)"); } if (nargs > 0) { - sbuf_printf(sb, "("); + sbuf_putc(sb, '('); for (i = 0;i < nargs; i++) sbuf_printf(sb, "%s%p", i == 0 ? "" : ", ", uargs[i]); - sbuf_printf(sb, ")"); + sbuf_putc(sb, ')'); } /* * Final stage: arguments were proper, string has been @@ -821,7 +821,7 @@ kern_abort2(struct thread *td, const char *why, int nargs, void **uargs) out: if (sig == SIGKILL) { sbuf_trim(sb); - sbuf_printf(sb, " (Reason text inaccessible)"); + sbuf_cat(sb, " (Reason text inaccessible)"); } sbuf_cat(sb, "\n"); sbuf_finish(sb); diff --git a/sys/kern/kern_fail.c b/sys/kern/kern_fail.c index f60500b22ef4..883b664aef0d 100644 --- a/sys/kern/kern_fail.c +++ b/sys/kern/kern_fail.c @@ -721,31 +721,31 @@ fail_point_get(struct fail_point *fp, struct sbuf *sb, if (ent->fe_pid != NO_PID) sbuf_printf(sb, "[pid %d]", ent->fe_pid); if (TAILQ_NEXT(ent, fe_entries)) - sbuf_printf(sb, "->"); + sbuf_cat(sb, "->"); } if (!printed_entry_count) - sbuf_printf(sb, "off"); + sbuf_cat(sb, "off"); fp_free(fp_entry_cpy); if (verbose) { #ifdef STACK /* Print number of sleeping threads. queue=0 is the argument * used by msleep when sending our threads to sleep. */ - sbuf_printf(sb, "\nsleeping_thread_stacks = {\n"); + sbuf_cat(sb, "\nsleeping_thread_stacks = {\n"); sleepq_sbuf_print_stacks(sb, FP_SLEEP_CHANNEL(fp), 0, &cnt_sleeping); - sbuf_printf(sb, "},\n"); + sbuf_cat(sb, "},\n"); #endif sbuf_printf(sb, "sleeping_thread_count = %d,\n", cnt_sleeping); #ifdef STACK - sbuf_printf(sb, "paused_thread_stacks = {\n"); + sbuf_cat(sb, "paused_thread_stacks = {\n"); sleepq_sbuf_print_stacks(sb, FP_PAUSE_CHANNEL(fp), 0, &cnt_sleeping); - sbuf_printf(sb, "},\n"); + sbuf_cat(sb, "},\n"); #endif sbuf_printf(sb, "paused_thread_count = %d\n", cnt_sleeping); diff --git a/sys/kern/kern_rctl.c b/sys/kern/kern_rctl.c index 8e65fabeddc9..f6f781ade697 100644 --- a/sys/kern/kern_rctl.c +++ b/sys/kern/kern_rctl.c @@ -580,7 +580,7 @@ rctl_enforce(struct proc *p, int resource, uint64_t amount) continue; } sbuf_new(&sb, buf, RCTL_LOG_BUFSIZE, SBUF_FIXEDLEN); - sbuf_printf(&sb, "rule="); + sbuf_cat(&sb, "rule="); rctl_rule_to_sbuf(&sb, rule); sbuf_printf(&sb, " pid=%d ruid=%d jail=%s", p->p_pid, p->p_ucred->cr_ruid, @@ -1484,28 +1484,28 @@ rctl_rule_to_sbuf(struct sbuf *sb, const struct rctl_rule *rule) switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_PROCESS: if (rule->rr_subject.rs_proc == NULL) - sbuf_printf(sb, ":"); + sbuf_putc(sb, ':'); else sbuf_printf(sb, "%d:", rule->rr_subject.rs_proc->p_pid); break; case RCTL_SUBJECT_TYPE_USER: if (rule->rr_subject.rs_uip == NULL) - sbuf_printf(sb, ":"); + sbuf_putc(sb, ':'); else sbuf_printf(sb, "%d:", rule->rr_subject.rs_uip->ui_uid); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: if (rule->rr_subject.rs_loginclass == NULL) - sbuf_printf(sb, ":"); + sbuf_putc(sb, ':'); else sbuf_printf(sb, "%s:", rule->rr_subject.rs_loginclass->lc_name); break; case RCTL_SUBJECT_TYPE_JAIL: if (rule->rr_subject.rs_prison_racct == NULL) - sbuf_printf(sb, ":"); + sbuf_putc(sb, ':'); else sbuf_printf(sb, "%s:", rule->rr_subject.rs_prison_racct->prr_name); @@ -1697,7 +1697,7 @@ rctl_get_rules_callback(struct racct *racct, void *arg2, void *arg3) if (!rctl_rule_matches(link->rrl_rule, filter)) continue; rctl_rule_to_sbuf(sb, link->rrl_rule); - sbuf_printf(sb, ","); + sbuf_putc(sb, ','); } } @@ -1754,7 +1754,7 @@ sys_rctl_get_rules(struct thread *td, struct rctl_get_rules_args *uap) if (!rctl_rule_matches(link->rrl_rule, filter)) continue; rctl_rule_to_sbuf(sb, link->rrl_rule); - sbuf_printf(sb, ","); + sbuf_putc(sb, ','); } RACCT_UNLOCK(); } @@ -1847,7 +1847,7 @@ sys_rctl_get_limits(struct thread *td, struct rctl_get_limits_args *uap) LIST_FOREACH(link, &filter->rr_subject.rs_proc->p_racct->r_rule_links, rrl_next) { rctl_rule_to_sbuf(sb, link->rrl_rule); - sbuf_printf(sb, ","); + sbuf_putc(sb, ','); } RACCT_UNLOCK(); if (sbuf_error(sb) == ENOMEM) { diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index c847783cd3da..8726c35e15a5 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -3971,7 +3971,7 @@ corefile_open(const char *comm, uid_t uid, pid_t pid, struct thread *td, } getcredhostname(td->td_ucred, hostname, MAXHOSTNAMELEN); - sbuf_printf(&sb, "%s", hostname); + sbuf_cat(&sb, hostname); break; case 'I': /* autoincrementing index */ if (indexpos != -1) { @@ -4010,9 +4010,9 @@ corefile_open(const char *comm, uid_t uid, pid_t pid, struct thread *td, sx_sunlock(&corefilename_lock); free(hostname, M_TEMP); if (compress == COMPRESS_GZIP) - sbuf_printf(&sb, GZIP_SUFFIX); + sbuf_cat(&sb, GZIP_SUFFIX); else if (compress == COMPRESS_ZSTD) - sbuf_printf(&sb, ZSTD_SUFFIX); + sbuf_cat(&sb, ZSTD_SUFFIX); if (sbuf_error(&sb) != 0) { log(LOG_ERR, "pid %ld (%s), uid (%lu): corename is too " "long\n", (long)pid, comm, (u_long)uid); @@ -4168,10 +4168,10 @@ coredump(struct thread *td) sb = sbuf_new_auto(); if (vn_fullpath_global(p->p_textvp, &fullpath, &freepath) != 0) goto out2; - sbuf_printf(sb, "comm=\""); + sbuf_cat(sb, "comm=\""); devctl_safe_quote_sb(sb, fullpath); free(freepath, M_TEMP); - sbuf_printf(sb, "\" core=\""); + sbuf_cat(sb, "\" core=\""); /* * We can't lookup core file vp directly. When we're replacing a core, and @@ -4190,7 +4190,7 @@ coredump(struct thread *td) sbuf_putc(sb, '/'); } devctl_safe_quote_sb(sb, name); - sbuf_printf(sb, "\""); + sbuf_putc(sb, '"'); if (sbuf_finish(sb) == 0) devctl_notify("kernel", "signal", "coredump", sbuf_data(sb)); out2: diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c index a4bfe8e21aed..8baa78951501 100644 --- a/sys/kern/kern_sysctl.c +++ b/sys/kern/kern_sysctl.c @@ -421,9 +421,9 @@ sysctl_warn_reuse(const char *func, struct sysctl_oid *leaf) sbuf_printf(&sb, "%s%.*s", nodes[i]->oid_name, i != (rc - 1), "."); } else { - sbuf_printf(&sb, "%s", leaf->oid_name); + sbuf_cat(&sb, leaf->oid_name); } - sbuf_printf(&sb, ")!\n"); + sbuf_cat(&sb, ")!\n"); (void)sbuf_finish(&sb); } diff --git a/sys/kern/kern_tslog.c b/sys/kern/kern_tslog.c index a22370b85b02..7b0847d5d187 100644 --- a/sys/kern/kern_tslog.c +++ b/sys/kern/kern_tslog.c @@ -110,23 +110,23 @@ sysctl_debug_tslog(SYSCTL_HANDLER_ARGS) (unsigned long long)timestamps[i].tsc); switch (timestamps[i].type) { case TS_ENTER: - sbuf_printf(sb, " ENTER"); + sbuf_cat(sb, " ENTER"); break; case TS_EXIT: - sbuf_printf(sb, " EXIT"); + sbuf_cat(sb, " EXIT"); break; case TS_THREAD: - sbuf_printf(sb, " THREAD"); + sbuf_cat(sb, " THREAD"); break; case TS_EVENT: - sbuf_printf(sb, " EVENT"); + sbuf_cat(sb, " EVENT"); break; } sbuf_printf(sb, " %s", timestamps[i].f ? timestamps[i].f : "(null)"); if (timestamps[i].s) sbuf_printf(sb, " %s\n", timestamps[i].s); else - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } error = sbuf_finish(sb); sbuf_delete(sb); @@ -210,7 +210,7 @@ sysctl_debug_tslog_user(SYSCTL_HANDLER_ARGS) procs[pid].execname : ""); sbuf_printf(sb, " \"%s\"", procs[pid].namei ? procs[pid].namei : ""); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } error = sbuf_finish(sb); sbuf_delete(sb); diff --git a/sys/kern/sched_ule.c b/sys/kern/sched_ule.c index 20515f4e430b..ebd7139fa612 100644 --- a/sys/kern/sched_ule.c +++ b/sys/kern/sched_ule.c @@ -3229,25 +3229,25 @@ sysctl_kern_sched_topology_spec_internal(struct sbuf *sb, struct cpu_group *cg, for (i = cg->cg_first; i <= cg->cg_last; i++) { if (CPU_ISSET(i, &cg->cg_mask)) { if (!first) - sbuf_printf(sb, ", "); + sbuf_cat(sb, ", "); else first = FALSE; sbuf_printf(sb, "%d", i); } } - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "\n"); if (cg->cg_flags != 0) { sbuf_printf(sb, "%*s ", indent, ""); if ((cg->cg_flags & CG_FLAG_HTT) != 0) - sbuf_printf(sb, "HTT group"); + sbuf_cat(sb, "HTT group"); if ((cg->cg_flags & CG_FLAG_THREAD) != 0) - sbuf_printf(sb, "THREAD group"); + sbuf_cat(sb, "THREAD group"); if ((cg->cg_flags & CG_FLAG_SMT) != 0) - sbuf_printf(sb, "SMT group"); + sbuf_cat(sb, "SMT group"); if ((cg->cg_flags & CG_FLAG_NODE) != 0) - sbuf_printf(sb, "NUMA node"); - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "NUMA node"); + sbuf_cat(sb, "\n"); } if (cg->cg_children > 0) { @@ -3277,9 +3277,9 @@ sysctl_kern_sched_topology_spec(SYSCTL_HANDLER_ARGS) if (topo == NULL) return (ENOMEM); - sbuf_printf(topo, "\n"); + sbuf_cat(topo, "\n"); err = sysctl_kern_sched_topology_spec_internal(topo, cpu_top, 1); - sbuf_printf(topo, "\n"); + sbuf_cat(topo, "\n"); if (err == 0) { err = sbuf_finish(topo); diff --git a/sys/kern/subr_blist.c b/sys/kern/subr_blist.c index 9b04518010e3..ac9d73ce3c6c 100644 --- a/sys/kern/subr_blist.c +++ b/sys/kern/subr_blist.c @@ -479,9 +479,9 @@ dump_gap_stats(const struct gap_stats *stats, struct sbuf *s) sbuf_printf(s, "largest free range: %jd\n", (intmax_t)stats->max); sbuf_printf(s, "average maximal free range size: %jd\n", (intmax_t)stats->avg); - sbuf_printf(s, "number of maximal free ranges of different sizes:\n"); - sbuf_printf(s, " count | size range\n"); - sbuf_printf(s, " ----- | ----------\n"); + sbuf_cat(s, "number of maximal free ranges of different sizes:\n"); + sbuf_cat(s, " count | size range\n"); + sbuf_cat(s, " ----- | ----------\n"); for (i = 0; i < stats->max_bucket; i++) { if (stats->histo[i] != 0) { sbuf_printf(s, "%20jd | ", diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 8caab20cf709..648394abd026 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -5332,7 +5332,7 @@ device_get_path(device_t dev, const char *locator, struct sbuf *sb) KASSERT(sb != NULL, ("sb is NULL")); parent = device_get_parent(dev); if (parent == NULL) { - error = sbuf_printf(sb, "/"); + error = sbuf_putc(sb, '/'); } else { error = BUS_GET_DEVICE_PATH(parent, dev, locator, sb); if (error == 0) { diff --git a/sys/kern/subr_prf.c b/sys/kern/subr_prf.c index 5c06bf8270f6..5136ece359e5 100644 --- a/sys/kern/subr_prf.c +++ b/sys/kern/subr_prf.c @@ -1240,24 +1240,24 @@ sbuf_hexdump(struct sbuf *sb, const void *ptr, int length, const char *hdr, if (k < length) sbuf_printf(sb, "%c%02x", delim, cp[k]); else - sbuf_printf(sb, " "); + sbuf_cat(sb, " "); } } if ((flags & HD_OMIT_CHARS) == 0) { - sbuf_printf(sb, " |"); + sbuf_cat(sb, " |"); for (j = 0; j < cols; j++) { k = i + j; if (k >= length) - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); else if (cp[k] >= ' ' && cp[k] <= '~') - sbuf_printf(sb, "%c", cp[k]); + sbuf_putc(sb, cp[k]); else - sbuf_printf(sb, "."); + sbuf_putc(sb, '.'); } - sbuf_printf(sb, "|"); + sbuf_putc(sb, '|'); } - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } } diff --git a/sys/kern/subr_sleepqueue.c b/sys/kern/subr_sleepqueue.c index bbbf753e3df0..15dbf396c557 100644 --- a/sys/kern/subr_sleepqueue.c +++ b/sys/kern/subr_sleepqueue.c @@ -1281,7 +1281,7 @@ sleepq_sbuf_print_stacks(struct sbuf *sb, const void *wchan, int queue, sbuf_finish(td_infos[i]); sbuf_printf(sb, "--- thread %s: ---\n", sbuf_data(td_infos[i])); stack_sbuf_print(sb, st[i]); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); error = sbuf_error(sb); if (error == 0) @@ -1426,7 +1426,7 @@ dump_sleepq_prof_stats(SYSCTL_HANDLER_ARGS) if (error != 0) return (error); sb = sbuf_new_for_sysctl(NULL, NULL, SLEEPQ_SBUFSIZE, req); - sbuf_printf(sb, "\nwmesg\tcount\n"); + sbuf_cat(sb, "\nwmesg\tcount\n"); enabled = prof_enabled; mtx_lock_spin(&sleepq_prof_lock); prof_enabled = 0; diff --git a/sys/kern/subr_stats.c b/sys/kern/subr_stats.c index 0e7d2fad5f68..6e8ec44681e7 100644 --- a/sys/kern/subr_stats.c +++ b/sys/kern/subr_stats.c @@ -2077,7 +2077,7 @@ stats_v1_itercb_tostr_freeform(struct statsblobv1 *sb, struct voi *v, "data_off=%hu", vs->flags, vsd_dtype2name[vs->dtype], vs->dsz, vs->data_off); - sbuf_printf(buf, "\n\t\t\tvoistatdata: "); + sbuf_cat(buf, "\n\t\t\tvoistatdata: "); stats_voistatdata_tostr(vsd, v->dtype, vs->dtype, vs->dsz, sctx->fmt, buf, dump); } @@ -2124,7 +2124,7 @@ stats_v1_itercb_tostr_json(struct statsblobv1 *sb, struct voi *v, struct voistat sbuf_printf(buf, "\"[%d]\":{\"id\":%d", ctx->vslot, v->id); if (v->id < 0) { - sbuf_printf(buf, "},"); + sbuf_cat(buf, "},"); return; } @@ -2156,7 +2156,7 @@ stats_v1_itercb_tostr_json(struct statsblobv1 *sb, struct voi *v, struct voistat if (dump) { sbuf_printf(buf, "\"[%hhd]\":", ctx->vsslot); if (vs->stype < 0) { - sbuf_printf(buf, "{\"stype\":-1},"); + sbuf_cat(buf, "{\"stype\":-1},"); return; } sbuf_printf(buf, "{\"stype\":\"%s\",\"errs\":%hu,\"flags\":%hu," diff --git a/sys/kern/subr_witness.c b/sys/kern/subr_witness.c index 5b9f8afd9565..aa189e8cd057 100644 --- a/sys/kern/subr_witness.c +++ b/sys/kern/subr_witness.c @@ -2759,7 +2759,7 @@ restart: tmp_w1->w_name, tmp_w1->w_class->lc_name, tmp_w2->w_name, tmp_w2->w_class->lc_name); stack_sbuf_print(sb, &tmp_data1->wlod_stack); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } if (data2 && data2 != data1) { sbuf_printf(sb, @@ -2767,7 +2767,7 @@ restart: tmp_w2->w_name, tmp_w2->w_class->lc_name, tmp_w1->w_name, tmp_w1->w_class->lc_name); stack_sbuf_print(sb, &tmp_data2->wlod_stack); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } } } @@ -2905,7 +2905,7 @@ sysctl_debug_witness_fullgraph(SYSCTL_HANDLER_ARGS) sb = sbuf_new_for_sysctl(NULL, NULL, FULLGRAPH_SBUF_SIZE, req); if (sb == NULL) return (ENOMEM); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); mtx_lock_spin(&w_mtx); STAILQ_FOREACH(w, &w_all, w_list) diff --git a/sys/kern/tty_info.c b/sys/kern/tty_info.c index 15ba5995cea9..f54fc3a30f5e 100644 --- a/sys/kern/tty_info.c +++ b/sys/kern/tty_info.c @@ -309,17 +309,17 @@ tty_info(struct tty *tp) load / 100, load % 100); if (tp->t_session == NULL) { - sbuf_printf(&sb, "not a controlling terminal\n"); + sbuf_cat(&sb, "not a controlling terminal\n"); goto out; } if (tp->t_pgrp == NULL) { - sbuf_printf(&sb, "no foreground process group\n"); + sbuf_cat(&sb, "no foreground process group\n"); goto out; } PGRP_LOCK(tp->t_pgrp); if (LIST_EMPTY(&tp->t_pgrp->pg_members)) { PGRP_UNLOCK(tp->t_pgrp); - sbuf_printf(&sb, "empty foreground process group\n"); + sbuf_cat(&sb, "empty foreground process group\n"); goto out; } diff --git a/sys/kern/vfs_mountroot.c b/sys/kern/vfs_mountroot.c index 7a429e6392b5..569f8560788c 100644 --- a/sys/kern/vfs_mountroot.c +++ b/sys/kern/vfs_mountroot.c @@ -895,18 +895,18 @@ vfs_mountroot_conf0(struct sbuf *sb) char *s, *tok, *mnt, *opt; int error; - sbuf_printf(sb, ".onfail panic\n"); + sbuf_cat(sb, ".onfail panic\n"); sbuf_printf(sb, ".timeout %d\n", root_mount_timeout); if (boothowto & RB_ASKNAME) - sbuf_printf(sb, ".ask\n"); + sbuf_cat(sb, ".ask\n"); #ifdef ROOTDEVNAME if (boothowto & RB_DFLTROOT) sbuf_printf(sb, "%s\n", ROOTDEVNAME); #endif if (boothowto & RB_CDROM) { - sbuf_printf(sb, "cd9660:/dev/cd0 ro\n"); - sbuf_printf(sb, ".timeout 0\n"); - sbuf_printf(sb, "cd9660:/dev/cd1 ro\n"); + sbuf_cat(sb, "cd9660:/dev/cd0 ro\n"); + sbuf_cat(sb, ".timeout 0\n"); + sbuf_cat(sb, "cd9660:/dev/cd1 ro\n"); sbuf_printf(sb, ".timeout %d\n", root_mount_timeout); } s = kern_getenv("vfs.root.mountfrom"); @@ -933,7 +933,7 @@ vfs_mountroot_conf0(struct sbuf *sb) sbuf_printf(sb, "%s\n", ROOTDEVNAME); #endif if (!(boothowto & RB_ASKNAME)) - sbuf_printf(sb, ".ask\n"); + sbuf_cat(sb, ".ask\n"); } static int From nobody Wed Nov 22 22:31:11 2023 X-Original-To: dev-commits-src-main@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 4SbGDc0Gkyz51Gm5; Wed, 22 Nov 2023 22:31:12 +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 4SbGDc01F2z4nRr; Wed, 22 Nov 2023 22:31:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700692272; 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=ZPIOneLP5Z+wHAsuVhdvAaH6TwY1kF7Os0zTEjKv1Ek=; b=Gz0dEVPNIlAT+jCvO/XGTp6H02OXbzxkXfBeN52knr3U8nsSroLBqg4mSe3g1+XMVoA5vW SZMmDvTT5axOUd1IpLIlGW099kp5s6LbP4isnrtQMPYUH9fIjfXhLW628yOzXcrrb4NEkx SPpwI88SAhTfszffMBMAkXV1cHkASfkLhBImvilc4jFaZbzG5FRwY07NOT6nqeY3QuwV0P NP2RvmE99XY22+aoT9XOJzcgrMI+w2H6PCDwpOMwX6kWNcPNk0hjYhTEaXQqBXY+u0ZQtV jb2TkiIK9OOPTjugFCssAm5oeZYvblOo31V+77PE6n0UGWDivCsXQlCKJpjwKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700692272; 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=ZPIOneLP5Z+wHAsuVhdvAaH6TwY1kF7Os0zTEjKv1Ek=; b=g2FLR2zEt7y4OT6zztDw9G2ETXrdm1kzMMRTb2WHTpsb5z7M16miJPx/lNBUzCEQqttzQV ZXNIsk5QsyQQl6zwBcuP8/WtL3BjWu5KJZrzoODzHvXfqLt4rzQFnLwoyls5VqEbiBXBec tvSWFd7tntUxf8MIpY0LnfuCxVtU6rjrAjphPK8UJsaRQqpsuxZNabkRt5PK1GE+5azMLE um9OotBtkg7qZTZ/aMyIIjidVk87dSKjK4XbOu4H6B3hZ2CIyaQMpCL+jTsWwVDOEKDbJO rUK/wm+2Y9KNQeF2iek5O24mE6l4XPIcEURlrk6VzjOSpgbNP1WTIxJCaOhANQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700692272; a=rsa-sha256; cv=none; b=K9D25EGEyPnKGD/eRFezT/tkwYZB6Oju91T9KLX4yyjgBtSqNrc+v3is8vVUf370hsqigM 7YYSEFZ/SyNA0SA/biyGNpZkBSJWTdeJoq6ARKTeRANO1I/hWMRa7GuXqDF11fhXwAZYUD NJP3f73oBiYKq38IJ2FEYU83zhdieex8YjCy+eWB5g7jqRcyiPgkmzA5OEbX1lEA0HXI/B MvTGuLl/aungimwAU4HnOkMoJFn1bVhbm2zaqrF+JlE9O7RtmIxf/iM7o3/fCj1DUq3A0A vH/7xtd/8+ksGdDCqW2gTjaVgPSZgJmLUWGBh7GKs8y3rCt3BVCqPSG18p4KAw== 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 4SbGDb5tk1zcg8; Wed, 22 Nov 2023 22:31:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMMVB6t050073; Wed, 22 Nov 2023 22:31:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMMVB1M050070; Wed, 22 Nov 2023 22:31:11 GMT (envelope-from git) Date: Wed, 22 Nov 2023 22:31:11 GMT Message-Id: <202311222231.3AMMVB1M050070@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: c56f45f2a9da - main - bitstring: Support large bit strings. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c56f45f2a9da7d989b79fd6c34b63100609ff9ae Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=c56f45f2a9da7d989b79fd6c34b63100609ff9ae commit c56f45f2a9da7d989b79fd6c34b63100609ff9ae Author: Dag-Erling Smørgrav AuthorDate: 2023-11-22 22:30:03 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-11-22 22:30:03 +0000 bitstring: Support large bit strings. Replace int with either size_t or ssize_t (depending on context) in order to support bit strings up to SSIZE_MAX bits in length. Since some of the arguments that need to change type are pointers, we must resort to light preprocessor trickery to avoid breaking existing code. MFC after: 3 weeks Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D42698 --- share/man/man3/bitstring.3 | 50 ++++++------- sys/sys/bitstring.h | 158 +++++++++++++++++------------------------ tests/sys/sys/bitstring_test.c | 90 ++++++++++++++++++++++- 3 files changed, 181 insertions(+), 117 deletions(-) diff --git a/share/man/man3/bitstring.3 b/share/man/man3/bitstring.3 index ac87ac6d9124..808cd48f384b 100644 --- a/share/man/man3/bitstring.3 +++ b/share/man/man3/bitstring.3 @@ -57,7 +57,7 @@ .\" .\" @(#)bitstring.3 8.1 (Berkeley) 7/19/93 .\" -.Dd August 8, 2021 +.Dd November 21, 2023 .Dt BITSTRING 3 .Os .Sh NAME @@ -85,49 +85,49 @@ .Sh SYNOPSIS .In bitstring.h .Ft bitstr_t * -.Fn bit_alloc "int nbits" +.Fn bit_alloc "size_t nbits" .Ft void -.Fn bit_decl "bitstr_t *name" "int nbits" +.Fn bit_decl "bitstr_t *name" "size_t nbits" .Ft void -.Fn bit_clear "bitstr_t *name" "int bit" +.Fn bit_clear "bitstr_t *name" "size_t bit" .Ft void -.Fn bit_count "bitstr_t *name" "int count" "int nbits" "int *value" +.Fn bit_count "bitstr_t *name" "size_t count" "size_t nbits" "ssize_t *value" .Ft void -.Fn bit_ffc "bitstr_t *name" "int nbits" "int *value" +.Fn bit_ffc "bitstr_t *name" "size_t nbits" "ssize_t *value" .Ft void -.Fn bit_ffs "bitstr_t *name" "int nbits" "int *value" +.Fn bit_ffs "bitstr_t *name" "size_t nbits" "ssize_t *value" .Ft void -.Fn bit_ffc_at "bitstr_t *name" "int start" "int nbits" "int *value" +.Fn bit_ffc_at "bitstr_t *name" "size_t start" "size_t nbits" "ssize_t *value" .Ft void -.Fn bit_ffs_at "bitstr_t *name" "int start" "int nbits" "int *value" +.Fn bit_ffs_at "bitstr_t *name" "size_t start" "size_t nbits" "ssize_t *value" .Ft void -.Fn bit_ff_at "bitstr_t *name" "int start" "int nbits" "int match" "int *value" +.Fn bit_ff_at "bitstr_t *name" "size_t start" "size_t nbits" "int match" "ssize_t *value" .Ft void -.Fn bit_ffc_area "bitstr_t *name" "int nbits" "int size" "int *value" +.Fn bit_ffc_area "bitstr_t *name" "size_t nbits" "size_t size" "ssize_t *value" .Ft void -.Fn bit_ffs_area "bitstr_t *name" "int nbits" "int size" "int *value" +.Fn bit_ffs_area "bitstr_t *name" "size_t nbits" "size_t size" "ssize_t *value" .Ft void -.Fn bit_ffc_area_at "bitstr_t *name" "int start" "int nbits" "int size" "int *value" +.Fn bit_ffc_area_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t size" "ssize_t *value" .Ft void -.Fn bit_ffs_area_at "bitstr_t *name" "int start" "int nbits" "int size" "int *value" +.Fn bit_ffs_area_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t size" "ssize_t *value" .Ft void -.Fn bit_ff_area_at "bitstr_t *name" "int start" "int nbits" "int size" "int match" "int *value" -.Fn bit_foreach "bitstr_t *name" "int nbits" "int var" -.Fn bit_foreach_at "bitstr_t *name" "int start" "int nbits" "int var" -.Fn bit_foreach_unset "bitstr_t *name" "int nbits" "int var" -.Fn bit_foreach_unset_at "bitstr_t *name" "int start" "int nbits" "int var" +.Fn bit_ff_area_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t size" "int match" "ssize_t *value" +.Fn bit_foreach "bitstr_t *name" "size_t nbits" "size_t var" +.Fn bit_foreach_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t var" +.Fn bit_foreach_unset "bitstr_t *name" "size_t nbits" "size_t var" +.Fn bit_foreach_unset_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t var" .Ft void -.Fn bit_nclear "bitstr_t *name" "int start" "int stop" +.Fn bit_nclear "bitstr_t *name" "size_t start" "size_t stop" .Ft void -.Fn bit_nset "bitstr_t *name" "int start" "int stop" +.Fn bit_nset "bitstr_t *name" "size_t start" "size_t stop" .Ft int -.Fn bit_ntest "bitstr_t *name" "int start" "int stop" "int match" +.Fn bit_ntest "bitstr_t *name" "size_t start" "size_t stop" "int match" .Ft void -.Fn bit_set "bitstr_t *name" "int bit" +.Fn bit_set "bitstr_t *name" "size_t bit" .Ft int -.Fn bitstr_size "int nbits" +.Fn bitstr_size "size_t nbits" .Ft int -.Fn bit_test "bitstr_t *name" "int bit" +.Fn bit_test "bitstr_t *name" "size_t bit" .Sh DESCRIPTION These macros operate on strings of bits. .Pp diff --git a/sys/sys/bitstring.h b/sys/sys/bitstring.h index 127de2ebc419..8a976962dd36 100644 --- a/sys/sys/bitstring.h +++ b/sys/sys/bitstring.h @@ -75,35 +75,33 @@ typedef unsigned long bitstr_t; #define _BITSTR_MASK (~0UL) #define _BITSTR_BITS (sizeof(bitstr_t) * 8) -#ifdef roundup2 -#define _bit_roundup2 roundup2 -#else -#define _bit_roundup2(x, y) (((x)+((y)-1))&(~((y)-1))) /* if y is powers of two */ -#endif +/* round up x to the next multiple of y if y is a power of two */ +#define _bit_roundup2(x, y) \ + (((size_t)(x) + (y) - 1) & ~((size_t)(y) - 1)) /* bitstr_t in bit string containing the bit. */ -static inline int -_bit_idx(int _bit) +static inline size_t +_bit_idx(size_t _bit) { return (_bit / _BITSTR_BITS); } /* bit number within bitstr_t at _bit_idx(_bit). */ -static inline int -_bit_offset(int _bit) +static inline size_t +_bit_offset(size_t _bit) { return (_bit % _BITSTR_BITS); } /* Mask for the bit within its long. */ static inline bitstr_t -_bit_mask(int _bit) +_bit_mask(size_t _bit) { return (1UL << _bit_offset(_bit)); } static inline bitstr_t -_bit_make_mask(int _start, int _stop) +_bit_make_mask(size_t _start, size_t _stop) { return ((_BITSTR_MASK << _bit_offset(_start)) & (_BITSTR_MASK >> (_BITSTR_BITS - _bit_offset(_stop) - 1))); @@ -111,18 +109,18 @@ _bit_make_mask(int _start, int _stop) /*----------------------------- Public Interface -----------------------------*/ /* Number of bytes allocated for a bit string of nbits bits */ -#define bitstr_size(_nbits) (_bit_roundup2(_nbits, _BITSTR_BITS) / 8) +#define bitstr_size(_nbits) (_bit_roundup2((_nbits), _BITSTR_BITS) / 8) /* Allocate a bit string initialized with no bits set. */ #ifdef _KERNEL static inline bitstr_t * -bit_alloc(int _nbits, struct malloc_type *type, int flags) +bit_alloc(size_t _nbits, struct malloc_type *type, int flags) { return ((bitstr_t *)malloc(bitstr_size(_nbits), type, flags | M_ZERO)); } #else static inline bitstr_t * -bit_alloc(int _nbits) +bit_alloc(size_t _nbits) { return ((bitstr_t *)calloc(bitstr_size(_nbits), 1)); } @@ -134,28 +132,28 @@ bit_alloc(int _nbits) /* Is bit N of bit string set? */ static inline int -bit_test(const bitstr_t *_bitstr, int _bit) +bit_test(const bitstr_t *_bitstr, size_t _bit) { return ((_bitstr[_bit_idx(_bit)] & _bit_mask(_bit)) != 0); } /* Set bit N of bit string. */ static inline void -bit_set(bitstr_t *_bitstr, int _bit) +bit_set(bitstr_t *_bitstr, size_t _bit) { _bitstr[_bit_idx(_bit)] |= _bit_mask(_bit); } /* clear bit N of bit string name */ static inline void -bit_clear(bitstr_t *_bitstr, int _bit) +bit_clear(bitstr_t *_bitstr, size_t _bit) { _bitstr[_bit_idx(_bit)] &= ~_bit_mask(_bit); } /* Are bits in [start ... stop] in bit string all 0 or all 1? */ static inline int -bit_ntest(const bitstr_t *_bitstr, int _start, int _stop, int _match) +bit_ntest(const bitstr_t *_bitstr, size_t _start, size_t _stop, int _match) { const bitstr_t *_stopbitstr; bitstr_t _mask; @@ -183,7 +181,7 @@ bit_ntest(const bitstr_t *_bitstr, int _start, int _stop, int _match) /* Set bits start ... stop inclusive in bit string. */ static inline void -bit_nset(bitstr_t *_bitstr, int _start, int _stop) +bit_nset(bitstr_t *_bitstr, size_t _start, size_t _stop) { bitstr_t *_stopbitstr; @@ -206,7 +204,7 @@ bit_nset(bitstr_t *_bitstr, int _start, int _stop) /* Clear bits start ... stop inclusive in bit string. */ static inline void -bit_nclear(bitstr_t *_bitstr, int _start, int _stop) +bit_nclear(bitstr_t *_bitstr, size_t _start, size_t _stop) { bitstr_t *_stopbitstr; @@ -228,20 +226,17 @@ bit_nclear(bitstr_t *_bitstr, int _start, int _stop) } /* Find the first '_match'-bit in bit string at or after bit start. */ -static inline void -bit_ff_at(bitstr_t *_bitstr, int _start, int _nbits, int _match, - int *_result) +static inline ssize_t +bit_ff_at_(bitstr_t *_bitstr, size_t _start, size_t _nbits, int _match) { bitstr_t *_curbitstr; bitstr_t *_stopbitstr; bitstr_t _mask; bitstr_t _test; - int _value; + ssize_t _value; - if (_start >= _nbits || _nbits <= 0) { - *_result = -1; - return; - } + if (_start >= _nbits || _nbits <= 0) + return (-1); _curbitstr = _bitstr + _bit_idx(_start); _stopbitstr = _bitstr + _bit_idx(_nbits - 1); @@ -255,51 +250,40 @@ bit_ff_at(bitstr_t *_bitstr, int _start, int _nbits, int _match, _value = ((_curbitstr - _bitstr) * _BITSTR_BITS) + ffsl(_test) - 1; if (_test == 0 || - (_bit_offset(_nbits) != 0 && _value >= _nbits)) + (_bit_offset(_nbits) != 0 && (size_t)_value >= _nbits)) _value = -1; - *_result = _value; + return (_value); } +#define bit_ff_at(_bitstr, _start, _nbits, _match, _resultp) \ + *(_resultp) = bit_ff_at_((_bitstr), (_start), (_nbits), (_match)) /* Find the first bit set in bit string at or after bit start. */ -static inline void -bit_ffs_at(bitstr_t *_bitstr, int _start, int _nbits, int *_result) -{ - bit_ff_at(_bitstr, _start, _nbits, 1, _result); -} +#define bit_ffs_at(_bitstr, _start, _nbits, _resultp) \ + *(_resultp) = bit_ff_at_((_bitstr), (_start), (_nbits), 1) /* Find the first bit clear in bit string at or after bit start. */ -static inline void -bit_ffc_at(bitstr_t *_bitstr, int _start, int _nbits, int *_result) -{ - bit_ff_at(_bitstr, _start, _nbits, 0, _result); -} +#define bit_ffc_at(_bitstr, _start, _nbits, _resultp) \ + *(_resultp) = bit_ff_at_((_bitstr), (_start), (_nbits), 0) /* Find the first bit set in bit string. */ -static inline void -bit_ffs(bitstr_t *_bitstr, int _nbits, int *_result) -{ - bit_ffs_at(_bitstr, /*start*/0, _nbits, _result); -} +#define bit_ffs(_bitstr, _nbits, _resultp) \ + *(_resultp) = bit_ff_at_((_bitstr), 0, (_nbits), 1) /* Find the first bit clear in bit string. */ -static inline void -bit_ffc(bitstr_t *_bitstr, int _nbits, int *_result) -{ - bit_ffc_at(_bitstr, /*start*/0, _nbits, _result); -} +#define bit_ffc(_bitstr, _nbits, _resultp) \ + *(_resultp) = bit_ff_at_((_bitstr), 0, (_nbits), 0) /* Find contiguous sequence of at least size '_match'-bits at or after start */ -static inline void -bit_ff_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, - int _match, int *_result) +static inline ssize_t +bit_ff_area_at_(bitstr_t *_bitstr, size_t _start, size_t _nbits, size_t _size, + int _match) { bitstr_t *_curbitstr, _mask, _test; - int _value, _last, _shft, _maxshft; + size_t _last, _shft, _maxshft; + ssize_t _value; - if (_start + _size > _nbits || _nbits <= 0) { - *_result = -1; - return; - } + if (_start + _size > _nbits || _nbits <= 0) + return (-1); _mask = _match ? _BITSTR_MASK : 0; _maxshft = _bit_idx(_size - 1) == 0 ? _size : (int)_BITSTR_BITS; @@ -330,48 +314,37 @@ bit_ff_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, break; /* A solution here needs bits from the next word. */ } - *_result = _value; + return (_value); } +#define bit_ff_area_at(_bitstr, _start, _nbits, _size, _match, _resultp) \ + *(_resultp) = bit_ff_area_at_(_bitstr, _start, _nbits, _size, _match); /* Find contiguous sequence of at least size set bits at or after start */ -static inline void -bit_ffs_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, - int *_result) -{ - bit_ff_area_at(_bitstr, _start, _nbits, _size, 1, _result); -} +#define bit_ffs_area_at(_bitstr, _start, _nbits, _size, _resultp) \ + *(_resultp) = bit_ff_area_at_((_bitstr), (_start), (_nbits), (_size), 1) /* Find contiguous sequence of at least size cleared bits at or after start */ -static inline void -bit_ffc_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, - int *_result) -{ - bit_ff_area_at(_bitstr, _start, _nbits, _size, 0, _result); -} +#define bit_ffc_area_at(_bitstr, _start, _nbits, _size, _resultp) \ + *(_resultp) = bit_ff_area_at_((_bitstr), (_start), (_nbits), (_size), 0) /* Find contiguous sequence of at least size set bits in bit string */ -static inline void -bit_ffs_area(bitstr_t *_bitstr, int _nbits, int _size, int *_result) -{ - bit_ffs_area_at(_bitstr, /*start*/0, _nbits, _size, _result); -} +#define bit_ffs_area(_bitstr, _nbits, _size, _resultp) \ + *(_resultp) = bit_ff_area_at_((_bitstr), 0, (_nbits), (_size), 1) /* Find contiguous sequence of at least size cleared bits in bit string */ -static inline void -bit_ffc_area(bitstr_t *_bitstr, int _nbits, int _size, int *_result) -{ - bit_ffc_area_at(_bitstr, /*start*/0, _nbits, _size, _result); -} +#define bit_ffc_area(_bitstr, _nbits, _size, _resultp) \ + *(_resultp) = bit_ff_area_at_((_bitstr), 0, (_nbits), (_size), 0) /* Count the number of bits set in a bitstr of size _nbits at or after _start */ -static inline void -bit_count(bitstr_t *_bitstr, int _start, int _nbits, int *_result) +static inline ssize_t +bit_count_(bitstr_t *_bitstr, size_t _start, size_t _nbits) { bitstr_t *_curbitstr, mask; - int _value = 0, curbitstr_len; + size_t curbitstr_len; + ssize_t _value = 0; if (_start >= _nbits) - goto out; + return (0); _curbitstr = _bitstr + _bit_idx(_start); _nbits -= _BITSTR_BITS * _bit_idx(_start); @@ -383,6 +356,8 @@ bit_count(bitstr_t *_bitstr, int _start, int _nbits, int *_result) mask = _bit_make_mask(_start, _bit_offset(curbitstr_len - 1)); _value += __bitcountl(*_curbitstr & mask); _curbitstr++; + if (_nbits < _BITSTR_BITS) + return (_value); _nbits -= _BITSTR_BITS; } while (_nbits >= (int)_BITSTR_BITS) { @@ -395,23 +370,24 @@ bit_count(bitstr_t *_bitstr, int _start, int _nbits, int *_result) _value += __bitcountl(*_curbitstr & mask); } -out: - *_result = _value; + return (_value); } +#define bit_count(_bitstr, _start, _nbits, _resultp) \ + *(_resultp) = bit_count_((_bitstr), (_start), (_nbits)) /* Traverse all set bits, assigning each location in turn to iter */ #define bit_foreach_at(_bitstr, _start, _nbits, _iter) \ - for (bit_ffs_at((_bitstr), (_start), (_nbits), &(_iter)); \ + for ((_iter) = bit_ff_at_((_bitstr), (_start), (_nbits), 1); \ (_iter) != -1; \ - bit_ffs_at((_bitstr), (_iter) + 1, (_nbits), &(_iter))) + (_iter) = bit_ff_at_((_bitstr), (_iter) + 1, (_nbits), 1)) #define bit_foreach(_bitstr, _nbits, _iter) \ bit_foreach_at(_bitstr, /*start*/0, _nbits, _iter) /* Traverse all unset bits, assigning each location in turn to iter */ #define bit_foreach_unset_at(_bitstr, _start, _nbits, _iter) \ - for (bit_ffc_at((_bitstr), (_start), (_nbits), &(_iter)); \ + for ((_iter) = bit_ff_at_((_bitstr), (_start), (_nbits), 0); \ (_iter) != -1; \ - bit_ffc_at((_bitstr), (_iter) + 1, (_nbits), &(_iter))) + (_iter) = bit_ff_at_((_bitstr), (_iter) + 1, (_nbits), 0)) #define bit_foreach_unset(_bitstr, _nbits, _iter) \ bit_foreach_unset_at(_bitstr, /*start*/0, _nbits, _iter) diff --git a/tests/sys/sys/bitstring_test.c b/tests/sys/sys/bitstring_test.c index 0c214b9e67a7..a48042a4a063 100644 --- a/tests/sys/sys/bitstring_test.c +++ b/tests/sys/sys/bitstring_test.c @@ -1,5 +1,6 @@ /*- * Copyright (c) 2014 Spectra Logic Corporation + * Copyright (c) 2023 Klara, Inc. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,7 +32,7 @@ #include #include -#include +#include #include @@ -51,6 +52,7 @@ bitstring_run_heap_test(testfunc_t *test, int nbits) bitstr_t *bitstr = bit_alloc(nbits); test(bitstr, nbits, "heap"); + free(bitstr); } static void @@ -862,6 +864,91 @@ BITSTRING_TC_DEFINE(bit_foreach_unset_at) } } +/* + * Perform various tests on large bit strings. We can't simply add larger + * sizes to bitstring_runner as most of the existing tests are exhaustive + * and would take forever to run for large values of nbits. + * + * On 32-bit platforms, we use nbits = SSIZE_MAX (2147483647) bits, which + * is the largest we can hope to support; on 64-bit platforms, we use + * nbits = INT_MAX + 30 (2147483677), which is small enough to be + * practicable yet large enough to reveal arithmetic overflow bugs. + */ +ATF_TC_WITHOUT_HEAD(bitstr_large); +ATF_TC_BODY(bitstr_large, tc) +{ + size_t nbits = INT_MAX < SSIZE_MAX ? (size_t)INT_MAX + 30 : SSIZE_MAX; + size_t early = 5, late = nbits - 5; + ssize_t fc, fs; + bitstr_t *b; + + /* Check for overflow in size calculation */ + ATF_REQUIRE(nbits >= (size_t)INT_MAX); + ATF_REQUIRE(bitstr_size(nbits) >= nbits / 8); + + /* Allocate the bit string */ + ATF_REQUIRE(b = bit_alloc(nbits)); + + /* Check that we allocated enough */ + ATF_REQUIRE(malloc_usable_size(b) >= bitstr_size(nbits)); + + /* Check ffc, ffs on all-zeroes string */ + bit_ffc(b, nbits, &fc); + ATF_CHECK_EQ(0L, fc); + bit_ffs(b, nbits, &fs); + ATF_CHECK_EQ(-1L, fs); + + /* Set, test, and clear an early bit */ + bit_set(b, early); + bit_ffs(b, nbits, &fs); + ATF_CHECK_EQ((ssize_t)early, fs); + ATF_CHECK_EQ(0, bit_test(b, early - 1)); + ATF_CHECK(bit_test(b, early) != 0); + ATF_CHECK_EQ(0, bit_test(b, early + 1)); + bit_clear(b, early); + ATF_CHECK_EQ(0, bit_test(b, early)); + + /* Set, test, and clear an early bit range */ + bit_nset(b, early - 1, early + 1); + bit_ffs(b, nbits, &fs); + ATF_CHECK_EQ((ssize_t)early - 1, fs); + ATF_CHECK_EQ(0, bit_test(b, early - 2)); + ATF_CHECK(bit_test(b, early - 1)); + ATF_CHECK(bit_test(b, early)); + ATF_CHECK(bit_test(b, early + 1)); + ATF_CHECK_EQ(0, bit_test(b, early + 2)); + bit_nclear(b, early - 1, early + 1); + ATF_CHECK_EQ(0, bit_test(b, early - 1)); + ATF_CHECK_EQ(0, bit_test(b, early)); + ATF_CHECK_EQ(0, bit_test(b, early + 1)); + + /* Set, test, and clear a late bit */ + bit_set(b, late); + bit_ffs(b, nbits, &fs); + ATF_CHECK_EQ((ssize_t)late, fs); + ATF_CHECK_EQ(0, bit_test(b, late - 1)); + ATF_CHECK(bit_test(b, late) != 0); + ATF_CHECK_EQ(0, bit_test(b, late + 1)); + bit_clear(b, late); + ATF_CHECK_EQ(0, bit_test(b, late)); + + /* Set, test, and clear a late bit range */ + bit_nset(b, late - 1, late + 1); + bit_ffs(b, nbits, &fs); + ATF_CHECK_EQ((ssize_t)late - 1, fs); + ATF_CHECK_EQ(0, bit_test(b, late - 2)); + ATF_CHECK(bit_test(b, late - 1)); + ATF_CHECK(bit_test(b, late)); + ATF_CHECK(bit_test(b, late + 1)); + ATF_CHECK_EQ(0, bit_test(b, late + 2)); + bit_nclear(b, late - 1, late + 1); + ATF_CHECK_EQ(0, bit_test(b, late - 1)); + ATF_CHECK_EQ(0, bit_test(b, late)); + ATF_CHECK_EQ(0, bit_test(b, late + 1)); + + free(b); +} + ATF_TP_ADD_TCS(tp) { @@ -884,6 +971,7 @@ ATF_TP_ADD_TCS(tp) BITSTRING_TC_ADD(tp, bit_foreach_at); BITSTRING_TC_ADD(tp, bit_foreach_unset); BITSTRING_TC_ADD(tp, bit_foreach_unset_at); + ATF_TP_ADD_TC(tp, bitstr_large); return (atf_no_error()); } From nobody Wed Nov 22 22:51:47 2023 X-Original-To: dev-commits-src-main@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 4SbGhd11Y7z51M2c for ; Wed, 22 Nov 2023 22:52:01 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SbGhc5d7wz4rkN for ; Wed, 22 Nov 2023 22:52:00 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-40b2c9ee8ecso1584735e9.2 for ; Wed, 22 Nov 2023 14:52:00 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700693519; x=1701298319; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=keXlrQ7E7WLzoJ8gehp56PufF/vrawSK0eJo1fCC3kg=; b=f/WtLAyxRIe5qiaObDNt8HSWHF/S/j5vc2WU4VSiALmENp6mqwzt4bhyupjRvMB+Cf /C1Klyth8QTSD869JUf8u2kdJxtJNnscgI0v75uxykBWATICulKGzoqxv1zVPYGTZ62E ROuLq/gR70ZSVUYSk5ZRRqETxRa168/xs0ZJp28mtXWzYaXLpsUvUEZZrSJig3Z1E5FP xnC4lZQwvzHBVmm2FlC78y4tF5oD3o4K3rIOQWb3morY/ixunPltW2lYKCChZMYFwkGs ss9b53AEHUTzYShdL7XacQ05D5qzB/Pniuwnd+rnYqI1CPDYlEh3+t1Ajf1Ma9CpTAje 8wYA== X-Gm-Message-State: AOJu0Yzti6E+33R24f//Epvpv8RAEdIK5NUtRtst7ZjJ6mTZewYSMX7F B6gzbpQwd2CQ3IK/REzOd2h0iw== X-Google-Smtp-Source: AGHT+IF/xFA/a4pgTMGZNbOhDhED6cK74kBCpZkDEqcdI7QbhDWivG9qHsT0gYMoHnbcv2t8q+6ExQ== X-Received: by 2002:a05:600c:4f16:b0:406:5344:4212 with SMTP id l22-20020a05600c4f1600b0040653444212mr3280943wmq.41.1700693518390; Wed, 22 Nov 2023 14:51:58 -0800 (PST) Received: from smtpclient.apple ([131.111.5.246]) by smtp.gmail.com with ESMTPSA id a14-20020a056000100e00b00332c0aace23sm475273wrx.105.2023.11.22.14.51.57 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 22 Nov 2023 14:51:57 -0800 (PST) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: git: c56f45f2a9da - main - bitstring: Support large bit strings. From: Jessica Clarke In-Reply-To: <202311222231.3AMMVB1M050070@gitrepo.freebsd.org> Date: Wed, 22 Nov 2023 22:51:47 +0000 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <4C6024C7-D786-424E-8866-152339FB96D6@freebsd.org> References: <202311222231.3AMMVB1M050070@gitrepo.freebsd.org> To: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Queue-Id: 4SbGhc5d7wz4rkN On 22 Nov 2023, at 22:31, Dag-Erling Sm=C3=B8rgrav = wrote: >=20 > The branch main has been updated by des: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3Dc56f45f2a9da7d989b79fd6c34b63100= 609ff9ae >=20 > commit c56f45f2a9da7d989b79fd6c34b63100609ff9ae > Author: Dag-Erling Sm=C3=B8rgrav > AuthorDate: 2023-11-22 22:30:03 +0000 > Commit: Dag-Erling Sm=C3=B8rgrav > CommitDate: 2023-11-22 22:30:03 +0000 >=20 > bitstring: Support large bit strings. >=20 > Replace int with either size_t or ssize_t (depending on context) in > order to support bit strings up to SSIZE_MAX bits in length. Since > some of the arguments that need to change type are pointers, we = must > resort to light preprocessor trickery to avoid breaking existing = code. You want more than 2^31 bits, i.e. 256 MiB, in a single bitstring? I mean, sure, there=E2=80=99s no reason the code shouldn=E2=80=99t support = that, but I have serious questions about how sensible that is to do in reality... Jess > MFC after: 3 weeks > Sponsored by: Klara, Inc. > Reviewed by: kevans > Differential Revision: https://reviews.freebsd.org/D42698 > --- > share/man/man3/bitstring.3 | 50 ++++++------- > sys/sys/bitstring.h | 158 = +++++++++++++++++------------------------ > tests/sys/sys/bitstring_test.c | 90 ++++++++++++++++++++++- > 3 files changed, 181 insertions(+), 117 deletions(-) >=20 > diff --git a/share/man/man3/bitstring.3 b/share/man/man3/bitstring.3 > index ac87ac6d9124..808cd48f384b 100644 > --- a/share/man/man3/bitstring.3 > +++ b/share/man/man3/bitstring.3 > @@ -57,7 +57,7 @@ > .\" > .\" @(#)bitstring.3 8.1 (Berkeley) 7/19/93 > .\" > -.Dd August 8, 2021 > +.Dd November 21, 2023 > .Dt BITSTRING 3 > .Os > .Sh NAME > @@ -85,49 +85,49 @@ > .Sh SYNOPSIS > .In bitstring.h > .Ft bitstr_t * > -.Fn bit_alloc "int nbits" > +.Fn bit_alloc "size_t nbits" > .Ft void > -.Fn bit_decl "bitstr_t *name" "int nbits" > +.Fn bit_decl "bitstr_t *name" "size_t nbits" > .Ft void > -.Fn bit_clear "bitstr_t *name" "int bit" > +.Fn bit_clear "bitstr_t *name" "size_t bit" > .Ft void > -.Fn bit_count "bitstr_t *name" "int count" "int nbits" "int *value" > +.Fn bit_count "bitstr_t *name" "size_t count" "size_t nbits" "ssize_t = *value" > .Ft void > -.Fn bit_ffc "bitstr_t *name" "int nbits" "int *value" > +.Fn bit_ffc "bitstr_t *name" "size_t nbits" "ssize_t *value" > .Ft void > -.Fn bit_ffs "bitstr_t *name" "int nbits" "int *value" > +.Fn bit_ffs "bitstr_t *name" "size_t nbits" "ssize_t *value" > .Ft void > -.Fn bit_ffc_at "bitstr_t *name" "int start" "int nbits" "int *value" > +.Fn bit_ffc_at "bitstr_t *name" "size_t start" "size_t nbits" = "ssize_t *value" > .Ft void > -.Fn bit_ffs_at "bitstr_t *name" "int start" "int nbits" "int *value" > +.Fn bit_ffs_at "bitstr_t *name" "size_t start" "size_t nbits" = "ssize_t *value" > .Ft void > -.Fn bit_ff_at "bitstr_t *name" "int start" "int nbits" "int match" = "int *value" > +.Fn bit_ff_at "bitstr_t *name" "size_t start" "size_t nbits" "int = match" "ssize_t *value" > .Ft void > -.Fn bit_ffc_area "bitstr_t *name" "int nbits" "int size" "int *value" > +.Fn bit_ffc_area "bitstr_t *name" "size_t nbits" "size_t size" = "ssize_t *value" > .Ft void > -.Fn bit_ffs_area "bitstr_t *name" "int nbits" "int size" "int *value" > +.Fn bit_ffs_area "bitstr_t *name" "size_t nbits" "size_t size" = "ssize_t *value" > .Ft void > -.Fn bit_ffc_area_at "bitstr_t *name" "int start" "int nbits" "int = size" "int *value" > +.Fn bit_ffc_area_at "bitstr_t *name" "size_t start" "size_t nbits" = "size_t size" "ssize_t *value" > .Ft void > -.Fn bit_ffs_area_at "bitstr_t *name" "int start" "int nbits" "int = size" "int *value" > +.Fn bit_ffs_area_at "bitstr_t *name" "size_t start" "size_t nbits" = "size_t size" "ssize_t *value" > .Ft void > -.Fn bit_ff_area_at "bitstr_t *name" "int start" "int nbits" "int = size" "int match" "int *value" > -.Fn bit_foreach "bitstr_t *name" "int nbits" "int var" > -.Fn bit_foreach_at "bitstr_t *name" "int start" "int nbits" "int var" > -.Fn bit_foreach_unset "bitstr_t *name" "int nbits" "int var" > -.Fn bit_foreach_unset_at "bitstr_t *name" "int start" "int nbits" = "int var" > +.Fn bit_ff_area_at "bitstr_t *name" "size_t start" "size_t nbits" = "size_t size" "int match" "ssize_t *value" > +.Fn bit_foreach "bitstr_t *name" "size_t nbits" "size_t var" > +.Fn bit_foreach_at "bitstr_t *name" "size_t start" "size_t nbits" = "size_t var" > +.Fn bit_foreach_unset "bitstr_t *name" "size_t nbits" "size_t var" > +.Fn bit_foreach_unset_at "bitstr_t *name" "size_t start" "size_t = nbits" "size_t var" > .Ft void > -.Fn bit_nclear "bitstr_t *name" "int start" "int stop" > +.Fn bit_nclear "bitstr_t *name" "size_t start" "size_t stop" > .Ft void > -.Fn bit_nset "bitstr_t *name" "int start" "int stop" > +.Fn bit_nset "bitstr_t *name" "size_t start" "size_t stop" > .Ft int > -.Fn bit_ntest "bitstr_t *name" "int start" "int stop" "int match" > +.Fn bit_ntest "bitstr_t *name" "size_t start" "size_t stop" "int = match" > .Ft void > -.Fn bit_set "bitstr_t *name" "int bit" > +.Fn bit_set "bitstr_t *name" "size_t bit" > .Ft int > -.Fn bitstr_size "int nbits" > +.Fn bitstr_size "size_t nbits" > .Ft int > -.Fn bit_test "bitstr_t *name" "int bit" > +.Fn bit_test "bitstr_t *name" "size_t bit" > .Sh DESCRIPTION > These macros operate on strings of bits. > .Pp > diff --git a/sys/sys/bitstring.h b/sys/sys/bitstring.h > index 127de2ebc419..8a976962dd36 100644 > --- a/sys/sys/bitstring.h > +++ b/sys/sys/bitstring.h > @@ -75,35 +75,33 @@ typedef unsigned long bitstr_t; > #define _BITSTR_MASK (~0UL) > #define _BITSTR_BITS (sizeof(bitstr_t) * 8) >=20 > -#ifdef roundup2 > -#define _bit_roundup2 roundup2 > -#else > -#define _bit_roundup2(x, y) (((x)+((y)-1))&(~((y)-1))) = /* if y is powers of two */ > -#endif > +/* round up x to the next multiple of y if y is a power of two */ > +#define _bit_roundup2(x, y) \ > + (((size_t)(x) + (y) - 1) & ~((size_t)(y) - 1)) >=20 > /* bitstr_t in bit string containing the bit. */ > -static inline int > -_bit_idx(int _bit) > +static inline size_t > +_bit_idx(size_t _bit) > { > return (_bit / _BITSTR_BITS); > } >=20 > /* bit number within bitstr_t at _bit_idx(_bit). */ > -static inline int > -_bit_offset(int _bit) > +static inline size_t > +_bit_offset(size_t _bit) > { > return (_bit % _BITSTR_BITS); > } >=20 > /* Mask for the bit within its long. */ > static inline bitstr_t > -_bit_mask(int _bit) > +_bit_mask(size_t _bit) > { > return (1UL << _bit_offset(_bit)); > } >=20 > static inline bitstr_t > -_bit_make_mask(int _start, int _stop) > +_bit_make_mask(size_t _start, size_t _stop) > { > return ((_BITSTR_MASK << _bit_offset(_start)) & > (_BITSTR_MASK >> (_BITSTR_BITS - _bit_offset(_stop) - 1))); > @@ -111,18 +109,18 @@ _bit_make_mask(int _start, int _stop) >=20 > /*----------------------------- Public Interface = -----------------------------*/ > /* Number of bytes allocated for a bit string of nbits bits */ > -#define bitstr_size(_nbits) (_bit_roundup2(_nbits, _BITSTR_BITS) / 8) > +#define bitstr_size(_nbits) (_bit_roundup2((_nbits), _BITSTR_BITS) / = 8) >=20 > /* Allocate a bit string initialized with no bits set. */ > #ifdef _KERNEL > static inline bitstr_t * > -bit_alloc(int _nbits, struct malloc_type *type, int flags) > +bit_alloc(size_t _nbits, struct malloc_type *type, int flags) > { > return ((bitstr_t *)malloc(bitstr_size(_nbits), type, flags | = M_ZERO)); > } > #else > static inline bitstr_t * > -bit_alloc(int _nbits) > +bit_alloc(size_t _nbits) > { > return ((bitstr_t *)calloc(bitstr_size(_nbits), 1)); > } > @@ -134,28 +132,28 @@ bit_alloc(int _nbits) >=20 > /* Is bit N of bit string set? */ > static inline int > -bit_test(const bitstr_t *_bitstr, int _bit) > +bit_test(const bitstr_t *_bitstr, size_t _bit) > { > return ((_bitstr[_bit_idx(_bit)] & _bit_mask(_bit)) !=3D 0); > } >=20 > /* Set bit N of bit string. */ > static inline void > -bit_set(bitstr_t *_bitstr, int _bit) > +bit_set(bitstr_t *_bitstr, size_t _bit) > { > _bitstr[_bit_idx(_bit)] |=3D _bit_mask(_bit); > } >=20 > /* clear bit N of bit string name */ > static inline void > -bit_clear(bitstr_t *_bitstr, int _bit) > +bit_clear(bitstr_t *_bitstr, size_t _bit) > { > _bitstr[_bit_idx(_bit)] &=3D ~_bit_mask(_bit); > } >=20 > /* Are bits in [start ... stop] in bit string all 0 or all 1? */ > static inline int > -bit_ntest(const bitstr_t *_bitstr, int _start, int _stop, int _match) > +bit_ntest(const bitstr_t *_bitstr, size_t _start, size_t _stop, int = _match) > { > const bitstr_t *_stopbitstr; > bitstr_t _mask; > @@ -183,7 +181,7 @@ bit_ntest(const bitstr_t *_bitstr, int _start, int = _stop, int _match) >=20 > /* Set bits start ... stop inclusive in bit string. */ > static inline void > -bit_nset(bitstr_t *_bitstr, int _start, int _stop) > +bit_nset(bitstr_t *_bitstr, size_t _start, size_t _stop) > { > bitstr_t *_stopbitstr; >=20 > @@ -206,7 +204,7 @@ bit_nset(bitstr_t *_bitstr, int _start, int _stop) >=20 > /* Clear bits start ... stop inclusive in bit string. */ > static inline void > -bit_nclear(bitstr_t *_bitstr, int _start, int _stop) > +bit_nclear(bitstr_t *_bitstr, size_t _start, size_t _stop) > { > bitstr_t *_stopbitstr; >=20 > @@ -228,20 +226,17 @@ bit_nclear(bitstr_t *_bitstr, int _start, int = _stop) > } >=20 > /* Find the first '_match'-bit in bit string at or after bit start. */ > -static inline void > -bit_ff_at(bitstr_t *_bitstr, int _start, int _nbits, int _match, > - int *_result) > +static inline ssize_t > +bit_ff_at_(bitstr_t *_bitstr, size_t _start, size_t _nbits, int = _match) > { > bitstr_t *_curbitstr; > bitstr_t *_stopbitstr; > bitstr_t _mask; > bitstr_t _test; > - int _value; > + ssize_t _value; >=20 > - if (_start >=3D _nbits || _nbits <=3D 0) { > - *_result =3D -1; > - return; > - } > + if (_start >=3D _nbits || _nbits <=3D 0) > + return (-1); >=20 > _curbitstr =3D _bitstr + _bit_idx(_start); > _stopbitstr =3D _bitstr + _bit_idx(_nbits - 1); > @@ -255,51 +250,40 @@ bit_ff_at(bitstr_t *_bitstr, int _start, int = _nbits, int _match, >=20 > _value =3D ((_curbitstr - _bitstr) * _BITSTR_BITS) + ffsl(_test) - 1; > if (_test =3D=3D 0 || > - (_bit_offset(_nbits) !=3D 0 && _value >=3D _nbits)) > + (_bit_offset(_nbits) !=3D 0 && (size_t)_value >=3D _nbits)) > _value =3D -1; > - *_result =3D _value; > + return (_value); > } > +#define bit_ff_at(_bitstr, _start, _nbits, _match, _resultp) \ > + *(_resultp) =3D bit_ff_at_((_bitstr), (_start), (_nbits), (_match)) >=20 > /* Find the first bit set in bit string at or after bit start. */ > -static inline void > -bit_ffs_at(bitstr_t *_bitstr, int _start, int _nbits, int *_result) > -{ > - bit_ff_at(_bitstr, _start, _nbits, 1, _result); > -} > +#define bit_ffs_at(_bitstr, _start, _nbits, _resultp) \ > + *(_resultp) =3D bit_ff_at_((_bitstr), (_start), (_nbits), 1) >=20 > /* Find the first bit clear in bit string at or after bit start. */ > -static inline void > -bit_ffc_at(bitstr_t *_bitstr, int _start, int _nbits, int *_result) > -{ > - bit_ff_at(_bitstr, _start, _nbits, 0, _result); > -} > +#define bit_ffc_at(_bitstr, _start, _nbits, _resultp) \ > + *(_resultp) =3D bit_ff_at_((_bitstr), (_start), (_nbits), 0) >=20 > /* Find the first bit set in bit string. */ > -static inline void > -bit_ffs(bitstr_t *_bitstr, int _nbits, int *_result) > -{ > - bit_ffs_at(_bitstr, /*start*/0, _nbits, _result); > -} > +#define bit_ffs(_bitstr, _nbits, _resultp) \ > + *(_resultp) =3D bit_ff_at_((_bitstr), 0, (_nbits), 1) >=20 > /* Find the first bit clear in bit string. */ > -static inline void > -bit_ffc(bitstr_t *_bitstr, int _nbits, int *_result) > -{ > - bit_ffc_at(_bitstr, /*start*/0, _nbits, _result); > -} > +#define bit_ffc(_bitstr, _nbits, _resultp) \ > + *(_resultp) =3D bit_ff_at_((_bitstr), 0, (_nbits), 0) >=20 > /* Find contiguous sequence of at least size '_match'-bits at or after = start */ > -static inline void > -bit_ff_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, > - int _match, int *_result) > +static inline ssize_t > +bit_ff_area_at_(bitstr_t *_bitstr, size_t _start, size_t _nbits, = size_t _size, > + int _match) > { > bitstr_t *_curbitstr, _mask, _test; > - int _value, _last, _shft, _maxshft; > + size_t _last, _shft, _maxshft; > + ssize_t _value; >=20 > - if (_start + _size > _nbits || _nbits <=3D 0) { > - *_result =3D -1; > - return; > - } > + if (_start + _size > _nbits || _nbits <=3D 0) > + return (-1); >=20 > _mask =3D _match ? _BITSTR_MASK : 0; > _maxshft =3D _bit_idx(_size - 1) =3D=3D 0 ? _size : (int)_BITSTR_BITS; > @@ -330,48 +314,37 @@ bit_ff_area_at(bitstr_t *_bitstr, int _start, = int _nbits, int _size, > break; > /* A solution here needs bits from the next word. */ > } > - *_result =3D _value; > + return (_value); > } > +#define bit_ff_area_at(_bitstr, _start, _nbits, _size, _match, = _resultp) \ > + *(_resultp) =3D bit_ff_area_at_(_bitstr, _start, _nbits, _size, = _match); >=20 > /* Find contiguous sequence of at least size set bits at or after = start */ > -static inline void > -bit_ffs_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, > - int *_result) > -{ > - bit_ff_area_at(_bitstr, _start, _nbits, _size, 1, _result); > -} > +#define bit_ffs_area_at(_bitstr, _start, _nbits, _size, _resultp) \ > + *(_resultp) =3D bit_ff_area_at_((_bitstr), (_start), (_nbits), = (_size), 1) >=20 > /* Find contiguous sequence of at least size cleared bits at or after = start */ > -static inline void > -bit_ffc_area_at(bitstr_t *_bitstr, int _start, int _nbits, int _size, > - int *_result) > -{ > - bit_ff_area_at(_bitstr, _start, _nbits, _size, 0, _result); > -} > +#define bit_ffc_area_at(_bitstr, _start, _nbits, _size, _resultp) \ > + *(_resultp) =3D bit_ff_area_at_((_bitstr), (_start), (_nbits), = (_size), 0) >=20 > /* Find contiguous sequence of at least size set bits in bit string */ > -static inline void > -bit_ffs_area(bitstr_t *_bitstr, int _nbits, int _size, int *_result) > -{ > - bit_ffs_area_at(_bitstr, /*start*/0, _nbits, _size, _result); > -} > +#define bit_ffs_area(_bitstr, _nbits, _size, _resultp) \ > + *(_resultp) =3D bit_ff_area_at_((_bitstr), 0, (_nbits), (_size), 1) >=20 > /* Find contiguous sequence of at least size cleared bits in bit = string */ > -static inline void > -bit_ffc_area(bitstr_t *_bitstr, int _nbits, int _size, int *_result) > -{ > - bit_ffc_area_at(_bitstr, /*start*/0, _nbits, _size, _result); > -} > +#define bit_ffc_area(_bitstr, _nbits, _size, _resultp) \ > + *(_resultp) =3D bit_ff_area_at_((_bitstr), 0, (_nbits), (_size), 0) >=20 > /* Count the number of bits set in a bitstr of size _nbits at or after = _start */ > -static inline void > -bit_count(bitstr_t *_bitstr, int _start, int _nbits, int *_result) > +static inline ssize_t > +bit_count_(bitstr_t *_bitstr, size_t _start, size_t _nbits) > { > bitstr_t *_curbitstr, mask; > - int _value =3D 0, curbitstr_len; > + size_t curbitstr_len; > + ssize_t _value =3D 0; >=20 > if (_start >=3D _nbits) > - goto out; > + return (0); >=20 > _curbitstr =3D _bitstr + _bit_idx(_start); > _nbits -=3D _BITSTR_BITS * _bit_idx(_start); > @@ -383,6 +356,8 @@ bit_count(bitstr_t *_bitstr, int _start, int = _nbits, int *_result) > mask =3D _bit_make_mask(_start, _bit_offset(curbitstr_len - 1)); > _value +=3D __bitcountl(*_curbitstr & mask); > _curbitstr++; > + if (_nbits < _BITSTR_BITS) > + return (_value); > _nbits -=3D _BITSTR_BITS; > } > while (_nbits >=3D (int)_BITSTR_BITS) { > @@ -395,23 +370,24 @@ bit_count(bitstr_t *_bitstr, int _start, int = _nbits, int *_result) > _value +=3D __bitcountl(*_curbitstr & mask); > } >=20 > -out: > - *_result =3D _value; > + return (_value); > } > +#define bit_count(_bitstr, _start, _nbits, _resultp) \ > + *(_resultp) =3D bit_count_((_bitstr), (_start), (_nbits)) >=20 > /* Traverse all set bits, assigning each location in turn to iter */ > #define bit_foreach_at(_bitstr, _start, _nbits, _iter) \ > - for (bit_ffs_at((_bitstr), (_start), (_nbits), &(_iter)); \ > + for ((_iter) =3D bit_ff_at_((_bitstr), (_start), (_nbits), 1); \ > (_iter) !=3D -1; \ > - bit_ffs_at((_bitstr), (_iter) + 1, (_nbits), &(_iter))) > + (_iter) =3D bit_ff_at_((_bitstr), (_iter) + 1, (_nbits), 1)) > #define bit_foreach(_bitstr, _nbits, _iter) \ > bit_foreach_at(_bitstr, /*start*/0, _nbits, _iter) >=20 > /* Traverse all unset bits, assigning each location in turn to iter */ > #define bit_foreach_unset_at(_bitstr, _start, _nbits, _iter) \ > - for (bit_ffc_at((_bitstr), (_start), (_nbits), &(_iter)); \ > + for ((_iter) =3D bit_ff_at_((_bitstr), (_start), (_nbits), 0); \ > (_iter) !=3D -1; \ > - bit_ffc_at((_bitstr), (_iter) + 1, (_nbits), &(_iter))) > + (_iter) =3D bit_ff_at_((_bitstr), (_iter) + 1, (_nbits), 0)) > #define bit_foreach_unset(_bitstr, _nbits, _iter) \ > bit_foreach_unset_at(_bitstr, /*start*/0, _nbits, _iter) >=20 > diff --git a/tests/sys/sys/bitstring_test.c = b/tests/sys/sys/bitstring_test.c > index 0c214b9e67a7..a48042a4a063 100644 > --- a/tests/sys/sys/bitstring_test.c > +++ b/tests/sys/sys/bitstring_test.c > @@ -1,5 +1,6 @@ > /*- > * Copyright (c) 2014 Spectra Logic Corporation > + * Copyright (c) 2023 Klara, Inc. > * All rights reserved. > * > * Redistribution and use in source and binary forms, with or without > @@ -31,7 +32,7 @@ > #include >=20 > #include > -#include > +#include >=20 > #include >=20 > @@ -51,6 +52,7 @@ bitstring_run_heap_test(testfunc_t *test, int nbits) > bitstr_t *bitstr =3D bit_alloc(nbits); >=20 > test(bitstr, nbits, "heap"); > + free(bitstr); > } >=20 > static void > @@ -862,6 +864,91 @@ BITSTRING_TC_DEFINE(bit_foreach_unset_at) > } > } >=20 > +/* > + * Perform various tests on large bit strings. We can't simply add = larger > + * sizes to bitstring_runner as most of the existing tests are = exhaustive > + * and would take forever to run for large values of nbits. > + * > + * On 32-bit platforms, we use nbits =3D SSIZE_MAX (2147483647) bits, = which > + * is the largest we can hope to support; on 64-bit platforms, we use > + * nbits =3D INT_MAX + 30 (2147483677), which is small enough to be > + * practicable yet large enough to reveal arithmetic overflow bugs. > + */ > +ATF_TC_WITHOUT_HEAD(bitstr_large); > +ATF_TC_BODY(bitstr_large, tc) > +{ > + size_t nbits =3D INT_MAX < SSIZE_MAX ? (size_t)INT_MAX + 30 : = SSIZE_MAX; > + size_t early =3D 5, late =3D nbits - 5; > + ssize_t fc, fs; > + bitstr_t *b; > + > + /* Check for overflow in size calculation */ > + ATF_REQUIRE(nbits >=3D (size_t)INT_MAX); > + ATF_REQUIRE(bitstr_size(nbits) >=3D nbits / 8); > + > + /* Allocate the bit string */ > + ATF_REQUIRE(b =3D bit_alloc(nbits)); > + > + /* Check that we allocated enough */ > + ATF_REQUIRE(malloc_usable_size(b) >=3D bitstr_size(nbits)); > + > + /* Check ffc, ffs on all-zeroes string */ > + bit_ffc(b, nbits, &fc); > + ATF_CHECK_EQ(0L, fc); > + bit_ffs(b, nbits, &fs); > + ATF_CHECK_EQ(-1L, fs); > + > + /* Set, test, and clear an early bit */ > + bit_set(b, early); > + bit_ffs(b, nbits, &fs); > + ATF_CHECK_EQ((ssize_t)early, fs); > + ATF_CHECK_EQ(0, bit_test(b, early - 1)); > + ATF_CHECK(bit_test(b, early) !=3D 0); > + ATF_CHECK_EQ(0, bit_test(b, early + 1)); > + bit_clear(b, early); > + ATF_CHECK_EQ(0, bit_test(b, early)); > + > + /* Set, test, and clear an early bit range */ > + bit_nset(b, early - 1, early + 1); > + bit_ffs(b, nbits, &fs); > + ATF_CHECK_EQ((ssize_t)early - 1, fs); > + ATF_CHECK_EQ(0, bit_test(b, early - 2)); > + ATF_CHECK(bit_test(b, early - 1)); > + ATF_CHECK(bit_test(b, early)); > + ATF_CHECK(bit_test(b, early + 1)); > + ATF_CHECK_EQ(0, bit_test(b, early + 2)); > + bit_nclear(b, early - 1, early + 1); > + ATF_CHECK_EQ(0, bit_test(b, early - 1)); > + ATF_CHECK_EQ(0, bit_test(b, early)); > + ATF_CHECK_EQ(0, bit_test(b, early + 1)); > + > + /* Set, test, and clear a late bit */ > + bit_set(b, late); > + bit_ffs(b, nbits, &fs); > + ATF_CHECK_EQ((ssize_t)late, fs); > + ATF_CHECK_EQ(0, bit_test(b, late - 1)); > + ATF_CHECK(bit_test(b, late) !=3D 0); > + ATF_CHECK_EQ(0, bit_test(b, late + 1)); > + bit_clear(b, late); > + ATF_CHECK_EQ(0, bit_test(b, late)); > + > + /* Set, test, and clear a late bit range */ > + bit_nset(b, late - 1, late + 1); > + bit_ffs(b, nbits, &fs); > + ATF_CHECK_EQ((ssize_t)late - 1, fs); > + ATF_CHECK_EQ(0, bit_test(b, late - 2)); > + ATF_CHECK(bit_test(b, late - 1)); > + ATF_CHECK(bit_test(b, late)); > + ATF_CHECK(bit_test(b, late + 1)); > + ATF_CHECK_EQ(0, bit_test(b, late + 2)); > + bit_nclear(b, late - 1, late + 1); > + ATF_CHECK_EQ(0, bit_test(b, late - 1)); > + ATF_CHECK_EQ(0, bit_test(b, late)); > + ATF_CHECK_EQ(0, bit_test(b, late + 1)); > + > + free(b); > +} > + > ATF_TP_ADD_TCS(tp) > { >=20 > @@ -884,6 +971,7 @@ ATF_TP_ADD_TCS(tp) > BITSTRING_TC_ADD(tp, bit_foreach_at); > BITSTRING_TC_ADD(tp, bit_foreach_unset); > BITSTRING_TC_ADD(tp, bit_foreach_unset_at); > + ATF_TP_ADD_TC(tp, bitstr_large); >=20 > return (atf_no_error()); > } From nobody Wed Nov 22 23:04:28 2023 X-Original-To: dev-commits-src-main@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 4SbGz10kxTz51PPZ; Wed, 22 Nov 2023 23:04:29 +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 4SbGz10QrJz4t4c; Wed, 22 Nov 2023 23:04:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700694269; 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=n9u9toNvUXIS0G55qL8WUtAeZEXH28Y8TfDkbh6U508=; b=QQkHJ5BgxZ3l4Tpb0KEwms2AybXuWmUQk2MZUcsRdRGtZyB7smt+rtITdQliK/F0qTpNX8 6tFo2KEcFr6s9cCQQLztnvqr4L7B/pN/mx0dlVVvwmz/cqOKv7zZyQdpXhrHuqtGS3cde0 xjqzupwPEnMHz+NXNvd4MhHtW6K6AXKOiUzLWZmd7q7JuwGk02bYnFYBNHQQXVW5DqhstQ Kb3UK3zARmtFJI42qproKiNHOPt8LN1ie/kdf7TPajV+yxmXbVN2FmwDv2YLuy/pR0GX8g Iww+nHyUmGw0zk8nE8pIcArAht9YfpDNvs9hMEZGvKwT0rNRq+nPIyo8IDF3ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700694269; 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=n9u9toNvUXIS0G55qL8WUtAeZEXH28Y8TfDkbh6U508=; b=DNmnXWNcC3p4gKGb496FCpIgSHGRfmF/d8S6wzq7jReT1B95itvp1tBTvsOl7llZtZv7F3 w2eoDZYHOqmosq8LBgweCUM0qzNBV57aozzL455tGH9cMKiJ7taRdvxZTWYsNPHaTL2wuO jOV+Daw84qlWonILnZDgUMwpToDhE3OQXjZ+6TSTaB29WApemTTJAsJyQ/qk0mpjdKG+ks Ii+MTIiZjHX9/nZAQ/t8/U1G9A8wYwPr4eVPyrBEMc5KA232A12A9UVa5kRcD6QwHervGN QpyMl6SfgrD5k00bRxWAE4bS7swpXyK5v1wwlitJ7YFvUSn1Rla6YJ8K+XRMvg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700694269; a=rsa-sha256; cv=none; b=LsxbAKGNtq8+LUFAMqohO1jQbII20A135XGQz9ni5ZSNvM2oqr2VEzd2tm5q+2ggraWiaK OaVi7Qdl/8uq/aIxYddWkcDYW7X9afWOcrbW/sitN5wQ7vSPn40s4JDuZ18ZEQp08+z2Nl h/teMfgui1wHdr5h7xrliPdvD4ds/y1E2pAAlrRD9h/jpWvskj9SJnjx9Ca7hrDbQhYFbE bNZZpwT1bnaJGeDujMrtCQzPIEdgeWUYkZXP8xkMNYHSYvu6dD1Zlyb3danfz1bbcpkYXl DCEtAMNgB0FSJN8nw7CFbcpGih3aVYTszeONc7/Ks6cZiSHQiruRo9w0q/N0OQ== 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 4SbGz06TFfzdWq; Wed, 22 Nov 2023 23:04:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AMN4Snb004334; Wed, 22 Nov 2023 23:04:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AMN4SvX004331; Wed, 22 Nov 2023 23:04:28 GMT (envelope-from git) Date: Wed, 22 Nov 2023 23:04:28 GMT Message-Id: <202311222304.3AMN4SvX004331@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Motin Subject: git: 519b24f02968 - main - CAM: Replace random sbuf_printf() with cheaper cat/putc. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 519b24f02968da4930d859288c2f5263c1ad17e1 Auto-Submitted: auto-generated The branch main has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=519b24f02968da4930d859288c2f5263c1ad17e1 commit 519b24f02968da4930d859288c2f5263c1ad17e1 Author: Alexander Motin AuthorDate: 2023-11-22 23:04:05 +0000 Commit: Alexander Motin CommitDate: 2023-11-22 23:04:05 +0000 CAM: Replace random sbuf_printf() with cheaper cat/putc. --- sys/cam/ata/ata_all.c | 24 +++++++-------- sys/cam/ata/ata_da.c | 4 +-- sys/cam/ata/ata_xpt.c | 12 ++++---- sys/cam/cam.c | 8 ++--- sys/cam/cam_periph.c | 16 +++++----- sys/cam/cam_xpt.c | 16 +++++----- sys/cam/ctl/ctl.c | 48 ++++++++++++++--------------- sys/cam/ctl/ctl_backend_block.c | 4 +-- sys/cam/ctl/ctl_frontend_iscsi.c | 4 +-- sys/cam/ctl/ctl_scsi_all.c | 2 +- sys/cam/ctl/ctl_util.c | 2 +- sys/cam/mmc/mmc_xpt.c | 6 ++-- sys/cam/nvme/nvme_all.c | 10 +++--- sys/cam/nvme/nvme_da.c | 2 +- sys/cam/nvme/nvme_xpt.c | 2 +- sys/cam/scsi/scsi_all.c | 66 ++++++++++++++++++++-------------------- sys/cam/scsi/scsi_da.c | 4 +-- sys/cam/scsi/scsi_enc_ses.c | 18 +++++------ sys/cam/scsi/scsi_xpt.c | 8 ++--- sys/cam/scsi/smp_all.c | 14 ++++----- 20 files changed, 135 insertions(+), 135 deletions(-) diff --git a/sys/cam/ata/ata_all.c b/sys/cam/ata/ata_all.c index aff7cafcdbad..f9a2b86f0c06 100644 --- a/sys/cam/ata/ata_all.c +++ b/sys/cam/ata/ata_all.c @@ -464,7 +464,7 @@ ata_print_ident_sbuf(struct ata_params *ident_data, struct sbuf *sb) int version; ata_print_ident_short_sbuf(ident_data, sb); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); proto = (ident_data->config == ATA_PROTO_CFA) ? "CFA" : (ident_data->config & ATA_PROTO_ATAPI) ? "ATAPI" : "ATA"; @@ -521,11 +521,11 @@ void ata_print_ident_short_sbuf(struct ata_params *ident_data, struct sbuf *sb) { - sbuf_printf(sb, "<"); + sbuf_putc(sb, '<'); cam_strvis_sbuf(sb, ident_data->model, sizeof(ident_data->model), 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, ident_data->revision, sizeof(ident_data->revision), 0); - sbuf_printf(sb, ">"); + sbuf_putc(sb, '>'); } void @@ -545,11 +545,11 @@ semb_print_ident_sbuf(struct sep_identify_data *ident_data, struct sbuf *sb) semb_print_ident_short_sbuf(ident_data, sb); - sbuf_printf(sb, " SEMB "); + sbuf_cat(sb, " SEMB "); cam_strvis_sbuf(sb, ident_data->interface_id, 6, 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, ident_data->interface_rev, 4, 0); - sbuf_printf(sb, " device\n"); + sbuf_cat(sb, " device\n"); } void @@ -568,15 +568,15 @@ void semb_print_ident_short_sbuf(struct sep_identify_data *ident_data, struct sbuf *sb) { - sbuf_printf(sb, "<"); + sbuf_putc(sb, '<'); cam_strvis_sbuf(sb, ident_data->vendor_id, 8, 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, ident_data->product_id, 16, 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, ident_data->product_rev, 4, 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, ident_data->firmware_rev, 4, 0); - sbuf_printf(sb, ">"); + sbuf_putc(sb, '>'); } uint32_t diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index caaded5be7ba..ba02f33082b0 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -1447,7 +1447,7 @@ adazonesupsysctl(SYSCTL_HANDLER_ARGS) } if (first == 1) - sbuf_printf(&sb, "None"); + sbuf_cat(&sb, "None"); error = sbuf_finish(&sb); sbuf_delete(&sb); @@ -1677,7 +1677,7 @@ adaflagssysctl(SYSCTL_HANDLER_ARGS) if (softc->flags != 0) sbuf_printf(&sbuf, "0x%b", (unsigned)softc->flags, ADA_FLAG_STRING); else - sbuf_printf(&sbuf, "0"); + sbuf_putc(&sbuf, '0'); error = sbuf_finish(&sbuf); sbuf_delete(&sbuf); diff --git a/sys/cam/ata/ata_xpt.c b/sys/cam/ata/ata_xpt.c index 1b759f55ee8a..7bdddc98511b 100644 --- a/sys/cam/ata/ata_xpt.c +++ b/sys/cam/ata/ata_xpt.c @@ -2141,33 +2141,33 @@ ata_announce_periph_sbuf(struct cam_periph *periph, struct sbuf *sb) struct ccb_trans_settings_pata *pata = &cts.xport_specific.ata; - sbuf_printf(sb, " ("); + sbuf_cat(sb, " ("); if (pata->valid & CTS_ATA_VALID_MODE) sbuf_printf(sb, "%s, ", ata_mode2string(pata->mode)); if ((pata->valid & CTS_ATA_VALID_ATAPI) && pata->atapi != 0) sbuf_printf(sb, "ATAPI %dbytes, ", pata->atapi); if (pata->valid & CTS_ATA_VALID_BYTECOUNT) sbuf_printf(sb, "PIO %dbytes", pata->bytecount); - sbuf_printf(sb, ")"); + sbuf_putc(sb, ')'); } if (cts.transport == XPORT_SATA) { struct ccb_trans_settings_sata *sata = &cts.xport_specific.sata; - sbuf_printf(sb, " ("); + sbuf_cat(sb, " ("); if (sata->valid & CTS_SATA_VALID_REVISION) sbuf_printf(sb, "SATA %d.x, ", sata->revision); else - sbuf_printf(sb, "SATA, "); + sbuf_cat(sb, "SATA, "); if (sata->valid & CTS_SATA_VALID_MODE) sbuf_printf(sb, "%s, ", ata_mode2string(sata->mode)); if ((sata->valid & CTS_ATA_VALID_ATAPI) && sata->atapi != 0) sbuf_printf(sb, "ATAPI %dbytes, ", sata->atapi); if (sata->valid & CTS_SATA_VALID_BYTECOUNT) sbuf_printf(sb, "PIO %dbytes", sata->bytecount); - sbuf_printf(sb, ")"); + sbuf_putc(sb, ')'); } - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } static void diff --git a/sys/cam/cam.c b/sys/cam/cam.c index 01a5b3c3b36c..d9cff3468da0 100644 --- a/sys/cam/cam.c +++ b/sys/cam/cam.c @@ -418,7 +418,7 @@ cam_error_string(struct cam_device *device, union ccb *ccb, char *str, ccb->ccb_h.func_code); break; } - sbuf_printf(&sb, "\n"); + sbuf_putc(&sb, '\n'); } if (flags & CAM_ESF_CAM_STATUS) { @@ -449,13 +449,13 @@ cam_error_string(struct cam_device *device, union ccb *ccb, char *str, if (proto_flags & CAM_EAF_PRINT_STATUS) { sbuf_cat(&sb, path_str); ata_status_sbuf(&ccb->ataio, &sb); - sbuf_printf(&sb, "\n"); + sbuf_putc(&sb, '\n'); } if (proto_flags & CAM_EAF_PRINT_RESULT) { sbuf_cat(&sb, path_str); - sbuf_printf(&sb, "RES: "); + sbuf_cat(&sb, "RES: "); ata_res_sbuf(&ccb->ataio.res, &sb); - sbuf_printf(&sb, "\n"); + sbuf_putc(&sb, '\n'); } break; diff --git a/sys/cam/cam_periph.c b/sys/cam/cam_periph.c index 165929347a68..920e5f0471c7 100644 --- a/sys/cam/cam_periph.c +++ b/sys/cam/cam_periph.c @@ -2139,7 +2139,7 @@ cam_periph_devctl_notify(union ccb *ccb) sbuf_printf(&sb, "device=%s%d ", periph->periph_name, periph->unit_number); - sbuf_printf(&sb, "serial=\""); + sbuf_cat(&sb, "serial=\""); if ((cgd = (struct ccb_getdev *)xpt_alloc_ccb_nowait()) != NULL) { xpt_setup_ccb(&cgd->ccb_h, ccb->ccb_h.path, CAM_PRIORITY_NORMAL); @@ -2150,7 +2150,7 @@ cam_periph_devctl_notify(union ccb *ccb) sbuf_bcat(&sb, cgd->serial_num, cgd->serial_num_len); xpt_free_ccb((union ccb *)cgd); } - sbuf_printf(&sb, "\" "); + sbuf_cat(&sb, "\" "); sbuf_printf(&sb, "cam_status=\"0x%x\" ", ccb->ccb_h.status); switch (ccb->ccb_h.status & CAM_STATUS_MASK) { @@ -2166,9 +2166,9 @@ cam_periph_devctl_notify(union ccb *ccb) type = "error"; break; case CAM_ATA_STATUS_ERROR: - sbuf_printf(&sb, "RES=\""); + sbuf_cat(&sb, "RES=\""); ata_res_sbuf(&ccb->ataio.res, &sb); - sbuf_printf(&sb, "\" "); + sbuf_cat(&sb, "\" "); type = "error"; break; case CAM_NVME_STATUS_ERROR: @@ -2189,14 +2189,14 @@ cam_periph_devctl_notify(union ccb *ccb) switch (ccb->ccb_h.func_code) { case XPT_SCSI_IO: - sbuf_printf(&sb, "CDB=\""); + sbuf_cat(&sb, "CDB=\""); scsi_cdb_sbuf(scsiio_cdb_ptr(&ccb->csio), &sb); - sbuf_printf(&sb, "\" "); + sbuf_cat(&sb, "\" "); break; case XPT_ATA_IO: - sbuf_printf(&sb, "ACB=\""); + sbuf_cat(&sb, "ACB=\""); ata_cmd_sbuf(&ccb->ataio.cmd, &sb); - sbuf_printf(&sb, "\" "); + sbuf_cat(&sb, "\" "); break; case XPT_NVME_IO: case XPT_NVME_ADMIN: diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index 22d6c89f5b46..de3630c35374 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -1150,7 +1150,7 @@ xpt_denounce_periph_sbuf(struct cam_periph *periph, struct sbuf *sb) path->device->protocol); if (path->device->serial_num_len > 0) sbuf_printf(sb, " s/n %.60s", path->device->serial_num); - sbuf_printf(sb, " detached\n"); + sbuf_cat(sb, " detached\n"); } int @@ -3713,7 +3713,7 @@ static void xpt_device_sbuf(struct cam_ed *device, struct sbuf *sb) { if (device == NULL) - sbuf_printf(sb, "(nopath): "); + sbuf_cat(sb, "(nopath): "); else { sbuf_printf(sb, "(noperiph:%s%d:%d:%d:%jx): ", device->sim->sim_name, @@ -3759,31 +3759,31 @@ xpt_path_sbuf(struct cam_path *path, struct sbuf *sb) { if (path == NULL) - sbuf_printf(sb, "(nopath): "); + sbuf_cat(sb, "(nopath): "); else { if (path->periph != NULL) sbuf_printf(sb, "(%s%d:", path->periph->periph_name, path->periph->unit_number); else - sbuf_printf(sb, "(noperiph:"); + sbuf_cat(sb, "(noperiph:"); if (path->bus != NULL) sbuf_printf(sb, "%s%d:%d:", path->bus->sim->sim_name, path->bus->sim->unit_number, path->bus->sim->bus_id); else - sbuf_printf(sb, "nobus:"); + sbuf_cat(sb, "nobus:"); if (path->target != NULL) sbuf_printf(sb, "%d:", path->target->target_id); else - sbuf_printf(sb, "X:"); + sbuf_cat(sb, "X:"); if (path->device != NULL) sbuf_printf(sb, "%jx): ", (uintmax_t)path->device->lun_id); else - sbuf_printf(sb, "X): "); + sbuf_cat(sb, "X): "); } } @@ -5585,7 +5585,7 @@ xpt_cam_debug(const char *fmt, ...) va_list ap; sbuf_set_drain(sb, sbuf_printf_drain, NULL); - sbuf_printf(sb, "cam_debug: "); + sbuf_cat(sb, "cam_debug: "); va_start(ap, fmt); sbuf_vprintf(sb, fmt, ap); va_end(ap); diff --git a/sys/cam/ctl/ctl.c b/sys/cam/ctl/ctl.c index 7ad7912ef323..3d6eb0382cc9 100644 --- a/sys/cam/ctl/ctl.c +++ b/sys/cam/ctl/ctl.c @@ -2534,13 +2534,13 @@ ctl_sbuf_printf_esc(struct sbuf *sb, char *str, int size) for (; *str && str < end; str++) { switch (*str) { case '&': - retval = sbuf_printf(sb, "&"); + retval = sbuf_cat(sb, "&"); break; case '>': - retval = sbuf_printf(sb, ">"); + retval = sbuf_cat(sb, ">"); break; case '<': - retval = sbuf_printf(sb, "<"); + retval = sbuf_cat(sb, "<"); break; default: retval = sbuf_putc(sb, *str); @@ -2565,13 +2565,13 @@ ctl_id_sbuf(struct ctl_devid *id, struct sbuf *sb) desc = (struct scsi_vpd_id_descriptor *)id->data; switch (desc->id_type & SVPD_ID_TYPE_MASK) { case SVPD_ID_TYPE_T10: - sbuf_printf(sb, "t10."); + sbuf_cat(sb, "t10."); break; case SVPD_ID_TYPE_EUI64: - sbuf_printf(sb, "eui."); + sbuf_cat(sb, "eui."); break; case SVPD_ID_TYPE_NAA: - sbuf_printf(sb, "naa."); + sbuf_cat(sb, "naa."); break; case SVPD_ID_TYPE_SCSI_NAME: break; @@ -2586,7 +2586,7 @@ ctl_id_sbuf(struct ctl_devid *id, struct sbuf *sb) (char *)desc->identifier); break; case SVPD_ID_CODESET_UTF8: - sbuf_printf(sb, "%s", (char *)desc->identifier); + sbuf_cat(sb, (char *)desc->identifier); break; } } @@ -3088,7 +3088,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, break; } - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "\n"); mtx_lock(&softc->ctl_lock); STAILQ_FOREACH(lun, &softc->lun_list, links) { @@ -3118,7 +3118,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, break; if (lun->backend == NULL) { - retval = sbuf_printf(sb, "\n"); + retval = sbuf_cat(sb, "\n"); if (retval != 0) break; continue; @@ -3137,7 +3137,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, if (retval != 0) break; - retval = sbuf_printf(sb, "\t"); + retval = sbuf_cat(sb, "\t"); if (retval != 0) break; @@ -3149,12 +3149,12 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, if (retval != 0) break; - retval = sbuf_printf(sb, "\n"); + retval = sbuf_cat(sb, "\n"); if (retval != 0) break; - retval = sbuf_printf(sb, "\t"); + retval = sbuf_cat(sb, "\t"); if (retval != 0) break; @@ -3166,7 +3166,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, if (retval != 0) break; - retval = sbuf_printf(sb, "\n"); + retval = sbuf_cat(sb, "\n"); if (retval != 0) break; @@ -3186,13 +3186,13 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, value = dnvlist_get_string( lun->be_lun->options, name, NULL); if (value != NULL) - sbuf_printf(sb, "%s", value); + sbuf_cat(sb, value); } sbuf_printf(sb, "\n", name); } - retval = sbuf_printf(sb, "\n"); + retval = sbuf_cat(sb, "\n"); if (retval != 0) break; @@ -3203,7 +3203,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, mtx_unlock(&softc->ctl_lock); if ((retval != 0) - || ((retval = sbuf_printf(sb, "\n")) != 0)) { + || ((retval = sbuf_cat(sb, "\n")) != 0)) { retval = 0; sbuf_delete(sb); list->status = CTL_LUN_LIST_NEED_MORE_SPACE; @@ -3353,7 +3353,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, break; } - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "\n"); mtx_lock(&softc->ctl_lock); STAILQ_FOREACH(port, &softc->port_list, links) { @@ -3398,15 +3398,15 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, break; if (port->target_devid != NULL) { - sbuf_printf(sb, "\t"); + sbuf_cat(sb, "\t"); ctl_id_sbuf(port->target_devid, sb); - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "\n"); } if (port->port_devid != NULL) { - sbuf_printf(sb, "\t"); + sbuf_cat(sb, "\t"); ctl_id_sbuf(port->port_devid, sb); - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "\n"); } if (port->port_info != NULL) { @@ -3431,7 +3431,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, } if (port->lun_map != NULL) { - sbuf_printf(sb, "\ton\n"); + sbuf_cat(sb, "\ton\n"); for (j = 0; j < port->lun_map_size; j++) { plun = ctl_lun_map_from_port(port, j); if (plun == UINT32_MAX) @@ -3462,14 +3462,14 @@ ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, if (retval != 0) break; - retval = sbuf_printf(sb, "\n"); + retval = sbuf_cat(sb, "\n"); if (retval != 0) break; } mtx_unlock(&softc->ctl_lock); if ((retval != 0) - || ((retval = sbuf_printf(sb, "\n")) != 0)) { + || ((retval = sbuf_cat(sb, "\n")) != 0)) { retval = 0; sbuf_delete(sb); list->status = CTL_LUN_LIST_NEED_MORE_SPACE; diff --git a/sys/cam/ctl/ctl_backend_block.c b/sys/cam/ctl/ctl_backend_block.c index 4b8ea04cca27..7381202e2c54 100644 --- a/sys/cam/ctl/ctl_backend_block.c +++ b/sys/cam/ctl/ctl_backend_block.c @@ -2826,13 +2826,13 @@ ctl_be_block_lun_info(struct ctl_be_lun *cbe_lun, struct sbuf *sb) struct ctl_be_block_lun *lun = (struct ctl_be_block_lun *)cbe_lun; int retval; - retval = sbuf_printf(sb, "\t"); + retval = sbuf_cat(sb, "\t"); if (retval != 0) goto bailout; retval = sbuf_printf(sb, "%d", lun->num_threads); if (retval != 0) goto bailout; - retval = sbuf_printf(sb, "\n"); + retval = sbuf_cat(sb, "\n"); bailout: return (retval); diff --git a/sys/cam/ctl/ctl_frontend_iscsi.c b/sys/cam/ctl/ctl_frontend_iscsi.c index 019026d78d67..fe3b1a943206 100644 --- a/sys/cam/ctl/ctl_frontend_iscsi.c +++ b/sys/cam/ctl/ctl_frontend_iscsi.c @@ -1721,7 +1721,7 @@ cfiscsi_ioctl_list(struct ctl_iscsi *ci) return; } - sbuf_printf(sb, "\n"); + sbuf_cat(sb, "\n"); mtx_lock(&softc->lock); TAILQ_FOREACH(cs, &softc->sessions, cs_next) { if (cs->cs_target == NULL) @@ -1760,7 +1760,7 @@ cfiscsi_ioctl_list(struct ctl_iscsi *ci) break; } mtx_unlock(&softc->lock); - error = sbuf_printf(sb, "\n"); + error = sbuf_cat(sb, "\n"); if (error != 0) { sbuf_delete(sb); ci->status = CTL_ISCSI_LIST_NEED_MORE_SPACE; diff --git a/sys/cam/ctl/ctl_scsi_all.c b/sys/cam/ctl/ctl_scsi_all.c index d712377e3389..5c55907cb27c 100644 --- a/sys/cam/ctl/ctl_scsi_all.c +++ b/sys/cam/ctl/ctl_scsi_all.c @@ -137,7 +137,7 @@ ctl_scsi_sense_sbuf(struct ctl_scsiio *ctsio, ctl_scsi_command_string(ctsio, inq_data, sb); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } scsi_sense_only_sbuf(&ctsio->sense_data, ctsio->sense_len, sb, diff --git a/sys/cam/ctl/ctl_util.c b/sys/cam/ctl/ctl_util.c index 3b0e40311213..76f4aff6bb3d 100644 --- a/sys/cam/ctl/ctl_util.c +++ b/sys/cam/ctl/ctl_util.c @@ -755,7 +755,7 @@ ctl_io_sbuf(union ctl_io *io, struct sbuf *sb) io->taskio.tag_num, io->taskio.tag_type); break; default: - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); break; } break; diff --git a/sys/cam/mmc/mmc_xpt.c b/sys/cam/mmc/mmc_xpt.c index c8b57c2d8d86..0947e0addf59 100644 --- a/sys/cam/mmc/mmc_xpt.c +++ b/sys/cam/mmc/mmc_xpt.c @@ -428,9 +428,9 @@ mmc_print_ident(struct mmc_params *ident_data, struct sbuf *sb) bool space = false; sbuf_printf(sb, "Relative addr: %08x\n", ident_data->card_rca); - sbuf_printf(sb, "Card features: <"); + sbuf_cat(sb, "Card features: <"); if (ident_data->card_features & CARD_FEATURE_MMC) { - sbuf_printf(sb, "MMC"); + sbuf_cat(sb, "MMC"); space = true; } if (ident_data->card_features & CARD_FEATURE_MEMORY) { @@ -452,7 +452,7 @@ mmc_print_ident(struct mmc_params *ident_data, struct sbuf *sb) if (ident_data->card_features & CARD_FEATURE_18V) { sbuf_printf(sb, "%s1.8-Signaling", space ? " " : ""); } - sbuf_printf(sb, ">\n"); + sbuf_cat(sb, ">\n"); if (ident_data->card_features & CARD_FEATURE_MEMORY) sbuf_printf(sb, "Card memory OCR: %08x\n", diff --git a/sys/cam/nvme/nvme_all.c b/sys/cam/nvme/nvme_all.c index 7f0878c0f288..a3c3d676b349 100644 --- a/sys/cam/nvme/nvme_all.c +++ b/sys/cam/nvme/nvme_all.c @@ -87,23 +87,23 @@ nvme_print_ident(const struct nvme_controller_data *cdata, const struct nvme_namespace_data *data, struct sbuf *sb) { nvme_print_ident_short(cdata, data, sb); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } void nvme_print_ident_short(const struct nvme_controller_data *cdata, const struct nvme_namespace_data *data, struct sbuf *sb) { - sbuf_printf(sb, "<"); + sbuf_putc(sb, '<'); cam_strvis_sbuf(sb, cdata->mn, sizeof(cdata->mn), CAM_STRVIS_FLAG_NONASCII_SPC); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, cdata->fr, sizeof(cdata->fr), CAM_STRVIS_FLAG_NONASCII_SPC); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, cdata->sn, sizeof(cdata->sn), CAM_STRVIS_FLAG_NONASCII_SPC); - sbuf_printf(sb, ">"); + sbuf_putc(sb, '>'); } /* XXX need to do nvme admin opcodes too, but those aren't used yet by nda */ diff --git a/sys/cam/nvme/nvme_da.c b/sys/cam/nvme/nvme_da.c index 89984e3aaf36..73c385b2fe1c 100644 --- a/sys/cam/nvme/nvme_da.c +++ b/sys/cam/nvme/nvme_da.c @@ -810,7 +810,7 @@ ndaflagssysctl(SYSCTL_HANDLER_ARGS) if (softc->flags != 0) sbuf_printf(&sbuf, "0x%b", (unsigned)softc->flags, NDA_FLAG_STRING); else - sbuf_printf(&sbuf, "0"); + sbuf_putc(&sbuf, '0'); error = sbuf_finish(&sbuf); sbuf_delete(&sbuf); diff --git a/sys/cam/nvme/nvme_xpt.c b/sys/cam/nvme/nvme_xpt.c index 8b9fbcd21291..86127aca7b0f 100644 --- a/sys/cam/nvme/nvme_xpt.c +++ b/sys/cam/nvme/nvme_xpt.c @@ -814,7 +814,7 @@ nvme_announce_periph_sbuf(struct cam_periph *periph, struct sbuf *sb) nvmex->lanes, nvmex->max_lanes, nvmex->speed, nvmex->max_speed); } - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } static void diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index 7cc323595566..07295f313cca 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -4570,9 +4570,9 @@ scsi_stream_sbuf(struct sbuf *sb, uint8_t stream_bits) /* * XXX KDM this needs more descriptive decoding. */ - sbuf_printf(sb, "Stream Command Sense Data: "); + sbuf_cat(sb, "Stream Command Sense Data: "); if (stream_bits & SSD_DESC_STREAM_FM) { - sbuf_printf(sb, "Filemark"); + sbuf_cat(sb, "Filemark"); need_comma = 1; } @@ -4589,9 +4589,9 @@ void scsi_block_sbuf(struct sbuf *sb, uint8_t block_bits) { - sbuf_printf(sb, "Block Command Sense Data: "); + sbuf_cat(sb, "Block Command Sense Data: "); if (block_bits & SSD_DESC_BLOCK_ILI) - sbuf_printf(sb, "ILI"); + sbuf_cat(sb, "ILI"); } void @@ -4925,7 +4925,7 @@ scsi_print_desc_func(struct scsi_sense_data_desc *sense, u_int sense_len, (struct scsi_sense_data *)sense, sense_len, print_info->cdb, print_info->cdb_len, print_info->inq_data, header); - sbuf_printf(print_info->sb, "\n"); + sbuf_putc(print_info->sb, '\n'); break; } } @@ -4950,11 +4950,11 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, scsi_extract_sense_len(sense, sense_len, &error_code, &sense_key, &asc, &ascq, /*show_errors*/ 1); - sbuf_printf(sb, "SCSI sense: "); + sbuf_cat(sb, "SCSI sense: "); switch (error_code) { case SSD_DEFERRED_ERROR: case SSD_DESC_DEFERRED_ERROR: - sbuf_printf(sb, "Deferred error: "); + sbuf_cat(sb, "Deferred error: "); /* FALLTHROUGH */ case SSD_CURRENT_ERROR: @@ -4991,12 +4991,12 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, &bits) == 0 && bits != 0) { sbuf_cat(sb, path_str); scsi_block_sbuf(sb, bits); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } else if (scsi_get_stream_info(sense, sense_len, inq_data, &bits) == 0 && bits != 0) { sbuf_cat(sb, path_str); scsi_stream_sbuf(sb, bits); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } /* @@ -5006,7 +5006,7 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, &val, NULL) == 0) { sbuf_cat(sb, path_str); scsi_info_sbuf(sb, cdb, cdb_len, inq_data, val); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } /* @@ -5016,7 +5016,7 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, &val, NULL) == 0) { sbuf_cat(sb, path_str); scsi_fru_sbuf(sb, val); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } /* @@ -5026,7 +5026,7 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, &val, NULL) == 0) { sbuf_cat(sb, path_str); scsi_command_sbuf(sb, cdb, cdb_len, inq_data, val); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } /* @@ -5035,7 +5035,7 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, if (scsi_get_sks(sense, sense_len, sks) == 0) { sbuf_cat(sb, path_str); scsi_sks_sbuf(sb, sense_key, sks); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } /* @@ -5067,7 +5067,7 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, * show_errors flag is set and they aren't present in the * sense data. This means that sense_len is 0. */ - sbuf_printf(sb, "No sense data present\n"); + sbuf_cat(sb, "No sense data present\n"); break; default: { sbuf_printf(sb, "Error code 0x%x", error_code); @@ -5085,7 +5085,7 @@ scsi_sense_only_sbuf(struct scsi_sense_data *sense, u_int sense_len, info); } } - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); break; } } @@ -5167,7 +5167,7 @@ scsi_sense_sbuf(struct cam_device *device, struct ccb_scsiio *csio, #else /* !_KERNEL */ scsi_command_string(device, csio, sb); #endif /* _KERNEL/!_KERNEL */ - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } /* @@ -5541,7 +5541,7 @@ scsi_print_inquiry_sbuf(struct sbuf *sb, struct scsi_inquiry_data *inq_data) sbuf_printf(sb, "%s %s ", SID_IS_REMOVABLE(inq_data) ? "Removable" : "Fixed", dtype); if (SID_ANSI_REV(inq_data) == SCSI_REV_0) - sbuf_printf(sb, "SCSI "); + sbuf_cat(sb, "SCSI "); else if (SID_ANSI_REV(inq_data) <= SCSI_REV_SPC) { sbuf_printf(sb, "SCSI-%d ", SID_ANSI_REV(inq_data)); } else { @@ -5566,13 +5566,13 @@ void scsi_print_inquiry_short_sbuf(struct sbuf *sb, struct scsi_inquiry_data *inq_data) { - sbuf_printf(sb, "<"); + sbuf_putc(sb, '<'); cam_strvis_sbuf(sb, inq_data->vendor, sizeof(inq_data->vendor), 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, inq_data->product, sizeof(inq_data->product), 0); - sbuf_printf(sb, " "); + sbuf_putc(sb, ' '); cam_strvis_sbuf(sb, inq_data->revision, sizeof(inq_data->revision), 0); - sbuf_printf(sb, "> "); + sbuf_cat(sb, "> "); } void @@ -5872,7 +5872,7 @@ scsi_transportid_sbuf(struct sbuf *sb, struct scsi_transportid_header *hdr, rdma = (struct scsi_transportid_rdma *)hdr; - sbuf_printf(sb, "RDMA address: 0x"); + sbuf_cat(sb, "RDMA address: 0x"); for (i = 0; i < sizeof(rdma->initiator_port_id); i++) sbuf_printf(sb, "%02x", rdma->initiator_port_id[i]); break; @@ -5882,7 +5882,7 @@ scsi_transportid_sbuf(struct sbuf *sb, struct scsi_transportid_header *hdr, uint8_t *iscsi_name = NULL; int nul_found = 0; - sbuf_printf(sb, "iSCSI address: "); + sbuf_cat(sb, "iSCSI address: "); if ((hdr->format_protocol & SCSI_TRN_FORMAT_MASK) == SCSI_TRN_ISCSI_FORMAT_DEVICE) { struct scsi_transportid_iscsi_device *dev; @@ -5917,7 +5917,7 @@ scsi_transportid_sbuf(struct sbuf *sb, struct scsi_transportid_header *hdr, break; } if (add_len == 0) { - sbuf_printf(sb, "not enough data"); + sbuf_cat(sb, "not enough data"); break; } /* @@ -7083,7 +7083,7 @@ scsi_attrib_volcoh_sbuf(struct sbuf *sb, struct scsi_mam_attribute_header *hdr, vcr_len = *cur_ptr; cur_ptr++; - sbuf_printf(sb, "\n\tVolume Change Reference Value:"); + sbuf_cat(sb, "\n\tVolume Change Reference Value:"); switch (vcr_len) { case 0: @@ -7110,7 +7110,7 @@ scsi_attrib_volcoh_sbuf(struct sbuf *sb, struct scsi_mam_attribute_header *hdr, tmp_val = scsi_8btou64(cur_ptr); break; default: - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); sbuf_hexdump(sb, cur_ptr, vcr_len, NULL, 0); break; } @@ -7133,11 +7133,11 @@ scsi_attrib_volcoh_sbuf(struct sbuf *sb, struct scsi_mam_attribute_header *hdr, cur_ptr += sizeof(tmp_val); as_len = scsi_2btoul(cur_ptr); cur_ptr += sizeof(uint16_t); - sbuf_printf(sb, "\tApplication Client Specific Information: "); + sbuf_cat(sb, "\tApplication Client Specific Information: "); if (((as_len == SCSI_LTFS_VER0_LEN) || (as_len == SCSI_LTFS_VER1_LEN)) && (strncmp(cur_ptr, SCSI_LTFS_STR_NAME, SCSI_LTFS_STR_LEN) == 0)) { - sbuf_printf(sb, "LTFS\n"); + sbuf_cat(sb, "LTFS\n"); cur_ptr += SCSI_LTFS_STR_LEN + 1; if (cur_ptr[SCSI_LTFS_UUID_LEN] != '\0') cur_ptr[SCSI_LTFS_UUID_LEN] = '\0'; @@ -7146,7 +7146,7 @@ scsi_attrib_volcoh_sbuf(struct sbuf *sb, struct scsi_mam_attribute_header *hdr, /* XXX KDM check the length */ sbuf_printf(sb, "\tLTFS Version: %d\n", *cur_ptr); } else { - sbuf_printf(sb, "Unknown\n"); + sbuf_cat(sb, "Unknown\n"); sbuf_hexdump(sb, cur_ptr, as_len, NULL, 0); } @@ -7232,7 +7232,7 @@ scsi_attrib_hexdump_sbuf(struct sbuf *sb, struct scsi_mam_attribute_header *hdr, num_ptr = hdr->attribute; if (print_len > 0) { - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); sbuf_hexdump(sb, num_ptr, print_len, NULL, 0); } @@ -7525,7 +7525,7 @@ scsi_attrib_prefix_sbuf(struct sbuf *sb, uint32_t output_flags, if ((output_flags & SCSI_ATTR_OUTPUT_FIELD_DESC) && (desc != NULL)) { - sbuf_printf(sb, "%s", desc); + sbuf_cat(sb, desc); need_space = 1; } @@ -7542,7 +7542,7 @@ scsi_attrib_prefix_sbuf(struct sbuf *sb, uint32_t output_flags, sbuf_printf(sb, "%s(%s)", (need_space) ? " " : "", (hdr->byte2 & SMA_READ_ONLY) ? "RO" : "RW"); } - sbuf_printf(sb, ": "); + sbuf_cat(sb, ": "); } int @@ -7620,7 +7620,7 @@ bailout: sbuf_printf(sb, " %s", entry->suffix); sbuf_trim(sb); - sbuf_printf(sb, "\n"); + sbuf_putc(sb, '\n'); } return (retval); diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c index 175774d83015..35bfd096f3e1 100644 --- a/sys/cam/scsi/scsi_da.c +++ b/sys/cam/scsi/scsi_da.c @@ -2664,7 +2664,7 @@ daflagssysctl(SYSCTL_HANDLER_ARGS) if (softc->flags != 0) sbuf_printf(&sbuf, "0x%b", (unsigned)softc->flags, DA_FLAG_STRING); else - sbuf_printf(&sbuf, "0"); + sbuf_putc(&sbuf, '0'); error = sbuf_finish(&sbuf); sbuf_delete(&sbuf); @@ -2756,7 +2756,7 @@ dazonesupsysctl(SYSCTL_HANDLER_ARGS) } if (first == 1) - sbuf_printf(&sb, "None"); + sbuf_cat(&sb, "None"); error = sbuf_finish(&sb); sbuf_delete(&sb); diff --git a/sys/cam/scsi/scsi_enc_ses.c b/sys/cam/scsi/scsi_enc_ses.c index e122e0d0e0d9..0a3136aa8d10 100644 --- a/sys/cam/scsi/scsi_enc_ses.c +++ b/sys/cam/scsi/scsi_enc_ses.c @@ -2268,12 +2268,12 @@ ses_get_elm_addlstatus_fc(enc_softc_t *enc, enc_cache_t *enc_cache, if (((p) & SES_SASOBJ_DEV_PHY_PROTOMASK) != 0) { \ sbuf_printf(sbp, " %s (", type); \ if ((p) & SES_SASOBJ_DEV_PHY_SMP) \ - sbuf_printf(sbp, " SMP"); \ + sbuf_cat(sbp, " SMP"); \ if ((p) & SES_SASOBJ_DEV_PHY_STP) \ - sbuf_printf(sbp, " STP"); \ + sbuf_cat(sbp, " STP"); \ if ((p) & SES_SASOBJ_DEV_PHY_SSP) \ - sbuf_printf(sbp, " SSP"); \ - sbuf_printf(sbp, " )"); \ + sbuf_cat(sbp, " SSP"); \ + sbuf_cat(sbp, " )"); \ } \ } while(0) @@ -2302,7 +2302,7 @@ ses_print_addl_data_sas_type0(char *sesname, struct sbuf *sbp, if (ses_elm_addlstatus_eip(addl->hdr)) sbuf_printf(sbp, " at slot %d", addl->proto_hdr.sas->type0_eip.dev_slot_num); - sbuf_printf(sbp, "\n"); + sbuf_putc(sbp, '\n'); if (addl->proto_data.sasdev_phys == NULL) return; for (i = 0;i < addl->proto_hdr.sas->base_hdr.num_phys;i++) { @@ -2310,13 +2310,13 @@ ses_print_addl_data_sas_type0(char *sesname, struct sbuf *sbp, sbuf_printf(sbp, "%s: phy %d:", sesname, i); if (ses_elm_sas_dev_phy_sata_dev(phy)) /* Spec says all other fields are specific values */ - sbuf_printf(sbp, " SATA device\n"); + sbuf_cat(sbp, " SATA device\n"); else { sbuf_printf(sbp, " SAS device type %d phy %d", ses_elm_sas_dev_phy_dev_type(phy), phy->phy_id); SES_PRINT_PORTS(phy->initiator_ports, "Initiator"); SES_PRINT_PORTS(phy->target_ports, "Target"); - sbuf_printf(sbp, "\n"); + sbuf_putc(sbp, '\n'); } sbuf_printf(sbp, "%s: phy %d: parent %jx addr %jx\n", sesname, i, @@ -2346,7 +2346,7 @@ ses_print_addl_data_sas_type1(char *sesname, struct sbuf *sbp, elmpriv = obj->elm_private; addl = &(elmpriv->addl); - sbuf_printf(sbp, ", SAS "); + sbuf_cat(sbp, ", SAS "); if (obj->elm_type == ELMTYP_SAS_EXP) { num_phys = addl->proto_hdr.sas->base_hdr.num_phys; sbuf_printf(sbp, "Expander: %d phys", num_phys); @@ -2419,7 +2419,7 @@ ses_print_addl_data(enc_softc_t *enc, enc_element_t *obj) sbuf_new(&out, NULL, 512, SBUF_AUTOEXTEND); ses_paths_iter(enc, obj, ses_elmdevname_callback, &name); if (sbuf_len(&name) == 0) *** 101 LINES SKIPPED *** From nobody Thu Nov 23 04:15:12 2023 X-Original-To: dev-commits-src-main@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 4SbPsY0SYxz51GJt; Thu, 23 Nov 2023 04:15:13 +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 4SbPsY02Kwz4TSn; Thu, 23 Nov 2023 04:15:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700712913; 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=rx35YVjOZoM/twh5YlcxLOBEIgjZyZdQu36CVlUiU+A=; b=AhZTIx/+ZESo6oEnbFYonkzUvhC0ELTB4C8Xfh6U/z/AkKzdPBSFrQn6AFcYY7951CF2Cc CIys+4Na5Ste+tcCZZ6lBJGO+D5+N8fPnn5YHdAku9ixXgW8rzuoHotbHE/hLZHYt305Pz xBN8kz4XLS0D66Xsceap3h3zWAFLMofYisgng0Juca+974JsfkbC9kPmu0HX4h0mjYGFqt CT7z+I+3kQo/PJH6EXepHX2VLE5e4GN71lZLsTSCqCJSOyTnQi2evVNWGULm7w7SCrlsuU zLJNNerpuljyzCluoyNx35dfmJ+oTeTpyTQnQO3KFNPby3IbS/C++OIeGndDFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700712913; 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=rx35YVjOZoM/twh5YlcxLOBEIgjZyZdQu36CVlUiU+A=; b=VPG5XCqaX2sALJosWtnobIcJFnjmTen9upPOfw4Zqzjif9NwuwxgGWsPcEhSjyfDVg+NCZ f38p4Qn7TPbnoeYIpdqBSxp4dqRcMcyDQyU6Qzl3ooJNN13Epm+agcd7E7dYFRYdrWrfwR RereT7cNo8LIzXdGRdJkaP+fra7ynnQGS/E7leV+rJqzoi6vI0nqmh5EBTwJTGFuAIud32 H+f7gSXav1Q6+RRuBQhRLqhdPmrA3K6MUu6B7ZV1dfOfN9M8w03kAX+wz6A3bLboYl24xR F1Wbfu3BfMpkWsRqkR5PosmYQ+PGQNE5xyEGYpcot8eRVlXDCAykrQ+xwqLiwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700712913; a=rsa-sha256; cv=none; b=Lo34mbCF/StDTHbHGdLTlelHnDj9Jj1XBsYsaVBBgcnw3piWzrcYxp6+2/HwDWYoUN9cNC 2W9Mh7FpztN5yf9iMIwYKpjzRdRhqDQtrdb/H9/hMELswLPhESztDr3UzhKIxDBN/SbIgn YVCcqwfFu+Fnhm7LQvheBSjWsoEBDAYXoBeawIapNMBVjOQIHAuPq2L1VBBLTxEE4Jn2Gd kzi0U+e8pLi6D5zfeVM9EpOpKccJWqi7va+uKKd18TvzgqmfJthvkYxNsnnvizL6TzOTBF 2xMl7lFfkGRcrY0LDeHggpfwQHICIp0awIbPAfcR5GJkcm2h4CNIxLeuxODNIA== 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 4SbPsX6DcsznHH; Thu, 23 Nov 2023 04:15:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AN4FCEd022136; Thu, 23 Nov 2023 04:15:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AN4FC8D022133; Thu, 23 Nov 2023 04:15:12 GMT (envelope-from git) Date: Thu, 23 Nov 2023 04:15:12 GMT Message-Id: <202311230415.3AN4FC8D022133@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 5d4f897f88ed - main - UPDATING: Add unset hint.acpi.0.disabled as workaround for no ACPI List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5d4f897f88ed87d3dc4204fbfac726eac5472001 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5d4f897f88ed87d3dc4204fbfac726eac5472001 commit 5d4f897f88ed87d3dc4204fbfac726eac5472001 Author: Warner Losh AuthorDate: 2023-11-23 04:12:28 +0000 Commit: Warner Losh CommitDate: 2023-11-23 04:12:28 +0000 UPDATING: Add unset hint.acpi.0.disabled as workaround for no ACPI Explicitly add the 'unset hint.acpi.0.disabled' command to work around this problem. Sponsored by: Netflix --- UPDATING | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index 8b503e1ccfb6..cea03f7dc7c3 100644 --- a/UPDATING +++ b/UPDATING @@ -31,7 +31,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: If you have an arm64 system that uses ACPI, you will need to update your loader.efi in the ESP when you update past this point. Detection of ACPI was moved earlier in the binary so the scripts could use it, but old - binaries don't have this, so we default to 'no ACPI' in this case. + binaries don't have this, so we default to 'no ACPI' in this case. You can + undisable ACPI by doing + OK unset hint.acpi.0.disabled + This can also be used to recover any other system that was updated in the + small window where amd64 was also broken. 20231113: The WITHOUT_LLD_IS_LD option has been removed. When LLD is enabled From nobody Thu Nov 23 08:58:03 2023 X-Original-To: dev-commits-src-main@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 4SbX7v4pB8z52KG5; Thu, 23 Nov 2023 08:58:03 +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 4SbX7v45s6z3gvv; Thu, 23 Nov 2023 08:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700729883; 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=rZUQ6dyVvt/6yxBtpwV4E4XQAJ/D/tiav/jYYimUjpU=; b=LUvBluxrSepV5ZwPi2HSQ7zzPIzyij4RlSS+zKLHAf4jQCmNKYDteTKTWnCq8kdBQ3Gc2T DwiaLvx6Tn+lfg+vFlfgnFE+26GB/dJMagRBUWQobSE4gkFIxAlqM74FDUz7rDHrndX+FY vSdtbw/zg+KmIafy/KHNzCEya0SNBQxw8TM+iExu2FlmOVbQvtJpvJhMU1wRuDdX0WFLIh AatyyV/G5oNpOGsk8frXoZB4256HQekRbqSpFcdvZyfTUz3OjNBCKFxBnkc+Wy/elQnbxJ BAt2x8vpGmKUChBVsmZeG3KotzdCkYUN40tyQBjq/Dar2wy+HeYyvZbWoHcd8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700729883; 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=rZUQ6dyVvt/6yxBtpwV4E4XQAJ/D/tiav/jYYimUjpU=; b=qk63jxSwCHnFo/msK/NWAWmJWAy8jCBk7i8NBMtBeWU8R1xcVt5tl3bmekg7bzlY/GAJS7 u+z+VnMVZC3iT9gPKNPgF8PO/u7OJlohDBgQEW8e13O5APRP+KXtEjqQgSUdPcUGVEVPYI DocNA5EAmz36r/R4hD7mwZzA+5Bp9fMEZ1Frxa+VjhnXuytDPVHdMK1IuzKX77ZzHf94K9 u6Cd8ODX5OuRi2+hmwiUqNWfTITmok9RuLeRbMsQG3NjEfJzAgcOfmuhA3cGv+DzkHt5ub 0QrlD6JZMhhCiTuFvSv3FtIYrIvlsIacRXeW0redqfYCK/pUmd+Pyv9hPV8zNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700729883; a=rsa-sha256; cv=none; b=QGgYThW+HE1CpHUIuflegfn5oXEJi9suhW1H7va7WVpI28UFujrPhQyLY9jJxFGXHTbTkG FHgBEalu6gf3yRrAGdhc5L4UXq13JfF3i8iZ5cEYcceuBK5oVfd5Cq0tN4CnsrdGz4I3Kn EgvjUHJ7yLv9SSGidFYG5lunOWObo//Lz4meAgS+ABJIUXjxYbEmP+9ba9RoXoASyqi2dm uAFwZ17H6j3ZRfN3lbrYMpJLqn11ATEbx7v4Tlm5zMp5WL7qom8nrbsfrrGvDgj66QEvTy Okl9ED39YeZlAbarrP67ysI/RVR8GOL24ajrXCW3XWnXLhrANmQT9IUgmg9P2g== 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 4SbX7v38gbzvtL; Thu, 23 Nov 2023 08:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AN8w3AH087954; Thu, 23 Nov 2023 08:58:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AN8w3n0087951; Thu, 23 Nov 2023 08:58:03 GMT (envelope-from git) Date: Thu, 23 Nov 2023 08:58:03 GMT Message-Id: <202311230858.3AN8w3n0087951@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gordon Bergling Subject: git: 4e36d081f377 - main - ath(4): Fix a typo in a source code comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4e36d081f377ecfa8375e5fe3d0763099f4a780d Auto-Submitted: auto-generated The branch main has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=4e36d081f377ecfa8375e5fe3d0763099f4a780d commit 4e36d081f377ecfa8375e5fe3d0763099f4a780d Author: Gordon Bergling AuthorDate: 2023-11-23 08:57:28 +0000 Commit: Gordon Bergling CommitDate: 2023-11-23 08:57:28 +0000 ath(4): Fix a typo in a source code comment - s/mutiple/multiple/ MFC after: 3 days --- sys/dev/ath/if_ath_beacon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ath/if_ath_beacon.c b/sys/dev/ath/if_ath_beacon.c index f96f7691cf12..b08816f3d268 100644 --- a/sys/dev/ath/if_ath_beacon.c +++ b/sys/dev/ath/if_ath_beacon.c @@ -1014,7 +1014,7 @@ ath_beacon_config(struct ath_softc *sc, struct ieee80211vap *vap) * * The specification (802.11-2012 10.1.3.2 - Beacon Generation in * Infrastructure Networks) requires APs be beaconing at a - * mutiple of intval. So, if bintval=100, then we shouldn't + * multiple of intval. So, if bintval=100, then we shouldn't * get beacons at intervals other than around multiples of 100. */ if (nexttbtt == 0) /* e.g. for ap mode */ From nobody Thu Nov 23 08:58:49 2023 X-Original-To: dev-commits-src-main@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 4SbX8n5B1nz52KJT; Thu, 23 Nov 2023 08:58:49 +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 4SbX8n4ggTz4CVg; Thu, 23 Nov 2023 08:58:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700729929; 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=iS3tcKlheVgeX9nEs5DIOHqxTOGLApZ7tEtl/vWmIq4=; b=l1D74qJHp9CWQZ1d8QdmzpsRMRBgzGB9i17R6QaLfBOxE39Na0gKbu10qnC303C44KIWgi qTHN6RILfpnJgS8/iNfRR4e5P/QECd/KV8YwAUgP789v9fFBmyz5maPmy2I1vy0ekNZgbu pvaZBMBcd3uPHfY5ZPXY2XJODsXSMieqOQppE3dvP9DfD6Scvbm2vfs7OmUDuutqeR3xVJ d7bTleZ8scLytcy4T3TrgwcfaEgPBYp2tn7x/olCywposPHk9/iUJ4qW/9gOBBD6qIMDjZ eO/lcyTrhitwtLZJBATb8OCtZ6z5fFGQA6wwPs6+K9iEEKWvTnF8HBwGTd/D4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700729929; 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=iS3tcKlheVgeX9nEs5DIOHqxTOGLApZ7tEtl/vWmIq4=; b=HN8CEn+3Rjv8fzdUfBVRTB83phhiO6V4QL3QcnFfBNaI7mMsTAtzvhhOVSnPiL164k3CCD VOwYad9kUropMUmfEhnQ7mtRzN7Tigr4lP40Ig3I597xCif1dIP/QK3FnVQ5xyBOkpkfNh jDxUkKMg1A01wKWQ46tT+fetuEfCYulWU8zph+jVgWcODFttpy2wiheKtAKh/0qk3A4sXJ vxZ/a6Y+WXZoW2bMaPum8yhle/d2iemfBxI0sJw5eL03nbaKd7/xwhLxRaQSM+T2zfVQ/R L32dd9YejuWFlxuRBqk4K9h+ILoLK/TtR1bTUQqXWeXDDjmPEqB8O1hrcBh1Rw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700729929; a=rsa-sha256; cv=none; b=EvmCHEaJ5I4UK5/OQaCTPIfxZWXzY+jPLY3V7dUeyMtxyqq31q3KylxS0ouoyDgQTyBYp3 rvmV/tCV1Rzzw+gcHZw1Kw1jManpoYgiuKkTkIMGgyzUgfyzSSNO08L9NCcEEUe5JcQHQ7 B1S66b8htDTfk+UUz4Z0MPOsH689+FFJWo0eBD/c83SHbBnB7pbVn6uBhR+TfUp4uScizV opkS/bHT9M02wWWBTGncDW0OXU57mbV/7D8unZ7WmjCFOSOQRX9Pqe6o35Qgi+dKxUkosB 9WcK5WXBQA60wz7SjQKWsPG+QfSXZof6nJ0AhJX2Ixzble/cCWyguAxneozZAg== 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 4SbX8n3l3szvVk; Thu, 23 Nov 2023 08:58:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AN8wn2J088196; Thu, 23 Nov 2023 08:58:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AN8wncD088193; Thu, 23 Nov 2023 08:58:49 GMT (envelope-from git) Date: Thu, 23 Nov 2023 08:58:49 GMT Message-Id: <202311230858.3AN8wncD088193@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gordon Bergling Subject: git: 637e4ef1a6bc - main - libcasper: Fix a typo in a source code comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 637e4ef1a6bcd8677dabd8c08916df3091be5f64 Auto-Submitted: auto-generated The branch main has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=637e4ef1a6bcd8677dabd8c08916df3091be5f64 commit 637e4ef1a6bcd8677dabd8c08916df3091be5f64 Author: Gordon Bergling AuthorDate: 2023-11-23 08:58:15 +0000 Commit: Gordon Bergling CommitDate: 2023-11-23 08:58:15 +0000 libcasper: Fix a typo in a source code comment - s/mutiple/multiple/ MFC after: 3 days --- lib/libcasper/libcasper/service.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libcasper/libcasper/service.c b/lib/libcasper/libcasper/service.c index 478221a681da..103791676272 100644 --- a/lib/libcasper/libcasper/service.c +++ b/lib/libcasper/libcasper/service.c @@ -59,7 +59,7 @@ * The problem is that we may restrict/sandbox service instance according * to the limits provided. When new connection comes in with different * limits we won't be able to access requested resources. - * Not to mention one process will serve to mutiple mutually untrusted + * Not to mention one process will serve to multiple mutually untrusted * clients and compromise of this service instance by one of its clients * can lead to compromise of the other clients. */ From nobody Thu Nov 23 15:25:11 2023 X-Original-To: dev-commits-src-main@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 4Sbhkc16bFz51d6g; Thu, 23 Nov 2023 15:25:12 +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 4Sbhkc0d7Zz4Hpr; Thu, 23 Nov 2023 15:25:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700753112; 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=vUhW2p08xXYw0Xw3pOlTQmWD0iQAUzwMEpYhllLj/hQ=; b=owaHi6HYfPLNaohhCAQpPeL0fd+ygw5LV545jxuFOwXiwGZX8NnpayCINgQSdAT/evfUM7 MXWBDenn04HytdvSaZXawX5+w3+BQXUy4Cbs464dLhJsa2Rea060i9JZIZ4G1uJlH/L2Wr 90LospRkPV8ALJ5Yozo4DW99zxfymZ5jSustRiOhtYBMo4lBR/5usk63TAdS21pNHZbsLE R+kBKQT/tD+/y1zxtXHdTL0wc68qf0UVyulKR3kuWSjohqjEVIpwJZnsZDR1DEVdt4QDZV qy59NSQCq1Y+VCtW9u1kKarAe3lN/c77pV9XC4od2eNCigGKaTKeLXtqaia92g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700753112; 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=vUhW2p08xXYw0Xw3pOlTQmWD0iQAUzwMEpYhllLj/hQ=; b=SCsbHedZ57Hw/SPNceiVG/c7Nz3YeHN/Jbj499qF17aglEGJssCQGyGBlgnDkQ/0MzMUrx AYnEaYar0Q8myap5M+/jGGrGLMngjF9zrBrorMTQkgAc1Ki7SxW0aJknSunLz80tf76Oxc xjBMd7Fj9NFgJ+ICSX+VQ3Yk/UGdQVCiN7Y+MVjyo1YZexp57uW+rHR5BtMAMXHMCpCbNG hg0tBIVsjscWDUj0JBjysXo6U7bnYhQXud6TQ/6/j9DJKMt/yaOvxUEs2Cnz8s/3ecgENV vwzvzEJ03eyCVOB/sljF4rkgGftHKHrOamml98MaTCfqBtqRQklikZ+avkyYDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700753112; a=rsa-sha256; cv=none; b=R6B7j4pUxAgZKHsQFNsgpfRB8hM+wvFGRPalgBUWamHlrE8erS+ZFnPpfraxl2WIOTBouJ MSmedZQd2HhsOlsXjsmkfp60/03va7gtcoTgsJF/MnHrseaLZ66JlS9PQ9JrvV/vewro/S tdFQcT79cXbvDfbTB7mVQkUgxF/y/Z6lQRB0zkhfbeSocdEvXopTr90I3cV8Uzc6qdlUWJ f73s7qmDGQ7/1BUY1akl2gAC3J2ee2O6AlFY73DTnIfpITUqOwtSov+my/i/PuvVLC1Sn/ goP7576Rx/6TthqnYLqZ1T/JK7MoDVlZ5oefwdc+bUl0a2zgNOMvVPNxyCNAgA== 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 4Sbhkb6VSVz16lj; Thu, 23 Nov 2023 15:25:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANFPBJ9039296; Thu, 23 Nov 2023 15:25:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANFPBo6039293; Thu, 23 Nov 2023 15:25:11 GMT (envelope-from git) Date: Thu, 23 Nov 2023 15:25:11 GMT Message-Id: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f5f277728adec4c5b3e840a1fb16bd16f8cc956d Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=f5f277728adec4c5b3e840a1fb16bd16f8cc956d commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d Author: Rick Macklem AuthorDate: 2023-11-23 15:23:33 +0000 Commit: Rick Macklem CommitDate: 2023-11-23 15:23:33 +0000 nfsd: Fix NFS access to .zfs/snapshot snapshots When a process attempts to access a snapshot under //.zfs/snapshot, the snapshot is automounted. However, without this patch, the automount does not set mnt_exjail, which results in the snapshot not being accessible over NFS. This patch defines a new function called vfs_exjail_clone() which sets mnt_exjail from another mount point and then uses that function to set mnt_exjail in the snapshot automount. A separate patch that is currently a pull request for OpenZFS, calls this function to fix the problem. PR: 275200 Reviewed by: markj MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42672 --- sys/kern/vfs_mount.c | 35 +++++++++++++++++++++++++++++++++++ sys/sys/mount.h | 4 ++++ 2 files changed, 39 insertions(+) diff --git a/sys/kern/vfs_mount.c b/sys/kern/vfs_mount.c index 10b29b569cc5..462fd8bf19bb 100644 --- a/sys/kern/vfs_mount.c +++ b/sys/kern/vfs_mount.c @@ -3136,6 +3136,41 @@ suspend_all_fs(void) mtx_unlock(&mountlist_mtx); } +/* + * Clone the mnt_exjail field to a new mount point. + */ +void +vfs_exjail_clone(struct mount *inmp, struct mount *outmp) +{ + struct ucred *cr; + struct prison *pr; + + MNT_ILOCK(inmp); + cr = inmp->mnt_exjail; + if (cr != NULL) { + crhold(cr); + MNT_IUNLOCK(inmp); + pr = cr->cr_prison; + sx_slock(&allprison_lock); + if (!prison_isalive(pr)) { + sx_sunlock(&allprison_lock); + crfree(cr); + return; + } + MNT_ILOCK(outmp); + if (outmp->mnt_exjail == NULL) { + outmp->mnt_exjail = cr; + atomic_add_int(&pr->pr_exportcnt, 1); + cr = NULL; + } + MNT_IUNLOCK(outmp); + sx_sunlock(&allprison_lock); + if (cr != NULL) + crfree(cr); + } else + MNT_IUNLOCK(inmp); +} + void resume_all_fs(void) { diff --git a/sys/sys/mount.h b/sys/sys/mount.h index c4e1f83e9683..70f4bc2b834e 100644 --- a/sys/sys/mount.h +++ b/sys/sys/mount.h @@ -980,6 +980,9 @@ enum vfs_notify_upper_type { * exported vnode operations */ +/* Define this to indicate that vfs_exjail_clone() exists for ZFS to use. */ +#define VFS_SUPPORTS_EXJAIL_CLONE 1 + int dounmount(struct mount *, uint64_t, struct thread *); int kernel_mount(struct mntarg *ma, uint64_t flags); @@ -1016,6 +1019,7 @@ int vfs_setpublicfs /* set publicly exported fs */ (struct mount *, struct netexport *, struct export_args *); void vfs_periodic(struct mount *, int); int vfs_busy(struct mount *, int); +void vfs_exjail_clone(struct mount *, struct mount *); void vfs_exjail_delete(struct prison *); int vfs_export /* process mount export info */ (struct mount *, struct export_args *, bool); From nobody Thu Nov 23 16:03:03 2023 X-Original-To: dev-commits-src-main@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 4SbjZH6tPjz51mWp; Thu, 23 Nov 2023 16:03:03 +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 4SbjZH6Q1cz4NwB; Thu, 23 Nov 2023 16:03:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755383; 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=NubJF2lEpug+wk0Y4YqrggsOVtAn+1Tmbo8HG8y/R9E=; b=VyEO0oL6Pdi9tg6+/MXTex6oetU9NHGfN0q8BS5AzgFdxDZxmxyAXu7PtWllH/WTQd8w7Z Ji3SzJjcZ+DYfpIGDXhHmKN1++RteN5j0MnATt6u0M5aOVTVtdVNZ2diADgHGQP3pEUKaJ u+4iaXIik4blNU6oAT294ZD1AgMawu03Gj4aE8mWC+SELsb5Kyb7Rd2BuMMxUByyG8Zoz+ s66KL3BZfjBHpD2pFZI2HKSHf2apz0VI+MbpR6MrFYtUVnWUgeLXela6an0/CozfQ8oNjg waclcBY+71h4RNdy/jxeoQdK1Y8ZZnYCkwdOzdE39kQJmoTEomGJKlhvG7+YUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755383; 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=NubJF2lEpug+wk0Y4YqrggsOVtAn+1Tmbo8HG8y/R9E=; b=m9+M8zRTDU2H+TeoKjwwKLpX6Bd5QjrUw2fzr8TX/SNe2a7NeUfgFfZtj4O1BIa820Fsrs KHvwyxd3LhXEncfc6swSBpNr30Ob0Zp8SbWzE2aTucFRJEfeS54V2lTiShLGy3tccbQ6FW v1VibXxH85hsulfPdX9MHdJyI8wR+WCtDs5zxqohpbIA493sxHDxVHoZr+2ZmI4y/C1LGb rvQmbgcO/90Y9AmgwgqGvyAh7HCKbf+qfzSABYyD/7NzJcZXA7skHrWIZIHjesyAZvgRgY cgzD6rIiDdjhM+cpaA9uXMWXgWF2NwT1NH9DjD+gQXCNwls7Abb9vbCOXTy0Ag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755383; a=rsa-sha256; cv=none; b=RdeZeS/purdYHd+DtFbE35IG1e1X3GWS4nsBy4cwimNEoiJDc6j/sRZpE5RlUXGwSsf4Uz UqnFqnCfsOceXlhOVmoemUXGUwfoCTkbZnxtH1TADYZuN8pgKNKj1Wdvj3ER3q48T+KFmg CdTojC2nIY+4zF3Pi8tMAH0mw770Z0+e0hh8YjV3I+IYFZ6knonxG7gDogrqD7etubwy93 Ooz9EoRGgSRlRLyrnTLcLfetDJh7TG3Y/79Cii5XRKmpCmSu+KeanjkGO9M7TrAcuRRJcV QPHNx/ljmvg7gjSPCV11TIVy4B7eh+d7k+ALRtsXG53mkJ7Ep6JcfZYQmltVdw== 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 4SbjZH5WZFz16nx; Thu, 23 Nov 2023 16:03:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG33ZK006473; Thu, 23 Nov 2023 16:03:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG33tk006470; Thu, 23 Nov 2023 16:03:03 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:03:03 GMT Message-Id: <202311231603.3ANG33tk006470@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 7fabea328fed - main - param.h: Bump __FreeBSD_version to 1500004 for commit f5f277728ade List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7fabea328fed60d5207b262d2372e85a7f731eef Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=7fabea328fed60d5207b262d2372e85a7f731eef commit 7fabea328fed60d5207b262d2372e85a7f731eef Author: Rick Macklem AuthorDate: 2023-11-23 16:01:41 +0000 Commit: Rick Macklem CommitDate: 2023-11-23 16:01:41 +0000 param.h: Bump __FreeBSD_version to 1500004 for commit f5f277728ade Commit f5f277728ade added a new VFS function called vfs_exjail_clone(), which will be used by the ZFS module. Bump the version for this change. --- sys/sys/param.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/param.h b/sys/sys/param.h index 3595b0a43d36..33cf69f0a8ed 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -75,7 +75,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1500003 +#define __FreeBSD_version 1500004 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Thu Nov 23 16:07:53 2023 X-Original-To: dev-commits-src-main@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 4Sbjgs53LJz51nJf; Thu, 23 Nov 2023 16:07:53 +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 4Sbjgs4cZJz4PhM; Thu, 23 Nov 2023 16:07:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755673; 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=rJMPxeWi1uljtG5a+85uMG+4WWEH0HC3xa/uAPy9y28=; b=VpHI7TQdptB824LrsS7jk//mbJ4+4qf3uh6dhgUB1vnELsDt5KiwCtESUMtK1akIX3C1Fv X+EhKv+Wx768bS1wPOI03LI7yci3c5UCnai9b+QsLcl2L4FFyNstWs8ymzNAmss3q06Pde NYkpZopVYwOoIJ9dP4WezP3XzXtM6Dfa6rAdgFSjM/dB0NHRz9NZ4aL4LzPBaBMl3P4jqH hHTg2bz6L2mffv0heuYi5k98r7aa+qMBNgi+XcGuJXRmwv1rb4F5r95xO4K0r9id/p6DWl Z8UfibKxy7DCVwZkw2abdPwBm4Vl8UX9WXqv/v3RToyvMekx1YM76Eg6Pox88Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755673; 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=rJMPxeWi1uljtG5a+85uMG+4WWEH0HC3xa/uAPy9y28=; b=AWUHKPXg1oely0PmnJ3bFE5rgQLT7pCVWUSRdG7Drd1EFjre8PKsrUkgeF52rnQGyvGN/x GyY0yLwo5/ffUxGTyyeMH6PbdZL0F/VWwQM9gOdXnSrFx03hEPtrd7CPUXYvp63jvl2rum zyDXJS1+9hW97nJBMQSMBxx1uPb68hK0xf5PRVf8ZGqcdNBNkI6I7KvbFDrMVEFlhn6P4y XyDMfZR0XIjoC9uTeDY4A7DCoDfAY17QBI+C2MTK6bvag4wUnWSL+d4p0CYZ1/OojI1Vt2 19PJ4Bei+hRCvA35DoMEIRVQMnOBGKr83kILoAjCynEaIFpve0Gnc3NALYEZng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755673; a=rsa-sha256; cv=none; b=WvYZL+GIwMrd8AUUQ1rtj7l2l26F3ahefyrY/jUwQtSBWvfpQh0HNuphPw9yrjKKA+cbQz JqvpIaokmMO8tP5sr6HBEoqp6uun4GqtyDcYospca5CAXCpya7t2GycNcAPpftuOM7Wnzd TQ/n54uqFPopU4rUoqJ55lRlJk7wVx3uBFeplAB78fpmSGR9UJiOSnV4gN8n7q98ys2ZUJ 0xEYvEKK2EitWG7b6+r1JeoZ3YqITardYsx18IgN86NcHf28roe+UvaM0zELnkdekXFFcS GyCDf8M4p6zXkEeP3+XmLPKDzdQAP5Gx2gD2zXsB1SrNhsyYPMvocpdRjq+PTw== 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 4Sbjgs3hPyz17HF; Thu, 23 Nov 2023 16:07:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG7rYH007260; Thu, 23 Nov 2023 16:07:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG7rG4007257; Thu, 23 Nov 2023 16:07:53 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:07:53 GMT Message-Id: <202311231607.3ANG7rG4007257@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: a4b19cf5c76a - main - hptmv: remove vestigial EVENTHANDLER_DEREGISTER() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a4b19cf5c76ac66d02a3ef8a549115ba865d630c Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=a4b19cf5c76ac66d02a3ef8a549115ba865d630c commit a4b19cf5c76ac66d02a3ef8a549115ba865d630c Author: Mitchell Horne AuthorDate: 2023-11-23 15:22:33 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 hptmv: remove vestigial EVENTHANDLER_DEREGISTER() The registration was removed in favor of DEVICE_SHUTDOWN(). Drop the unused eventhandler tag from the IAL_ADAPTER_T structure. Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 3 days Fixes: cd3ef66680a8 ("Use DEVICE_SHUTDOWN(9) mechanism...") Differential Revision: https://reviews.freebsd.org/D42334 --- sys/dev/hptmv/entry.c | 1 - sys/dev/hptmv/osbsd.h | 2 -- 2 files changed, 3 deletions(-) diff --git a/sys/dev/hptmv/entry.c b/sys/dev/hptmv/entry.c index fd3b808e1e73..0157a27c3728 100644 --- a/sys/dev/hptmv/entry.c +++ b/sys/dev/hptmv/entry.c @@ -2155,7 +2155,6 @@ hpt_shutdown(device_t dev) pAdapter = device_get_softc(dev); - EVENTHANDLER_DEREGISTER(shutdown_final, pAdapter->eh); mtx_lock(&pAdapter->lock); FlushAdapter(pAdapter); mtx_unlock(&pAdapter->lock); diff --git a/sys/dev/hptmv/osbsd.h b/sys/dev/hptmv/osbsd.h index a9240af16c89..0e4d94fb4756 100644 --- a/sys/dev/hptmv/osbsd.h +++ b/sys/dev/hptmv/osbsd.h @@ -190,8 +190,6 @@ typedef struct IALAdapter UCHAR status; UCHAR ver_601; UCHAR beeping; - - eventhandler_tag eh; } IAL_ADAPTER_T; From nobody Thu Nov 23 16:07:54 2023 X-Original-To: dev-commits-src-main@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 4Sbjgt5tpyz51ncM; Thu, 23 Nov 2023 16:07:54 +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 4Sbjgt5Fm8z4PYV; Thu, 23 Nov 2023 16:07:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755674; 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=6cbZOXtN74NJtUey4z0pwudcG1LO0+h0zG3oFCh64P0=; b=xlaHgQ7CcPBFi1GPtT04b/Aaus/cuBiThgrg7e4JLEgSkEfgoyJZS4UJNw897JxQYgI/of LQF6IPx4N4GtoiLoGFFI4Yb3SYk9sQvdupbQ5/TcZzpTQBqXr6p55wGhctkuj8GdgVAX09 crS/BnQxttsOUUQkDAB3TxRXcLuPSjHv5Q18RY7a8dui1yFX/ROAhvb282W8CVXTXhpnzu knSDwpsStLg+24GJCkzXwsynZgB2ZJkIgOpMj76g+7zo1ur7lFboIWQX14sUd5lqjRLrrM L5QKTdJGi11V399BTiPtGocM5FLxicJCTQbkGgOjrR2MCw41yqG6c4e6fyQ8MA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755674; 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=6cbZOXtN74NJtUey4z0pwudcG1LO0+h0zG3oFCh64P0=; b=GQuaTDnbNo0vX13GXjQL6jx+4jsGJCrT+Qxk9Gsg6cFf7HEAMX0kt+Xjrtcjo09RrvlHnC e+DsRR3F3axysGwATSQrdw6dP0SyZP5yh/v5wcCIhFGy5yUtHlPgi4G6eYeihoDbfIJe8m RBhattTCrhjeji0z6K5YkCvx5MNf7MWK352Rs2k0t5xmmqJnEWBlydHjI7LIn6qovp3GDL ziA1TZM7fP3R7ihneJFfFYI64ZjZ40xM3+8P/fVpAc/BZmJFDoc1Rno7ysf/Yp33hlJo4j DNzKtHOWor3UMsof40tlUn3+gdhxac6kBGN5TZtQRo2XR7baydAmwAKHtBIGcw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755674; a=rsa-sha256; cv=none; b=PbIEtN9uAU5raSur1TKizSslYLqk10Rsk1GFNUb7nrjBM/bvOHASzX76u5XwiuH2kUY14J qxtHU7C1fefNmdm7jZWn9Mm0rLQFvMY971Loy7lp2P44HvpfIFkgT9UFpTyFLIAIRmpjl0 oX9r+C8lu43ytFJQL6/WOW72B0Euvib/aJMYpAdt6B4NdeB9a3r8W/7myJzEqFJMJUfBP6 HQvtC9v1Sg1McEJWaWfIFFoHaJw9WdgtmnbES2fdl+zCNK8SwR1Uec+vwkThnsobInKqsN kIFpNgLunbB+j/VFi7WQZoQextJ7hkYD1qf9ukBzoT/mvvtxOQS7ZYvUEXT4fQ== 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 4Sbjgt4GDWz17B1; Thu, 23 Nov 2023 16:07:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG7sfp007314; Thu, 23 Nov 2023 16:07:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG7sjd007311; Thu, 23 Nov 2023 16:07:54 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:07:54 GMT Message-Id: <202311231607.3ANG7sjd007311@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: f3dc172763ae - main - geom: sort includes for some files List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f3dc172763aee039c917fdba03f1e27095f5a7a9 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=f3dc172763aee039c917fdba03f1e27095f5a7a9 commit f3dc172763aee039c917fdba03f1e27095f5a7a9 Author: Mitchell Horne AuthorDate: 2023-11-23 15:23:07 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 geom: sort includes for some files This is not exhaustive, just done ahead of some upcoming changes to these files. Don't include sys/cdefs.h explicitly. No functional change intended. Reviewed by: imp, jhb MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42335 --- sys/geom/journal/g_journal.c | 19 ++++++++++--------- sys/geom/mountver/g_mountver.c | 12 ++++++------ sys/geom/raid/g_raid.c | 17 +++++++++-------- sys/geom/raid3/g_raid3.c | 17 +++++++++-------- 4 files changed, 34 insertions(+), 31 deletions(-) diff --git a/sys/geom/journal/g_journal.c b/sys/geom/journal/g_journal.c index cfc42c120992..147e83cc7e21 100644 --- a/sys/geom/journal/g_journal.c +++ b/sys/geom/journal/g_journal.c @@ -26,34 +26,35 @@ * SUCH DAMAGE. */ -#include #include #include +#include +#include #include -#include +#include #include #include -#include -#include -#include +#include #include #include -#include +#include #include -#include +#include #include +#include #include #include -#include + #ifdef GJ_MEMDEBUG #include #include #endif + #include #include + #include #include - #include FEATURE(geom_journal, "GEOM journaling support"); diff --git a/sys/geom/mountver/g_mountver.c b/sys/geom/mountver/g_mountver.c index 00ff9dd9b7cb..de3a298735d4 100644 --- a/sys/geom/mountver/g_mountver.c +++ b/sys/geom/mountver/g_mountver.c @@ -27,20 +27,20 @@ * SUCH DAMAGE. */ -#include #include #include +#include +#include +#include #include -#include #include +#include +#include #include -#include -#include #include #include #include -#include -#include + #include #include #include diff --git a/sys/geom/raid/g_raid.c b/sys/geom/raid/g_raid.c index 753c9fdbe867..437cef416ca3 100644 --- a/sys/geom/raid/g_raid.c +++ b/sys/geom/raid/g_raid.c @@ -26,25 +26,26 @@ * SUCH DAMAGE. */ -#include #include #include +#include +#include #include -#include +#include #include #include +#include +#include #include -#include +#include #include +#include #include -#include -#include + #include + #include #include -#include -#include -#include #include #include "g_raid_md_if.h" #include "g_raid_tr_if.h" diff --git a/sys/geom/raid3/g_raid3.c b/sys/geom/raid3/g_raid3.c index 0d4ecb704aa5..8f12f14cf09b 100644 --- a/sys/geom/raid3/g_raid3.c +++ b/sys/geom/raid3/g_raid3.c @@ -26,25 +26,26 @@ * SUCH DAMAGE. */ -#include #include #include +#include +#include #include -#include +#include #include #include +#include +#include #include -#include +#include #include +#include #include -#include -#include + #include + #include #include -#include -#include -#include #include FEATURE(geom_raid3, "GEOM RAID-3 functionality"); From nobody Thu Nov 23 16:07:55 2023 X-Original-To: dev-commits-src-main@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 4Sbjgv6xphz51ncQ; Thu, 23 Nov 2023 16:07:55 +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 4Sbjgv67l1z4Q1d; Thu, 23 Nov 2023 16:07:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755675; 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=tSrqGAs9w9yBN6BQ7BuyCH8wA6I9Y/60eVSTxyskpqI=; b=Ut4fyRCiJ016Sip0lmnhI0TNy/p9+7Qv5gQVvDnTYMvuIv+/FMzWlpc6If+l6sdbrP1AVO qKEBabH38SqYODEdl+9uQDjSvWxBNWgK0hwC53QlrVu2OzDrUp6Sn+tPJB/K+Asa/XRRUK +sUsR8o2gxW5o1wjmKbFt+Xk8D3UCL0RPArP3F+kiCatcYOiEz8U+HBPyHwDz1od+/E/q9 Ur5KH4hSSd6iAwzYITX4vrSWBvAWLxNFUiLEfLEi8OYUvYCuUAABlQeEFAy8Z3OjhjaKT8 D6cuHUejOR1TVTtK9pm9Msk0Fu0m9xKkKwaWfmZlikezAnHNzrdMotUozbRV5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755675; 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=tSrqGAs9w9yBN6BQ7BuyCH8wA6I9Y/60eVSTxyskpqI=; b=HjGwR1hlZtvUSiOjOw2jnsBqKzeu9AgcpoOdfxSiG8uGuXcuD/yiXE7f2zwWEzbKxf687h DeJiTg767RJfyBUfGB9BZvcJRmroyBYXqPAvld32Sr7VcL9MKQjtH27Nf+R9Xi3N5Ism3r I4D02GIdCRyrWWgiFBZoiM327JMHAwAw5uC94i+LlSLd04jBMMCbN056oUgo487bDuOUZ5 +UvhSCCXeP0iFbuyZi4keJCMXpBfPLhY8ExlCiM5C74SfVb1r0djJAWffVEw1ziCR+pwp7 jKl6u0Odm6P3YPXoifYaD9jNZEiJgcMhSRgs8QLtmw0AundPjH7ZT38bgpXvmA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755675; a=rsa-sha256; cv=none; b=H/lYjoekpngHtDjTYrRwGlhwPzN6FYNB3kg45oNW2KkKOfz5DRCeupSAHAVFhBnQuTV+Cm B8GQiqhBtpWEddVslm3Xq4znLzSwq2iJIsP53hlaWAS5PpdHQ8rKZpzXSYRAUJzjZWkBwq jxgjET8ibsN96LZkDg+AyDzfORtIUknTpcqRZZHEjG+/Pi8nU/cTf1fiznRbwYhdyal4un AkRhizNiia8Ssf1f4yz2m2dVavhehfjd68cKXTZIuhVACUa0KFqEUnqtzflU8JeM5e7YpA QEvV+X9+sPYaXcP4e8e+1HWeaQC2HF+kFr13TKiaNqkQ/g/KakWmwzFkiL5kaw== 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 4Sbjgv5Dmrz17KT; Thu, 23 Nov 2023 16:07:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG7tri007350; Thu, 23 Nov 2023 16:07:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG7tvc007347; Thu, 23 Nov 2023 16:07:55 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:07:55 GMT Message-Id: <202311231607.3ANG7tvc007347@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 66d9c2f38d2d - main - pst-raid.c: sort #includes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66d9c2f38d2db9e50c0dbf56dca4a2f3e6c3107c Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=66d9c2f38d2db9e50c0dbf56dca4a2f3e6c3107c commit 66d9c2f38d2db9e50c0dbf56dca4a2f3e6c3107c Author: Mitchell Horne AuthorDate: 2023-11-23 15:23:42 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 pst-raid.c: sort #includes Reviewed by: imp, jhb MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42336 --- sys/dev/pst/pst-raid.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/sys/dev/pst/pst-raid.c b/sys/dev/pst/pst-raid.c index 076925b27a6b..4e9c4fb724bc 100644 --- a/sys/dev/pst/pst-raid.c +++ b/sys/dev/pst/pst-raid.c @@ -28,30 +28,32 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include #include -#include #include -#include #include +#include #include #include -#include +#include #include +#include #include +#include + #include #include + #include #include #include -#include + #include #include -#include - #include "dev/pst/pst-iop.h" +#include + struct pst_softc { struct iop_softc *iop; struct i2o_lct_entry *lct; From nobody Thu Nov 23 16:07:56 2023 X-Original-To: dev-commits-src-main@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 4Sbjgx1zrpz51nZB; Thu, 23 Nov 2023 16:07:57 +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 4Sbjgw6vzRz4PyV; Thu, 23 Nov 2023 16:07:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755677; 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=cGP6WRiDs04MiV+szh1/oufXXB8h3ERmw3iqIGndEmM=; b=Fk2ulx8y2xvfoOjuS/nYoZpFYhMTW+2ouxikZ9ZI6pzUFDesFFXyh9tWVFCZpgM6PQse7d dkKo8ru5j/xaTvIdfu24aFKsVIqRjcTJoevnsALNa4tbSuRAzE1QkXJq05DaG8IUlMuoZB XSnmQiQV7Qy1B27/kqINp/JxjOqmIvGYxbWPx+GtYbLO6PPNbxigcGChE4VTiClNgcfLFG vf5MiNy/Pn+YOxssrsCcOvEBJjGHf7IWixq1Q0aokkSIsl54ItqbQAmrQIdg9s8g1Sxmtv pJpywUDr1wt/DXB5D+K/Ie8850ZeJWE/vd97Ra0NYutp2DbGh0KDJnd8x/HW3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755677; 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=cGP6WRiDs04MiV+szh1/oufXXB8h3ERmw3iqIGndEmM=; b=wrc1sAJQ9+eQwsD1KR/xUwg5VznJSh7XmFaes5nY9+3M0uUVxkzZb/cmat0hdKYmKrtHkU DDN6qXAHU2Ktyjk1VpeDFZYGU53/oNbk+DXPdF1fern1DaoKZO+WYDw86A6RzedekAyoDh UPNY9ig2KE3/2vzgIAuRlEuWtZB4UGpmTs5Xi8Vg8RiyQ93/LjOz6o8/CpLFcUltIKkDsw l6ha+cCTQL8lSHsG2LxBYYVW3dSA2E4BHfTpRjbGFweeA4o0iS6Gx257RYQ1oIkSKEU+Op 5boiILMy5ENieLTNKKT5GrnuhwabMltKKL2vDuVwTKuZ6KBVHtRLXsSdcS1rag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755677; a=rsa-sha256; cv=none; b=XOYg+uBJsZPRtXr+PZaez5YoY3Neaq3g3nF7bCTUbSNtid0QH+yFgDmgRCBRR6ufQL/H90 c3Lz9GvkxxIydvF9M8tbYm6oNKw4Vt+kQpSf32BjF2MmQk2GB1yPAR4bftRZEOGTnqJx8B gk67KUQ5neQD8wu6YdsJ6DKGDOstp2/fuuJUam5MXWkxzNJOyY4biVsN5QvKIL0ilW+j5R W2/ZOFc27l6TOTjqHQBHFDB3vr9v8b/eGg3CkYi4+ptWiPEUlt10jTrFlgCQHQJlTk5qw/ 4UnQnQxxzsdcqhttvcOnEll1JCEH0zVqCiIgN1ZBzy9IdNqXJKNkiqSOHgdW0A== 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 4Sbjgw61BLz17hJ; Thu, 23 Nov 2023 16:07:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG7u7o007392; Thu, 23 Nov 2023 16:07:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG7u3q007389; Thu, 23 Nov 2023 16:07:56 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:07:56 GMT Message-Id: <202311231607.3ANG7u3q007389@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 4eb861d362d6 - main - shutdown: audit shutdown_post_sync event callbacks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4eb861d362d6a9493df7f77eab8e28f9c826702a Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=4eb861d362d6a9493df7f77eab8e28f9c826702a commit 4eb861d362d6a9493df7f77eab8e28f9c826702a Author: Mitchell Horne AuthorDate: 2023-11-23 15:58:27 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 shutdown: audit shutdown_post_sync event callbacks Ensure they are all panic/debugger safe. Most handlers for this event are for disk drivers/geom modules. There are a mix of checks being used here (or not), so let's standardize on checking the presence of the RB_NOSYNC flag. This flag is set whenever: 1. The kernel has panicked and kern.sync_on_panic=0* 2. We reboot from within the kernel debugger (the "reset" command) 3. Userspace requested it, e.g. by 'reboot -n' Name the functions consistently. *This sysctl is tuned to zero by default, but its existence means that these handlers can be executed after a panic, at the user's discretion. IMO this use-case is implicitly understood to be risky, and we'd be better off eliminating it altogether. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D42337 --- sys/dev/iscsi/iscsi.c | 8 +++++--- sys/geom/journal/g_journal.c | 8 +++++--- sys/geom/mirror/g_mirror.c | 3 ++- sys/geom/raid/g_raid.c | 4 ++++ sys/geom/raid3/g_raid3.c | 4 ++++ 5 files changed, 20 insertions(+), 7 deletions(-) diff --git a/sys/dev/iscsi/iscsi.c b/sys/dev/iscsi/iscsi.c index ecf4fe21a165..311b339caf7a 100644 --- a/sys/dev/iscsi/iscsi.c +++ b/sys/dev/iscsi/iscsi.c @@ -44,11 +44,13 @@ #include #include #include +#include #include #include #include #include #include + #include #include @@ -2711,10 +2713,10 @@ iscsi_shutdown_pre(struct iscsi_softc *sc) } static void -iscsi_shutdown_post(struct iscsi_softc *sc) +iscsi_shutdown_post_sync(struct iscsi_softc *sc, int howto) { - if (!KERNEL_PANICKED()) { + if ((howto & RB_NOSYNC) == 0) { ISCSI_DEBUG("removing all sessions due to shutdown"); iscsi_terminate_sessions(sc); } @@ -2751,7 +2753,7 @@ iscsi_load(void) * cam_periph_runccb(). */ sc->sc_shutdown_post_eh = EVENTHANDLER_REGISTER(shutdown_post_sync, - iscsi_shutdown_post, sc, SHUTDOWN_PRI_DEFAULT - 1); + iscsi_shutdown_post_sync, sc, SHUTDOWN_PRI_DEFAULT - 1); return (0); } diff --git a/sys/geom/journal/g_journal.c b/sys/geom/journal/g_journal.c index 147e83cc7e21..11a75e541fda 100644 --- a/sys/geom/journal/g_journal.c +++ b/sys/geom/journal/g_journal.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -2655,13 +2656,14 @@ static eventhandler_tag g_journal_event_shutdown = NULL; static eventhandler_tag g_journal_event_lowmem = NULL; static void -g_journal_shutdown(void *arg, int howto __unused) +g_journal_shutdown_post_sync(void *arg, int howto) { struct g_class *mp; struct g_geom *gp, *gp2; - if (KERNEL_PANICKED()) + if ((howto & RB_NOSYNC) != 0) return; + mp = arg; g_topology_lock(); LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) { @@ -2738,7 +2740,7 @@ g_journal_init(struct g_class *mp) (g_journal_cache_limit / 100) * g_journal_cache_switch; } g_journal_event_shutdown = EVENTHANDLER_REGISTER(shutdown_post_sync, - g_journal_shutdown, mp, EVENTHANDLER_PRI_FIRST); + g_journal_shutdown_post_sync, mp, EVENTHANDLER_PRI_FIRST); if (g_journal_event_shutdown == NULL) GJ_DEBUG(0, "Warning! Cannot register shutdown event."); g_journal_event_lowmem = EVENTHANDLER_REGISTER(vm_lowmem, diff --git a/sys/geom/mirror/g_mirror.c b/sys/geom/mirror/g_mirror.c index b2bcea2f0dbb..c6f95f28ba89 100644 --- a/sys/geom/mirror/g_mirror.c +++ b/sys/geom/mirror/g_mirror.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -3546,7 +3547,7 @@ g_mirror_shutdown_post_sync(void *arg, int howto) struct g_mirror_softc *sc; int error; - if (KERNEL_PANICKED()) + if ((howto & RB_NOSYNC) != 0) return; mp = arg; diff --git a/sys/geom/raid/g_raid.c b/sys/geom/raid/g_raid.c index 437cef416ca3..6938491d696c 100644 --- a/sys/geom/raid/g_raid.c +++ b/sys/geom/raid/g_raid.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include @@ -2457,6 +2458,9 @@ g_raid_shutdown_post_sync(void *arg, int howto) struct g_raid_softc *sc; struct g_raid_volume *vol; + if ((howto & RB_NOSYNC) != 0) + return; + mp = arg; g_topology_lock(); g_raid_shutdown = 1; diff --git a/sys/geom/raid3/g_raid3.c b/sys/geom/raid3/g_raid3.c index 8f12f14cf09b..721610cefbec 100644 --- a/sys/geom/raid3/g_raid3.c +++ b/sys/geom/raid3/g_raid3.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include @@ -3573,6 +3574,9 @@ g_raid3_shutdown_post_sync(void *arg, int howto) struct g_raid3_softc *sc; int error; + if ((howto & RB_NOSYNC) != 0) + return; + mp = arg; g_topology_lock(); g_raid3_shutdown = 1; From nobody Thu Nov 23 16:07:57 2023 X-Original-To: dev-commits-src-main@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 4Sbjgy244tz51ncX; Thu, 23 Nov 2023 16:07:58 +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 4Sbjgy0z4Pz4PvK; Thu, 23 Nov 2023 16:07:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755678; 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=d1tQJqaJSbPSrStKOekwFhmdZe8+7X+r10yzGa91yxc=; b=eo7/5/UqqaBzRSy5HBuBulj27nZnlvl0yW82kuUyt1VxKIU19n3NsMC/rrcQvLG/r0pekd nazHTHOFL8zrs4zi0QH+4XvBr60ppqVU2U7/4+q+FM0hyEd2YWhGdE+Eqg5GfZ4W68pUm2 +OpSuj5enQxWmuC1m9ONol4lY/BOYMtslEy+4uBllwHwdcMvuyHBXwNZ97DnAD/XZIihRT JUon8bfy3v67jzLHpHSE/0aA86pxrld4E1NzuDtv0hMvbrBrhHeygfwkXRAmxzejwVn4HL tEQYjXtI7lHdbxtUi4o/BieMe3Y8u8Ki4NmU2IWH8XZ4Untm9fsGpHjdZ1J5BQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755678; 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=d1tQJqaJSbPSrStKOekwFhmdZe8+7X+r10yzGa91yxc=; b=F7QEtKxvU2ywwqUutO2/G9Gh+Kp2iiKy32JDujJ7FJLv9wLCoNddslZrsVKQZNoVyupUiX Dt7oMCLVU3M6yBBov9C5Dj9gPhfYZgqCNStoPvccpwdMQmZC09nJ7annfNIx0E4GQEilGJ icQjvfgzfjgvPl62/bfw4XkdyGK7dBdx/UNg+v7oLsj05Fl6o4SWzD6nACExZv2C0KmqgV XVxbWcklY0uFGywK157vd6YClD2UO8kT++J6B3uowObBNm3Rd7jH4w6QeC8g2CCrQmBCc8 CCtnfpUr1ozBBbQMiawtS7rcZpF3fMkHtNG9YAUQJfyDIbBc26ImG8EGji+7Dw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755678; a=rsa-sha256; cv=none; b=pJGGhzxwnwkXb6kueRKuKw8FHiDHyS2qIGUdcqDguuJKWwAj/iyKgXVjw7vx776x2xlOae mWANGamfKeWWLzV7fAD2N6BN5K0fk31PbeVGGFG4Oozv7VtoI9AIrnN56OlyMBCecVYIiL PGyFYNJfr4C5cpipa2EmT+KQx0NIFVROZt1KeHfwG26LshJr7xzMVfeeWzdcIT6q4I12R7 WTXqgqXL9vW1vPM6dOlezacmy72RoEtlYklonbbIeRFTtG59U4uMSAkn06ckdPD8Wkwe5U PQYs1UDKaCeQJhhGh92eeVyMOl5Pl5p6RI/G8l1z9bMOyS1TaMDnnrMkPgNgJQ== 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 4Sbjgx6v97z17hK; Thu, 23 Nov 2023 16:07:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG7vou007432; Thu, 23 Nov 2023 16:07:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG7v6J007429; Thu, 23 Nov 2023 16:07:57 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:07:57 GMT Message-Id: <202311231607.3ANG7v6J007429@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 428ebb7cd9f5 - main - pst: improve shutdown_post_sync handler List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 428ebb7cd9f51afb6809bf81cf21a05e0fd93ff4 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=428ebb7cd9f51afb6809bf81cf21a05e0fd93ff4 commit 428ebb7cd9f51afb6809bf81cf21a05e0fd93ff4 Author: Mitchell Horne AuthorDate: 2023-11-23 15:59:05 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 pst: improve shutdown_post_sync handler It is desirable to shut down the raid controller even in the face of a panic. In the SCHEDULER_STOPPED() case, set the interrupt mask bits so that we request a polled wait, rather than sleep(), from iop_queue_wait_msg(). Tweak the function name and signature. Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42337 --- sys/dev/pst/pst-iop.c | 2 +- sys/dev/pst/pst-raid.c | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/sys/dev/pst/pst-iop.c b/sys/dev/pst/pst-iop.c index f9921a564333..43ced2401d2c 100644 --- a/sys/dev/pst/pst-iop.c +++ b/sys/dev/pst/pst-iop.c @@ -432,7 +432,7 @@ iop_queue_wait_msg(struct iop_softc *sc, int mfa, struct i2o_basic_message *msg) int status, timeout = 10000; mtx_lock(&sc->mtx); - if (!(sc->reg->oqueue_intr_mask & 0x08)) { + if ((sc->reg->oqueue_intr_mask & I20_OUT_INTR_QUEUE) == 0) { msg->transaction_context = (u_int32_t)&request; msg->initiator_context = (u_int32_t)iop_done; sc->reg->iqueue = mfa; diff --git a/sys/dev/pst/pst-raid.c b/sys/dev/pst/pst-raid.c index 4e9c4fb724bc..4f9279462ee8 100644 --- a/sys/dev/pst/pst-raid.c +++ b/sys/dev/pst/pst-raid.c @@ -73,7 +73,7 @@ struct pst_request { static disk_strategy_t pststrategy; static int pst_probe(device_t); static int pst_attach(device_t); -static int pst_shutdown(device_t); +static void pst_shutdown_post_sync(device_t, int); static void pst_start(struct pst_softc *); static void pst_done(struct iop_softc *, u_int32_t, struct i2o_single_reply *); static int pst_rw(struct pst_request *); @@ -170,18 +170,23 @@ pst_attach(device_t dev) name, psc->info->capacity/(512*255*63), 255, 63, device_get_nameunit(psc->iop->dev)); - EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown, + EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown_post_sync, dev, SHUTDOWN_PRI_FIRST); return 0; } -static int -pst_shutdown(device_t dev) +static void +pst_shutdown_post_sync(device_t dev, int howto __unused) { struct pst_softc *psc = device_get_softc(dev); struct i2o_bsa_cache_flush_message *msg; int mfa; + if (SCHEDULER_STOPPED()) { + /* Request polled shutdown. */ + psc->reg->oqueue_intr_mask = 0xffffffff; + } + mfa = iop_get_mfa(psc->iop); msg = (struct i2o_bsa_cache_flush_message *)(psc->iop->ibase + mfa); bzero(msg, sizeof(struct i2o_bsa_cache_flush_message)); @@ -194,7 +199,6 @@ pst_shutdown(device_t dev) msg->control_flags = 0x0; /* 0x80 = post progress reports */ if (iop_queue_wait_msg(psc->iop, mfa, (struct i2o_basic_message *)msg)) printf("pst: shutdown failed!\n"); - return 0; } static void From nobody Thu Nov 23 16:07:59 2023 X-Original-To: dev-commits-src-main@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 4Sbjgz2LTFz51nGW; Thu, 23 Nov 2023 16:07:59 +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 4Sbjgz1l40z4Q37; Thu, 23 Nov 2023 16:07:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755679; 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=2f/qWoJr9HQdYmWOC8Tl3f99RDl5ZhN2RcXdZ3O7Duc=; b=wIb4uj0RMS0b20zD8vDmMoXtYsERntPvKZQHW6NTBlVyF5DQvPwpzkSRmcxIIbYPn5f8oV KO7c6XKlBNCvT83uB6Rrmfx77ALMM8rGILoKh8lPGlTAEVFLZglPYBQBfYn5ftTNnPcwZp gNCcvQ/U6n7O6QErQtZLJ42Tt3LPTHKG48aOOEOaBzoAb0GoOQmNDUDj3FS9bg1r4c/hi+ rmUg0uDIn/DjP+lLT8USr94Ucy9LEj5D0AkbpmrDeiIt62lFhMCsxaZs1cAL2zsCLR4wiK A+2bbP1anS89iBemt/O+En7tF2YVDpPhN1fYEplj6KVV4EdiYZ0n0Ofrnz33sA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755679; 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=2f/qWoJr9HQdYmWOC8Tl3f99RDl5ZhN2RcXdZ3O7Duc=; b=tjPTBMmVCXuNhHcysXbFpXvrVoc93Gqv1yjbj9B6kjegEzNQypv+opKA5NtaHFEkZSQKBm peCytjDaNI8blmqanXgfCHd7NF9CJkVY/J9Bq2t8FmJapRtp/F6W/6+IpirT947qHqtuB5 S2e0mGSF0OylMrNKfK14DBfTG2g/cGFObufFZknromo0bz9yroOqZNVElpy2KLLHgVw+xB /c+DYSWrcmiPgsrSydoRtCfsQbIljhLFYuBcazmhW1g29BGW1sM6tvSSVIuqRAfHx6DxZm HVhJr61RUK1PQ7CqapowqcpMXHhUKWd+KugFWyeQl8YQ2lwy+5hzOUjHve/3ww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755679; a=rsa-sha256; cv=none; b=Cn8PDN9KsvaT6zXWWGwJA9rdTWT0gqmk/uDG2ifTbKkPinVwCetiFTGKjADpFSLVVOiW// bL09ZQk8mElegiF9FsQpPZFa1aWzm+rxQwizfAS0HqMoQL4H825E3uzm+7mo4+j5ilthU1 OQEBHU81fOlSNQKEgjIsE6nZ2yhHaUr9npIDwoQgK7flgI9yWFk8Reksv4L8duS01tCZlq EcoOFf9TW4bsDj+Khe+WE7v+g8oDlCFyY6KIdctxOP/s2hiDwZrjrjGr9K0fBetn/F/sGA 1//jLYfF8yVtMiDt6fTgQ6lv25wL6pI3Hru9kwRrOLz3dorAv9t2dRW2qf8V+g== 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 4Sbjgz0qxYz17HG; Thu, 23 Nov 2023 16:07:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG7xIg007477; Thu, 23 Nov 2023 16:07:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG7x8w007474; Thu, 23 Nov 2023 16:07:59 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:07:59 GMT Message-Id: <202311231607.3ANG7x8w007474@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 41e26e8288f1 - main - powerpc: better handling of shutdown flags List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 41e26e8288f1743c8584e5f9c461d36dce1cccc6 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=41e26e8288f1743c8584e5f9c461d36dce1cccc6 commit 41e26e8288f1743c8584e5f9c461d36dce1cccc6 Author: Mitchell Horne AuthorDate: 2023-11-23 15:25:05 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 powerpc: better handling of shutdown flags RB_HALT does not mean poweroff, RB_POWEROFF does. Reviewed by: jhibbits MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42339 --- sys/powerpc/powermac/cuda.c | 8 +++++++- sys/powerpc/powermac/pmu.c | 6 ++++-- sys/powerpc/powermac/smu.c | 6 ++++-- sys/powerpc/powernv/opal_dev.c | 6 ++++-- sys/powerpc/pseries/rtas_dev.c | 4 ++-- 5 files changed, 21 insertions(+), 9 deletions(-) diff --git a/sys/powerpc/powermac/cuda.c b/sys/powerpc/powermac/cuda.c index 974ad585b543..97f60f269559 100644 --- a/sys/powerpc/powermac/cuda.c +++ b/sys/powerpc/powermac/cuda.c @@ -748,7 +748,13 @@ cuda_shutdown(void *xsc, int howto) struct cuda_softc *sc = xsc; uint8_t cmd[] = {CUDA_PSEUDO, 0}; - cmd[1] = (howto & RB_HALT) ? CMD_POWEROFF : CMD_RESET; + if ((howto & RB_POWEROFF) != 0) + cmd[1] = CMD_POWEROFF; + else if ((howto & RB_HALT) == 0) + cmd[1] = CMD_RESET; + else + return; + cuda_poll(sc->sc_dev); cuda_send(sc, 1, 2, cmd); diff --git a/sys/powerpc/powermac/pmu.c b/sys/powerpc/powermac/pmu.c index 67ef57bf6be8..f9d9d4d40c72 100644 --- a/sys/powerpc/powermac/pmu.c +++ b/sys/powerpc/powermac/pmu.c @@ -812,10 +812,12 @@ pmu_shutdown(void *xsc, int howto) struct pmu_softc *sc = xsc; uint8_t cmd[] = {'M', 'A', 'T', 'T'}; - if (howto & RB_HALT) + if ((howto & RB_POWEROFF) != 0) pmu_send(sc, PMU_POWER_OFF, 4, cmd, 0, NULL); - else + else if ((howto & RB_HALT) == 0) pmu_send(sc, PMU_RESET_CPU, 0, NULL, 0, NULL); + else + return; for (;;); } diff --git a/sys/powerpc/powermac/smu.c b/sys/powerpc/powermac/smu.c index 5aed7b87d3c2..af00599e6b54 100644 --- a/sys/powerpc/powermac/smu.c +++ b/sys/powerpc/powermac/smu.c @@ -1317,10 +1317,12 @@ smu_shutdown(void *xdev, int howto) struct smu_cmd cmd; cmd.cmd = SMU_POWER; - if (howto & RB_HALT) + if ((howto & RB_POWEROFF) != 0) strcpy(cmd.data, "SHUTDOWN"); - else + else if ((howto & RB_HALT) == 0) strcpy(cmd.data, "RESTART"); + else + return; cmd.len = strlen(cmd.data); diff --git a/sys/powerpc/powernv/opal_dev.c b/sys/powerpc/powernv/opal_dev.c index edb8f6d435ad..ab1a1fbb731c 100644 --- a/sys/powerpc/powernv/opal_dev.c +++ b/sys/powerpc/powernv/opal_dev.c @@ -344,10 +344,12 @@ static void opal_shutdown(void *arg, int howto) { - if (howto & RB_HALT) + if ((howto & RB_POWEROFF) != 0) opal_call(OPAL_CEC_POWER_DOWN, 0 /* Normal power off */); - else + else if ((howto & RB_HALT) == 0) opal_call(OPAL_CEC_REBOOT); + else + return; opal_call(OPAL_RETURN_CPU); } diff --git a/sys/powerpc/pseries/rtas_dev.c b/sys/powerpc/pseries/rtas_dev.c index ef9522f5495d..f8198ef27417 100644 --- a/sys/powerpc/pseries/rtas_dev.c +++ b/sys/powerpc/pseries/rtas_dev.c @@ -155,13 +155,13 @@ rtas_shutdown(void *arg, int howto) { cell_t token, status; - if (howto & RB_HALT) { + if ((howto & RB_POWEROFF) != 0) { token = rtas_token_lookup("power-off"); if (token == -1) return; rtas_call_method(token, 2, 1, 0, 0, &status); - } else { + } else if ((howto & RB_HALT) == 0) { token = rtas_token_lookup("system-reboot"); if (token == -1) return; From nobody Thu Nov 23 16:08:00 2023 X-Original-To: dev-commits-src-main@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 4Sbjh03rHSz51nGb; Thu, 23 Nov 2023 16:08:00 +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 4Sbjh0300hz4QDZ; Thu, 23 Nov 2023 16:08:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755680; 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=2A3bY2UnB2vJJiFstCz6J0IgPin+1fRBJNyZHEgO54k=; b=aEkkh94wLJbGbFO0pAt+zffjzLA6rWJEYE/ZPqJeRzYz3C0WoideseK/hzGXYW6wiG+6j9 YCwbSCoxmheFpgEXiNX4VuGd17+XTVpLqWT4n8YnFeQV449hOXd4pOSjzYhc+JofVPyltz jvwR7Fz60C9xsczB1XqF1/x41YMPbk+nxPpElQKn7ABGu1wNdtsOIOflFtyW/rTxsYWW/a zqOBKo0Nuc7/5psxGmGCuPDAmdU/C2zW5q3Hm4rwb2TqukhIwJkh4SUARGOTT+2ZTXIhT4 IWa9VeHilwnV/91OCs9+sThyj2tPskImyNsunnNvNBQEHV3RIQCNPJeJsGW1GQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755680; 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=2A3bY2UnB2vJJiFstCz6J0IgPin+1fRBJNyZHEgO54k=; b=GBQSjBZ3PtxFSyNYhDUh6OC6LnwQpi0J7Y8qWOK+LtBzhVZWogikyxaqz5lI03d15Q49FE yw+wugMJzgXzPJhbRfFAoYKWv5jJDP+YlwaNSbak8aBs5EeK+URWD4Hd9fLaCU7zVIvw45 5Se8NUbqrO+qlfijLi4PJD1yOV5/4WKZKxwYCkq/grYbcoMOdOWEIqQJu1oj3km8hXtwN+ 08yANhDGn5Go6TpMy3KT8QG0m4YkLPhHfTIFmQLIZVdy9N4xnfV+k8ubeTO9+MosrNp4Wd 3gW7GHN1MwBWBTjp6TvcfSk37aolYqnkP2H59kSB0CxE10ErTDPxSCbDWcaqsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755680; a=rsa-sha256; cv=none; b=b13kuNYOiF/3pZTgQRD93Q9vfNw268qpbpMxKiqVJdK+E4WJPIZmeFbAQnZy02HlbcmYvZ XIfSDjfPkpK3ymZpqu9YmHXugTN2tCZndXhzV+KeGHxYuV06wk4hPn41k/BZDEiSNkkaCY 2atmMPNLR0OAtrJMY7oqfwZv6QOTu4Td7N76Le/jJVDOuDydm8orbd9spVGvoM4yRl3uuh D031DXfg+5jV/8O0v16zEcZJMAZCvrJS5hW6GKDlyqKmS4/HLFZb/qny+2kO1wgrmRXq8T tbOlNsccUa6U6Lh9NzmhushLB/fn8Fphar5XICccjLVXkYcdx+IQX0Moo46tQA== 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 4Sbjh01v6Mz17fZ; Thu, 23 Nov 2023 16:08:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG80CY007539; Thu, 23 Nov 2023 16:08:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG80dG007536; Thu, 23 Nov 2023 16:08:00 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:08:00 GMT Message-Id: <202311231608.3ANG80dG007536@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: d79a9edb5ce1 - main - alq, siftr: add panic/debugger checks to shutdown hooks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d79a9edb5ce162c1ba49e12e5c93b894e6a25ad2 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=d79a9edb5ce162c1ba49e12e5c93b894e6a25ad2 commit d79a9edb5ce162c1ba49e12e5c93b894e6a25ad2 Author: Mitchell Horne AuthorDate: 2023-11-23 15:25:30 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 alq, siftr: add panic/debugger checks to shutdown hooks Don't try to gracefully terminate the pkt_manager thread if the scheduler is not running. We should not attempt to shutdown ald if RB_NOSYNC is set, and must not if the scheduler is stopped (the function calls wakeup()). Reviewed by: markj MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42340 --- sys/kern/kern_alq.c | 14 +++++++++----- sys/netinet/siftr.c | 6 +++++- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/sys/kern/kern_alq.c b/sys/kern/kern_alq.c index 51fd66f2fe9f..1bcce92509c5 100644 --- a/sys/kern/kern_alq.c +++ b/sys/kern/kern_alq.c @@ -37,19 +37,20 @@ #include #include +#include +#include +#include #include #include #include +#include #include #include #include #include -#include -#include -#include +#include #include -#include -#include +#include #include @@ -228,6 +229,9 @@ ald_shutdown(void *arg, int howto) { struct alq *alq; + if ((howto & RB_NOSYNC) != 0 || SCHEDULER_STOPPED()) + return; + ALD_LOCK(); /* Ensure no new queues can be created. */ diff --git a/sys/netinet/siftr.c b/sys/netinet/siftr.c index fbb47fc4a521..13b26e61b5d4 100644 --- a/sys/netinet/siftr.c +++ b/sys/netinet/siftr.c @@ -74,6 +74,7 @@ #include #include #include +#include #include #include #include @@ -1300,8 +1301,11 @@ siftr_sysctl_enabled_handler(SYSCTL_HANDLER_ARGS) } static void -siftr_shutdown_handler(void *arg) +siftr_shutdown_handler(void *arg, int howto) { + if ((howto & RB_NOSYNC) != 0 || SCHEDULER_STOPPED()) + return; + if (siftr_enabled == 1) { siftr_manage_ops(SIFTR_DISABLE); } From nobody Thu Nov 23 16:08:01 2023 X-Original-To: dev-commits-src-main@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 4Sbjh146Fnz51nZK; Thu, 23 Nov 2023 16:08:01 +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 4Sbjh13gG1z4Q17; Thu, 23 Nov 2023 16:08:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755681; 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=9mJY/bR5I4z3SIP50SRvxqdqkEdZdyec+1Z/OB5cFGI=; b=NV2vaS6Fp5XWmT3P2DbXHLt/9ZS8HqseZ/bzjivVapv7t2xIlyQJociE9fz1SlNZnBktNj eZGlaFfdCnwxkyiEP8VOs2Wukrmyz5Rhw3WaJ+7bzV6B4sMXLJaQDUZA4Wfi1m4HXE2tyc F/zHyU8RT6n1mYBGRK9qLpGBk5nS7ROrMTXReM8Z9vBdglDxZeOuR84audkTBCz2liicZt Q6klKYKD6vjo5rtnwBa9kEToih1R5v56fHmL4l3KDjWSmSxBYVX+eAUNFwT15BUVCa7hrp zICdzJ0qUvhUWBb09AIJenyRYz0F+q1cLX/OQFoxptzqY/Qxuhyy9ac8yi/Ydw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755681; 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=9mJY/bR5I4z3SIP50SRvxqdqkEdZdyec+1Z/OB5cFGI=; b=MWHzTkhUR3b0Uz+OLRY4bGM8w1me/UvEI3drKdLbzT6mIeqsnP3d+9kMkUDlO94LRCIMQ3 ++cr2g4IRSTxJ3TZRBjTObxXuzVODjp542rKtilCUN8cjzMtbhuPjGOGlJuIJ312UgU7xI mQBvhCkrnEle5ROS5g1a9iXO6arlpRJJ28FLPTyQlVoK4wBwFf0J4O1ziqyQHNp4mzQoTb aEbF30qwpIUYoicgPAJ66EVio1QE+wLJtPatU4bz+MYJaJM9+XWUXtaxEb3CqAnXraB3ce x7KU8XlAbLBiu/rjHcZ9g6vm+79gQ8r6x8U4QVip7n3PQe01do6NVdBHOW2fag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755681; a=rsa-sha256; cv=none; b=pbSuwGtamRTIJV7+vyAOn16lE9Eqq9VrbXePO8oCfz/ZDKPu/HzJVAaSnXtmZQvITg6umK mSg69qMnqOy9VEMJWCRYEfyxZXLIKN9geYsqcRhjrvkyJeHeuiXMxLThSpbd3aKA2uwgjN qojZIEoMuYXxVn8keXHxtgpooxJiBGwd3pjdf3/E+xrOQv4PJ1h47ipH9MJV6k+hKEvB0C U44hK02TU1AVwfO4PVarcPEuuAEsls4O6FD0jCIafiN21FFReHsOSNCGrIwHB/DD1HcThe SJT3+uTpVV8y1q+Ex0imhpIOXpdm5TXz7tiNR4LY30k8NFmWzXFSCUNBZeLfJg== 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 4Sbjh12hfJz17hL; Thu, 23 Nov 2023 16:08:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG81LF007592; Thu, 23 Nov 2023 16:08:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG81xT007589; Thu, 23 Nov 2023 16:08:01 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:08:01 GMT Message-Id: <202311231608.3ANG81xT007589@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 9d61fd084996 - main - ctl_ha: don't shutdown threads if scheduler is stopped List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9d61fd08499609a2c95d1c66f97587932b446f06 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=9d61fd08499609a2c95d1c66f97587932b446f06 commit 9d61fd08499609a2c95d1c66f97587932b446f06 Author: Mitchell Horne AuthorDate: 2023-11-23 15:25:54 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 ctl_ha: don't shutdown threads if scheduler is stopped In this case, just return. Reviewed by: markj MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42341 --- sys/cam/ctl/ctl_ha.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/cam/ctl/ctl_ha.c b/sys/cam/ctl/ctl_ha.c index 181f42640cce..0828c46c8863 100644 --- a/sys/cam/ctl/ctl_ha.c +++ b/sys/cam/ctl/ctl_ha.c @@ -909,13 +909,16 @@ ctl_ha_msg_shutdown(struct ctl_softc *ctl_softc) { struct ha_softc *softc = &ha_softc; + if (SCHEDULER_STOPPED()) + return; + /* Disconnect and shutdown threads. */ mtx_lock(&softc->ha_lock); if (softc->ha_shutdown < 2) { softc->ha_shutdown = 1; softc->ha_wakeup = 1; wakeup(&softc->ha_wakeup); - while (softc->ha_shutdown < 2 && !SCHEDULER_STOPPED()) { + while (softc->ha_shutdown < 2) { msleep(&softc->ha_wakeup, &softc->ha_lock, 0, "shutdown", hz); } From nobody Thu Nov 23 16:08:02 2023 X-Original-To: dev-commits-src-main@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 4Sbjh301Tdz51nZM; Thu, 23 Nov 2023 16:08:03 +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 4Sbjh24R72z4Q8y; Thu, 23 Nov 2023 16:08:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755682; 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=nS+D8jXPdHoKoPyu85BRRyAVoRQXC1ksGAKCTNgolZc=; b=QAnVXC5tUF5E1TTEPHmnFnuz5FCzcCIH+CwgIsxkIRhWrEyn230Ir7OyV6+1vAI3QNFKAj 23odnRo7CwlvZlruVKDubSNQdFLRoFCbADc/NJ4jkRgeGuG5/t+DU4ZrmMpcs5rgWhN0mt U1G7Id45c15caEQt85Eyhrrryy15+xX65p8Sb3tSW/izeG4O5pwo7FDCP6ByHHE3/ny/BQ qbs2w+xqRhC2H6CXED337mrnBE7J6QHm9bt+2r/01YcE/qkpFQ3ilyv3PLGWXZuq8uELQL DELTcYtTCC3HEMhacNvNBIpI4t5kMtE7SogQjgCTMr+qs4GyVXejKxIIAU0k1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755682; 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=nS+D8jXPdHoKoPyu85BRRyAVoRQXC1ksGAKCTNgolZc=; b=Y1wh8A1akcbNRxfCfdVpIPzkHRn8QOxuQCRVUQAQrfsvngm/ow8gX5oJn7giHtVf1P0blA 9q0DhgpQNRC/8jXbfaESRcVgtEHFdzDpqFm9tVwJCAQ59Cg15uRGg4kajbWmv8ATMxDYyC OgqBNpSyFq4OlxNp8weOainDmiSiX6uUA1dfkrNyRQBi4VmfGoEpXega0rGxpd59Vg8PYF JIGoJIz2FuoH5QXj9vhC1h5iBeuYYGQcaign1rslofJTpGfVeN/KA6oGiHAOtM/H8nXSk7 y1CYZUyN8bzmHCx4K2jqeocg1jp3PrichdxHcGgHoWWOpmqxkXOfjqb4ATGW/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755682; a=rsa-sha256; cv=none; b=kM+YAqMq9SfD6oSU5MymOV2ISM5cicm9ae8N/lF9CBVdp9SvUScxvp1UwB9dFIvnLToSo+ z+7RggmOZGcb/5iTOORWCFGcbnIRrUnXhVcgxkq36YoYEcANwPsap3cG7PqhpViyr+22Ir rKM/ZU+IbQn40NN6MddaB6fq2duvyK0haHMH/NkMzOupTkNPT3IwJ+cqyJIWTM8l/X5kyU BFvA30abIlYSucdRBcnV4y9cKHt/SuzmtXPIbHMPK+4QKly5aLzWoJvu31O1mQWkRHiEot R2vb2epITLPcKPiix+NblaQ78WIuEhMQt6G15N5pweiQlbK/+6KcXlInm93nKQ== 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 4Sbjh23XnTz17hM; Thu, 23 Nov 2023 16:08:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG82Js007631; Thu, 23 Nov 2023 16:08:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG82Hj007628; Thu, 23 Nov 2023 16:08:02 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:08:02 GMT Message-Id: <202311231608.3ANG82Hj007628@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 2ce1c45b3411 - main - iscsi: adjust shutdown_pre_sync handler List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2ce1c45b3411410a5d0a4d08198a3b0010d493b7 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=2ce1c45b3411410a5d0a4d08198a3b0010d493b7 commit 2ce1c45b3411410a5d0a4d08198a3b0010d493b7 Author: Mitchell Horne AuthorDate: 2023-11-23 15:26:12 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 iscsi: adjust shutdown_pre_sync handler Don't attempt to service reconnections if RB_NOSYNC is set. More crucially, don't do it if the scheduler is stopped, as the maintenance thread will never run again. Reviewed by: jhb MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42342 --- sys/dev/iscsi/iscsi.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/dev/iscsi/iscsi.c b/sys/dev/iscsi/iscsi.c index 311b339caf7a..38973898a9d1 100644 --- a/sys/dev/iscsi/iscsi.c +++ b/sys/dev/iscsi/iscsi.c @@ -44,6 +44,7 @@ #include #include #include +#include #include #include #include @@ -2680,11 +2681,12 @@ iscsi_terminate_sessions(struct iscsi_softc *sc) } static void -iscsi_shutdown_pre(struct iscsi_softc *sc) +iscsi_shutdown_pre(struct iscsi_softc *sc, int howto) { struct iscsi_session *is; - if (!fail_on_shutdown) + if (!fail_on_shutdown || (howto & RB_NOSYNC) != 0 || + SCHEDULER_STOPPED()) return; /* From nobody Thu Nov 23 16:08:03 2023 X-Original-To: dev-commits-src-main@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 4Sbjh40LKtz51nd0; Thu, 23 Nov 2023 16:08:04 +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 4Sbjh350pCz4QMF; Thu, 23 Nov 2023 16:08:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755683; 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=Y/Q+ef3ppE2qPkq2ZHeUdjLOUEQxbO3TnxMryz7y91M=; b=wYJwrkzqFvvwc7fNEa9rTv5E/J0nokQYiq/8jwFWe8qlXPBScLmf5fQIkrCVgi0uA5GQl9 Fhw9CH8ySbk9/64NdL5lnls7fcbrbPRY5qVddbUKDjJPMTjaLfSa1BILRDQgXbwR+QHO5Q v5hjGLcWBgNiLQVpdNa7ZEXU6msCyrejeklBHOK0B5fcoKPGRz8fIm0dfubRuvpKAfKOyz 4vDbp37zQqYKB3XuEHcy5+VpQDqe0qWNvE6MMr+3ns0v6k7WAvMHzrzU0ru3WPeSeQnjbV msH83zdUkBgRQo6+gmk6dtDzra64nbqzdWe7nAFEk77fRKEzW5KsMyjEm73grw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755683; 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=Y/Q+ef3ppE2qPkq2ZHeUdjLOUEQxbO3TnxMryz7y91M=; b=vgtToOTjCWDHXIZclpJ2VHH+o+90QtX27+aJ6mM8V6+jNfc9MpIe0xapp7neFaeI4I5IDx HJOi9DGSCjTF/zxzTc+VkfhXXl+WgYGryolCBI97pUtIS79ESIA0y/SMzghM/aoRmnvD9E /BQgGhSJZXg3JOhVQ0heLgXhf2DJaPwCDiVOnZ0GK0FPAqq/QmAxKZ87XWLacQG6N95sih YOOzqkBgnaIS3NoBeNNU80nF4Jy+JCh3na3/6Qzgaz4Y6mYecMo7MszoPFjVpDcMLTl0HU ZfoqP0CVbLPCy7xstLhcBt8VY+O1wEsxPglO0rbDZF2MMeoWTptLiJ0EtnIltQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755683; a=rsa-sha256; cv=none; b=J+OpMTOzM5Mxw6KVceEY3ygnVlUi9G12nhT/FiVSmmhuSnyRHqALYS10PNCzMaNeMf9LZs TNbH2f9e9Uq92CROSdhqP2gemZYs2izjsn9pD81TwR+/i/StygpIR3Xa7ZkYzCk31AKpRe PxM9vm418EQMJLYPdXJerW2dC9CKkFiuF2fnSnvX9gwaDkEDwMZ9UsFTFmHxXbAOgFqV+N PFX0vQ1AcXkktlVwdHAHVFP8lpkvLqw8r3dN9FhIKDh9pEsXOofzeQS7BdH4k4AwSZySN0 y/nEA4T0vhImhzkzIJPv+p8OzN8ZoUVH4s+R6EfMNyH0EdZEI/1NvtAMfn64Nw== 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 4Sbjh345zMz17B2; Thu, 23 Nov 2023 16:08:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG83Aj007674; Thu, 23 Nov 2023 16:08:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG83a9007671; Thu, 23 Nov 2023 16:08:03 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:08:03 GMT Message-Id: <202311231608.3ANG83a9007671@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 9e0b0f5de67f - main - xen: improve shutdown hook List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9e0b0f5de67fd46bddf0e12ef7b71d76a7ec1667 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=9e0b0f5de67fd46bddf0e12ef7b71d76a7ec1667 commit 9e0b0f5de67fd46bddf0e12ef7b71d76a7ec1667 Author: Mitchell Horne AuthorDate: 2023-11-23 15:27:20 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:42 +0000 xen: improve shutdown hook Make better use of the shutdown flags. In particular this now handles standard reboot where RB_POWERCYCLE is not set, and indicates a crash when the system has panicked. While here, give the function a prefix. Reviewed by: royger, markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42343 --- sys/dev/xen/control/control.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/sys/dev/xen/control/control.c b/sys/dev/xen/control/control.c index 9ea0222809a0..37b4bff709c7 100644 --- a/sys/dev/xen/control/control.c +++ b/sys/dev/xen/control/control.c @@ -345,12 +345,18 @@ xctrl_crash(void) } static void -shutdown_final(void *arg, int howto) +xctrl_shutdown_final(void *arg, int howto) { - /* Inform the hypervisor that shutdown is complete. */ - if (howto & RB_POWEROFF) + /* + * Inform the hypervisor that shutdown is complete, and specify the + * nature of the shutdown. RB_HALT is not handled by this function. + */ + if (KERNEL_PANICKED()) + HYPERVISOR_shutdown(SHUTDOWN_crash); + else if ((howto & RB_POWEROFF) != 0) HYPERVISOR_shutdown(SHUTDOWN_poweroff); - else if (howto & RB_POWERCYCLE) + else if ((howto & RB_HALT) == 0) + /* RB_POWERCYCLE or regular reset. */ HYPERVISOR_shutdown(SHUTDOWN_reboot); } @@ -446,7 +452,7 @@ xctrl_attach(device_t dev) xctrl->xctrl_watch.max_pending = 1; xs_register_watch(&xctrl->xctrl_watch); - EVENTHANDLER_REGISTER(shutdown_final, shutdown_final, NULL, + EVENTHANDLER_REGISTER(shutdown_final, xctrl_shutdown_final, NULL, SHUTDOWN_PRI_LAST); return (0); From nobody Thu Nov 23 16:08:04 2023 X-Original-To: dev-commits-src-main@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 4Sbjh50Bryz51ng1; Thu, 23 Nov 2023 16:08:05 +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 4Sbjh46Pt4z4QFx; Thu, 23 Nov 2023 16:08:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755684; 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=ysGdZLEQnph2TrMJLOQxRsjNc/jOvhmEQsUSOzeSVis=; b=A6doW4qxhuLVRJBP0otoz4nRe4U86IFBc2JGWx0S4pnexWusVFD/9sioCECEzK+zhKH3gb ixEP+gntI4ir4l+MqlcFJL1xvx/5HEd+wgRdrV+4npGpYRZbWrxkqwfdSzY+5DCzwnuiKt qdt1XwczU3vi/5Qve36tw0Pyv1sGmTHaa42TXrKtuHvV9Y7+LgdxW4ZNkQMUQ20kHYxl7g Lz13ud+vQQ+IZ+PJJ9bRnVYdsnhyZTb6ZDQ79XSjZwxB6WBxsDY3Mi8DMTPNTInTwFG6hv 3+/4Q2YuopXBKiXvEcFQgfc0daoShkwXHtkEecmDpbNkFDfAajsXQdAFAaLUAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755684; 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=ysGdZLEQnph2TrMJLOQxRsjNc/jOvhmEQsUSOzeSVis=; b=i7zM1GkK4AyREkIzUyrLrPmciITeJokY6Hxaq77a5BCy02KRnuo0xVl+K203hgDDVtlZNT kUsVYqToboZSjfIPKrUNknmH5ybzPeFXfXGguVrqijhIbCjX2a6cl0NAD6fmzCyPKgKquP 6Wy2Jq9Ut1EC3V20cIfZYyo0vFdlQVn3D3V+g8/dYYJIWwGf//SU1onD0T/ZrsPMDaNdWY ksCT9KOSHK3j5U3jHt3qcU5zrZtliXN3b3ZNq6Uuv/cHBAnxT2KgrUNq1ygcwctkD9jbpu rNw19DnWGEVeN4F+wkE/UYYeOnJG8pdxG5MLcNVFQZUE4oPAdSUWaNPflG6NAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755684; a=rsa-sha256; cv=none; b=loGJZItOdMXq62s+QkmOA+AcQfJojMC8FsEy51WsxY1OUcsJpmxeF3ZvUAZNpY1UXoYNW+ pSUVg1NIMnk7NfqsUujJQGSIDBi4nzoj4tEAz4l0UPJIbPsU9bhKrH+xhHM94RTPiIQmCg cr4atpLlHvX+t17+1GwIXDdwDLrAyEf3C0GVHKJyOjbf/kwFOhYciqkbr9MXnQKs08P+Rr 7JxbO/AV0FHP78swQBdx5DrPUtaXzL2KuGaY6gHUZ6sIYEWGXkBqMbCE8+gNtNkkb0b3cN Y3WlDmBTWbxs51TpMprJ2+KJp0yxw7cyFD7gXDh3zJm6AzpVJ50albU0cUg7pw== 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 4Sbjh45Qhpz17B3; Thu, 23 Nov 2023 16:08:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG84s7007716; Thu, 23 Nov 2023 16:08:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG84vZ007713; Thu, 23 Nov 2023 16:08:04 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:08:04 GMT Message-Id: <202311231608.3ANG84vZ007713@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 960612a19f00 - main - shutdown: tweak kproc/kthread shutdown check List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 960612a19f009df602a4cb008fa90a45a6e869bb Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=960612a19f009df602a4cb008fa90a45a6e869bb commit 960612a19f009df602a4cb008fa90a45a6e869bb Author: Mitchell Horne AuthorDate: 2023-11-23 15:27:57 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:43 +0000 shutdown: tweak kproc/kthread shutdown check This is to handle the case where the system has not panicked but the debugger is active, where we still can't wait for thread termination. Reviewed by: markj MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42683 --- sys/kern/kern_shutdown.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c index 19920d30357f..b69caebe17d9 100644 --- a/sys/kern/kern_shutdown.c +++ b/sys/kern/kern_shutdown.c @@ -1011,7 +1011,7 @@ kproc_shutdown(void *arg, int howto) struct proc *p; int error; - if (KERNEL_PANICKED()) + if (SCHEDULER_STOPPED()) return; p = (struct proc *)arg; @@ -1031,7 +1031,7 @@ kthread_shutdown(void *arg, int howto) struct thread *td; int error; - if (KERNEL_PANICKED()) + if (SCHEDULER_STOPPED()) return; td = (struct thread *)arg; From nobody Thu Nov 23 16:08:05 2023 X-Original-To: dev-commits-src-main@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 4Sbjh61D4Pz51nZN; Thu, 23 Nov 2023 16:08:06 +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 4Sbjh60MJ4z4QYZ; Thu, 23 Nov 2023 16:08:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755686; 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=SnQKMtuVawv2w4fGCRFNFw/cLVopuVCQYyJAw98S1rg=; b=rG2mcR0J0MZRFZNmxRN3B6JwE0vOr/gc2MG33AHxhdSyfMdLKic/DN/aO/hZKfp0XxOE6M MH+mLiZzWjl0VnX5UzojfhiIxyjg+FiAObLuxcjjOEFZViwsJVCq3UnzOR0vhSG/zIoAEG cXRWyX1gYbRAemBERDuhf6gP9TDQUZNfQW6cy0tH3vW7DOom+KAbceoAR/JssMSPGHS8GG LnZ7Db6Dckz153ry8dIda27vaJ2L8Wp8m2LvAXE78dT0CeD2SVsTd08YLQh1b6snMO9IUs QsM92GV5UKiAvfObt8O2wTKBxscS638KBTI0KVFsywArTbI7gVOTvslSC0a9/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755686; 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=SnQKMtuVawv2w4fGCRFNFw/cLVopuVCQYyJAw98S1rg=; b=RSkxP0Gs8zif0KcAGoQoV3R/QOde9zK4LeM/OFKK7HYtbZ1/ZAVwoeFHm64teAxF+MiWzS mS/x/xWjrOozL6hD9P+qZ3wwWhtxmqwG/w/pH5lHOiXOkH5lVjTkPwRwxS/vuK+xAgOFmQ WOi1+D9jsiyEERmvIhmSPthYLBaBr9exJFq61lsISq328MOoStPowwDTP61Erwflq0A28k Rr3IS71MCBzVm3d/L1jWR+VudH8g5dO2raCOvEB2TDNcKN2KPh36RMbAW5SW8wH1SZx4pt pGAHoTLp+GSydm+JtR+H+QI/f4fZzHkehODuDO2FaVbkUEzoGjLxQWsgHV9QDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755686; a=rsa-sha256; cv=none; b=XuZz5geABCaCa6X3NuqEaRxPzC1j0U/wdc+VN41OzRVIBXxWwCMl+4380KnJ+vVkv/qCuT egNySz+BniZ5p4KM23J/k3xKpPvKA8lQtpXnLDZpFTIuzEMD2rh3h1wurcQHF6PDsTW9J3 7I/9t7f4re1ZS/2p2HhJUb8ywjFilXxT/tMAs561oKpKQt3Ap34w2/UoYL9NIAHM6m1vEv cmTeoRLcrMzHUmhpHJhGAezAnuVHSGlv1Ij2sPQXTFlkO4yg3IMYY2FFpijcTTU4QG8duV RHX8JZdYWCilFqyBC2iMKGGMKnz1A888xlHosxRYfsy9FrhCdcPLK7lQYJEXUg== 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 4Sbjh56HdTz16ny; Thu, 23 Nov 2023 16:08:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANG85Qj007758; Thu, 23 Nov 2023 16:08:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANG85dQ007755; Thu, 23 Nov 2023 16:08:05 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:08:05 GMT Message-Id: <202311231608.3ANG85dQ007755@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 4e78a766f607 - main - kern_reboot(): don't clear kdb_active List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4e78a766f607192698514d970ff4e9fa91d0482d Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=4e78a766f607192698514d970ff4e9fa91d0482d commit 4e78a766f607192698514d970ff4e9fa91d0482d Author: Mitchell Horne AuthorDate: 2023-11-23 15:28:26 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:07:43 +0000 kern_reboot(): don't clear kdb_active It is possible to reach this function from ddb via the "reset" command. When this happens, we don't actually exit kdb, meaning we never execute the latter steps of kdb_break() to restore the system state (e.g. re-enable scheduler). Therefore, we should not clear the kdb_active flag in this function, as the debugger is still active. Put differently, kern_reboot() is not an authority on kdb state, and should not touch it. The original motivation for this assignment is not clear; I have checked thoroughly and I am convinced it is not required by any reset code. This fixes an edge case where a panic can be triggered during reset from ddb: 1. Enter ddb via keyboard break sequence (KERNEL_PANICKED() == false && td->td_critnest > 0) 2. Execute the "reset" command 3. kern_reboot() sets kdb_active = false 4. A witness_checkorder() call via shutdown handler sees !kdb_active and panics Reviewed by: imp, markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42684 --- share/man/man9/kern_reboot.9 | 7 ------- sys/kern/kern_shutdown.c | 3 --- 2 files changed, 10 deletions(-) diff --git a/share/man/man9/kern_reboot.9 b/share/man/man9/kern_reboot.9 index f8513c0adf18..c86e9a6cbdb9 100644 --- a/share/man/man9/kern_reboot.9 +++ b/share/man/man9/kern_reboot.9 @@ -96,13 +96,6 @@ variable to .Dv 1 , indicating that the reboot process has begun and cannot be stopped. .It -Set the -.Va kdb_active -variable to -.Dv 0 , -indicating that execution has left the kernel debugger, if it was previously -active. -.It Unless the .Dv RB_NOSYNC flag is set in diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c index b69caebe17d9..ea86a7e24d06 100644 --- a/sys/kern/kern_shutdown.c +++ b/sys/kern/kern_shutdown.c @@ -492,9 +492,6 @@ kern_reboot(int howto) rebooting = 1; reboottrace(howto); - /* We are out of the debugger now. */ - kdb_active = 0; - /* * Do any callouts that should be done BEFORE syncing the filesystems. */ From nobody Thu Nov 23 16:11:52 2023 X-Original-To: dev-commits-src-main@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 4SbjmS4SPZz51pCG; Thu, 23 Nov 2023 16:11:52 +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 4SbjmS42F6z4V66; Thu, 23 Nov 2023 16:11:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755912; 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=F5f7CityKqM4TnIY7RKwv8WZSnW1N705mpJmmTWaDJA=; b=VfSeq2rQjB3TWCIyHl2CsduTyO1BQWSjH+grAJhTGz8xxEoGaJep5C6+Uu7lbtpCURmby2 3LdTGGjIO6l4OFzIEJ8Y8sy+cr9cEBLrYoRznGsWC7fo1v0MLJS7G8UZVIDGXS7SFed2wG kBeIQ4zOfnoTNR8b5H0hTJhwvgfh908Gc+62OOEsSgor4UXIXwbrOqJZk1NvNTX+SRZA3f jcQzqtYjNvWBa3K+AePgR2psNKXPJn6BKGtkKAOAmMYqzIXcD5kqo7yEx9f3yOjhfXPJQF NB5uH9MREgLaLTBHpwD1o26TI4eLjyrkcV4vhLuY6FLwYtclrvxAwITboqqFIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700755912; 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=F5f7CityKqM4TnIY7RKwv8WZSnW1N705mpJmmTWaDJA=; b=e2lfF11WbhCPcAtSd7SJcuxhvCUDRfE1XjRFInlHt7UnINC10MKC6y0n8sTXgUEYYdq7CK DL4qaJYtXi4MGcoBbOwv81r+9H9oQsmjjNZsdqtcETpxIgyGyTKfkWPfgpgSCHV1Qh4K3D 6qoA1tVJBdURErjCeZipVU6oiahWhjUYpGLkKBOrhK48KQIP7Cg19+1OMO+ftjbmtwamRE TyzogyUMvy+7aWlYFC/wFZF7m8BpLZGoX2D68gzmHTw78IsPJB27TfEKnxCw7BuvfXdftd uBoRm/Tr7bCQ72KgEki3vaM17I8omKecWWrMSnQNKKRj1fVJ5FLq9s/uVGGCVA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700755912; a=rsa-sha256; cv=none; b=s2sxrle3jwegrbYhqakCRXBstpKyc3VwQr7oFJWtqQkk/1GRbnbjD1MlOKXin1nXzJA5s7 EFE4Cnn5KqNjBqYiM8FYrclCLSMwIINjA8vlohioMc8sAyCAlhkQq4NK1Ps6pD6ScgnqlT I4G40qXvv0HOMkshqa3cxRQquOWo2i5gTuzbusM1AQtAU+l2tdgfGqtMzL9UhBPy7gVdHX D3Ayw0aYmz8/r185Pe7KmHGmAjmpuYMUlkukwxzCdc9saCPRq4UoM79rj4Xia56Lb9dr6A XVt9s5uW2OhOeQmIm1VS5PrQV7UaFq76blAC+WKM2onyB3QRcSwsL68kU9cP8w== 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 4SbjmS35sgz180K; Thu, 23 Nov 2023 16:11:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANGBqJK022484; Thu, 23 Nov 2023 16:11:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANGBqTk022481; Thu, 23 Nov 2023 16:11:52 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:11:52 GMT Message-Id: <202311231611.3ANGBqTk022481@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: ae9437671a15 - main - kern_reboot(9): belatedly bump .Dd List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ae9437671a1569bb90305996416d3a40e77c2f05 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=ae9437671a1569bb90305996416d3a40e77c2f05 commit ae9437671a1569bb90305996416d3a40e77c2f05 Author: Mitchell Horne AuthorDate: 2023-11-23 16:10:42 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 16:10:42 +0000 kern_reboot(9): belatedly bump .Dd Fixes: 4e78a766f607 ("kern_reboot(): don't clear kdb_active") Sponsored by: The FreeBSD Foundation --- share/man/man9/kern_reboot.9 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/man/man9/kern_reboot.9 b/share/man/man9/kern_reboot.9 index c86e9a6cbdb9..5ab17b892ef4 100644 --- a/share/man/man9/kern_reboot.9 +++ b/share/man/man9/kern_reboot.9 @@ -39,7 +39,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 20, 2023 +.Dd November 23, 2023 .Dt REBOOT 9 .Os .Sh NAME From nobody Thu Nov 23 16:23:28 2023 X-Original-To: dev-commits-src-main@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 4Sbk1r3SzVz51rXl; Thu, 23 Nov 2023 16:23:28 +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 4Sbk1r30DGz4XJR; Thu, 23 Nov 2023 16:23:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700756608; 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=1hcWmvhBDFCgnUUTovVA1pqLgul/XUuX7fJkHuRssvE=; b=rZN5bc34xfHjOH/CO4GI3R9fkquGJ0Ml1guHS8xdkdbo0EM0mwmaCtsc3JWUYDthc6zPJA Yn/NOYAcH2ysrPhPi04Td+r0hGRjWQFocVah/bSNPKDke0mizr3kaMWlb2bWFe2+WMdtSg Ss04V2IbaZAzjUtUnSbO7zt7J27ynT7NsyCt8CIV5TEPr2YjPCSm9j2F/E1m/gC1B8/CF0 uaE0S2rNZEAofLgC/0g5OV2xrWsdypuUbBMzxUtMrcs2qIRt/QSBd7mUFF2LxOK2nIiv6b 9uzMXzqgH3E83an6/6GKAOSr2NgPucjC3kNtqyv0mD4HnzlVJlBGk4sV6IpJvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700756608; 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=1hcWmvhBDFCgnUUTovVA1pqLgul/XUuX7fJkHuRssvE=; b=CFFd/m3igYDy9yLJdfynXOPBmOkEU1x7sgY4C/MANO7DVpuXzG3kmXlfvN2/iwGtcyNo/z jUvLL/2UzlqIwDcveojMtjzmRbOcZ9qyKvOvPbUg9JW/PfMfXkMomMBW+ahOZBjxCRq1bq f0EywW6tyPZOl2nTOAOZRz84WMmuDqVh6pbMXerHX27p+5KT/F2zFgNCa/mYmOKi5lG2Km kaa8cXX7B5mXuU/wecosMCiF+Ie3hrSUJW0VclYvgbqZhw9Xnk0Yz2KRHm1UYfza1NaUR4 4Fro18QlhXINtkPFH1uCX9djC7WcWSHLKBxKuxIKBHd0g6bGapYpZuu8/vSVfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700756608; a=rsa-sha256; cv=none; b=ZXH2h75HdielghR8v2nke2Vx+hwTXAz8K7Rrh+S+UFJVVs5PlafVmi1hOV2/NLq2x3pOdj JHXqKvMdrsA/zejmxX9vtZxgrxsLJcibfqYDvvYElk1sXa4aEBsifFzdrc31C76JPhLLcy E/CHX+/ITP5xEjeeIopI9HQIcImrrFK6eA1qpd8UPNEy7av0pzXVn29CF4Yqk/nzsZunIa HeObGUL0WwjJa83a0k6kLlFq8Qlz5dr7Ha6ZuoQxFdMbUK68qb3tvABY4GaAWUXAwZZb2S Yme0YDEE6qEyZbX0UyGR8mDvtWYSsZDA9YlHB5pTSa9o6M2fDzr3y0DQ9KoXUg== 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 4Sbk1r23Byz17yx; Thu, 23 Nov 2023 16:23:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANGNSgu041026; Thu, 23 Nov 2023 16:23:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANGNSAt041023; Thu, 23 Nov 2023 16:23:28 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:23:28 GMT Message-Id: <202311231623.3ANGNSAt041023@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: a3ceeef26bc8 - main - arm64: lop off another 24MB of KVA for early device mappings List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a3ceeef26bc880b86f4e181bddd9924a2b5e0691 Auto-Submitted: auto-generated The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=a3ceeef26bc880b86f4e181bddd9924a2b5e0691 commit a3ceeef26bc880b86f4e181bddd9924a2b5e0691 Author: Kyle Evans AuthorDate: 2023-11-23 16:21:33 +0000 Commit: Kyle Evans CommitDate: 2023-11-23 16:23:14 +0000 arm64: lop off another 24MB of KVA for early device mappings This grows the block enough to fit a 4K 32-bit depth framebuffer; some firmware would present smaller GOP modes to be able to boot with a smaller framebuffer on these devices, but the Windows Devkit firmware is simply not that nice. Instead, it offers exactly one GOP mode that matches the current resolution of the attached display, so with limited control over resolution on most of my displays it'd be nice if we could Just Work(TM) at 4K. andrew notes that he has some ideas for removing PMAP_MAPDEV_EARLY_SIZE entirely, so this limitation could end up removed altogether in the future. Reviewed by: andrew, emaste Differential Revision: https://reviews.freebsd.org/D42726 --- sys/arm64/include/pte.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/arm64/include/pte.h b/sys/arm64/include/pte.h index f067feabe365..c3d0394e6e9f 100644 --- a/sys/arm64/include/pte.h +++ b/sys/arm64/include/pte.h @@ -164,7 +164,11 @@ typedef uint64_t pt_entry_t; /* page table entry */ /* 0x2 also marks an invalid address */ #define L3_PAGE 0x3 -#define PMAP_MAPDEV_EARLY_SIZE (L2_SIZE * 8) +/* + * A substantial portion of this is to make sure that we can cope with 4K + * framebuffers in early boot, assuming a common 4K resolution @ 32-bit depth. + */ +#define PMAP_MAPDEV_EARLY_SIZE (L2_SIZE * 20) #if PAGE_SIZE == PAGE_SIZE_4K #define L0_ENTRIES_SHIFT 9 From nobody Thu Nov 23 16:29:33 2023 X-Original-To: dev-commits-src-main@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 4Sbk8t14p1z51sLn; Thu, 23 Nov 2023 16:29:34 +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 4Sbk8t0GDbz4Z9R; Thu, 23 Nov 2023 16:29:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700756974; 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=0JoWBe7wPHXTlvQ548s5id2dZyUE08ke8rWDOwaQZ1I=; b=n2CVOPhgNImoLgIdZXUxUPtbcBnSd6Fp+67qtIdYbhWTEX+o9lbNbO/yXHWJlosoSITYen HOIjXYskblJ6O+zXzGeC9S+2ERbCZ2x1gtvSJ89yvmVobWUAKva7cS0hfkqefQ0s7YyvUj xumoB2UYDXMUiObuk0QtnSOP/57fqjwuYjNZccTDzlmHz1JHUD+gpkNBgKQdpTn5TUbbiL ODjiTqPBiQtcSaNqAIzbewQ55GJtAWXIyiAQ8snEY8ESNbuIh3iUYFsyzERfbG6UShv0nc iuLbZfuaoLXHWVbe7r2fo53T4J7w4vwtyo3Yv7Ms+950UmAmkYJwhr1G08AoOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700756974; 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=0JoWBe7wPHXTlvQ548s5id2dZyUE08ke8rWDOwaQZ1I=; b=IzhmUW4RoI42DxO8vvVxZo/wZyDbvvtofcsKgf214/kRPMd2nmLuEcdYrdclpG8sP7WXh4 o3lQj5TTADF6eK8ZLmQM55FUSLa/px5LLJlja80V5kdl5BzPAsJTKtmeb1i+njmp/6H9AG KcrhQ+tt/akX78ktpPR3Vc/SzmeVgIBC0BgYYgfyQpPl/J8ogBLO9LDgOcEfBOikWoX6FJ 7CwQQstx70IRi9keU51KpRB9YzYYBXf2D/DWzaR7RZt4t57TGVih/dGLqQZH4mIm0ifjq9 s7EmuAIrjWvsyy8iqcq66GMvL7djjf6UOziLhfM3EEODzLboGKAbhjWvsqUeRQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700756974; a=rsa-sha256; cv=none; b=HSLRyo2ZcwuYJDvF8sX9y2YnixL/kLjA4HXf3jlqpIrxp5n3IVWRS/gleM+9mWNK4KKvpA DYt1qEVEEGAt4FehcKUOE9/R+jRpqYjojBMXGsUFTvFOE5PyDM0FIvqcPJrJ+MefgkaDYr zEjmXLFdmIxpEXg/vqIgpRltoAT7tHGvh8GP84E7Dgf9BROe8vkgqSfAcgVP0k8wfzMEB7 AXG2aQDuzLmagRwCWyp47aEVB+742CGvPjTFJCZYAsbuhOIRlBciixBqdGkeIfEKrPEBxK SZvSh45SxzejTtUZcxkPMjQVX/fYzG4b22CoczpgxZcxjLAlyxa2LES3rCJeDw== 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 4Sbk8s6QScz183J; Thu, 23 Nov 2023 16:29:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANGTXMI041928; Thu, 23 Nov 2023 16:29:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANGTXTl041925; Thu, 23 Nov 2023 16:29:33 GMT (envelope-from git) Date: Thu, 23 Nov 2023 16:29:33 GMT Message-Id: <202311231629.3ANGTXTl041925@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Motin Subject: git: 8c4ee0b22c98 - main - Use xpt_path_sbuf() in few drivers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c4ee0b22c98fc1e208dd133f617bd329cd10728 Auto-Submitted: auto-generated The branch main has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=8c4ee0b22c98fc1e208dd133f617bd329cd10728 commit 8c4ee0b22c98fc1e208dd133f617bd329cd10728 Author: Alexander Motin AuthorDate: 2023-11-23 16:25:45 +0000 Commit: Alexander Motin CommitDate: 2023-11-23 16:29:19 +0000 Use xpt_path_sbuf() in few drivers xpt_path_string() is now a wrapper around xpt_path_sbuf(). Using it to than concatenate result to another sbuf makes no sense. Just call xpt_path_sbuf() directly. MFC after: 1 month --- sys/dev/mpr/mpr_sas.c | 5 +---- sys/dev/mps/mps_sas.c | 5 +---- sys/dev/virtio/scsi/virtio_scsi.c | 4 +--- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/sys/dev/mpr/mpr_sas.c b/sys/dev/mpr/mpr_sas.c index 9d83162723ae..048b3cb7a53d 100644 --- a/sys/dev/mpr/mpr_sas.c +++ b/sys/dev/mpr/mpr_sas.c @@ -304,7 +304,6 @@ mprsas_log_command(struct mpr_command *cm, u_int level, const char *fmt, ...) struct sbuf sb; va_list ap; char str[224]; - char path_str[64]; if (cm == NULL) return; @@ -318,9 +317,7 @@ mprsas_log_command(struct mpr_command *cm, u_int level, const char *fmt, ...) va_start(ap, fmt); if (cm->cm_ccb != NULL) { - xpt_path_string(cm->cm_ccb->csio.ccb_h.path, path_str, - sizeof(path_str)); - sbuf_cat(&sb, path_str); + xpt_path_sbuf(cm->cm_ccb->csio.ccb_h.path, &sb); if (cm->cm_ccb->ccb_h.func_code == XPT_SCSI_IO) { scsi_command_string(&cm->cm_ccb->csio, &sb); sbuf_printf(&sb, "length %d ", diff --git a/sys/dev/mps/mps_sas.c b/sys/dev/mps/mps_sas.c index 6a5b2f5d90f3..3cf29aa4e893 100644 --- a/sys/dev/mps/mps_sas.c +++ b/sys/dev/mps/mps_sas.c @@ -295,7 +295,6 @@ mpssas_log_command(struct mps_command *cm, u_int level, const char *fmt, ...) struct sbuf sb; va_list ap; char str[224]; - char path_str[64]; if (cm == NULL) return; @@ -309,9 +308,7 @@ mpssas_log_command(struct mps_command *cm, u_int level, const char *fmt, ...) va_start(ap, fmt); if (cm->cm_ccb != NULL) { - xpt_path_string(cm->cm_ccb->csio.ccb_h.path, path_str, - sizeof(path_str)); - sbuf_cat(&sb, path_str); + xpt_path_sbuf(cm->cm_ccb->csio.ccb_h.path, &sb); if (cm->cm_ccb->ccb_h.func_code == XPT_SCSI_IO) { scsi_command_string(&cm->cm_ccb->csio, &sb); sbuf_printf(&sb, "length %d ", diff --git a/sys/dev/virtio/scsi/virtio_scsi.c b/sys/dev/virtio/scsi/virtio_scsi.c index f6278434e5f9..60ef32ef39f4 100644 --- a/sys/dev/virtio/scsi/virtio_scsi.c +++ b/sys/dev/virtio/scsi/virtio_scsi.c @@ -2336,7 +2336,6 @@ vtscsi_printf_req(struct vtscsi_request *req, const char *func, struct sbuf sb; va_list ap; char str[192]; - char path_str[64]; if (req == NULL) return; @@ -2352,8 +2351,7 @@ vtscsi_printf_req(struct vtscsi_request *req, const char *func, cam_sim_name(sc->vtscsi_sim), cam_sim_unit(sc->vtscsi_sim), cam_sim_bus(sc->vtscsi_sim)); } else { - xpt_path_string(ccb->ccb_h.path, path_str, sizeof(path_str)); - sbuf_cat(&sb, path_str); + xpt_path_sbuf(ccb->ccb_h.path, &sb); if (ccb->ccb_h.func_code == XPT_SCSI_IO) { scsi_command_string(&ccb->csio, &sb); sbuf_printf(&sb, "length %d ", ccb->csio.dxfer_len); From nobody Thu Nov 23 17:07:05 2023 X-Original-To: dev-commits-src-main@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 4Sbl095b11z5220n; Thu, 23 Nov 2023 17:07:05 +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 4Sbl0954G4z3Btv; Thu, 23 Nov 2023 17:07:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700759225; 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=DUlYk5LHXXGtkKlfTo9G/xL4Eda83mmK8rpF+yA+q2Y=; b=ozF2rUk6u88PGc7KUHTT3YzuVeZxvDI+3Y4HojyEvpMcCVUFEO/tHShCIsYzGHQdwIZCRK +qL1BK6sEM3ILo4r9UmljnHkkZQF9ZrlP6Ntv4Avb+bQPedCabqr7IZp1XfbwPDZ815XMB 5oG00paFl33XgyUFrRM7qL39qJ4z+vMsYE7Bxba5JwroUHi13GzPZOcwkG32Z62vS/PXHB q82Ssw+swycgvRJzFL43x4xv8XdsQ8PLB7EW2FaxBx/YpJsp4l+EBG7xdCTHR+egODcWrn 9Fhsv4A6QeIpru9QbSxJSgf7yGfaT/NSkqSOGE2dD6d5mO/myJXY6fElhx7BCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700759225; 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=DUlYk5LHXXGtkKlfTo9G/xL4Eda83mmK8rpF+yA+q2Y=; b=Q2XfKIt9a7G7RMWNPv3S6hovNUKP/yRZbkhP/zYqyGOij2Ol9XK80qgtWofk6VwbZQnumH N08gJ7J3vs8VoE001pTMcM+8TF34/ISz2aIyjwQkoefZ38q6k8GIUrsmY3y8ZQzW3CaFPu 9hLjJKId2a/v0GDOfbxZiUlwtgdSgpMR0nNozyWEM1hZhsr5Jj0a3D/iZBnR+f6s3szzHi TqJfDa5GTRHpaQox5FzbZK/8dKOcpIbw6F8TY17EFixVEbYAFZ36qoN2zLP8ipFVIrfNNe 7hBpnaG0XqMoJmbhFCI+gZFmW6KM87Tki4QaZd0he3QxI12DymBYoW+JeBJ2Xg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700759225; a=rsa-sha256; cv=none; b=iSDGrwZC3RzzQPCP4nO9oOp4YMRz8RCloUsNau/NAb3lIn57ioXx9mbcHJW18Bx1PWwf96 rwIBjgtLn5tk+eAZ2zE1MlFAxb6l+wW3lKMW/eVEUfsp9DVE5WqNp/TTepzw34oFXRezMZ 9jAfj6/tIhEvKsCaEczuWBrnt9niVLtR4ebCMauxNQb6vxxKjUdQxXpWiXONo5x8PJXgSX MsnoBBBcmYhV82HECfzJssh03ToUH/Qk3ftHbtdDjKGM0tGr3ybhy91wKaYO1kIuRdyX21 r+g5G+el5gUbRVBzg3lrJlMLblL3dIPh5OsVWu/BbJNWyp4QInPEWyiuvbfHsA== 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 4Sbl093rqDz199Z; Thu, 23 Nov 2023 17:07:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANH75h3008758; Thu, 23 Nov 2023 17:07:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANH758D008755; Thu, 23 Nov 2023 17:07:05 GMT (envelope-from git) Date: Thu, 23 Nov 2023 17:07:05 GMT Message-Id: <202311231707.3ANH758D008755@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 19f073c612afa0111d216e5ccab9525bfc97ec32 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=19f073c612afa0111d216e5ccab9525bfc97ec32 commit 19f073c612afa0111d216e5ccab9525bfc97ec32 Author: John Baldwin AuthorDate: 2023-11-23 17:06:24 +0000 Commit: John Baldwin CommitDate: 2023-11-23 17:06:24 +0000 new-bus: Add resource_validate_map_request function This helper function for BUS_MAP_RESOURCE performs common argument validation. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42723 --- sys/kern/subr_bus.c | 31 +++++++++++++++++++++++++++++++ sys/sys/bus.h | 6 +++++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 648394abd026..80fe182eab56 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -2715,6 +2715,37 @@ resource_init_map_request_impl(struct resource_map_request *args, size_t sz) args->memattr = VM_MEMATTR_DEVICE; } +int +resource_validate_map_request(struct resource *r, + struct resource_map_request *in, struct resource_map_request *out, + rman_res_t *startp, rman_res_t *lengthp) +{ + rman_res_t end, length, start; + + /* + * This assumes that any callers of this function are compiled + * into the kernel and use the same version of the structure + * as this file. + */ + MPASS(out->size == sizeof(struct resource_map_request)); + + if (in != NULL) + bcopy(in, out, imin(in->size, out->size)); + start = rman_get_start(r) + out->offset; + if (out->length == 0) + length = rman_get_size(r); + else + length = out->length; + end = start + length - 1; + if (start > rman_get_end(r) || start < rman_get_start(r)) + return (EINVAL); + if (end > rman_get_end(r) || end < start) + return (EINVAL); + *lengthp = length; + *startp = start; + return (0); +} + /** * @brief Initialise a resource list. * diff --git a/sys/sys/bus.h b/sys/sys/bus.h index fc07cf70f78a..88ae4000004b 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -317,6 +317,8 @@ struct driver { KOBJ_CLASS_FIELDS; }; +struct resource; + /** * @brief A resource mapping. */ @@ -341,12 +343,14 @@ void resource_init_map_request_impl(struct resource_map_request *_args, size_t _sz); #define resource_init_map_request(rmr) \ resource_init_map_request_impl((rmr), sizeof(*(rmr))) +int resource_validate_map_request(struct resource *r, + struct resource_map_request *in, struct resource_map_request *out, + rman_res_t *startp, rman_res_t *lengthp); /* * Definitions for drivers which need to keep simple lists of resources * for their child devices. */ -struct resource; /** * @brief An entry for a single resource in a resource list. From nobody Thu Nov 23 17:07:06 2023 X-Original-To: dev-commits-src-main@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 4Sbl0B71k3z5227l; Thu, 23 Nov 2023 17:07:06 +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 4Sbl0B6Qrdz3CPs; Thu, 23 Nov 2023 17:07:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700759226; 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=upsC1QuaHv92hlSqDi1YsbcgX1ZX6PCldjC9YHl1mQk=; b=Ce0lsZvs086+l28U4Xg3kJFh0fR/FIdNmwP/kUrOfLY0o6ThfES9xhmUT7GrW6cbwKZLAo qqSo3AluVknmC0RqflI1XrBltnkNJENGBobokB5ILq/cLa2zZ0Sd05OI2L6CYSdg9fXaUC bRwqFgvUIvz/Y+4DJbX5AyUrgCOn5yHHu8t+mwJctMqaszk0nKhVaISHMKi8ne1SbJb2kY w1NKkcoH6EUQ5K5PinIbJLcbaXp6gwO8kbab3aCrqx66FlSTxcerPM/uc9xD3hT9j0cRYW 0VRHHl7jcsYxqEArRdVwV8xd+wS8PxFfvtakGPQc3IzVxm21Z3FrSA32zDDvRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700759226; 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=upsC1QuaHv92hlSqDi1YsbcgX1ZX6PCldjC9YHl1mQk=; b=NUp/pOU/aj4vNhYaMukC6l/KXgAEHjgJv0BLJ2lsSQ2rbWNyJnbe40GSZRCq9OuQ3jC5aK XjO0i7bdoUHKftQrYrJ6ZLco1AWfN9BzwtthUs0eHu8HIrOy8I9AHHGkMY7cAQKtgo8nHs AlreNLJ8ha6gQzykvthQhOWQPNaYa61+LZHODKIsRVMWxjVApYKYv29AepoMctTXpuQLGJ 7HiNZffPizE7lGsaeqfKv/yZrXUyOdEA41x5Pn7kGfl8Lg3UktXAV6VL/Y2LLtjgTuYkOM Ew7BMxGsZQ8F43MlUxzSRSio0MUsvX/B/HvR3Iqz7+JliIAHSRFl9xxSPbFGsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700759226; a=rsa-sha256; cv=none; b=qfl6XhT4JdVh97FCqAEG+urG3Fh9uw18j7cwyfs4v0/0EVTbT/72BvXq6ySuAWa81MBAXQ TGu99ZQZT4sEchIWmA4b2tcaayOjL3H1h8d9CRElY9uPJyEpgBQ2l/+DoKHlmjlVcklGnW OHN0l5Y0A4bPpwh2cCNt+8ysmlw+/UWFPtqTAUSORr7tPm99wOpFOH2vX3dglCmQg4jujq SgRkLxUTcrjASc+ZUhi6kZ2TPI021N610GbTMMDV+myXqIKAZneAhxSLBXmNzrXrt9Uu+o CEi2fGG1TOkCKObgSf7WOVm3FQ1slHQtUdUkMmBkuvRpJhh26r1PUQByzaOlUA== 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 4Sbl0B4rqKz199b; Thu, 23 Nov 2023 17:07:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANH7632008794; Thu, 23 Nov 2023 17:07:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANH76ki008791; Thu, 23 Nov 2023 17:07:06 GMT (envelope-from git) Date: Thu, 23 Nov 2023 17:07:06 GMT Message-Id: <202311231707.3ANH76ki008791@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: b887b665ebc0 - main - nexus: Use resource_validate_map_request List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b887b665ebc044f246d261e8af543765b846ed38 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=b887b665ebc044f246d261e8af543765b846ed38 commit b887b665ebc044f246d261e8af543765b846ed38 Author: John Baldwin AuthorDate: 2023-11-23 17:06:37 +0000 Commit: John Baldwin CommitDate: 2023-11-23 17:06:37 +0000 nexus: Use resource_validate_map_request Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42724 --- sys/arm64/arm64/nexus.c | 18 +++++------------- sys/powerpc/powerpc/nexus.c | 22 +++++----------------- sys/riscv/riscv/nexus.c | 18 +++++------------- sys/x86/x86/nexus.c | 18 +++++------------- 4 files changed, 20 insertions(+), 56 deletions(-) diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index dee86bce656a..7c4cb073c2ef 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -462,7 +462,8 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; - rman_res_t end, length, start; + rman_res_t length, start; + int error; /* Resources must be active to be mapped. */ if ((rman_get_flags(r) & RF_ACTIVE) == 0) @@ -478,18 +479,9 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } resource_init_map_request(&args); - if (argsp != NULL) - bcopy(argsp, &args, imin(argsp->size, args.size)); - start = rman_get_start(r) + args.offset; - if (args.length == 0) - length = rman_get_size(r); - else - length = args.length; - end = start + length - 1; - if (start > rman_get_end(r) || start < rman_get_start(r)) - return (EINVAL); - if (end > rman_get_end(r) || end < start) - return (EINVAL); + error = resource_validate_map_request(r, argsp, &args, &start, &length); + if (error) + return (error); map->r_vaddr = pmap_mapdev_attr(start, length, args.memattr); map->r_bustag = &memmap_bus; diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 03f16dfa9de0..c5f460baf44e 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -353,9 +353,9 @@ static int nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { - struct resource_map_request args; - rman_res_t end, length, start; + rman_res_t length, start; + int error; /* Resources must be active to be mapped. */ if (!(rman_get_flags(r) & RF_ACTIVE)) @@ -371,21 +371,9 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } resource_init_map_request(&args); - if (argsp != NULL) - bcopy(argsp, &args, imin(argsp->size, args.size)); - - start = rman_get_start(r) + args.offset; - if (args.length == 0) - length = rman_get_size(r); - else - length = args.length; - - end = start + length - 1; - if (start > rman_get_end(r) || start < rman_get_start(r)) - return (EINVAL); - - if (end > rman_get_end(r) || end < start) - return (EINVAL); + error = resource_validate_map_request(r, argsp, &args, &start, &length); + if (error) + return (error); /* * If this is a memory resource, map it into the kernel. diff --git a/sys/riscv/riscv/nexus.c b/sys/riscv/riscv/nexus.c index 2e693e6cf655..936db3e548e9 100644 --- a/sys/riscv/riscv/nexus.c +++ b/sys/riscv/riscv/nexus.c @@ -424,7 +424,8 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; - rman_res_t end, length, start; + rman_res_t length, start; + int error; /* Resources must be active to be mapped. */ if ((rman_get_flags(r) & RF_ACTIVE) == 0) @@ -440,18 +441,9 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } resource_init_map_request(&args); - if (argsp != NULL) - bcopy(argsp, &args, imin(argsp->size, args.size)); - start = rman_get_start(r) + args.offset; - if (args.length == 0) - length = rman_get_size(r); - else - length = args.length; - end = start + length - 1; - if (start > rman_get_end(r) || start < rman_get_start(r)) - return (EINVAL); - if (end > rman_get_end(r) || end < start) - return (EINVAL); + error = resource_validate_map_request(r, argsp, &args, &start, &length); + if (error) + return (error); map->r_vaddr = pmap_mapdev(start, length); map->r_bustag = &memmap_bus; diff --git a/sys/x86/x86/nexus.c b/sys/x86/x86/nexus.c index 4896271b92bd..54c655c4fafd 100644 --- a/sys/x86/x86/nexus.c +++ b/sys/x86/x86/nexus.c @@ -458,7 +458,8 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; - rman_res_t end, length, start; + rman_res_t length, start; + int error; /* Resources must be active to be mapped. */ if (!(rman_get_flags(r) & RF_ACTIVE)) @@ -474,18 +475,9 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } resource_init_map_request(&args); - if (argsp != NULL) - bcopy(argsp, &args, imin(argsp->size, args.size)); - start = rman_get_start(r) + args.offset; - if (args.length == 0) - length = rman_get_size(r); - else - length = args.length; - end = start + length - 1; - if (start > rman_get_end(r) || start < rman_get_start(r)) - return (EINVAL); - if (end > rman_get_end(r) || end < start) - return (EINVAL); + error = resource_validate_map_request(r, argsp, &args, &start, &length); + if (error) + return (error); /* * If this is a memory resource, map it into the kernel. From nobody Thu Nov 23 17:07:07 2023 X-Original-To: dev-commits-src-main@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 4Sbl0D3PQ0z521vS; Thu, 23 Nov 2023 17:07:08 +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 4Sbl0D2vPbz3CYT; Thu, 23 Nov 2023 17:07:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700759228; 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=2Ikm9jJWq2fho/LbJjsjuf540lLg7To4IaKs8IzrE6o=; b=uqvTZPoRjJ0JpCdFoYNsWt1OTXiOf4tO8e/hOPhCCIm7MqfO6yJisa4I9EZwDpe1IG5RnN GQnBWPddRxr8fVcJRBWCyWZimEPQ7bBJ5YkMc4MQhc13wiNENrUs/mIFaMWM7Q8b+K4R93 9S8yXYnCQMAg83s6HVWZMqCLiBlSfWaBr9mpjYqsi2sOUCgY1TYIb79AgpET/qx0zWs3Mk UBDC2pd1L4jrX/ZyebZGi8sGzsurz7Z9IZimAz+QEksXzt6XjHvRaxNJ0m4bHuTTgpWGvy ziINzTGZX7Y4123FxwNeDkXIQGuQA49yIxS6tMQjUxxwQt6mqz7AWSV9lPv/mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700759228; 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=2Ikm9jJWq2fho/LbJjsjuf540lLg7To4IaKs8IzrE6o=; b=otV8OJaFop5Ywo+iFSrwpMydpjwRzCM9N5LmRkxVhOH7kkEu1UTb5jKYkaZ9e6X2pQ77/m WB5T6O7UK3gAROYYhxP+o3BM1iWRfBFbZOY1U7qklNYdRyNvWvPM+dLcMIFV4RzCYIDHOQ AEEhONCgiMLseWCSuKC5fPXxw3kbje9FQ0OVBMK9r6aOKfce9nCRyxUQrjkW1ynOubbPJ4 G9sPSyiuQ2rKnbVQ5vPU/EDBqGGZrQvZlrt1pzlGISwPLYllgakIHL9BjvcAFnXB4NW5h6 Zm5WF+d/9uNP4v6D5KeN35G+R71hPi7UwXLbtIme1phaApxJw0duZ/Ka4IuUvQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700759228; a=rsa-sha256; cv=none; b=bcJJEHnjATGOfNPhKbp6CuKmrMxR3CtEv/I9EmJh44vTPA8/DsGko+ARNKU1zOYDiGQHqS UjgE+drqVBV743Xz/RLaHpzMPKRAiUpAml7ss8O9uS/bXfguJ49/qh5weIZJ4yJnFSjWGY sYpnTzgTj8ZqcbCWoCAMD5NgVk7/cyHmFn1fm4FamufwKRhBccr8TRgFSdPAcrDU+7KTVQ WRaWDkjEP7VXrNs2vuDWC1L3e9mYiQCshDhCF0UEi7F27dWfsYc9t4txgnjf2wQka2sbzG uTdHsIMTTMXHZ47JdVjECCl0TQwNGmh1wEZzgM5xvAyOIXpJxcPNiyi9eyIMDg== 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 4Sbl0C66JSz197Z; Thu, 23 Nov 2023 17:07:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANH77Zh008833; Thu, 23 Nov 2023 17:07:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANH77BG008830; Thu, 23 Nov 2023 17:07:07 GMT (envelope-from git) Date: Thu, 23 Nov 2023 17:07:07 GMT Message-Id: <202311231707.3ANH77BG008830@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 71cfd330fc00 - main - arm64/riscv nexus: Implement bus_unmap_resource List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 71cfd330fc008187ff41db795ae5e6372bf802ab Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=71cfd330fc008187ff41db795ae5e6372bf802ab commit 71cfd330fc008187ff41db795ae5e6372bf802ab Author: John Baldwin AuthorDate: 2023-11-23 17:06:51 +0000 Commit: John Baldwin CommitDate: 2023-11-23 17:06:51 +0000 arm64/riscv nexus: Implement bus_unmap_resource Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42725 --- sys/arm64/arm64/nexus.c | 17 +++++++++++++++++ sys/riscv/riscv/nexus.c | 16 ++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index 7c4cb073c2ef..a20f8d0289ad 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -112,6 +112,7 @@ static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; static bus_map_resource_t nexus_map_resource; static bus_release_resource_t nexus_release_resource; +static bus_unmap_resource_t nexus_unmap_resource; #ifdef SMP static bus_bind_intr_t nexus_bind_intr; @@ -141,6 +142,7 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_map_resource, nexus_map_resource), DEVMETHOD(bus_release_resource, nexus_release_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), + DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), #ifdef SMP DEVMETHOD(bus_bind_intr, nexus_bind_intr), #endif @@ -494,6 +496,21 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, return (0); } +static int +nexus_unmap_resource(device_t bus, device_t child, int type, struct resource *r, + struct resource_map *map) +{ + + switch (type) { + case SYS_RES_MEMORY: + case SYS_RES_IOPORT: + pmap_unmapdev(map->r_vaddr, map->r_size); + return (0); + default: + return (EINVAL); + } +} + #ifdef FDT static device_method_t nexus_fdt_methods[] = { /* Device interface */ diff --git a/sys/riscv/riscv/nexus.c b/sys/riscv/riscv/nexus.c index 936db3e548e9..d92ad7861ae9 100644 --- a/sys/riscv/riscv/nexus.c +++ b/sys/riscv/riscv/nexus.c @@ -87,6 +87,7 @@ static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; static bus_map_resource_t nexus_map_resource; static bus_release_resource_t nexus_release_resource; +static bus_unmap_resource_t nexus_unmap_resource; static bus_config_intr_t nexus_config_intr; static bus_describe_intr_t nexus_describe_intr; @@ -118,6 +119,7 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_map_resource, nexus_map_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_release_resource, nexus_release_resource), + DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), DEVMETHOD(bus_config_intr, nexus_config_intr), DEVMETHOD(bus_describe_intr, nexus_describe_intr), DEVMETHOD(bus_setup_intr, nexus_setup_intr), @@ -456,6 +458,20 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, return (0); } +static int +nexus_unmap_resource(device_t bus, device_t child, int type, struct resource *r, + struct resource_map *map) +{ + switch (type) { + case SYS_RES_MEMORY: + case SYS_RES_IOPORT: + pmap_unmapdev(map->r_vaddr, map->r_size); + return (0); + default: + return (EINVAL); + } +} + static int nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int icells, pcell_t *intr) From nobody Thu Nov 23 17:41:36 2023 X-Original-To: dev-commits-src-main@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 4Sblm25gKZz528Mk; Thu, 23 Nov 2023 17:41:38 +0000 (UTC) (envelope-from mhorne@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Sblm25BClz3HMx; Thu, 23 Nov 2023 17:41:38 +0000 (UTC) (envelope-from mhorne@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700761298; 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: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=tBYVRC4pxHJ+/uqIvQ/RignNcsX+IM5ieMZBsv3b1ig=; b=ZxgXfvBuF/vNZddE1aRPwExV52jDu4KLCAES77bsru4CLQIQTWrN3bYndJPVtZ4hG7BVJ6 zpmlXiZi1Limh0NZ3PyxtLtAQszXq2vQDvDPu962CA6HmrkIA4nYvoJZzDBcDdhO0SfD8Y clBFh7UAJTYOAke936vqi4BT4TrEeO2VxaCyenZ3XI+z4SzfXcK2pemvIuV+qCgm2GRZBB m00070o4eJjRgDVl80m5aonvEg9XNW/M4ksTAYA4NmhzcntiHsjcTjybHDCUibQODwKr5L 5yNR9Yp37kxVwtrdrnK2mR9fPrLUOduI7ZLXaeyYYM5O5Ijn6nFyhc1BUVpQIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700761298; 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: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=tBYVRC4pxHJ+/uqIvQ/RignNcsX+IM5ieMZBsv3b1ig=; b=GHxomRgWq4vpeaUXEe804eZsxfNIRTZlU1xJo8wrjfimkQMaekOmmXvxPSey3nx5Pf2Kg9 be8JTXtK/EdeIwqTvTscBVn3Rx/xjUSoLGt9q1Bi4tHZQRTmweLSepXbTGEBltiqUaAf3D P/sxANifyGhNHSg2inPKroluPaNc1K6wRyyHivs/osuVTw0ZEDOztjcXBhndHLmqP5SqCz xt0AQ2qwnATrYgbqJq+xcE5aeKxw3KpcsYv48yYzo5i5A5OavCM0pCAsxhBzovlAMxkxT/ MNV8eGqG5NO/+I0kZjHCBhGoHqcgQkNw37NWBUrl4ExzWh5suK46bGt+NbPNDg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700761298; a=rsa-sha256; cv=none; b=KfIZMxisWz3PXewnvXq1jTAtidOBam7S4NhQ4Kiz8npbsGcUtxIg3iHdKtK3dIi2vciTU+ +VgNjW6IolJdWajLSmpm7dHeyvGuqLBCLWCSukZMeK0WM1yqtqo7rGsb6y6wMP/x7GsRcp ru8e01Z0G8oUnsPMEk1Q7vjbeXDHHBvjnMCZtyPe+Gfaqsu8ah4fXinRYpzyOZvS9ggiKj FTJFZGpmVNHg+N0IM1gTmLmCKAaLf/8by7qP2dqDTb6KN4tjqpxYl8fZ+Ojp7921xrbLkM 569rB6k2ATUAfmM3qYFhJd2X+z1I0C2CyDqJh1cKmeXh6jnOvKAl0ivP74jq1Q== Received: from [192.168.1.151] (host-173-212-76-127.public.eastlink.ca [173.212.76.127]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: mhorne) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Sblm22Fm5z14kV; Thu, 23 Nov 2023 17:41:38 +0000 (UTC) (envelope-from mhorne@freebsd.org) Message-ID: <48b90d6b-5772-4aba-8948-bcf8b50c9b5b@freebsd.org> Date: Thu, 23 Nov 2023 13:41:36 -0400 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function Content-Language: en-CA To: John Baldwin , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202311231707.3ANH758D008755@gitrepo.freebsd.org> From: Mitchell Horne Autocrypt: addr=mhorne@freebsd.org; keydata= xsBNBFyS2dQBCADdiXBG8hBVLmYbxu7aSzbwLwUf3HkGFz3rooS1kwyy+SfmjZ4UKNnl9WMx WKrJ7OAZpiNH6bLQ5nsqfx09OnpWL8c/QuPbhNdUywQoqqYpRI0K8GEn//nS9Gs0KTYwVpWb XlrzP+jf3Uh/9L5mcQmStLIH4zaaqMYHW+pMuPrvBmLIHTvLj2QjOkxslrcUdord9uvxe5Ht LU8RuTpQpHOKz705Z9/v7twFdi2HtKzpLwO6SzVyu351di1J+GihsVpcT5josQV5cHbIP3Un x+kmtKBEEc/jl/zBglF7ruWUtwgbryID+2ZPEaO1Mj+RResX4LFVMusq3uUpWRb5WJXxABEB AAHNI01pdGNoZWxsIEhvcm5lIDxtaG9ybmVARnJlZUJTRC5vcmc+wsCUBBMBCgA+AhsDBQsJ CAcCBhUKCQgLAgQWAgMBAh4BAheAFiEEkp/cYPcfabAiQvACi/gnTOdUid8FAmIyDpUFCQtC z0EACgkQi/gnTOdUid8IsQf+N8IptrrCgifT5Z0/WUVFfnHThFOKf4zBjaGswsIM8+VKsKnF 15jCWHODUHP6s+dcQ4nQi81PHPsnMfBSkGPvN/X3ess2/1KUVkH+6tAJbqXDjXhD8HT+i0NM QEFIXlLnotpgIKW3yOHjKv3ZvKw9LCvUjyNY9vOJmLk/6AbbkFh+INo65nXtQWb/hM5FVEHW S+zUoU8AqZRJoVAQfj9wmIfg/HdsxeDGKL0zkv5AwKpccvb8VJNGJbCVMgoy5uQYcUeXxcie cg0VlbFLshNQTfyhVQ85vyuHahARrUWs/k8KiYODoBnW1ChtyF8yM6VZTzSYx7pINqPq2YZy i/Htd87ATQRcktnUAQgA3zt4M4ecoQqfxpjliNLujt9klDqvmkJvWmzMuMXdzlPgGRJ0doio 9YIeEdkOt6xN0pPTK/ReCZ8WqFQ8zo23u1pwGuo0CnR58XF19wyxyUuKu/PHbt+56mC8tNHm AXsMyXQmlDqWvn/WzLY7euNRtNS4QQIwtxfM5EC4GGa5KQwxn0kM7dkUSOE/cxr+/kNbHHzb gagZR4cnNUqtPPr3dYXcibCTzgz96Lyt3/qMLXX9RTBRzu+O6E+byxWOe8ar/ZlwY2b4wTQG mhgNttkSxKtxMpZnd8+DGV/bI1P5Ct/K2GeCwNyupQGON5ymn6o7jTch+qmFX0ItkBWO4zn4 9QARAQABwsB8BBgBCgAmAhsMFiEEkp/cYPcfabAiQvACi/gnTOdUid8FAmIyDtwFCQtCz4gA CgkQi/gnTOdUid/i5gf/aQ75pJR4TJFM2vVVr6PDIwTdl0b5EchB4w4s4g/zE84XNbMOQanb BginLYEhAacLQVAvM3XdvUEhwrhaMQdjdSEB1krResL3/mbxrtKwdHSMbHA3IS3XdvxFWTB7 P5JjUSPsW6hqgoidbn4w3OxaNHhs45H2b0Nx5QiKcSyepmCZuB52gCEHnEnrdaz8TFQMXOLq 94WbTmZeIjChW3FB61m1gTf0UEFjoZAfTAUB+pbwoCa4AykIeZnDC19vjsruVU9Gy5rLglwd bjsZNfXIJGOZNEvdF8FOBwM7DlXx7SYvTJcUNoNJjOKtQ0bYGVgGqYOB/y2mTjVuKeU0eOkN Uw== In-Reply-To: <202311231707.3ANH758D008755@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/23/23 13:07, John Baldwin wrote: > The branch main has been updated by jhb: > > URL: https://cgit.FreeBSD.org/src/commit/?id=19f073c612afa0111d216e5ccab9525bfc97ec32 > > commit 19f073c612afa0111d216e5ccab9525bfc97ec32 > Author: John Baldwin > AuthorDate: 2023-11-23 17:06:24 +0000 > Commit: John Baldwin > CommitDate: 2023-11-23 17:06:24 +0000 > > new-bus: Add resource_validate_map_request function > > This helper function for BUS_MAP_RESOURCE performs common argument > validation. > > Reviewed by: imp > Differential Revision: https://reviews.freebsd.org/D42723 > --- > sys/kern/subr_bus.c | 31 +++++++++++++++++++++++++++++++ > sys/sys/bus.h | 6 +++++- > 2 files changed, 36 insertions(+), 1 deletion(-) > > diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c > index 648394abd026..80fe182eab56 100644 > --- a/sys/kern/subr_bus.c > +++ b/sys/kern/subr_bus.c > @@ -2715,6 +2715,37 @@ resource_init_map_request_impl(struct resource_map_request *args, size_t sz) > args->memattr = VM_MEMATTR_DEVICE; > } > > +int > +resource_validate_map_request(struct resource *r, > + struct resource_map_request *in, struct resource_map_request *out, > + rman_res_t *startp, rman_res_t *lengthp) Can the function be given a top-level comment stating its purpose? This file does a really good job providing this for the majority of its public functions. Sorry to ask post-commit, but I did not see the review. Mitchell > +{ > + rman_res_t end, length, start; > + > + /* > + * This assumes that any callers of this function are compiled > + * into the kernel and use the same version of the structure > + * as this file. > + */ > + MPASS(out->size == sizeof(struct resource_map_request)); > + > + if (in != NULL) > + bcopy(in, out, imin(in->size, out->size)); > + start = rman_get_start(r) + out->offset; > + if (out->length == 0) > + length = rman_get_size(r); > + else > + length = out->length; > + end = start + length - 1; > + if (start > rman_get_end(r) || start < rman_get_start(r)) > + return (EINVAL); > + if (end > rman_get_end(r) || end < start) > + return (EINVAL); > + *lengthp = length; > + *startp = start; > + return (0); > +} > + > /** > * @brief Initialise a resource list. > * > diff --git a/sys/sys/bus.h b/sys/sys/bus.h > index fc07cf70f78a..88ae4000004b 100644 > --- a/sys/sys/bus.h > +++ b/sys/sys/bus.h > @@ -317,6 +317,8 @@ struct driver { > KOBJ_CLASS_FIELDS; > }; > > +struct resource; > + > /** > * @brief A resource mapping. > */ > @@ -341,12 +343,14 @@ void resource_init_map_request_impl(struct resource_map_request *_args, > size_t _sz); > #define resource_init_map_request(rmr) \ > resource_init_map_request_impl((rmr), sizeof(*(rmr))) > +int resource_validate_map_request(struct resource *r, > + struct resource_map_request *in, struct resource_map_request *out, > + rman_res_t *startp, rman_res_t *lengthp); > > /* > * Definitions for drivers which need to keep simple lists of resources > * for their child devices. > */ > -struct resource; > > /** > * @brief An entry for a single resource in a resource list. From nobody Thu Nov 23 19:14:18 2023 X-Original-To: dev-commits-src-main@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 4Sbnpz0VYWz51G7C; Thu, 23 Nov 2023 19:14:19 +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 4Sbnpz02Prz3Wqt; Thu, 23 Nov 2023 19:14:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700766859; 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=jfu8Ttu0nvtjDhIRHt4ZnDoPBGxm6MMFxZHkcU+z7Ho=; b=iwGFWAT5X4ZDBH5RVTsZXN0vweDeZpBbbhNC7Qc7FUNM/+DyseTehDF5ax5MRdQQ77wjRs wVwDfr1CM/l8NDsg757YkGLt8Rp+/ZVgphKO+mqdlVN7niqJ9dGWGk041Q6jCxTdG/PZ90 jkuYLUEVH5s4cpdOywWeuTznv48gGAzz19aDPwYBbesGv3cFgaLudz54GLOqd5nxldZwRn OlrKiB0f9bmiEydv/9ehYLxJKAZlMZUVga6LogdvSQsvSGxOf3uiOyuh8IIKevzLWqY50p 0o0rzkgrfx9d7gsINpo9of9kLlJxkCpiMrV3XljqKXDafA5e+hf43CZR4ql9hQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700766859; 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=jfu8Ttu0nvtjDhIRHt4ZnDoPBGxm6MMFxZHkcU+z7Ho=; b=eCsrSAks8PQ8+/7n2R9MFP6zcD+s9NmgUYug3rGmQXs/BzA0CAirmy9i+CkJVsffS7FJ2B KXYqJqe2sAFeMCj7Sygv9t8YwWEE/2mrfResEkpp3fbhGZ4dwJT3VkJMSwgQnk+XHYE2y5 nVtqkLzKQg6zAbAyKE/vjxXI4uJVuoW8Hi5VCu8SzRCa8MMe547Ngyv2SaukpbVxXtS7l4 mqoWs+lgA3KFKoPRmMUDaa75FoLPVXTr4Qadzk7QMt1s6L88OpRi6/tl9sWyOH1mEbnJFl HlaocGE0zYxcL2nlmF4kNseaF9jLLJkIa0VuR8VoTNF5aeuCTPc6x2nOlhkf6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700766859; a=rsa-sha256; cv=none; b=qvNM+aDpA1Dec6twANKiHVUQQ+vVTB9rKeFOX/cqES1H1f5vmqtAFRXJGMth43Ke5j3QB7 HBIvr1l1Bwf8L8MZSqd4a3UBMhenPF6Kln1dtVYZiOInZPKLjuJJ3uIb83/edYQZal6Kci +0V2MgRz700jwNtHiIh10Slf2FDG5PbVPyP+WGzTOD8YQ+7z8y6v5Vca53u9jKQ91I6O2m Xzn+vO5TUvnwsUuvsvdjIPNV4375+ryVKWQ7Fp/Dlmljv2FNOK4D786TAVRX1BX0pmZvvU 8E9mcxr+KidcHq3rwPUq9yS9fdBD+fKIYDL/zADv5dPRBIQYhpGTa7VumEfagQ== 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 4Sbnpy6C5Dz1y; Thu, 23 Nov 2023 19:14:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANJEI9h026938; Thu, 23 Nov 2023 19:14:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANJEIEW026935; Thu, 23 Nov 2023 19:14:18 GMT (envelope-from git) Date: Thu, 23 Nov 2023 19:14:18 GMT Message-Id: <202311231914.3ANJEIEW026935@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 3578000a6f50 - main - ehci_ps3: Remove unused struct definition. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3578000a6f505148c5e0ecf5be9d644ed07a81bc Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=3578000a6f505148c5e0ecf5be9d644ed07a81bc commit 3578000a6f505148c5e0ecf5be9d644ed07a81bc Author: John Baldwin AuthorDate: 2019-09-30 16:18:10 +0000 Commit: John Baldwin CommitDate: 2023-11-23 19:14:02 +0000 ehci_ps3: Remove unused struct definition. --- sys/powerpc/ps3/ehci_ps3.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/sys/powerpc/ps3/ehci_ps3.c b/sys/powerpc/ps3/ehci_ps3.c index 2b0864506e76..00408fde0a62 100644 --- a/sys/powerpc/ps3/ehci_ps3.c +++ b/sys/powerpc/ps3/ehci_ps3.c @@ -62,11 +62,6 @@ #include "ps3bus.h" -struct ps3_ehci_softc { - ehci_softc_t base; - struct bus_space tag; -}; - static void ehci_ps3_post_reset(struct ehci_softc *ehci_softc) { From nobody Thu Nov 23 19:48:58 2023 X-Original-To: dev-commits-src-main@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 4SbpZz0VJQz51fXf; Thu, 23 Nov 2023 19:48:59 +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 4SbpZz037Qz3dYg; Thu, 23 Nov 2023 19:48:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700768939; 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=7oR9ChYKfjF560GFJR53Oshm3vvekfQNGoYWIqXTSgQ=; b=Jx3pk1mr8w4SAvuYDLwsS5D2gMQBicSv/kegqBRgKIj46x3OJWwmWMieHxdslnL6cm0T1U HCn62wDIQLm0KKcqqLyx10bpEE0MNPgqIOKMopI65ghSOIu4MkbRfYEtA3+8RSbSMf7exd MiU61KlAp0dHmJwti8C4CQb6/91OpNDD2pzltZzzu5+NRjk6su/q5fF4HPuaHgy/iIgAaQ SUoiDBYKS4A3WwtqJg3RpmIoK/jWKRpefCnTODoxA1X4PIFqseSbSnBnW4dDHigoRhSOen k8kgQLfpX+kwo2zh63GtpzYFndc+lW6duXddrFQ9b6EYWXByzTmgSbXVGnZxAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700768939; 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=7oR9ChYKfjF560GFJR53Oshm3vvekfQNGoYWIqXTSgQ=; b=NxBnREZ1T72MFRsuiRhqj21zFz452qwILocyENU8CveBLK7ZA/NQj7LueyhLcs9Oblh0wr MaII8ypfFbqsTG9wkS7scO2l4WVl3iVj9waqrDSyLZl9/rayf+/LZHu4HWVhL8Wy/w2WQa +nn++OIByoiMM+l/YyYVNs/IIXs+Y1gfTG5pn24ha36i3TbitTynrzz50OSxw77zgYRpTw Ee7Uu/5K2o3Hyc58l/cz+SoSXe+8XeWspUWeWi0hsf4exR10PvD9I5beXlrxRSbCXn4oDS Chl0vcrus3LSDuLg9q4qrCkWug0K0kVWNFDgXH8+qilTMFMz0R9lwamK20pNJg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700768939; a=rsa-sha256; cv=none; b=ezAhASKj0NifuZr+soO3X7Wwyu6sIzdQhKf5TUur4XSOGSHINy98Mv8cymyW5qqK18b7Hk 11WHf6LvdquEFwrf4Vu+EzTd2DpAfHgX8KCxtKgFYxgrplzrmgjb9ypfPkQFcilxUHj+qi MtWIdCFRcJ645UrD70KGXoquBPrcZ9b8fJ5xV0H1Z9EpgI66xDtTDYstnbqWhYfGsf3JCT cp3s//INVLy6QFKMdjjTRfbyrpb0cL3LZEwxJCW/vo3d2F5Wiq1nHibC0VSyzijZBIZFOu /NGLhNisOAUmo1MBH9GiTLy2Jy8ph/3oGS4+Sj0frb1uddxP5TIra8wX+HJT9w== 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 4SbpZy66NgzYq; Thu, 23 Nov 2023 19:48:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANJmwCB076783; Thu, 23 Nov 2023 19:48:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANJmwEC076780; Thu, 23 Nov 2023 19:48:58 GMT (envelope-from git) Date: Thu, 23 Nov 2023 19:48:58 GMT Message-Id: <202311231948.3ANJmwEC076780@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: ad34121518bb - main - Revert "pst: improve shutdown_post_sync handler" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a commit ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a Author: Mitchell Horne AuthorDate: 2023-11-23 19:46:28 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 19:48:44 +0000 Revert "pst: improve shutdown_post_sync handler" I did not realize this driver was i386-only, and the change fails to compile. Revert so that I can fix it properly. This reverts commit 428ebb7cd9f51afb6809bf81cf21a05e0fd93ff4. Pointy hat to: mhorne --- sys/dev/pst/pst-iop.c | 2 +- sys/dev/pst/pst-raid.c | 14 +++++--------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/sys/dev/pst/pst-iop.c b/sys/dev/pst/pst-iop.c index 43ced2401d2c..f9921a564333 100644 --- a/sys/dev/pst/pst-iop.c +++ b/sys/dev/pst/pst-iop.c @@ -432,7 +432,7 @@ iop_queue_wait_msg(struct iop_softc *sc, int mfa, struct i2o_basic_message *msg) int status, timeout = 10000; mtx_lock(&sc->mtx); - if ((sc->reg->oqueue_intr_mask & I20_OUT_INTR_QUEUE) == 0) { + if (!(sc->reg->oqueue_intr_mask & 0x08)) { msg->transaction_context = (u_int32_t)&request; msg->initiator_context = (u_int32_t)iop_done; sc->reg->iqueue = mfa; diff --git a/sys/dev/pst/pst-raid.c b/sys/dev/pst/pst-raid.c index 4f9279462ee8..4e9c4fb724bc 100644 --- a/sys/dev/pst/pst-raid.c +++ b/sys/dev/pst/pst-raid.c @@ -73,7 +73,7 @@ struct pst_request { static disk_strategy_t pststrategy; static int pst_probe(device_t); static int pst_attach(device_t); -static void pst_shutdown_post_sync(device_t, int); +static int pst_shutdown(device_t); static void pst_start(struct pst_softc *); static void pst_done(struct iop_softc *, u_int32_t, struct i2o_single_reply *); static int pst_rw(struct pst_request *); @@ -170,23 +170,18 @@ pst_attach(device_t dev) name, psc->info->capacity/(512*255*63), 255, 63, device_get_nameunit(psc->iop->dev)); - EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown_post_sync, + EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown, dev, SHUTDOWN_PRI_FIRST); return 0; } -static void -pst_shutdown_post_sync(device_t dev, int howto __unused) +static int +pst_shutdown(device_t dev) { struct pst_softc *psc = device_get_softc(dev); struct i2o_bsa_cache_flush_message *msg; int mfa; - if (SCHEDULER_STOPPED()) { - /* Request polled shutdown. */ - psc->reg->oqueue_intr_mask = 0xffffffff; - } - mfa = iop_get_mfa(psc->iop); msg = (struct i2o_bsa_cache_flush_message *)(psc->iop->ibase + mfa); bzero(msg, sizeof(struct i2o_bsa_cache_flush_message)); @@ -199,6 +194,7 @@ pst_shutdown_post_sync(device_t dev, int howto __unused) msg->control_flags = 0x0; /* 0x80 = post progress reports */ if (iop_queue_wait_msg(psc->iop, mfa, (struct i2o_basic_message *)msg)) printf("pst: shutdown failed!\n"); + return 0; } static void From nobody Thu Nov 23 20:14:55 2023 X-Original-To: dev-commits-src-main@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 4Sbq8v6bl4z51lnx; Thu, 23 Nov 2023 20:14:55 +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 4Sbq8v5k24z4F58; Thu, 23 Nov 2023 20:14:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700770495; 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=NERpELrV+Hv2n5L+V+wU2j+ZO9o/uhOXL4Nzca4qBEE=; b=nFO02nGUyFdyaJ1vv05cocIwabTdrvnlD7yMP4TQNw6rhY0Q21Kobo+T8BadCdHBuN9N1M XFcLlZ+TZAfMy7H84MdRdUM73OIkDvmakDE7G/wbrhdQ4pc/kC0aXKA9ptFOPF84QAHnjM BzdjlrMZsK7XqXpmJWtTySzMyZ0FjlDzx/mUrhxTyrq/I2u0oz5/EjobD8SNI5OQLJrXpK 7ncOnt2ux43MXAF9VL/7Rgh+QtJHFsdCYdCMbX6UoEBXpm7v0EXwYKBgi2V7SmKUdiDkcz 7nedqs7bDWmh37CLo1WhiKY8DmKcUBHcY9X+ehnQhpAylhoKmMpMqD/v6xL5iQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700770495; 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=NERpELrV+Hv2n5L+V+wU2j+ZO9o/uhOXL4Nzca4qBEE=; b=MFOwxKO06vIxRd/rIDwAnK+OhUZJd9M0xpapHdajikU+NAMRwGZNtP4lc+9bU4mNoXIPie TXWI2Meo1NSSBmVWo1gv7vmmva47473sN07beqdi41B8JU2dwHclxrJfLJVAmtRq/NswvG MFZi+NLktNFKstCMMdtmzQJTFpkFdxqauLieOlzi0E9AdJ4U4nZwhRUSiiaRHqV5PEv5md /CZ4K9ltDes5hMbMfrjPkYi2xolAL0oEuOKyUR4oeIcBlZ7aezfJDkpGwX0u61iggjXtHc ZDUeCxPZ4KieHJYXSc1e6mCbFhkt6bNR9an4N6y/+F4WENWSakWMnWpQjyWW6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700770495; a=rsa-sha256; cv=none; b=gcE8PB4slHMFNqAwTKJ9SVBxwseKerrd8Hrc56LOOlcmE66zMs3Z0IZu3Yt5AQOJthkNyd K3+5CSn9cmMWP7rqLyiSr+GkALOLwpLDULGr7MkOpFRD10dXDNFLeIgFOizkV912wchT69 5zMHFjS35Sgb7sKpNGLo7QSmcHWEUg7y1gYQwNaWnjWpGCy/UMp0YrEQh3LSbPtwXGy/za 5LQWlzJ070R2qB0ZM2jU/TtCEZKHNpstfjCdFan2kczvwdKPzPK8Zq9XnsKBjBCa+0n6sF QnkP6T3lhqLbmRm8FPmt6d6VZNcFVpeGbeDCMoXT65e/n+Z7MYfJI+mk63mbAA== 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 4Sbq8v4mvYz1tY; Thu, 23 Nov 2023 20:14:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANKEtg1027038; Thu, 23 Nov 2023 20:14:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANKEt9s027036; Thu, 23 Nov 2023 20:14:55 GMT (envelope-from git) Date: Thu, 23 Nov 2023 20:14:55 GMT Message-Id: <202311232014.3ANKEt9s027036@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Xin LI Subject: git: 88d2b69c719a - main - re(4): Add support for 8168FP HW rev List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 88d2b69c719a20da9eb53f1c58adf6ecb005f8ce Auto-Submitted: auto-generated The branch main has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=88d2b69c719a20da9eb53f1c58adf6ecb005f8ce commit 88d2b69c719a20da9eb53f1c58adf6ecb005f8ce Author: Brad Smith AuthorDate: 2023-11-23 20:13:00 +0000 Commit: Xin LI CommitDate: 2023-11-23 20:13:00 +0000 re(4): Add support for 8168FP HW rev MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42671 --- sys/dev/re/if_re.c | 2 ++ sys/dev/rl/if_rlreg.h | 1 + 2 files changed, 3 insertions(+) diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index 83fd31fc4f0b..594ed9d60379 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -243,6 +243,7 @@ static const struct rl_hwrev re_hwrevs[] = { { RL_HWREV_8168E_VL, RL_8169, "8168E/8111E-VL", RL_JUMBO_MTU_6K}, { RL_HWREV_8168EP, RL_8169, "8168EP/8111EP", RL_JUMBO_MTU_9K}, { RL_HWREV_8168F, RL_8169, "8168F/8111F", RL_JUMBO_MTU_9K}, + { RL_HWREV_8168FP, RL_8169, "8168FP/8111FP", RL_JUMBO_MTU_9K}, { RL_HWREV_8168G, RL_8169, "8168G/8111G", RL_JUMBO_MTU_9K}, { RL_HWREV_8168GU, RL_8169, "8168GU/8111GU", RL_JUMBO_MTU_9K}, { RL_HWREV_8168H, RL_8169, "8168H/8111H", RL_JUMBO_MTU_9K}, @@ -1495,6 +1496,7 @@ re_attach(device_t dev) RL_FLAG_CMDSTOP_WAIT_TXQ | RL_FLAG_WOL_MANLINK; break; case RL_HWREV_8168EP: + case RL_HWREV_8168FP: case RL_HWREV_8168G: case RL_HWREV_8411B: sc->rl_flags |= RL_FLAG_PHYWAKE | RL_FLAG_PAR | diff --git a/sys/dev/rl/if_rlreg.h b/sys/dev/rl/if_rlreg.h index 808d11e34346..7de7e2fcc585 100644 --- a/sys/dev/rl/if_rlreg.h +++ b/sys/dev/rl/if_rlreg.h @@ -194,6 +194,7 @@ #define RL_HWREV_8168EP 0x50000000 #define RL_HWREV_8168GU 0x50800000 #define RL_HWREV_8168H 0x54000000 +#define RL_HWREV_8168FP 0x54800000 #define RL_HWREV_8411B 0x5C800000 #define RL_HWREV_8139 0x60000000 #define RL_HWREV_8139A 0x70000000 From nobody Thu Nov 23 20:17:55 2023 X-Original-To: dev-commits-src-main@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 4SbqDM5L0Xz51mPY; Thu, 23 Nov 2023 20:17:55 +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 4SbqDM4qpTz4G31; Thu, 23 Nov 2023 20:17:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700770675; 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=YeSrR7EDb9XSYdKGqMDFq/NOsi/3o4KjID5VTHZ9sjw=; b=O80IwkMfIrHZpCADWft/KU8hNVO5CMRDoQLicsa67ygKsrEnKPCVa3zyQewfT9XInNScni J28Z0lOyt7okFko1KSiRt3DI7PaV3RfXckHeMt5r53h+/9LdPI6IJke+C7WImeKuAxfd4b wHdCDdCd07wA8XIY08jjbWp71h5h33ybnvMs6ejiEV3Ppbt9+LDvzgz9VVk/Fbvdqb+liX MPf0YP/HTPj/TmNtnGut6SveYhVov8w+EYOlPogBDFJ7/bzaSzRnH/4OOHW9wcmvXKkn0E TlJeoqN+pB7rD6ZK6/Fz7vFUm//iQtVx+tNh/0WFs+LWkQVBKXHPm/fOT/+9Bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700770675; 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=YeSrR7EDb9XSYdKGqMDFq/NOsi/3o4KjID5VTHZ9sjw=; b=yrdbdvZw0P5Es0tBf8gJ5avgxE2QchN2PEEdwFH9lbzBk7NNglrTBPHufZYgVNES9ZvhvG SjhpDtzBGA2gIdB0aUDyUQWFctq5QZxnAvQmqVpIBRa40W6lXODZ352miKZzao9g4c54c3 Aizne2FPsEmILccD/j8EX6BxKn5t8nhPMuu4Ir2hANg6axyxkeKLOcRdFur6WCqL+85jVw JihzlTiHjBFdYqqyCmn4vbCxjtaAp8+eAatAWNW9j8uMbM700V6Ik/C3ZrQQ7PNKvEdnsP qm32SEnPZN7DMPD0pLFtstl/V04Uu/+iyPGnkPKqqpvtlYmaYtGIdbdE5R+Ghg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700770675; a=rsa-sha256; cv=none; b=NYr7qcsazi6lTrs1hWSXv5Eq9bnXp1yzeXhPFd3JdCTlXz/iCb7uJl1T8zZMgeXnwvg2YL fD2/jx/I8iROAby1K741YKQWg8sFHeSSckzxNYbOsdeUXmT2o2CQOHwL3gJUCuVsg/HoBe 6ZfT9q8MW66yf7JMqzKr2U1sV4gzUUK0nFL/1LFU1ofILtxFSPV8vN8JkMQwLiKwKqbt0N TzUq+VR86MxabYCj2ZeSmbmUtZsIRFchI04aH3Ta60QviBEPaX07y1NB7X4EHh/ZEmrswa tc4SB5IoJ3bUCwlO+tAOyNzZqGOhs4uwT4+BkJdP/h0vnxzfKPaZSITMmzwBFg== 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 4SbqDM3wqHz1Jj; Thu, 23 Nov 2023 20:17:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANKHtJt027632; Thu, 23 Nov 2023 20:17:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANKHtvp027629; Thu, 23 Nov 2023 20:17:55 GMT (envelope-from git) Date: Thu, 23 Nov 2023 20:17:55 GMT Message-Id: <202311232017.3ANKHtvp027629@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 7aa3bf6952b2 - main - etc/mtree: Remove entry for /usr/tests/usr.sbin/mixer List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7aa3bf6952b2c7d1b02d3a67e7f51b96fcf52b50 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=7aa3bf6952b2c7d1b02d3a67e7f51b96fcf52b50 commit 7aa3bf6952b2c7d1b02d3a67e7f51b96fcf52b50 Author: John Baldwin AuthorDate: 2023-11-23 20:17:41 +0000 Commit: John Baldwin CommitDate: 2023-11-23 20:17:41 +0000 etc/mtree: Remove entry for /usr/tests/usr.sbin/mixer These were removed when the new mixer(3) library was imported, and I missed updating the mtree file when I added the entries to ObsoleteFiles.inc. Fixes: 903873ce1560 Implement and use new mixer(3) library for FreeBSD. --- etc/mtree/BSD.tests.dist | 2 -- 1 file changed, 2 deletions(-) diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index e216767170ab..4239de67478a 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -1173,8 +1173,6 @@ .. makefs .. - mixer - .. newsyslog .. nmtree From nobody Thu Nov 23 20:19:54 2023 X-Original-To: dev-commits-src-main@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 4SbqGg0npSz51mkG; Thu, 23 Nov 2023 20:19:55 +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 4SbqGg0Hkbz4G7j; Thu, 23 Nov 2023 20:19:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700770795; 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=skAuvdQa7pnLHx3iBxrX/k6FAXwzmMfYCcoAQbT//ys=; b=tEU794QDONXayIMfEmYUm1IkYjvsAgq9C3h9c84UYCn9GNThoZOqiFhfN5RoyeKUt1e813 jNLOowRHCe9nmlP2tom2/0oNzX43KTqLmcDJeS5AEzY2jU8QQhJEcPE23g51BbgNDDClfy adNA+LW16kC4d4htc7YaVC5xliH9V9C+CDzcym66NuUyqCYxinZZtfYcuyTnfXQSaGGvIO mGC3SNU2AF2utX6E0jXlPoq5CEkJVhHrMUwGzfjKtfjVUMuulrhJwsUQc8qs6TgoweEFbj LUGjUtpdOHrkCjqINkL9GYe6Y/JOn/ibd3v3ORy2NLrJfCJuoIk+FbCiHhLawQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700770795; 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=skAuvdQa7pnLHx3iBxrX/k6FAXwzmMfYCcoAQbT//ys=; b=QHoIlyrYAh+aUge/h3bYZ4fUFKlAz5zSThM2X+eENYXfrSBH+iap6bF6Oacl0GMqM7zgjk rA5bmIxwupmMeHR0TaAbvJNSVXiv41ixHpWufFtz9FVCE9gk+lhwYqdSvSpFwH4MMIitv8 w20ZN4Vzan0yHWujGLa9DNgEBSMQ/XeWnNvN+ct4Hvr9tdUNtqesnYoEzTDAHnBjRF0E+D Qn5XTDmUnyHBtmQOENFQRPdXVGHhAHTmxq+O8U3wq0HLObt6CFkMgZTjNOyi6IWWyvNO56 o6vNSip8MlzIBvLaujUMP0emkhDcSyZqE1Z8PS8T9sjra+UP3Uu7pZoDrG31qA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700770795; a=rsa-sha256; cv=none; b=jq/kHsmquKTxpw7WsvMCwJCwwzoUw5+Fr1ck5U/BlALXB7fENSzNrhOgEnSKvaMKIthdSs +mbVosSBm5znW9xFffEcS3a4uc/kV/z26NoQQyJCtJlfLT2YLYCLA0e55XdT3Fyloi1hG3 XiempXc3+2r9+DInw5p9+8mHWYCwX1yIJB+03mfQF21XZVjLlqaetnJFK1XAf7ybiUGcLc TIG70oURKHXY4wpllV6myg5jDXf/wLasSYnaVKnGq5u08Njkv08V4iR3vCYZddBb+uqFW1 AiiGStdLf09gc3C8OHzLkf0XOs3cpgWkyemcTfhXmyECX+FlaaP1RYfL0XzSCw== 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 4SbqGf50Tyz1kM; Thu, 23 Nov 2023 20:19:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ANKJslO028027; Thu, 23 Nov 2023 20:19:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ANKJsfk028024; Thu, 23 Nov 2023 20:19:54 GMT (envelope-from git) Date: Thu, 23 Nov 2023 20:19:54 GMT Message-Id: <202311232019.3ANKJsfk028024@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: c4dacfa7f4b8 - main - pst: improve shutdown_post_sync handler List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c4dacfa7f4b82f23ec0924d9db772860b2066f9b Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=c4dacfa7f4b82f23ec0924d9db772860b2066f9b commit c4dacfa7f4b82f23ec0924d9db772860b2066f9b Author: Mitchell Horne AuthorDate: 2023-11-23 15:59:05 +0000 Commit: Mitchell Horne CommitDate: 2023-11-23 20:19:40 +0000 pst: improve shutdown_post_sync handler It is desirable to shut down the raid controller even in the face of a panic. In the SCHEDULER_STOPPED() case, set the interrupt mask bits so that we request a polled wait, rather than sleep(), from iop_queue_wait_msg(). Tweak the function name and signature. Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42337 --- sys/dev/pst/pst-iop.c | 2 +- sys/dev/pst/pst-raid.c | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/sys/dev/pst/pst-iop.c b/sys/dev/pst/pst-iop.c index f9921a564333..783507ce0d9e 100644 --- a/sys/dev/pst/pst-iop.c +++ b/sys/dev/pst/pst-iop.c @@ -432,7 +432,7 @@ iop_queue_wait_msg(struct iop_softc *sc, int mfa, struct i2o_basic_message *msg) int status, timeout = 10000; mtx_lock(&sc->mtx); - if (!(sc->reg->oqueue_intr_mask & 0x08)) { + if ((sc->reg->oqueue_intr_mask & I2O_OUT_INTR_QUEUE) == 0) { msg->transaction_context = (u_int32_t)&request; msg->initiator_context = (u_int32_t)iop_done; sc->reg->iqueue = mfa; diff --git a/sys/dev/pst/pst-raid.c b/sys/dev/pst/pst-raid.c index 4e9c4fb724bc..b369a6d36fdc 100644 --- a/sys/dev/pst/pst-raid.c +++ b/sys/dev/pst/pst-raid.c @@ -73,7 +73,7 @@ struct pst_request { static disk_strategy_t pststrategy; static int pst_probe(device_t); static int pst_attach(device_t); -static int pst_shutdown(device_t); +static void pst_shutdown_post_sync(device_t, int); static void pst_start(struct pst_softc *); static void pst_done(struct iop_softc *, u_int32_t, struct i2o_single_reply *); static int pst_rw(struct pst_request *); @@ -170,18 +170,23 @@ pst_attach(device_t dev) name, psc->info->capacity/(512*255*63), 255, 63, device_get_nameunit(psc->iop->dev)); - EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown, + EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown_post_sync, dev, SHUTDOWN_PRI_FIRST); return 0; } -static int -pst_shutdown(device_t dev) +static void +pst_shutdown_post_sync(device_t dev, int howto __unused) { struct pst_softc *psc = device_get_softc(dev); struct i2o_bsa_cache_flush_message *msg; int mfa; + if (SCHEDULER_STOPPED()) { + /* Request polled shutdown. */ + psc->iop->reg->oqueue_intr_mask = 0xffffffff; + } + mfa = iop_get_mfa(psc->iop); msg = (struct i2o_bsa_cache_flush_message *)(psc->iop->ibase + mfa); bzero(msg, sizeof(struct i2o_bsa_cache_flush_message)); @@ -194,7 +199,6 @@ pst_shutdown(device_t dev) msg->control_flags = 0x0; /* 0x80 = post progress reports */ if (iop_queue_wait_msg(psc->iop, mfa, (struct i2o_basic_message *)msg)) printf("pst: shutdown failed!\n"); - return 0; } static void From nobody Thu Nov 23 21:09:35 2023 X-Original-To: dev-commits-src-main@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 4SbrN2007cz51ymV; Thu, 23 Nov 2023 21:09:38 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-oo1-xc30.google.com (mail-oo1-xc30.google.com [IPv6:2607:f8b0:4864:20::c30]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SbrN12KNxz4Nl4; Thu, 23 Nov 2023 21:09:37 +0000 (UTC) (envelope-from mjguzik@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-oo1-xc30.google.com with SMTP id 006d021491bc7-58cecfb4412so690950eaf.3; Thu, 23 Nov 2023 13:09:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700773776; x=1701378576; darn=freebsd.org; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=lsaYqs+nbushsiBS5myk3jG5BJX/tO8lbMYgWGCqfuY=; b=NoYMxV023IKC5HHAC/dwxXUhU6n3frkGHJRY5NJXSQElAsqWAoKcTPTu8/44geXjEi 7AxMjv2WW1u5xqyOJVjSFSwGFhPgvaO3f3VNZreIbw9nnxR6j9nirv2FXqRD0ZykvwMT 5g4gAR9rTpGNsGBLSF1YX8+rl2LhL22JqMnljxyL15cjuTHMdCSP+T9HmM2AuiG80lol Ft2DUe4ONehwQEh9LRNxwzJyEvNAdQs9tVGaNEYoFhn247d0keM9lQIo7IveX9vf6ayh A16+MU+bAaT9HeRKoKpSCIwRm+xBcBJ4GiaVbwOFGRgZkvkfQuV4p+Aq2mb3sljddFBu yxSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700773776; x=1701378576; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=lsaYqs+nbushsiBS5myk3jG5BJX/tO8lbMYgWGCqfuY=; b=HdU9f5/PDXoQHLfRmFoIyjWUTKNNdEXBMhN1FNtFIr5v26lFZJykqO8a9qRy6wrhu1 TNkcoBXyerO6m4q5tJbIPhvK8XXDw/ePPeTMCBZ5XLiChGRsQsWTODCj8pKjmqTwwO+o TgIUuhbkFWwJn0H0Z/QgjXosgXjvZQ6aPBHNPxQWTOsPMBO70XPPc+0t/J4b0zXNGIDh 86jmjou6VWhL0PQOFjtbh5DkTfrBScSH9/569jIn3rfPi4W9lrp7oqhGzOUtnfhQWx5M e1uIfJf+k/gAzC0GLlgz6zxKTyFE9nqPsRBs0lwgAUUn2W4HCQn/FXhseZWff8TZ8M6t 9InQ== X-Gm-Message-State: AOJu0YyoLQP4Ty1cBEwJ0BoPDbem8z/0kEs7CQHEB3EKobhKCNkrdmX6 PDLVCcZuOVpVp56gWI8LzaWPrFOBusVjTBoz1QZbGjMJG80= X-Google-Smtp-Source: AGHT+IE/Yn6OXSXWuKGT1F7INJgmi4W6Z/8ZRn7KYFo7UtUGXk4PuTcac34RA7/Gqs72f0STnCrsFwlVOZO4tqYcWtY= X-Received: by 2002:a05:6820:1625:b0:57b:469d:8af6 with SMTP id bb37-20020a056820162500b0057b469d8af6mr803811oob.4.1700773776044; Thu, 23 Nov 2023 13:09:36 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Received: by 2002:a8a:795:0:b0:4f0:1250:dd51 with HTTP; Thu, 23 Nov 2023 13:09:35 -0800 (PST) In-Reply-To: <202311231948.3ANJmwEC076780@gitrepo.freebsd.org> References: <202311231948.3ANJmwEC076780@gitrepo.freebsd.org> From: Mateusz Guzik Date: Thu, 23 Nov 2023 22:09:35 +0100 Message-ID: Subject: Re: git: ad34121518bb - main - Revert "pst: improve shutdown_post_sync handler" To: Mitchell Horne Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4SbrN12KNxz4Nl4 i386 kernel is going down, i suggest just dropping the patch On 11/23/23, Mitchell Horne wrote: > The branch main has been updated by mhorne: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a > > commit ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a > Author: Mitchell Horne > AuthorDate: 2023-11-23 19:46:28 +0000 > Commit: Mitchell Horne > CommitDate: 2023-11-23 19:48:44 +0000 > > Revert "pst: improve shutdown_post_sync handler" > > I did not realize this driver was i386-only, and the change fails to > compile. Revert so that I can fix it properly. > > This reverts commit 428ebb7cd9f51afb6809bf81cf21a05e0fd93ff4. > > Pointy hat to: mhorne > --- > sys/dev/pst/pst-iop.c | 2 +- > sys/dev/pst/pst-raid.c | 14 +++++--------- > 2 files changed, 6 insertions(+), 10 deletions(-) > > diff --git a/sys/dev/pst/pst-iop.c b/sys/dev/pst/pst-iop.c > index 43ced2401d2c..f9921a564333 100644 > --- a/sys/dev/pst/pst-iop.c > +++ b/sys/dev/pst/pst-iop.c > @@ -432,7 +432,7 @@ iop_queue_wait_msg(struct iop_softc *sc, int mfa, struct > i2o_basic_message *msg) > int status, timeout = 10000; > > mtx_lock(&sc->mtx); > - if ((sc->reg->oqueue_intr_mask & I20_OUT_INTR_QUEUE) == 0) { > + if (!(sc->reg->oqueue_intr_mask & 0x08)) { > msg->transaction_context = (u_int32_t)&request; > msg->initiator_context = (u_int32_t)iop_done; > sc->reg->iqueue = mfa; > diff --git a/sys/dev/pst/pst-raid.c b/sys/dev/pst/pst-raid.c > index 4f9279462ee8..4e9c4fb724bc 100644 > --- a/sys/dev/pst/pst-raid.c > +++ b/sys/dev/pst/pst-raid.c > @@ -73,7 +73,7 @@ struct pst_request { > static disk_strategy_t pststrategy; > static int pst_probe(device_t); > static int pst_attach(device_t); > -static void pst_shutdown_post_sync(device_t, int); > +static int pst_shutdown(device_t); > static void pst_start(struct pst_softc *); > static void pst_done(struct iop_softc *, u_int32_t, struct i2o_single_reply > *); > static int pst_rw(struct pst_request *); > @@ -170,23 +170,18 @@ pst_attach(device_t dev) > name, psc->info->capacity/(512*255*63), 255, 63, > device_get_nameunit(psc->iop->dev)); > > - EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown_post_sync, > + EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown, > dev, SHUTDOWN_PRI_FIRST); > return 0; > } > > -static void > -pst_shutdown_post_sync(device_t dev, int howto __unused) > +static int > +pst_shutdown(device_t dev) > { > struct pst_softc *psc = device_get_softc(dev); > struct i2o_bsa_cache_flush_message *msg; > int mfa; > > - if (SCHEDULER_STOPPED()) { > - /* Request polled shutdown. */ > - psc->reg->oqueue_intr_mask = 0xffffffff; > - } > - > mfa = iop_get_mfa(psc->iop); > msg = (struct i2o_bsa_cache_flush_message *)(psc->iop->ibase + mfa); > bzero(msg, sizeof(struct i2o_bsa_cache_flush_message)); > @@ -199,6 +194,7 @@ pst_shutdown_post_sync(device_t dev, int howto > __unused) > msg->control_flags = 0x0; /* 0x80 = post progress reports */ > if (iop_queue_wait_msg(psc->iop, mfa, (struct i2o_basic_message > *)msg)) > printf("pst: shutdown failed!\n"); > + return 0; > } > > static void > > -- Mateusz Guzik From nobody Fri Nov 24 02:17:11 2023 X-Original-To: dev-commits-src-main@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 4SbzBv74Dtz526rL; Fri, 24 Nov 2023 02:17:11 +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 4SbzBv6PPFz3LHD; Fri, 24 Nov 2023 02:17:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700792231; 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=9iZjghIhefOTZAkJQqJYXdC8hwZw5HPjsaGUENGTJoQ=; b=is8AeFsDMnVBtdLgZ4d40qWZzSc2rA+Rs71w9ZI++levtxiTxV9ksEC+eLTAyt5yeThveo KpGtWGLE3M14EqEnb4ZkFhiypf0+QOyDLZmhY8E+Bdu0fCxA7jAPLIkHB0W5BGZkSuAGT2 WyxLN2N3bCoXtq5ThDseumiDu/FmW7OT93RZ0gubfBW8t4dv3WgPXmPhE3kMC7w3MBFV5W dU0RSZlCbUl6UNUZ6GRA3XFyyp6n2LQTyvKWZbR/Ktd4sqB8x/KaklMg4Gxmy01/T6XTc1 zRb0JX0E8mfOyYtkx5QTlBWNdNJEogtK+r1YGhWVPQQyNBMue/E0I3LlMjUUAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700792231; 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=9iZjghIhefOTZAkJQqJYXdC8hwZw5HPjsaGUENGTJoQ=; b=PTicPM20TBgvUx+l7zGoM0p/aegJZNn2nEORAqbGRDrSqU7yLq7AvzF+dGarC3wbx6+NaR oZyaGgoKi+GlAsvsdBXI8KJEJ5XD5rby1cQAMdj1J6DxzS0MP5+yEHIWZ0NwqMyya2VM+4 evCUkrRJYHUWrTlgIu5WsT33t7K1NMxSe7eVKwsondaFl0NXLnaycx0Jp1M2SMzbF6uZhH YqmlG4nEHCRbCw2/SBnw4L+fxRNEg9GlMu/9Sf4NydtND1xZLJ6yiIHGQP/MEXXj8jJsSd xFng7S2Q6cBqouZZjqnDE+C2Hqh/12iadmmlG6Waop+mxDJGbpwZkf8enlRfYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700792231; a=rsa-sha256; cv=none; b=VJM0Cf2xzfwvrZbvWLLpdUVoKAcKoJqmt3ZscIShYhG3KKlBbPaCZTp+9gEJOlwJIG4Oom uPHYypumxUFStDdmiVpj0Ei5XqzOUPdQyw8jb33sPkzRNDaUnmfaeng7M8yCT3C49l84Iq hekMw+2CwEZ/Gr+KslBMP+T4pP52kNGG2J0x4s4Mg0aJxhb14x/VUOfT/20RDqRzrX1ZYm jcCyP+TWH2HbkjUTsj0EJKDAxztfAVHrjZM/EAf1qodZ/FSMdDTQUWq/rMaFkblEfxyTNs cy7T5nn8z73EvrEuiuWNewIbtp2NRLbXTQP4oDS4llx3dR0KoaXnM2LSIILGFA== 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 4SbzBv5T5zzBhD; Fri, 24 Nov 2023 02:17:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AO2HBdU026264; Fri, 24 Nov 2023 02:17:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AO2HBCq026261; Fri, 24 Nov 2023 02:17:11 GMT (envelope-from git) Date: Fri, 24 Nov 2023 02:17:11 GMT Message-Id: <202311240217.3AO2HBCq026261@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 5e16809c953f - main - tzsetup: symlink /etc/localtime instead of copying List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5e16809c953f4cd19fadb1767469dec319de0353 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=5e16809c953f4cd19fadb1767469dec319de0353 commit 5e16809c953f4cd19fadb1767469dec319de0353 Author: Ed Maste AuthorDate: 2022-10-14 16:44:35 +0000 Commit: Ed Maste CommitDate: 2023-11-24 02:13:49 +0000 tzsetup: symlink /etc/localtime instead of copying Using a symlink means that new timezone data (installed by an errata update, say) will be usable without having to be copied again. Reviewed by: bapt, kevans, philip Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D37005 --- usr.sbin/tzsetup/tzsetup.8 | 2 +- usr.sbin/tzsetup/tzsetup.c | 119 ++++++++++----------------------------------- 2 files changed, 27 insertions(+), 94 deletions(-) diff --git a/usr.sbin/tzsetup/tzsetup.8 b/usr.sbin/tzsetup/tzsetup.8 index 109a52beb164..60461363da9a 100644 --- a/usr.sbin/tzsetup/tzsetup.8 +++ b/usr.sbin/tzsetup/tzsetup.8 @@ -52,7 +52,7 @@ The following options are available: Open all files and directories relative to .Ar chroot_directory . .It Fl n -Do not create or copy files. +Do not create or symlink files. .It Fl r Reinstall the zoneinfo file installed last time. The name is obtained from diff --git a/usr.sbin/tzsetup/tzsetup.c b/usr.sbin/tzsetup/tzsetup.c index f6440a0ea736..9610023ec3ea 100644 --- a/usr.sbin/tzsetup/tzsetup.c +++ b/usr.sbin/tzsetup/tzsetup.c @@ -744,109 +744,42 @@ static void message_zoneinfo_file(const char *title, char *prompt) static int install_zoneinfo_file(const char *zoneinfo_file) { - char buf[1024]; char prompt[SILLY_BUFFER_SIZE]; - struct stat sb; - ssize_t len; - int fd1, fd2, copymode; - - if (lstat(path_localtime, &sb) < 0) { - /* Nothing there yet... */ - copymode = 1; - } else if (S_ISLNK(sb.st_mode)) - copymode = 0; - else - copymode = 1; #ifdef VERBOSE - if (copymode) - snprintf(prompt, sizeof(prompt), - "Copying %s to %s", zoneinfo_file, path_localtime); - else - snprintf(prompt, sizeof(prompt), - "Creating symbolic link %s to %s", - path_localtime, zoneinfo_file); + snprintf(prompt, sizeof(prompt), "Creating symbolic link %s to %s", + path_localtime, zoneinfo_file); message_zoneinfo_file("Info", prompt); #endif if (reallydoit) { - if (copymode) { - fd1 = open(zoneinfo_file, O_RDONLY, 0); - if (fd1 < 0) { - snprintf(prompt, sizeof(prompt), - "Could not open %s: %s", zoneinfo_file, - strerror(errno)); - message_zoneinfo_file("Error", prompt); - return (DITEM_FAILURE | DITEM_RECREATE); - } - - if (unlink(path_localtime) < 0 && errno != ENOENT) { - snprintf(prompt, sizeof(prompt), - "Could not delete %s: %s", - path_localtime, strerror(errno)); - message_zoneinfo_file("Error", prompt); - return (DITEM_FAILURE | DITEM_RECREATE); - } - - fd2 = open(path_localtime, O_CREAT | O_EXCL | O_WRONLY, - S_IRUSR | S_IRGRP | S_IROTH); - if (fd2 < 0) { - snprintf(prompt, sizeof(prompt), - "Could not open %s: %s", - path_localtime, strerror(errno)); - message_zoneinfo_file("Error", prompt); - return (DITEM_FAILURE | DITEM_RECREATE); - } - - while ((len = read(fd1, buf, sizeof(buf))) > 0) - if ((len = write(fd2, buf, len)) < 0) - break; - - if (len == -1) { - snprintf(prompt, sizeof(prompt), - "Error copying %s to %s %s", zoneinfo_file, - path_localtime, strerror(errno)); - message_zoneinfo_file("Error", prompt); - /* Better to leave none than a corrupt one. */ - unlink(path_localtime); - return (DITEM_FAILURE | DITEM_RECREATE); - } - close(fd1); - close(fd2); - } else { - if (access(zoneinfo_file, R_OK) != 0) { - snprintf(prompt, sizeof(prompt), - "Cannot access %s: %s", zoneinfo_file, - strerror(errno)); - message_zoneinfo_file("Error", prompt); - return (DITEM_FAILURE | DITEM_RECREATE); - } - if (unlink(path_localtime) < 0 && errno != ENOENT) { - snprintf(prompt, sizeof(prompt), - "Could not delete %s: %s", - path_localtime, strerror(errno)); - message_zoneinfo_file("Error", prompt); - return (DITEM_FAILURE | DITEM_RECREATE); - } - if (symlink(zoneinfo_file, path_localtime) < 0) { - snprintf(prompt, sizeof(prompt), - "Cannot create symbolic link %s to %s: %s", - path_localtime, zoneinfo_file, - strerror(errno)); - message_zoneinfo_file("Error", prompt); - return (DITEM_FAILURE | DITEM_RECREATE); - } + if (access(zoneinfo_file, R_OK) != 0) { + snprintf(prompt, sizeof(prompt), + "Cannot access %s: %s", zoneinfo_file, + strerror(errno)); + message_zoneinfo_file("Error", prompt); + return (DITEM_FAILURE | DITEM_RECREATE); } - -#ifdef VERBOSE - if (copymode) + if (unlink(path_localtime) < 0 && errno != ENOENT) { snprintf(prompt, sizeof(prompt), - "Copied timezone file from %s to %s", - zoneinfo_file, path_localtime); - else + "Could not delete %s: %s", + path_localtime, strerror(errno)); + message_zoneinfo_file("Error", prompt); + return (DITEM_FAILURE | DITEM_RECREATE); + } + if (symlink(zoneinfo_file, path_localtime) < 0) { snprintf(prompt, sizeof(prompt), - "Created symbolic link from %s to %s", - zoneinfo_file, path_localtime); + "Cannot create symbolic link %s to %s: %s", + path_localtime, zoneinfo_file, + strerror(errno)); + message_zoneinfo_file("Error", prompt); + return (DITEM_FAILURE | DITEM_RECREATE); + } + +#ifdef VERBOSE + snprintf(prompt, sizeof(prompt), + "Created symbolic link from %s to %s", zoneinfo_file, + path_localtime); message_zoneinfo_file("Done", prompt); #endif } /* reallydoit */ From nobody Fri Nov 24 07:17:35 2023 X-Original-To: dev-commits-src-main@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 4Sc5sn4h91z51n86; Fri, 24 Nov 2023 07:17:49 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4Sc5sn1hT7z4g9d; Fri, 24 Nov 2023 07:17:49 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.17.1/8.17.1) with ESMTP id 3AO7HZLb052894; Fri, 24 Nov 2023 09:17:38 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 3AO7HZLb052894 Received: (from kostik@localhost) by tom.home (8.17.1/8.17.1/Submit) id 3AO7HZTN052893; Fri, 24 Nov 2023 09:17:35 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 24 Nov 2023 09:17:35 +0200 From: Konstantin Belousov To: Ed Maste Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 5e16809c953f - main - tzsetup: symlink /etc/localtime instead of copying Message-ID: References: <202311240217.3AO2HBCq026261@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202311240217.3AO2HBCq026261@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4Sc5sn1hT7z4g9d On Fri, Nov 24, 2023 at 02:17:11AM +0000, Ed Maste wrote: > The branch main has been updated by emaste: > > URL: https://cgit.FreeBSD.org/src/commit/?id=5e16809c953f4cd19fadb1767469dec319de0353 > > commit 5e16809c953f4cd19fadb1767469dec319de0353 > Author: Ed Maste > AuthorDate: 2022-10-14 16:44:35 +0000 > Commit: Ed Maste > CommitDate: 2023-11-24 02:13:49 +0000 > > tzsetup: symlink /etc/localtime instead of copying > > Using a symlink means that new timezone data (installed by an errata > update, say) will be usable without having to be copied again. Does this mean that installations with split / and /usr get broken? From nobody Fri Nov 24 07:50:22 2023 X-Original-To: dev-commits-src-main@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 4Sc6c93WkBz520g2; Fri, 24 Nov 2023 07:51:05 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Received: from mailgate.Leidinger.net (mailgate.leidinger.net [IPv6:2a00:1828:2000:313::1: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-signature ECDSA (P-256) client-digest SHA256) (Client CN "mailgate.leidinger.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Sc6c86zsDz3HxG; Fri, 24 Nov 2023 07:51:04 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Authentication-Results: mx1.freebsd.org; none List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leidinger.net; s=outgoing-alex; t=1700812240; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=0u4eijx/MvAWNaMNOUhV5xkfoGcAA9TR+LQX4/uoTK8=; b=XBYNCVMn+2kch3+JRg7G0dhof4h0XsNZK0O1LGuEn/51LvlL2YWxHGhl2GWmx/Y7yZRTvO 0w81L3TB1U2pujgJj5Bo/0S7lBv6vxsgFdF5PoM0Etkr6pbmgX/hIdPEO8PkOeOnn1BOUy g722QXfMN0A3hB8UOy3MKXk1vYSKmet3gc24rg/0aBixL3MTOylt+VaF1/7WTMyxrdswxP mYo/WpnLVCIYA2EIWAfjzkyv3MYHGdt9B9Fna3fHFJwWp2XuGgnFqueAIOuGJVWjKMy2Cz GqRUYjSzEXKI+9bO/nLTIpwEohbq5BSdf4yLr1A6GTm5kpDslY2qlG+4xINl6Q== Date: Fri, 24 Nov 2023 08:50:22 +0100 From: Alexander Leidinger To: Rick Macklem , Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots In-Reply-To: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> Message-ID: <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> X-Sender: Alexander@Leidinger.net Organization: No organization, this is a private message. Content-Type: multipart/signed; protocol="application/pgp-signature"; boundary="=_a63461b2de562d0279d32a4f9afc17b4"; micalg=pgp-sha256 X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:34240, ipnet:2a00:1828::/32, country:DE] X-Rspamd-Queue-Id: 4Sc6c86zsDz3HxG This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --=_a63461b2de562d0279d32a4f9afc17b4 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Am 2023-11-23 16:25, schrieb Rick Macklem: > The branch main has been updated by rmacklem: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > Author: Rick Macklem > AuthorDate: 2023-11-23 15:23:33 +0000 > Commit: Rick Macklem > CommitDate: 2023-11-23 15:23:33 +0000 > > nfsd: Fix NFS access to .zfs/snapshot snapshots > > When a process attempts to access a snapshot under > //.zfs/snapshot, the snapshot is automounted. > However, without this patch, the automount does not > set mnt_exjail, which results in the snapshot not being > accessible over NFS. > > This patch defines a new function called vfs_exjail_clone() > which sets mnt_exjail from another mount point and > then uses that function to set mnt_exjail in the snapshot > automount. A separate patch that is currently a pull request > for OpenZFS, calls this function to fix the problem. May the same/similar fix like for ZFS be needed / useful for nullfs mounted stuff? I have a ZFS dataset which is mounted via nullfs into a jail. This nullfs-mount is then exported via samba. In samba I have the shadow-copy stuff enabled, but it doesn't work, as the jails can't access the snapshot. Bye, Alexander. -- http://www.Leidinger.net Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF http://www.FreeBSD.org netchild@FreeBSD.org : PGP 0x8F31830F9F2772BF --=_a63461b2de562d0279d32a4f9afc17b4 Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc; size=833 Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEER9UlYXp1PSd08nWXEg2wmwP42IYFAmVgVcwACgkQEg2wmwP4 2IZyHBAAiJ0wfCLEY3NtvjcNdxkMlgvXgNv/jGBAKzN0zSUj3VNRYLPkdQonwq2J aDLr2v5O6hMF97zuPCbyZvsrNf8Djc7ZlUMhe+2YjHHYNmFhVklBTMrFqmLuWGq4 0IMMcUyqDdgH9dpO2LvN9FkqEe6iQwKoik6S+VZPcT6DTIa/bN1g98aipTDZChAB mkyR9rK4MyKrVf4JiCISB5vtgOCaCQS7E9x/n908LWvCNEOaBpVPvVJw3GL+eS8a wO3TkuY/FLYnHHvcaD7H4WXSubTWWD5s//ngH6YGbeyH6Q6Axebjg1uyVzYVNrOY 2DnCJjw79rBG3FcR+7FV/6vsFKk/TKD/lZxcrKgMUFiWTjqnAP/XjoHdpgYAh3V5 jIbpBSTTgQbfzSNzDpdGkMIOKgSm4wFvz9Pnt/4UKd+U/ixLDqJL3sclJUuZWTgU BL0H60lBjIeybA1qKTSxyX/AMsEg1tsZ/7qI421TZbj7vgzA7tL1UtP9m1bNfFT8 5VxKQwxtez/U4Vw7fxbcrNEaN4MJsDMqUklSUKTBWON2vpqRKeIW4OQGqfXdZv2r +ctaZbzuZpoAXGm6SJFiL00Rw7Necsmk5ke93+RxnQd17oO64CabB762/Su8PrXx CKKoUVdl/q/c+LJOKQPcSkZS5moFypNvQ5DWzmdPZ5t7iuKv+M8= =r9BZ -----END PGP SIGNATURE----- --=_a63461b2de562d0279d32a4f9afc17b4-- From nobody Fri Nov 24 07:51:07 2023 X-Original-To: dev-commits-src-main@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 4Sc6cS5Kxrz520mY for ; Fri, 24 Nov 2023 07:51:20 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [IPv6:2a00:1450:4864:20::52a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Sc6cS3HFjz3JCR for ; Fri, 24 Nov 2023 07:51:19 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ed1-x52a.google.com with SMTP id 4fb4d7f45d1cf-54b0310f536so136171a12.0 for ; Thu, 23 Nov 2023 23:51:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1700812278; x=1701417078; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=RZnli/N0JcM/uBoZyRjeWpvzR1m4MxpOXczqI8u4MKE=; b=xNXMaFayZb+OTYuoVAuQLr/G1O6K64jQw8BZoQXjBxEuDt9lMzCcTnNhjo3ADM0wA9 7ve2MuYjVWx3aVTh7ec0vbFvtMZiaPlV84Lr09h+JmM3pAPSyjhWvXmkdmvTF0tDd6iT wuETzN+IQeI5L7tlLRykA0pYhJ5dCz5m2qyT4ELW35Qfdr8ObaGsWYz6JQ8TnEmF4lpn 58ymEi+Q+h5JGQtOEb5U21yYO8XsIG6Jr7axvkXfg1ELXpquCncMRjIHZ488n6UXYfh3 IuD+fk33N7/JgFXx+pMcT0ahTo+FttYBi8hGH4GW9UYrn5YBn55HXB+nSLku7eMwtUh3 sOxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700812278; x=1701417078; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=RZnli/N0JcM/uBoZyRjeWpvzR1m4MxpOXczqI8u4MKE=; b=uMnrCN4vL51glRhDBmRRFw0o55DmE05KgaXclk4ETB5ttUx86XgErvF9s1mm93QJ65 3GAD+VY0bt3kRpoSn0Zk85UxVngcCSSfxkUbl2lnZJlZVkqR3JlAyVvD+4OKU8P1iyej 0hpn2JcT+ul5dVD/H006I3UrOC/okf4Xo2FWoC4ZNL7Y24Z1vyFiE/hmyIWB+YH48aig eq2ch6YwTw0GQXlERK+yMwsBxQd9C85UrUhHaq7yzSQZmG5F1YrTptt7UR0cHK0b2J3Z 3zYqntIigArqA+XD/hjak3Q1/7pc8IAYPC/Jw1umaMOpJGzYwApeiPAZojDDtwRcJrAe E5/A== X-Gm-Message-State: AOJu0Yw9ESFc5afqk1mtHsyS+whuadIUBqr465ptNUn3T7B+wgc6qsaC PXT1zrJ/JKO1xvSQXR68ILmgtOEr2226chAzkr7UuarispJfcrGL X-Google-Smtp-Source: AGHT+IE+TqUtvw1vXo74m1Rv7lAJ/6Zmz/dP/IrMquWYrpF18vh3Ik5a9TmsfYNyvOvl+Gdz9NgviNnDb5iNOyYytto= X-Received: by 2002:a05:6402:43c8:b0:546:d6e1:fbf3 with SMTP id p8-20020a05640243c800b00546d6e1fbf3mr5280313edc.1.1700812278046; Thu, 23 Nov 2023 23:51:18 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311240217.3AO2HBCq026261@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Fri, 24 Nov 2023 00:51:07 -0700 Message-ID: Subject: Re: git: 5e16809c953f - main - tzsetup: symlink /etc/localtime instead of copying To: Konstantin Belousov Cc: Ed Maste , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000a9b7fb060ae1376b" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4Sc6cS3HFjz3JCR --000000000000a9b7fb060ae1376b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Nov 24, 2023 at 12:17=E2=80=AFAM Konstantin Belousov wrote: > On Fri, Nov 24, 2023 at 02:17:11AM +0000, Ed Maste wrote: > > The branch main has been updated by emaste: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D5e16809c953f4cd19fadb1767469dec= 319de0353 > > > > commit 5e16809c953f4cd19fadb1767469dec319de0353 > > Author: Ed Maste > > AuthorDate: 2022-10-14 16:44:35 +0000 > > Commit: Ed Maste > > CommitDate: 2023-11-24 02:13:49 +0000 > > > > tzsetup: symlink /etc/localtime instead of copying > > > > Using a symlink means that new timezone data (installed by an errat= a > > update, say) will be usable without having to be copied again. > Does this mean that installations with split / and /usr get broken? > Not in any real sense, no. Very little is run prior to /usr being mounted in these setups. What is run isn't a daemon and very few of them print times. And if they were, they'd print it in UTC not local time. The only thing I can think of that might be user-visible would be boot -s to single user. Date will report UTC instead of local time in these setups (which these days have become somewhat rare). Warner --000000000000a9b7fb060ae1376b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


--000000000000a9b7fb060ae1376b-- From nobody Fri Nov 24 09:45:42 2023 X-Original-To: dev-commits-src-main@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 4Sc98R0wMdz520w3; Fri, 24 Nov 2023 09:45:43 +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 4Sc98R0STbz4Cwg; Fri, 24 Nov 2023 09:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819143; 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=qR9qY7hypbjCY9jYPPtPBlXs5G0D+4/Kd23EmPAZa0c=; b=MhMfe61yIL+s80a2LjS5ZksDnAe0RTS+ULk/CRgnLLCUURSEUXOem9Lop5cYuLudF/vleE ApkldS6FjnKA7vc1Dnfyoi383sk23HwCLaG1OtueNo59RLStwGpwwKgG4jjf1Tv1X23UFB BHhHwbwgHJgQvai4qiymXu3BmBE232x1zGuFK3d9EPFRfMyr9cF38nD47UkhokpyUQBBSy F7NXh4lEhUmOZpoz8ovgMQ1MW5ClwrVq+ktp/gtHYnI5JELRr3xANkPjltreyh0uYyIIfA iA2XXANu9bGVKTQgpf3pAcT3r0C4jNwvtg9r15ECFia55BqOOhjgkzpnInWkmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819143; 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=qR9qY7hypbjCY9jYPPtPBlXs5G0D+4/Kd23EmPAZa0c=; b=MFOTkXu+7jpDZZO4pDRJLX6i4cjcJKkydxvIQhCNi2YJOhYxZzsaHeEWnv2Ib4b0ARvYhD 2YNWRIuQcaJz7ECjQMQRkaDq0AQh8pY+xIRk0HuEu5rls/VpHcvs87/9O1mjydcK6VMseS 1XBPkQ3nizhP9FSfy0nhqGyD8fowmmOa6qNFGx4Y5fDhwyKmlfw/iOI69GnGNVCGnKJQcC 9fBQOXNRW9pBVq5mjJs7IpjdCWWQ0X9Ui62zlXB/n+IfJE8bS3MdIUmBYs1XS1RwQptK2g hGaQuBciwVigkTMQslWNZ3TVJjhFXLkiM8Qc4VIsnX90l6Ut0LhdY/GwXlHO7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700819143; a=rsa-sha256; cv=none; b=ve0MAZM6c+myR38T26uGE9nG+sAeRQanR9bok/H2bXz/cuZrKx/u73tIR9crLuWEW354u8 09z9lEEGGDT0sFN1puPZ9WljwV3TP9kZ3e8ogoYYIdARog8gfsfnNXz2+GpeUhBO8abHHz Ah2hPwtkFGMx9mamTISQabIlqFpM92M6Mbb5oUTxV/mFakZ6BMNMNSwvZpN+meDXb0j1Xq Qvv3GDJwrtoLRcoWv6DcTX6+488YYzabw2kGLKrDaKDsbbHXJejsIL/27+lnoA8Zrf2haw LkXw83LQx7jtfMVCbHK/9t3LfjJlrraeidLc0Bs/4UtDAG8EcnbwRI2bnYNQ8w== 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 4Sc98Q6WkSzgT2; Fri, 24 Nov 2023 09:45:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AO9jget079782; Fri, 24 Nov 2023 09:45:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AO9jgdS079780; Fri, 24 Nov 2023 09:45:42 GMT (envelope-from git) Date: Fri, 24 Nov 2023 09:45:42 GMT Message-Id: <202311240945.3AO9jgdS079780@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e commit 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e Author: Emmanuel Vadot AuthorDate: 2023-11-07 09:42:53 +0000 Commit: Emmanuel Vadot CommitDate: 2023-11-24 09:44:20 +0000 autofs: media: Don't include nosuid in the script We already have nosuid option in auto_master so no need to redefine it. Also it's easier for a user to modify the auto_master configuration file than the script (which shouldn't be modified). Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D42492 Reviewed by: rew --- usr.sbin/autofs/autofs/special_media | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/autofs/autofs/special_media b/usr.sbin/autofs/autofs/special_media index d72ddddddb2e..33fa4544d028 100755 --- a/usr.sbin/autofs/autofs/special_media +++ b/usr.sbin/autofs/autofs/special_media @@ -40,7 +40,7 @@ print_map_entry() { case "${_fstype}" in "exfat") if [ -f "/usr/local/sbin/mount.exfat" ]; then - echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype},nosuid :/dev/${_p}" + echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype} :/dev/${_p}" else /usr/bin/logger -p info -t "special_media[$$]" \ "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-exfat first" @@ -49,7 +49,7 @@ print_map_entry() { ;; "ntfs") if [ -f "/usr/local/bin/ntfs-3g" ]; then - echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid :/dev/${_p}" + echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype} :/dev/${_p}" else /usr/bin/logger -p info -t "special_media[$$]" \ "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first" @@ -57,10 +57,10 @@ print_map_entry() { fi ;; "ext2fs" | "msdosfs") - echo "-fstype=${_fstype},nosuid,async :/dev/${_p}" + echo "-fstype=${_fstype},async :/dev/${_p}" ;; *) - echo "-fstype=${_fstype},nosuid :/dev/${_p}" + echo "-fstype=${_fstype} :/dev/${_p}" ;; esac } From nobody Fri Nov 24 09:45:43 2023 X-Original-To: dev-commits-src-main@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 4Sc98S1rm7z520fG; Fri, 24 Nov 2023 09:45:44 +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 4Sc98S0sCDz4D3b; Fri, 24 Nov 2023 09:45:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819144; 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=6PzXmlpsBaa0TE3I1z4cVeJ9UhMrNH22Zl++HzRwmSU=; b=WnaL/sZVAjVndRz0O2KtyOxslBWeXZO1+C8CrcgmtTRBUFlgej9o4iORjxK2eLrIwV9mTW dR3Et0PEgb18xsYM2rxooZtyREL7Wucf4OGEhnvkUz6pEtQ+RcnBZObwWmFnu9r7dlYy42 hjjj9R5mkaopOt3cverGOHr9saCFViLERRf4+8HX0j/druIcgD/FtbukvrXCJciWek1Ru2 aprOeRo0jWBl3UtGhcHsSFccTnuQo6dUd1ZVSe9UPmneHfkhc8k/pJbbbrN4nJbm92HidN /Qhxaqty4iNMhYqmUtC7Vo88yWEucHdLeBRQ3rG4k/Oo7WuJOjmvOTuIp9K8wg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819144; 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=6PzXmlpsBaa0TE3I1z4cVeJ9UhMrNH22Zl++HzRwmSU=; b=LcHe33c9mSxtWJ7pauT+3lZ8QboPsBw9606xGVeSSWKuMmJKc0dsEamsLUaTGkknkkgr3q 5SCXDbqaM6uDTuuDEI9wGVMc0ch+ROHzRBmqoCT0rIcP8YZ4TbbLpPcYzboppJS8wWKw9O eXDhUoHT5jYRatr2HZyfEEAKJ1bZVobDqujNSYIB99dx4n43biV5oQIEarKOmEzDWz81lY oQJJOm9YEckSJJo9uXPU+m41x7tquXSeRt8gtMV8W/eEoLX1JzTmlQFkFYtWVw8l2y6/+g dkNzb4z/A0QyZSKGzObEegPcFJQ96cjzSOJG6parmEreB4EUBSnyVRH8S8JD8A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700819144; a=rsa-sha256; cv=none; b=Kus5FZyEcoL2ZtPMjE4tQ5A38GZXkgVhCWgBaYdARZnnIwI2sk1ZLnGi/R2EXyy3kxgC/r aeI/gQkgKKrUYuP+3xF6b017AUIPVuM6fW182HDVWOermB/Iam4LxlcDPVSR3GS6otvRKk SMDvUfAXXbfbo+rK0P3MZdehPyXao258lfmomw+QcXLmeE8PNeaqlrBsqopotd9T2u1ur2 YaNhLwgi2dQ+otwYhT2FJNRooZag7DLBTjbUJmxAviOS5c5Xk1V6yLq16DlxCFRLFq6zd2 vD1yT+4kaICkHHAD9ckg30apd+vQS3Rg1Ee3Yw/U86ylSS1k41sSCUb1+/Bg4A== 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 4Sc98R6zYyzgR2; Fri, 24 Nov 2023 09:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AO9jhp5079839; Fri, 24 Nov 2023 09:45:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AO9jhdT079831; Fri, 24 Nov 2023 09:45:43 GMT (envelope-from git) Date: Fri, 24 Nov 2023 09:45:43 GMT Message-Id: <202311240945.3AO9jhdT079831@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 5a78fcfce4c5 - main - autofs: Remove stale comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5a78fcfce4c563fcd47dcfb6f36aff2bdd14839b Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=5a78fcfce4c563fcd47dcfb6f36aff2bdd14839b commit 5a78fcfce4c563fcd47dcfb6f36aff2bdd14839b Author: Emmanuel Vadot AuthorDate: 2023-11-07 09:45:49 +0000 Commit: Emmanuel Vadot CommitDate: 2023-11-24 09:44:40 +0000 autofs: Remove stale comment devd action for automount -c was never commented. Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D42493 Reviewed by: rew --- usr.sbin/autofs/auto_master | 2 -- 1 file changed, 2 deletions(-) diff --git a/usr.sbin/autofs/auto_master b/usr.sbin/autofs/auto_master index bbe05c533708..111836c058a5 100644 --- a/usr.sbin/autofs/auto_master +++ b/usr.sbin/autofs/auto_master @@ -2,7 +2,5 @@ # Automounter master map, see auto_master(5) for details. # /net -hosts -nobrowse,nosuid,intr -# When using the -media special map, make sure to edit devd.conf(5) -# to move the call to "automount -c" out of the comments section. #/media -media -nosuid,noatime,autoro #/- -noauto From nobody Fri Nov 24 09:45:45 2023 X-Original-To: dev-commits-src-main@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 4Sc98T3qDVz520h5; Fri, 24 Nov 2023 09:45:45 +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 4Sc98T1qkJz4DMF; Fri, 24 Nov 2023 09:45:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819145; 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=Qsv20WIi/a48/HaqTM1AOzZfaaZxu4KAPWnR2h/0jhk=; b=M5WMEEWoQtGiubau5Whm4Q/DDhBTUfuN6VlWXTTIf74tUyNoVIRVoT+qtqTn5YTq4630+S I+7YsGMB4tKEAPYuhr7LUpLs8mrFe1PhVyxPAHz75yC4L7GN9UOTzSNlHOIgb+CKMrjSl9 MUoDexD/ylMSUqn93ezD5gXlDCJHRLBw42DG1JmoXRz9ksZ+ILaoh40KQXDtvBxRQnemwF +RAufXZqWRR8Inns6rrGZpmOruz9e1YOQ422VM/EYcRMYzRfBu4pVLHvGwnaatL1K7LuDb XLHDuq4KhhUXcWfjEr0k7s+pAkEgIX92d6TahUBofr533zmb8iR6G51mX8z6pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819145; 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=Qsv20WIi/a48/HaqTM1AOzZfaaZxu4KAPWnR2h/0jhk=; b=MA0AIaxN1VrMbCLw1QsnExIEbfQPOd+lw49aHgVSg9Y+WV99pltU0FcpahykGYGTng8Cyk SYXB/2nocPvmpHZ/Sb9BvTh6bFkNErdjl1tJIpu4zu9vmSXd4WGNCocNpeOvpyqhb+bCAg FGvnl04RNqnLS3L9WCAaAcu81OWRFGw0dMNTW1bSgGejEvk8c9Kmf7lLxgt/K2V4Y/4fYg r0q6iVHp5gzG46JkLbNlVCXTt/qUnYsWkopyzl5QAOCz6Zm3ql1zav0tDxZBkYiv3+mXi7 6/ibgAt54ef5nAcRoyaVwRZVzzg9dOc8CMCI0uXptk3/KKzb2VT2//6dCnJAqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700819145; a=rsa-sha256; cv=none; b=se4IVA2jKB9hvI3ujATeKE6iBZSXyqae+BfrZpiVlMA5GkXeIVOYTxCJICGn0qb/wEnA2t l6EeFVlwRIMnGJTHKwDyM8jvnTuypsCCv/+B3wXV/9v4M7rZyUDzWTgyyzDHVYvCDHmK5g SOAkIFTDIiTIDys/h6NZ2EIC5gkiaWCZC31RS4KlkKMYDR72wTF48w43ej/JvzK8bwwR8W zU5IHqPQi8voQWZ7OZR+Z2vKvVurEPIzhvxZL4ysJPpxxESUZL6G0OIgkA/bd7u7sYNdvd H/0Uhc1AjXm5TvvlGLQiNIBF5pxYGP3ASvUU78uoKMTASnXk7v5+99Pzfjc58A== 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 4Sc98T0vkNzgR4; Fri, 24 Nov 2023 09:45:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AO9jjWd079898; Fri, 24 Nov 2023 09:45:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AO9jj8d079895; Fri, 24 Nov 2023 09:45:45 GMT (envelope-from git) Date: Fri, 24 Nov 2023 09:45:45 GMT Message-Id: <202311240945.3AO9jj8d079895@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: b3c116d50eca - main - devd: autofs: Move autofs related events to a separate file List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b3c116d50ecacaab5236e0488cb74c1bcf614ae7 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=b3c116d50ecacaab5236e0488cb74c1bcf614ae7 commit b3c116d50ecacaab5236e0488cb74c1bcf614ae7 Author: Emmanuel Vadot AuthorDate: 2023-11-07 10:06:15 +0000 Commit: Emmanuel Vadot CommitDate: 2023-11-24 09:45:03 +0000 devd: autofs: Move autofs related events to a separate file If a user don't have FreeBSD-autofs installed there is no need to try calling automount on every GEOM event. It's also easier to add/delete autofs related event in a separate file. Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D42495 Reviewed by: imp --- sbin/devd/Makefile | 5 +++++ sbin/devd/autofs.conf | 9 +++++++++ sbin/devd/devd.conf | 7 ------- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/sbin/devd/Makefile b/sbin/devd/Makefile index 7f334ad6b409..68ff477f09c9 100644 --- a/sbin/devd/Makefile +++ b/sbin/devd/Makefile @@ -11,6 +11,11 @@ DEVDDIR= /etc/devd DEVD+= asus.conf .endif +CONFGROUPS+= AUTOFS +AUTOFSDIR= ${DEVDDIR} +AUTOFS+= autofs.conf +AUTOFSPACKAGE= autofs + CONFGROUPS+= DHCLIENT DHCLIENTDIR= ${DEVDDIR} DHCLIENT+= dhclient.conf diff --git a/sbin/devd/autofs.conf b/sbin/devd/autofs.conf new file mode 100644 index 000000000000..a06ca7295d38 --- /dev/null +++ b/sbin/devd/autofs.conf @@ -0,0 +1,9 @@ +# +# autofs(5) specific devd events + +# Discard autofs caches, useful for the -media special map. +notify 100 { + match "system" "GEOM"; + match "subsystem" "DEV"; + action "/usr/sbin/automount -c"; +}; diff --git a/sbin/devd/devd.conf b/sbin/devd/devd.conf index d793dd296437..08cbeb840b2f 100644 --- a/sbin/devd/devd.conf +++ b/sbin/devd/devd.conf @@ -136,13 +136,6 @@ notify 0 { action "service postgresql restart"; }; -# Discard autofs caches, useful for the -media special map. -notify 100 { - match "system" "GEOM"; - match "subsystem" "DEV"; - action "/usr/sbin/automount -c"; -}; - # Handle userland coredumps. # This commented out handler makes it possible to run an # automated debugging session after the core dump is generated. From nobody Fri Nov 24 09:50:28 2023 X-Original-To: dev-commits-src-main@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 4Sc9Fw2R4zz522Qf; Fri, 24 Nov 2023 09:50:28 +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 4Sc9Fw1zqPz4FFg; Fri, 24 Nov 2023 09:50:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819428; 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=tenXvimy+VWzdPLXGz6GBi4V8KibvmYxHW9JxOcQIGY=; b=eZCy5+D1sEjKQ1A2doW0lexVwsYpVpVwd8xix8U2XlOZ9oxf9F1zidsjVwlie1Qo4eFM4H Z+u2WxutytM/yA3m3jWhdo9c1T+PAtm9s5o5MLz0pdSrVqqHny+rJruMxzroGXV21XiM99 QxzxW7S9zj5Wwji31I0lDjp9xNK7d/uBNk3IvK9SFURYEUL5AtndL9yR6i/kqDoDhjuiet ddjtgOlukYe02MITYzn52ic7aRgaATQ4x/6mtnoiKklY2NolG+wgeBa1T8jR0DsFGaJ5WZ qkTSXQ3pUQ1oZlPeO01q5cc8tGv1Ra9+PHyLTGN0PeuPp+Oy/GKo6nIo7LXnqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700819428; 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=tenXvimy+VWzdPLXGz6GBi4V8KibvmYxHW9JxOcQIGY=; b=g7bCs42L0QtktlckJVwwh03SP8xIyPBeK06t3+YQGLBuw3THMS21EluoWUDDqZ0o0LrEfl r0H38LWBZPIx97Vo7SWOr65Y5WxHV9OIR0GgRZTuhqSGDdSL1hUT4+3q5NP1eSJPAy4625 WIIyzSqLfXIL2XiIpKo+COBXWj1EENE/skOhSYSzxJMI+ZmDhGVokXnrDka7DR6txOAbih tWiB0J/cUBKGXxIixf+s/a1tZn1J+RHU+akJmxwRK9cGS5f8GYZJtAubeDoQ1FQv8pq8/E RQ5540FrR3WR6D68b9uu8BEA4HHhX+LOkE58mwZpYA8TFYTTUNEuGOoK61YcUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700819428; a=rsa-sha256; cv=none; b=AqbuqE9jvNr1h9uGpKFlR6d9cya+nH7vSle4ocexcnv1eK4Apy4luv/ibaC6b+yNpS3Sg3 YuuLcSTCpr5BoQSuO5oOeYzU00vFiCmftb/Nd5alX3nvhWwb3JR1y6xR+9P3nnf872Z3Vi J+urecn1Ac2LC44bmPsS1RNJIJ/HMODF++mZojRY9EOSU2HcRFSW6hC2Kk3yD4msBl62Tc Xx33s6qo2iEI+BBlKDGdAUJ+cxvBUYLkLcxnulezQTJxw/qFIKAiHK8a81OI/jZbsJZOZ1 Qn1l1sKNNX8S3YSFqrCrYr4SDGzbJfwMoYjcm2a7Q1HSrI/nN2aUzDdUXHY/cA== 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 4Sc9Fw13QHzgNj; Fri, 24 Nov 2023 09:50:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AO9oSNF089172; Fri, 24 Nov 2023 09:50:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AO9oSeH089169; Fri, 24 Nov 2023 09:50:28 GMT (envelope-from git) Date: Fri, 24 Nov 2023 09:50:28 GMT Message-Id: <202311240950.3AO9oSeH089169@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 2a35f3cdf63d - main - sys/mutex.h: Include sys/lock.h instead of sys/_lock.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2a35f3cdf63d1f9b1ea5ab0174adabb631757210 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=2a35f3cdf63d1f9b1ea5ab0174adabb631757210 commit 2a35f3cdf63d1f9b1ea5ab0174adabb631757210 Author: Emmanuel Vadot AuthorDate: 2022-10-27 09:43:19 +0000 Commit: Emmanuel Vadot CommitDate: 2023-11-24 09:49:58 +0000 sys/mutex.h: Include sys/lock.h instead of sys/_lock.h It uses the LA_ defines when INVARIANTS is set. This unbreak dpaa2 with FDT only kernel (like ALLWINNER or ROCKCHIP) as the driver only include sys/lock.h via header polution for ACPI kernels. Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D37145 Reviewed by: kib, mjg --- sys/sys/mutex.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/mutex.h b/sys/sys/mutex.h index 56c03a1b0be9..750a5e99679a 100644 --- a/sys/sys/mutex.h +++ b/sys/sys/mutex.h @@ -34,8 +34,8 @@ #define _SYS_MUTEX_H_ #include -#include #include +#include #ifdef _KERNEL #include From nobody Fri Nov 24 11:59:54 2023 X-Original-To: dev-commits-src-main@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 4ScD7G2Fk7z51qpD; Fri, 24 Nov 2023 11:59:54 +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 4ScD7G1jHrz3F2Y; Fri, 24 Nov 2023 11:59:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700827194; 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=9W1zohNWhRQkq2N10RFZ3FmBLOOUW2PYa3SwUnpLmCI=; b=MYkkwYZPkalFSb9LBGD7sdt3gx1xP099/J8PnmrnMRISRenCOlNtaq2ugdxqLHaE7U6u7A rtMliDqTl5RpSvSjdi5RVLb1KtBgG+0gNVq3GaZjBnpiiqvZF7hIupOf02/m6evse0DqCi wL70xzIFRhrJhS/08zuTH6uIQZKJiOMcvRJkF5/gsewXZV2oNOG2cMAN20xUWAiMIXQvF0 ggTkdpZKIdgYJrksQWitrST75LixdNF0QvmS3qFHxTvDQt1AuZmr7HvzYZ9YDEV9Z4IIoL N3E/YSk1YYbO64uJwW8PEy72QPdgh+il57SdpPQvpo26K2ANdsymxQDeysokYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700827194; 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=9W1zohNWhRQkq2N10RFZ3FmBLOOUW2PYa3SwUnpLmCI=; b=Vme9NYN0/PAaMMvKtZH5vYOcfSk/QE8zt5RudtIcaPJoMgdKLiaBNHmqOBCckOexwcpXQk a4OnzIR7Nvq2qz4Nsnfhs/wJlbtME95PieWkP5WjszXN2+9BOxd6C5PtZI6gV7UESwUuVL M2CJdaI9rw8xczC+i50v/SUVh9PPlcfa1rkpP63y4MMASAT+Azha8dpzTYZdpm8ZypxpQU gJ3M5BCNKBk0SNWXO1vCJPFM+zC8GWlnxNZsT5pFZ2dSQnTWj9vMYBfOfooOSx8DClClo7 7lijRdQZFTsgWah5V8kXsPN23t2WvogiCOwrtKaQ7PlKXg6ormLW28WIRPTIZw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700827194; a=rsa-sha256; cv=none; b=yP/nZu2Jts5hmJirBvXuYcwaYNnxLVkjr61qE5Kprer4QbB36HmIvjbOACWhfdqX87UhI6 LJS2n03ax8IbF5TVa8UEmk70EcNLZbiyjIlAE8rqoDQfp+xQl5hFnqRU6Q4V0fXLftpei6 K+VXLlzrj7+01V/kzP8aPj48oHffxW5nPWUQ4GpoFWdADtSPQEXeb7eme9RJCBth9bnVhm fm1eloualvLAKo0egIvL5YCIBHD6d9xlyT09rb14bCB2JURsTrRY+NCIL0yQaz6WjYoj+n LVYhMJrEl57PfGrCEmum1CKTrz9ck9/QvacNdfAvCtXwKdopfmic7Pk7qxfLHA== 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 4ScD7G0lqMzkMN; Fri, 24 Nov 2023 11:59:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOBxsu5098334; Fri, 24 Nov 2023 11:59:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOBxsXm098331; Fri, 24 Nov 2023 11:59:54 GMT (envelope-from git) Date: Fri, 24 Nov 2023 11:59:54 GMT Message-Id: <202311241159.3AOBxsXm098331@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 50335b1ae4e4 - main - sys/mutex.h: Reorder includes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 50335b1ae4e48712f831e85ddfa7b00da0af382c Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=50335b1ae4e48712f831e85ddfa7b00da0af382c commit 50335b1ae4e48712f831e85ddfa7b00da0af382c Author: Emmanuel Vadot AuthorDate: 2023-11-24 10:30:09 +0000 Commit: Emmanuel Vadot CommitDate: 2023-11-24 11:59:02 +0000 sys/mutex.h: Reorder includes Fixes: 2a35f3cdf63d ("sys/mutex.h: Include sys/lock.h instead of sys/_lock.h") --- sys/sys/mutex.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/mutex.h b/sys/sys/mutex.h index 750a5e99679a..9fd6663ed75d 100644 --- a/sys/sys/mutex.h +++ b/sys/sys/mutex.h @@ -34,8 +34,8 @@ #define _SYS_MUTEX_H_ #include -#include #include +#include #ifdef _KERNEL #include From nobody Fri Nov 24 13:02:42 2023 X-Original-To: dev-commits-src-main@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 4ScFWw3nT2z52DCQ; Fri, 24 Nov 2023 13:02:52 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4ScFWw0V7Pz3QrT; Fri, 24 Nov 2023 13:02:51 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.17.1/8.17.1) with ESMTP id 3AOD2gQu038639; Fri, 24 Nov 2023 15:02:45 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 3AOD2gQu038639 Received: (from kostik@localhost) by tom.home (8.17.1/8.17.1/Submit) id 3AOD2gwM038638; Fri, 24 Nov 2023 15:02:42 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 24 Nov 2023 15:02:42 +0200 From: Konstantin Belousov To: Alexander Leidinger Cc: Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots Message-ID: References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4ScFWw0V7Pz3QrT On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger wrote: > Am 2023-11-23 16:25, schrieb Rick Macklem: > > The branch main has been updated by rmacklem: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > > > commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > Author: Rick Macklem > > AuthorDate: 2023-11-23 15:23:33 +0000 > > Commit: Rick Macklem > > CommitDate: 2023-11-23 15:23:33 +0000 > > > > nfsd: Fix NFS access to .zfs/snapshot snapshots > > > > When a process attempts to access a snapshot under > > //.zfs/snapshot, the snapshot is automounted. > > However, without this patch, the automount does not > > set mnt_exjail, which results in the snapshot not being > > accessible over NFS. > > > > This patch defines a new function called vfs_exjail_clone() > > which sets mnt_exjail from another mount point and > > then uses that function to set mnt_exjail in the snapshot > > automount. A separate patch that is currently a pull request > > for OpenZFS, calls this function to fix the problem. > > May the same/similar fix like for ZFS be needed / useful for nullfs mounted > stuff? > > I have a ZFS dataset which is mounted via nullfs into a jail. This > nullfs-mount is then exported via samba. In samba I have the shadow-copy > stuff enabled, but it doesn't work, as the jails can't access the snapshot. Jails cannot access snapshots because, as I understand, snapshots are mounts. Nullfs does not provide an option to recursively bypass into mounts. The patch you responded to does not automatically mounts snapshots on clients, it only allows them to mount if wanted. You might try to set up something with autofs, no idea if it could be made to work usefully. From nobody Fri Nov 24 13:18:08 2023 X-Original-To: dev-commits-src-main@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 4ScFsj1CsGz52JhX; Fri, 24 Nov 2023 13:18:17 +0000 (UTC) (envelope-from mike@karels.net) Received: from mail2.karels.net (mail2.karels.net [3.19.118.201]) (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 (2048 bits) client-digest SHA256) (Client CN "freebsd", Issuer "freebsd" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScFsh5sxJz3TKM; Fri, 24 Nov 2023 13:18:16 +0000 (UTC) (envelope-from mike@karels.net) Authentication-Results: mx1.freebsd.org; none Received: from mail2.karels.net (localhost [IPv6:0:0:0:0:0:0:0:1]) by mail2.karels.net (8.17.1/8.17.1) with ESMTP id 3AODI91R097792; Fri, 24 Nov 2023 07:18:09 -0600 (CST) (envelope-from mike@karels.net) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=karels.net; s=mail2; t=1700831890; bh=aTIEwIGvVN+MNPhkX7gv+TRWLs1IOjLbEhhPlcSfrDg=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=CNRrba0IZwMe8vzawbcubQvBoOcczgx10ub9CNSO1HdtXp+U1nkmrL8NW/jyHp/Bx ldJj4ZKMR7VsjuzG8pN55JhdBRveJ1mlaZCwFnL1q6vkUL5SuQeEOa2KrB3QpLLWow zO5xO7Vq4r848VcYKTB7FOmEZKXG984vGLPN8g+lDF1j2ZlslcuoWw3e8vlObaZXLz P1cHGy1pYoY6TyNyUx4zsVme4V5FL3O3aIeAxKMYlf8O3QLwbc+UuLd8x4jby3NlyN 1bwNDnAd8t91kz8Y22h7UvbSEpKUSx8FHSNCE/5WWWGeKak5zsxeb6nFGOa4Up/k3H CQuq19KwGpp+Q== Received: from [10.0.2.130] ([73.62.165.147]) by mail2.karels.net with ESMTPSA id KKGONZGiYGX+fQEAs/W3XQ (envelope-from ); Fri, 24 Nov 2023 07:18:09 -0600 From: Mike Karels To: Konstantin Belousov Cc: Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots Date: Fri, 24 Nov 2023 07:18:08 -0600 X-Mailer: MailMate (1.14r5964) Message-ID: In-Reply-To: References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:3.16.0.0/14, country:US] X-Rspamd-Queue-Id: 4ScFsh5sxJz3TKM On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger wrote: >> Am 2023-11-23 16:25, schrieb Rick Macklem: >>> The branch main has been updated by rmacklem: >>> >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728adec4c5b3e840= a1fb16bd16f8cc956d >>> >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d >>> Author: Rick Macklem >>> AuthorDate: 2023-11-23 15:23:33 +0000 >>> Commit: Rick Macklem >>> CommitDate: 2023-11-23 15:23:33 +0000 >>> >>> nfsd: Fix NFS access to .zfs/snapshot snapshots >>> >>> When a process attempts to access a snapshot under >>> //.zfs/snapshot, the snapshot is automounted. >>> However, without this patch, the automount does not >>> set mnt_exjail, which results in the snapshot not being >>> accessible over NFS. >>> >>> This patch defines a new function called vfs_exjail_clone() >>> which sets mnt_exjail from another mount point and >>> then uses that function to set mnt_exjail in the snapshot >>> automount. A separate patch that is currently a pull request >>> for OpenZFS, calls this function to fix the problem. >> >> May the same/similar fix like for ZFS be needed / useful for nullfs mo= unted >> stuff? >> >> I have a ZFS dataset which is mounted via nullfs into a jail. This >> nullfs-mount is then exported via samba. In samba I have the shadow-co= py >> stuff enabled, but it doesn't work, as the jails can't access the snap= shot. > > Jails cannot access snapshots because, as I understand, snapshots > are mounts. Nullfs does not provide an option to recursively bypass > into mounts. The patch you responded to does not automatically mounts > snapshots on clients, it only allows them to mount if wanted. It works for me, with main and this change, or 13.2 without a patch. I don't know the mechanics, but it doesn't use nullfs, and the snapshot does not show up as a separate filesystem with the mount command. Mike > You might try to set up something with autofs, no idea if it could be m= ade > to work usefully. From nobody Fri Nov 24 14:47:16 2023 X-Original-To: dev-commits-src-main@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 4ScHrX5pC4z51KZr; Fri, 24 Nov 2023 14:47:24 +0000 (UTC) (envelope-from SRS0=oA7f=HF=klop.ws=ronald-lists@realworks.nl) Received: from smtp-relay-int.realworks.nl (smtp-relay-int.realworks.nl [194.109.157.24]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4ScHrX3Sbgz4L5h; Fri, 24 Nov 2023 14:47:24 +0000 (UTC) (envelope-from SRS0=oA7f=HF=klop.ws=ronald-lists@realworks.nl) Authentication-Results: mx1.freebsd.org; none Date: Fri, 24 Nov 2023 15:47:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=klop.ws; s=rw2; t=1700837236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=i9eMogLouKV1uU8dnSFJ5Rg3ik74Rzqp/ZiR0g8NtRg=; b=PiUGyLFnePfsbp/hIJnpcu+uAVoKudv3rFlMdiqV/XvjehsosakQxrZO5j2OTbCuSwTWS4 kX6BRNwuuDpYK9vaGpMsj2fxt8QTHl1Q9vbxXLKhCY+ZWcB1emXYqFrihm22AwFrQ75/5Y a1BK1OrJEUALLSwaohnVzp+CyouZVmO8Y4+gA1W78bMKSc6UHynZldh/6LwfQP4hGUbepH OVKorV5umoPVxwe17Vy3PBkqE4a1EIvi4Rfy1JJwSKMW66hVU4Aag6e091iPHdIEjI59X1 MAWcu4cxD/aFEZ1hHaWyFCtz0Xk4Uovbq/22NF2LIuo9CuqrIMIZ0Bxz3mzO8A== From: Ronald Klop To: Emmanuel Vadot Cc: dev-commits-src-all@FreeBSD.org, src-committers@FreeBSD.org, dev-commits-src-main@FreeBSD.org Message-ID: <2003387449.7766.1700837236386@localhost> In-Reply-To: <202311240945.3AO9jgdS079780@gitrepo.freebsd.org> References: <202311240945.3AO9jgdS079780@gitrepo.freebsd.org> Subject: Re: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_7765_896222002.1700837236314" X-Mailer: Realworks (680.25) Importance: Normal X-Priority: 3 (Normal) X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:3265, ipnet:194.109.0.0/16, country:NL] X-Rspamd-Queue-Id: 4ScHrX3Sbgz4L5h ------=_Part_7765_896222002.1700837236314 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi, Wouldn't this apply for a /usr/src/UPDATING or /usr/src/RELNOTES entry? As it might change default behaviour on a security measure. Regards. Ronald. Van: Emmanuel Vadot Datum: vrijdag, 24 november 2023 10:45 Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Onderwerp: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script > > The branch main has been updated by manu: > > URL: https://cgit.FreeBSD.org/src/commit/?id=0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e > > commit 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e > Author: Emmanuel Vadot > AuthorDate: 2023-11-07 09:42:53 +0000 > Commit: Emmanuel Vadot > CommitDate: 2023-11-24 09:44:20 +0000 > > autofs: media: Don't include nosuid in the script > > We already have nosuid option in auto_master so no need to redefine it. > Also it's easier for a user to modify the auto_master configuration file > than the script (which shouldn't be modified). > > Sponsored by: Beckhoff Automation GmbH & Co. KG > Differential Revision: https://reviews.freebsd.org/D42492 > Reviewed by: rew > --- > usr.sbin/autofs/autofs/special_media | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/usr.sbin/autofs/autofs/special_media b/usr.sbin/autofs/autofs/special_media > index d72ddddddb2e..33fa4544d028 100755 > --- a/usr.sbin/autofs/autofs/special_media > +++ b/usr.sbin/autofs/autofs/special_media > @@ -40,7 +40,7 @@ print_map_entry() { > case "${_fstype}" in > "exfat") > if [ -f "/usr/local/sbin/mount.exfat" ]; then > - echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype},nosuid :/dev/${_p}" > + echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype} :/dev/${_p}" > else > /usr/bin/logger -p info -t "special_media[$$]" \ > "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-exfat first" > @@ -49,7 +49,7 @@ print_map_entry() { > ;; > "ntfs") > if [ -f "/usr/local/bin/ntfs-3g" ]; then > - echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid :/dev/${_p}" > + echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype} :/dev/${_p}" > else > /usr/bin/logger -p info -t "special_media[$$]" \ > "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first" > @@ -57,10 +57,10 @@ print_map_entry() { > fi > ;; > "ext2fs" | "msdosfs") > - echo "-fstype=${_fstype},nosuid,async :/dev/${_p}" > + echo "-fstype=${_fstype},async :/dev/${_p}" > ;; > *) > - echo "-fstype=${_fstype},nosuid :/dev/${_p}" > + echo "-fstype=${_fstype} :/dev/${_p}" > ;; > esac > } > > > > ------=_Part_7765_896222002.1700837236314 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit Hi,

Wouldn't this apply for a /usr/src/UPDATING or /usr/src/RELNOTES entry?
As it might change default behaviour on a security measure.

Regards.
Ronald.

 

Van: Emmanuel Vadot <manu@FreeBSD.org>
Datum: vrijdag, 24 november 2023 10:45
Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Onderwerp: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script

The branch main has been updated by manu:

URL:
https://cgit.FreeBSD.org/src/commit/?id=0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e

commit 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e
Author:     Emmanuel Vadot <manu@FreeBSD.org>
AuthorDate: 2023-11-07 09:42:53 +0000
Commit:     Emmanuel Vadot <manu@FreeBSD.org>
CommitDate: 2023-11-24 09:44:20 +0000

    autofs: media: Don't include nosuid in the script
    
    We already have nosuid option in auto_master so no need to redefine it.
    Also it's easier for a user to modify the auto_master configuration file
    than the script (which shouldn't be modified).
    
    Sponsored by:   Beckhoff Automation GmbH & Co. KG
    Differential Revision:  https://reviews.freebsd.org/D42492
    Reviewed by:    rew
---
 usr.sbin/autofs/autofs/special_media | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/usr.sbin/autofs/autofs/special_media b/usr.sbin/autofs/autofs/special_media
index d72ddddddb2e..33fa4544d028 100755
--- a/usr.sbin/autofs/autofs/special_media
+++ b/usr.sbin/autofs/autofs/special_media
@@ -40,7 +40,7 @@ print_map_entry() {
    case "${_fstype}" in
    "exfat")
        if [ -f "/usr/local/sbin/mount.exfat" ]; then
-           echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype},nosuid   :/dev/${_p}"
+           echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype}  :/dev/${_p}"
        else
            /usr/bin/logger -p info -t "special_media[$$]" \
                "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-exfat first"
@@ -49,7 +49,7 @@ print_map_entry() {
        ;;
    "ntfs")
        if [ -f "/usr/local/bin/ntfs-3g" ]; then
-           echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid    :/dev/${_p}"
+           echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype}   :/dev/${_p}"
        else
            /usr/bin/logger -p info -t "special_media[$$]" \
                "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first"
@@ -57,10 +57,10 @@ print_map_entry() {
        fi
        ;;
    "ext2fs" | "msdosfs")
-       echo "-fstype=${_fstype},nosuid,async   :/dev/${_p}"
+       echo "-fstype=${_fstype},async  :/dev/${_p}"
        ;;
    *)
-       echo "-fstype=${_fstype},nosuid :/dev/${_p}"
+       echo "-fstype=${_fstype}    :/dev/${_p}"
        ;;
    esac
 }
 


  ------=_Part_7765_896222002.1700837236314-- From nobody Fri Nov 24 14:51:07 2023 X-Original-To: dev-commits-src-main@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 4ScHx35WKPz51MG7; Fri, 24 Nov 2023 14:51:19 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mx.blih.net (mx.blih.net [212.83.155.74]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4ScHx30Lgzz4M4L; Fri, 24 Nov 2023 14:51:18 +0000 (UTC) (envelope-from manu@bidouilliste.com) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bidouilliste.com; s=mx; t=1700837471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fKy1MTIMPd1uKgvc3dNvU5hvJRbJ7ggJoPjlEj1p6fE=; b=OAY6KAtavEkdOEQeaY/bTPLIIIsQ/tqR3A49j+v8UoTJ4H0BWKQor45BGcyZAckFYSwylO fQDrp7Us28qa91JQRMmcNvKE0B/PRK8WzkC7/hDvwBD2UdPqz9QC+jIKmsctKZm5WrOiw2 k1I+CDidAs+eD3fffcJzievOBpulX/o= Received: from skull.home.blih.net (lfbn-lyo-1-2174-135.w90-66.abo.wanadoo.fr [90.66.97.135]) by mx.blih.net (OpenSMTPD) with ESMTPSA id 23f6623c (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Fri, 24 Nov 2023 14:51:11 +0000 (UTC) Date: Fri, 24 Nov 2023 15:51:07 +0100 From: Emmanuel Vadot To: Ronald Klop Cc: Emmanuel Vadot , dev-commits-src-all@FreeBSD.org, src-committers@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script Message-Id: <20231124155107.fe95c803b3c5d0f1b18e3c9d@bidouilliste.com> In-Reply-To: <2003387449.7766.1700837236386@localhost> References: <202311240945.3AO9jgdS079780@gitrepo.freebsd.org> <2003387449.7766.1700837236386@localhost> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd15.0) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:12876, ipnet:212.83.128.0/19, country:FR] X-Rspamd-Queue-Id: 4ScHx30Lgzz4M4L Hi, On Fri, 24 Nov 2023 15:47:16 +0100 (CET) Ronald Klop wrote: > Hi, > > Wouldn't this apply for a /usr/src/UPDATING or /usr/src/RELNOTES entry? > As it might change default behaviour on a security measure. No it doesn't. As noted in the commit message nosuid is already present in auto_master, I'm just removing a duplicate here. > Regards. > Ronald. > > > Van: Emmanuel Vadot > Datum: vrijdag, 24 november 2023 10:45 > Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org > Onderwerp: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script > > > > The branch main has been updated by manu: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e > > > > commit 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e > > Author: Emmanuel Vadot > > AuthorDate: 2023-11-07 09:42:53 +0000 > > Commit: Emmanuel Vadot > > CommitDate: 2023-11-24 09:44:20 +0000 > > > > autofs: media: Don't include nosuid in the script > > > > We already have nosuid option in auto_master so no need to redefine it. > > Also it's easier for a user to modify the auto_master configuration file > > than the script (which shouldn't be modified). > > > > Sponsored by: Beckhoff Automation GmbH & Co. KG > > Differential Revision: https://reviews.freebsd.org/D42492 > > Reviewed by: rew > > --- > > usr.sbin/autofs/autofs/special_media | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/usr.sbin/autofs/autofs/special_media b/usr.sbin/autofs/autofs/special_media > > index d72ddddddb2e..33fa4544d028 100755 > > --- a/usr.sbin/autofs/autofs/special_media > > +++ b/usr.sbin/autofs/autofs/special_media > > @@ -40,7 +40,7 @@ print_map_entry() { > > case "${_fstype}" in > > "exfat") > > if [ -f "/usr/local/sbin/mount.exfat" ]; then > > - echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype},nosuid :/dev/${_p}" > > + echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype} :/dev/${_p}" > > else > > /usr/bin/logger -p info -t "special_media[$$]" \ > > "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-exfat first" > > @@ -49,7 +49,7 @@ print_map_entry() { > > ;; > > "ntfs") > > if [ -f "/usr/local/bin/ntfs-3g" ]; then > > - echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid :/dev/${_p}" > > + echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype} :/dev/${_p}" > > else > > /usr/bin/logger -p info -t "special_media[$$]" \ > > "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first" > > @@ -57,10 +57,10 @@ print_map_entry() { > > fi > > ;; > > "ext2fs" | "msdosfs") > > - echo "-fstype=${_fstype},nosuid,async :/dev/${_p}" > > + echo "-fstype=${_fstype},async :/dev/${_p}" > > ;; > > *) > > - echo "-fstype=${_fstype},nosuid :/dev/${_p}" > > + echo "-fstype=${_fstype} :/dev/${_p}" > > ;; > > esac > > } > > > > > > > > > > -- Emmanuel Vadot From nobody Fri Nov 24 15:00:22 2023 X-Original-To: dev-commits-src-main@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 4ScJ7Y5833z51fjK; Fri, 24 Nov 2023 15:00:25 +0000 (UTC) (envelope-from SRS0=oA7f=HF=klop.ws=ronald-lists@realworks.nl) Received: from smtp-relay-int.realworks.nl (smtp-relay-int.realworks.nl [194.109.157.24]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4ScJ7Y4NvNz4NbQ; Fri, 24 Nov 2023 15:00:25 +0000 (UTC) (envelope-from SRS0=oA7f=HF=klop.ws=ronald-lists@realworks.nl) Authentication-Results: mx1.freebsd.org; none Date: Fri, 24 Nov 2023 16:00:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=klop.ws; s=rw2; t=1700838022; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=pGC+HdmTk7zxovESDBn0kDCeXZziTj32nLfyvpcizwo=; b=IjHi5IJ61MZ7X2ZT99Rz4H39hsuok9VlPtt5Js2eakglUcNXnNU3cvEsNUrL6fMBMqWvnr +ptp0EKNuU617bJb+f3Nzn5sM/XEyqBojX81oV3oamSKAHTW1jaxa1hbKE/RCKZzFoaLS0 NOF0GFuGqn8rnrjNgcU9uY6Mq/AiZFW0P9z3b/FTUMqN379CJRz29JN1MuMdJ5dyXMLUA6 /ttl7iXhXhkHsilJJ/7HVIy11QtgAUsl/EikkiKo6q+TpTYENA1X/+zrpZPCsIwtYUZODj ESfV1SheOMhV1wxo7SycS+ZS6LJi8OoMByusnxkpSzkzoKzXzrX9XU+4ih8olw== From: Ronald Klop To: Emmanuel Vadot Cc: dev-commits-src-all@FreeBSD.org, src-committers@FreeBSD.org, Emmanuel Vadot , dev-commits-src-main@FreeBSD.org Message-ID: <194935678.8142.1700838022590@localhost> In-Reply-To: <20231124155107.fe95c803b3c5d0f1b18e3c9d@bidouilliste.com> References: <202311240945.3AO9jgdS079780@gitrepo.freebsd.org> <2003387449.7766.1700837236386@localhost> <20231124155107.fe95c803b3c5d0f1b18e3c9d@bidouilliste.com> Subject: Re: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_8141_1624612915.1700838022586" X-Mailer: Realworks (680.25) Importance: Normal X-Priority: 3 (Normal) X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:3265, ipnet:194.109.0.0/16, country:NL] X-Rspamd-Queue-Id: 4ScJ7Y4NvNz4NbQ ------=_Part_8141_1624612915.1700838022586 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Ah thanks. Didn't notice the remark in the commit message. Van: Emmanuel Vadot Datum: vrijdag, 24 november 2023 15:51 Aan: Ronald Klop CC: Emmanuel Vadot , dev-commits-src-all@FreeBSD.org, src-committers@FreeBSD.org, dev-commits-src-main@FreeBSD.org Onderwerp: Re: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script > > Hi, > > On Fri, 24 Nov 2023 15:47:16 +0100 (CET) > Ronald Klop wrote: > > > Hi, > > > > Wouldn't this apply for a /usr/src/UPDATING or /usr/src/RELNOTES entry? > > As it might change default behaviour on a security measure. > > No it doesn't. > As noted in the commit message nosuid is already present in > auto_master, I'm just removing a duplicate here. > > > Regards. > > Ronald. > > > > > > Van: Emmanuel Vadot > > Datum: vrijdag, 24 november 2023 10:45 > > Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org > > Onderwerp: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script > > > > > > The branch main has been updated by manu: > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e > > > > > > commit 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e > > > Author: Emmanuel Vadot > > > AuthorDate: 2023-11-07 09:42:53 +0000 > > > Commit: Emmanuel Vadot > > > CommitDate: 2023-11-24 09:44:20 +0000 > > > > > > autofs: media: Don't include nosuid in the script > > > > > > We already have nosuid option in auto_master so no need to redefine it. > > > Also it's easier for a user to modify the auto_master configuration file > > > than the script (which shouldn't be modified). > > > > > > Sponsored by: Beckhoff Automation GmbH & Co. KG > > > Differential Revision: https://reviews.freebsd.org/D42492 > > > Reviewed by: rew > > > --- > > > usr.sbin/autofs/autofs/special_media | 8 ++++---- > > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > > > diff --git a/usr.sbin/autofs/autofs/special_media b/usr.sbin/autofs/autofs/special_media > > > index d72ddddddb2e..33fa4544d028 100755 > > > --- a/usr.sbin/autofs/autofs/special_media > > > +++ b/usr.sbin/autofs/autofs/special_media > > > @@ -40,7 +40,7 @@ print_map_entry() { > > > case "${_fstype}" in > > > "exfat") > > > if [ -f "/usr/local/sbin/mount.exfat" ]; then > > > - echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype},nosuid :/dev/${_p}" > > > + echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype} :/dev/${_p}" > > > else > > > /usr/bin/logger -p info -t "special_media[$$]" \ > > > "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-exfat first" > > > @@ -49,7 +49,7 @@ print_map_entry() { > > > ;; > > > "ntfs") > > > if [ -f "/usr/local/bin/ntfs-3g" ]; then > > > - echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid :/dev/${_p}" > > > + echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype} :/dev/${_p}" > > > else > > > /usr/bin/logger -p info -t "special_media[$$]" \ > > > "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first" > > > @@ -57,10 +57,10 @@ print_map_entry() { > > > fi > > > ;; > > > "ext2fs" | "msdosfs") > > > - echo "-fstype=${_fstype},nosuid,async :/dev/${_p}" > > > + echo "-fstype=${_fstype},async :/dev/${_p}" > > > ;; > > > *) > > > - echo "-fstype=${_fstype},nosuid :/dev/${_p}" > > > + echo "-fstype=${_fstype} :/dev/${_p}" > > > ;; > > > esac > > > } > > > > > > > > > > > > > > > > > > > -- > Emmanuel Vadot > > > ------=_Part_8141_1624612915.1700838022586 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit Ah thanks. Didn't notice the remark in the commit message.
 

Van: Emmanuel Vadot <manu@bidouilliste.com>
Datum: vrijdag, 24 november 2023 15:51
Aan: Ronald Klop <ronald-lists@klop.ws>
CC: Emmanuel Vadot <manu@FreeBSD.org>, dev-commits-src-all@FreeBSD.org, src-committers@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Onderwerp: Re: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script


 Hi,

On Fri, 24 Nov 2023 15:47:16 +0100 (CET)
Ronald Klop <ronald-lists@klop.ws> wrote:

> Hi,
>
> Wouldn't this apply for a /usr/src/UPDATING or /usr/src/RELNOTES entry?
> As it might change default behaviour on a security measure.

 No it doesn't.
 As noted in the commit message nosuid is already present in
auto_master, I'm just removing a duplicate here.

> Regards.
> Ronald.
>
>  
> Van: Emmanuel Vadot <manu@FreeBSD.org>
> Datum: vrijdag, 24 november 2023 10:45
> Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
> Onderwerp: git: 0b7c89c8c236 - main - autofs: media: Don't include nosuid in the script
> >
> > The branch main has been updated by manu:
> >
> > URL: https://cgit.FreeBSD.org/src/commit/?id=0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e
> >
> > commit 0b7c89c8c236fcfabd1abd59c6b8274c7eb80f5e
> > Author:     Emmanuel Vadot <manu@FreeBSD.org>
> > AuthorDate: 2023-11-07 09:42:53 +0000
> > Commit:     Emmanuel Vadot <manu@FreeBSD.org>
> > CommitDate: 2023-11-24 09:44:20 +0000
> >
> >     autofs: media: Don't include nosuid in the script
> >     
> >     We already have nosuid option in auto_master so no need to redefine it.
> >     Also it's easier for a user to modify the auto_master configuration file
> >     than the script (which shouldn't be modified).
> >     
> >     Sponsored by:   Beckhoff Automation GmbH & Co. KG
> >     Differential Revision:  https://reviews.freebsd.org/D42492
> >     Reviewed by:    rew
> > ---
> >  usr.sbin/autofs/autofs/special_media | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/usr.sbin/autofs/autofs/special_media b/usr.sbin/autofs/autofs/special_media
> > index d72ddddddb2e..33fa4544d028 100755
> > --- a/usr.sbin/autofs/autofs/special_media
> > +++ b/usr.sbin/autofs/autofs/special_media
> > @@ -40,7 +40,7 @@ print_map_entry() {
> >     case "${_fstype}" in
> >     "exfat")
> >         if [ -f "/usr/local/sbin/mount.exfat" ]; then
> > -           echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype},nosuid   :/dev/${_p}"
> > +           echo "-mountprog=/usr/local/sbin/mount.exfat,fstype=${_fstype}  :/dev/${_p}"
> >         else
> >             /usr/bin/logger -p info -t "special_media[$$]" \
> >                 "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-exfat first"
> > @@ -49,7 +49,7 @@ print_map_entry() {
> >         ;;
> >     "ntfs")
> >         if [ -f "/usr/local/bin/ntfs-3g" ]; then
> > -           echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid    :/dev/${_p}"
> > +           echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype}   :/dev/${_p}"
> >         else
> >             /usr/bin/logger -p info -t "special_media[$$]" \
> >                 "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first"
> > @@ -57,10 +57,10 @@ print_map_entry() {
> >         fi
> >         ;;
> >     "ext2fs" | "msdosfs")
> > -       echo "-fstype=${_fstype},nosuid,async   :/dev/${_p}"
> > +       echo "-fstype=${_fstype},async  :/dev/${_p}"
> >         ;;
> >     *)
> > -       echo "-fstype=${_fstype},nosuid :/dev/${_p}"
> > +       echo "-fstype=${_fstype}    :/dev/${_p}"
> >         ;;
> >     esac
> >  }
> >  
> >
> >
> >
>
>  


-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>


  ------=_Part_8141_1624612915.1700838022586-- From nobody Fri Nov 24 15:58:58 2023 X-Original-To: dev-commits-src-main@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 4ScKRL68knz526YG; Fri, 24 Nov 2023 15:59:10 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScKRL0vpMz3JVf; Fri, 24 Nov 2023 15:59:10 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-28397a2c402so1555216a91.2; Fri, 24 Nov 2023 07:59:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700841548; x=1701446348; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Uwfr0AV9sksOICNM+XXVqQmwLF+fRWEWC5S9+I9sHIM=; b=FjE2IkGITg/BVtDUcuMojiL42+yum2VQJn8Fk7c60XlKw4G55g0bsH2s6VLPfXBDEb YaUJgan8E4n0y6vXHr80ND7y35+hqDWmMMg3WWTFxkT950qfYShGjIyt4D6mdqmdXHda cWM6fsJYCdZaSWvqT8IjOFbIigQ4iCSbVXyLI8ugMUSWRyB42BkFqrm5iZCrzcPYpOhn SjHVZ9Jtd93D82JvhOPd6lRWDF9uwCe/BlqKZzRZ3/UEqmcCY8HxAiUsKf6Ta2Rkyv7Z lfFIlYhO0JyykH2Ji9kvegLBhwnxFcOv7JA7uR0xPQxBSSPDLeJv+A5bil1Sl7URo5ZM 8CPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700841548; x=1701446348; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Uwfr0AV9sksOICNM+XXVqQmwLF+fRWEWC5S9+I9sHIM=; b=VSUEDASZE9KY9rMYeZgS0CXf8OSHjxd8NlNmr0ihgi+OUaHe6VKZLWoT8Snto11r+W 9v30ZqgvYkcmz7Cd228pAqyWH7Ikm6dkloXFb/kMmwnU8CZUx7isRfOpGesOF9te6djd kVOwPztdnPF+fn9Kbkn2abUxSJmQi3rBGCRWnXFQRgywRfzarizwgwli95sefRwtsquf pg0eEBtTvf2DxbQ+23TKveXkqn8vTp2EAAg+ERcFFf3bPIvZaz1hXyknuK5NSwt+m4nh /jKchsuS1tni7LGQ5anwm5Wga6XF4X6buwdqs9MwUTGZNl5pB8dJnRwBQmtyL6XumD8L j1SQ== X-Gm-Message-State: AOJu0YygjhPD1yDYTDRebnQ1mqCuVDIphLo+le5Hsee+YYaiPSmHNFJh AkZvRm4sEyQSjnP1E7ghZBYYDAgjAU0EUBpn2Q== X-Google-Smtp-Source: AGHT+IHtwC20bf69CROIlHzqEVcrfy3RTtVOHGoMYu6L+ypDzFUrIIDczNPmy6O25fo+8pmISMf11yzKNTIlIf9Bxa4= X-Received: by 2002:a17:90a:de8e:b0:27d:dc9:c67d with SMTP id n14-20020a17090ade8e00b0027d0dc9c67dmr2986196pjv.36.1700841548448; Fri, 24 Nov 2023 07:59:08 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> In-Reply-To: From: Rick Macklem Date: Fri, 24 Nov 2023 07:58:58 -0800 Message-ID: Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots To: Mike Karels Cc: Konstantin Belousov , Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; TAGGED_FROM(0.00)[] X-Rspamd-Queue-Id: 4ScKRL0vpMz3JVf On Fri, Nov 24, 2023 at 5:18=E2=80=AFAM Mike Karels wrote= : > > CAUTION: This email originated from outside of the University of Guelph. = Do not click links or open attachments unless you recognize the sender and = know the content is safe. If in doubt, forward suspicious emails to IThelp@= uoguelph.ca. > > > On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > > > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger wrote: > >> Am 2023-11-23 16:25, schrieb Rick Macklem: > >>> The branch main has been updated by rmacklem: > >>> > >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728adec4c5b3e840= a1fb16bd16f8cc956d > >>> > >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > >>> Author: Rick Macklem > >>> AuthorDate: 2023-11-23 15:23:33 +0000 > >>> Commit: Rick Macklem > >>> CommitDate: 2023-11-23 15:23:33 +0000 > >>> > >>> nfsd: Fix NFS access to .zfs/snapshot snapshots > >>> > >>> When a process attempts to access a snapshot under > >>> //.zfs/snapshot, the snapshot is automounted. > >>> However, without this patch, the automount does not > >>> set mnt_exjail, which results in the snapshot not being > >>> accessible over NFS. > >>> > >>> This patch defines a new function called vfs_exjail_clone() > >>> which sets mnt_exjail from another mount point and > >>> then uses that function to set mnt_exjail in the snapshot > >>> automount. A separate patch that is currently a pull request > >>> for OpenZFS, calls this function to fix the problem. > >> > >> May the same/similar fix like for ZFS be needed / useful for nullfs mo= unted > >> stuff? > >> > >> I have a ZFS dataset which is mounted via nullfs into a jail. This > >> nullfs-mount is then exported via samba. In samba I have the shadow-co= py > >> stuff enabled, but it doesn't work, as the jails can't access the snap= shot. > > > > Jails cannot access snapshots because, as I understand, snapshots > > are mounts. Nullfs does not provide an option to recursively bypass > > into mounts. The patch you responded to does not automatically mounts > > snapshots on clients, it only allows them to mount if wanted. > > It works for me, with main and this change, or 13.2 without a patch. > I don't know the mechanics, but it doesn't use nullfs, and the snapshot > does not show up as a separate filesystem with the mount command. Yes. ZFS essentially does an automount of the snapshots under .zfs/snapshot= . (As I understand it, there are non-default ZFS options that allow these to = be mounted manually instead.) I can now see that these automounts are 'real mounts" in the mountlist. The only reason they are not visible is that they have MNT_IGNORE set on them. Now, as for what happens when nullfs is on top of ZFS, I do not know. What Kostik says about nullfs recursing into mounts suggests it will not wo= rk. I will look at it, but since I am headed to Florida for a few weeks, it may not happen until the end of the year. If someone can test this case and determine if there is no NFS client acces= s for snapshots under .zfs after applying the patch that is an attachment in PR#275200 when nullfs is over the ZFS file system, that would be appreciated. rick > > Mike > > > You might try to set up something with autofs, no idea if it could be m= ade > > to work usefully. > From nobody Fri Nov 24 16:16:54 2023 X-Original-To: dev-commits-src-main@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 4ScKr64mmMz52FZq; Fri, 24 Nov 2023 16:17:10 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com [IPv6:2607:f8b0:4864:20::434]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScKr473kjz3QMy; Fri, 24 Nov 2023 16:17:08 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=gc1Ii0cj; spf=pass (mx1.freebsd.org: domain of rick.macklem@gmail.com designates 2607:f8b0:4864:20::434 as permitted sender) smtp.mailfrom=rick.macklem@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pf1-x434.google.com with SMTP id d2e1a72fcca58-6cb74a527ceso1734987b3a.2; Fri, 24 Nov 2023 08:17:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700842625; x=1701447425; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=OGpBaFdSRYIr/S+GoyJMU1sjJLpJIvuUYi/N2XkoSYw=; b=gc1Ii0cjXVQmjxx1FfVqhd8l5hT+DEbngDo4r7wKTDY34Lo8usdM1XQAAr5KL4HPte tRt3m7Tpszy4O3IOjPWclYkcPk7m+3sPbDWdwECuxiSSi2F4SmP9YsWzCVz/ROUBbaBn cleOgvrjlIrcRLgxu3ce0PEM+guosQRKKdF53xFVDfaCaCzRu8s5KGd0rJrSyvVDddwk dcYex/a2mXkMNIr4qMgNw2Io0KlD3MwdL8z/7UBQUkmCfEvl6Gp0pnUHlDg4gHjWFlsh NSWPIF2UU3ptkNAD9D+3GG/8RkgdslS2K+86XwzRlNrejaRMxNEpUK1i0ma/4pA5BEZH 9JtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700842625; x=1701447425; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OGpBaFdSRYIr/S+GoyJMU1sjJLpJIvuUYi/N2XkoSYw=; b=wOXX2yo3nv97ftcKudCw7/XBbCX/Yb9qnlDwwFS26iHV/lBsc68FIvkO/paCaQ43o8 Fn/3IWpqAjUFxWa+CrYYD1PvJn7CStGqHfVaANV2jvU8nK9XQKo/5+UJaTCRrNBbc0qy zAqXWSvk1ek956Uc+kkXiKafJ0uCiH4VjICJD2rpvILQ5uaWXcjrOzpFR9llq1G21L+e GbUTsl+wKE0PQiHIUf1eLBwgMGuEKjsnUyyCrjE309xOBP/AvFBf+Wv2ft3WGLrNlhlf 9chH0h2yhY+6GcOCtd1KrXhTnQJmSyC5OsYgrOTKgqk5+EZygXZ5134szJdSJ/NtnqPm 82Ug== X-Gm-Message-State: AOJu0YzFdvJlGuzTyzy099Z0VCnwpdQNCBRg/8cCq6A9iuLu4IJkxyfP 4D6SScGfFNgzjj3iv0t7hPnpXOlUFnMlaxaIyA== X-Google-Smtp-Source: AGHT+IHrhavaZ7MBydd5ZfEb7jTV5QDM4W9rsaBcaxRv+hbqYnPw5KOIORLikpuafqNatphtkI2Urfv3quS6cREEokI= X-Received: by 2002:a17:90b:4d0e:b0:280:62a7:3743 with SMTP id mw14-20020a17090b4d0e00b0028062a73743mr3488748pjb.30.1700842624618; Fri, 24 Nov 2023 08:17:04 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> In-Reply-To: From: Rick Macklem Date: Fri, 24 Nov 2023 08:16:54 -0800 Message-ID: Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots To: Mike Karels Cc: Konstantin Belousov , Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-3.59 / 15.00]; NEURAL_HAM_SHORT(-0.99)[-0.987]; NEURAL_HAM_LONG(-0.98)[-0.982]; NEURAL_HAM_MEDIUM(-0.62)[-0.619]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::434:from]; TAGGED_FROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCPT_COUNT_SEVEN(0.00)[7]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_CC(0.00)[gmail.com,leidinger.net,freebsd.org] X-Rspamd-Queue-Id: 4ScKr473kjz3QMy X-Spamd-Bar: --- On Fri, Nov 24, 2023 at 7:58=E2=80=AFAM Rick Macklem wrote: > > On Fri, Nov 24, 2023 at 5:18=E2=80=AFAM Mike Karels wro= te: > > > > CAUTION: This email originated from outside of the University of Guelph= . Do not click links or open attachments unless you recognize the sender an= d know the content is safe. If in doubt, forward suspicious emails to IThel= p@uoguelph.ca. > > > > > > On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > > > > > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger wrote: > > >> Am 2023-11-23 16:25, schrieb Rick Macklem: > > >>> The branch main has been updated by rmacklem: > > >>> > > >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728adec4c5b3e8= 40a1fb16bd16f8cc956d > > >>> > > >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > >>> Author: Rick Macklem > > >>> AuthorDate: 2023-11-23 15:23:33 +0000 > > >>> Commit: Rick Macklem > > >>> CommitDate: 2023-11-23 15:23:33 +0000 > > >>> > > >>> nfsd: Fix NFS access to .zfs/snapshot snapshots > > >>> > > >>> When a process attempts to access a snapshot under > > >>> //.zfs/snapshot, the snapshot is automounted. > > >>> However, without this patch, the automount does not > > >>> set mnt_exjail, which results in the snapshot not being > > >>> accessible over NFS. > > >>> > > >>> This patch defines a new function called vfs_exjail_clone() > > >>> which sets mnt_exjail from another mount point and > > >>> then uses that function to set mnt_exjail in the snapshot > > >>> automount. A separate patch that is currently a pull request > > >>> for OpenZFS, calls this function to fix the problem. > > >> > > >> May the same/similar fix like for ZFS be needed / useful for nullfs = mounted > > >> stuff? > > >> > > >> I have a ZFS dataset which is mounted via nullfs into a jail. This > > >> nullfs-mount is then exported via samba. In samba I have the shadow-= copy > > >> stuff enabled, but it doesn't work, as the jails can't access the sn= apshot. > > > > > > Jails cannot access snapshots because, as I understand, snapshots > > > are mounts. Nullfs does not provide an option to recursively bypass > > > into mounts. The patch you responded to does not automatically mounts > > > snapshots on clients, it only allows them to mount if wanted. > > > > It works for me, with main and this change, or 13.2 without a patch. > > I don't know the mechanics, but it doesn't use nullfs, and the snapshot > > does not show up as a separate filesystem with the mount command. > Yes. ZFS essentially does an automount of the snapshots under .zfs/snapsh= ot. > (As I understand it, there are non-default ZFS options that allow these t= o be > mounted manually instead.) > I can now see that these automounts are 'real mounts" in the > mountlist. The only reason > they are not visible is that they have MNT_IGNORE set on them. Oh and I forgot to mention that this automount is for some weird in memory file system that does just enough so you can see the snapshots. Once you "cd ", the vnodes are associated with the ZFS mount (dataset) and not this weird snapshot fs. (That is why it doesn't nee= d to be exported, but did need mnt_exjail to be set properly.) I might be able to test a nullfs over ZFS case later to-day and will post if I do so. rick > > Now, as for what happens when nullfs is on top of ZFS, I do not know. > What Kostik says about nullfs recursing into mounts suggests it will not = work. > I will look at it, but since I am headed to Florida for a few weeks, it m= ay > not happen until the end of the year. > > If someone can test this case and determine if there is no NFS client acc= ess > for snapshots under .zfs after applying the patch that is an > attachment in PR#275200 > when nullfs is over the ZFS file system, that would be appreciated. > > rick > > > > > Mike > > > > > You might try to set up something with autofs, no idea if it could be= made > > > to work usefully. > > From nobody Fri Nov 24 16:28:23 2023 X-Original-To: dev-commits-src-main@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 4ScL541Nj1z52KxT; Fri, 24 Nov 2023 16:28:24 +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 4ScL540X8Tz3TN6; Fri, 24 Nov 2023 16:28:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700843304; 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=nuKkOeT57iHJfdNrfKAExiqTTfG4dmw+6nvdBrXF0W0=; b=OmNDRCD5wPaHVHfaH2zxqrKAclV6dJPObrBWC7OI/xBo3yBydUqn3T7RS1ZDwkr6S3Laeu 05dhs9nIKFfJqLroXaaH9W+JkFx2wTb4ywAf3BmO0t7hkE+wf9nSDyDlM8UADoOaASeQA/ prqzhgu0RX4s323xXVQBcyHeeE/cztbZc6LhWVEfqAQ7DxCJp0hPrljvVxb6H7lwZ9/hg1 nASdTxz1J8L591FMNIDEfzqwYN/NzFiyFRrUK2vHqMhnvYc3um9PCGXz4Bd1xk/70V7lrx Av8ewfNL/YkOaFh+QkpqQFjpGUhjOUxsuUjTP9YBtHZMuPWknQIh3nB7etauaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700843304; 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=nuKkOeT57iHJfdNrfKAExiqTTfG4dmw+6nvdBrXF0W0=; b=k+5DriA0vGj580+tI+Q5ozyWG8WxbFgcnizLl12ckSQdKR0zSle69KJ2SeKYZM5egLpEc4 dOzshecegi134vAymhYs7ij562iHk8MKs5+RITx1g6HViJ2a4IWK/axRoYP4aFT2uQ4gRu +jzqfPMeMVkrC5zhzvYPWgTru90v1DOYqsdFJmSUa8g5AlHbYs8+/6cC6LjMKVcHtj63DD IOCYF+97Zfo2gpI+Ahrlbajs55M47Icb7iLnPb/epkD65h33DqNGcovG2jTawyPfDIEPfO JfB6er0Q+u5k82f+qCZF6in1WTiitMyaSJpGD0lCdaQqFhkRMVxBtXx6HVknDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700843304; a=rsa-sha256; cv=none; b=RDVuH3bWAkloOKD9vDsFkIArM814lBR1YWP26gwxrjG9lWbEq+biposn7fmuLXKYtjMDoy W7uaJhd89J23WoeGkqN8/q+90OA/CzRiCSmdVe2pGNTWOTpZ6W9bzy/nykWAJcC7UT0MdC H+0nnV+ZJ2f7sU6JIYGxxxnUtdEwMa+zuEpD3qrfO5dEl5lFMksWCcwcjDCi9V75+88XUb xlPlNs/tiNCJjt5siShjf6QVpVoTJpXvnRfzmvsCKb/LZh3qfDerNkI4NAONd2VdLWqP9K yo6SyOegLWOV5EUa49IFkSYYQl8JbVgHFe5xvt7dEvrpjfUaEzAcz8Aw95K/8w== 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 4ScL536hXrzsBY; Fri, 24 Nov 2023 16:28:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOGSN3p051252; Fri, 24 Nov 2023 16:28:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOGSN7v051249; Fri, 24 Nov 2023 16:28:23 GMT (envelope-from git) Date: Fri, 24 Nov 2023 16:28:23 GMT Message-Id: <202311241628.3AOGSN7v051249@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 393ac29f0b8b - main - kqueue: on process exit, force-clear its registered signal events List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 393ac29f0b8be068c8e46f76c2eeee07d20ea4df Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=393ac29f0b8be068c8e46f76c2eeee07d20ea4df commit 393ac29f0b8be068c8e46f76c2eeee07d20ea4df Author: Konstantin Belousov AuthorDate: 2023-11-24 06:41:58 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-24 16:26:53 +0000 kqueue: on process exit, force-clear its registered signal events Normally, process already has all its kqueue fds destroyed at the moment p_klist is detached in exit flow. But, if the process was created with rfork(2) with shared file descriptors, its signal knotes can survive. Then, knlist_detach() does not destroy non-empty knlist. Later, when owning kqueue is closed, we access freed (or rather, reused, because struct proc is type-stable) memory by referencing p->p_klist from such knote. Handle this situation by deleting all knotes hanging from p_klist. PR: 275286 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42745 --- sys/kern/kern_exit.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index 112f9c7b0f33..d7b45ee96654 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -985,6 +985,7 @@ proc_reap(struct thread *td, struct proc *p, int *status, int options) proc_id_clear(PROC_ID_PID, p->p_pid); PROC_LOCK(p); + knlist_delete(p->p_klist, td, 1); knlist_detach(p->p_klist); p->p_klist = NULL; PROC_UNLOCK(p); From nobody Fri Nov 24 16:39:21 2023 X-Original-To: dev-commits-src-main@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 4ScLKj417lz52QH8; Fri, 24 Nov 2023 16:39:21 +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 4ScLKj3Z2Yz3YCZ; Fri, 24 Nov 2023 16:39:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700843961; 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=NuZutdHbyEpAvoCtIo1VhmWwcK3DB9pmg6ghiNWTzH0=; b=jPOkFXCPqz9mX3mItNbNvA53whnezK0wQo8ozorZJhjORidAHrfHEB5PycpdWt94Hjy/pe 2Wyf7Fiyx1+4S7+8qgzTQknCxblgEyMM3RYS9YG8a31JbWwc1XzRFexHS9wDmw2fQnOFkq SIgkdJdAmaDG0oCSbFL6mt2CAoD4tSu+qOuzUW+T1p/T5BamWatW5YHg3BGvehwPgu/L3C 0H8IGMyiu1+YIN+1HNHVZjN27sEf6Ja08Ee162Z8p3seLp2QwtjlVXXmB3QeKsOeeKfj7e EZK2ar8xYg+s4zItwFvuCBUNQQqdS5dma4MGwhNaiBfG4EfRpbQJ7ckrKK4/Tg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700843961; 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=NuZutdHbyEpAvoCtIo1VhmWwcK3DB9pmg6ghiNWTzH0=; b=hmO9r8PEAKmcJmUrXWfdCuSrlrCksvt83h54tKR33b3F99I4oXJp/S3jo1GFgsaZtnD//G vRn/SoH941YPQk7f0qXWkOi6QQbTBYtDu2EsekSUiwM6Iu0ALV2duHcEHUqcrqj2Qnkc2F VAolQphydmfnSFRpgLQjtVIrKW+IgmNLNws9NGouZgHJySHD/CwGogJL4woRZh3xSsnc3s 34Lw0FpnkBNX8NnA1aejKzj8likaq94gjpYgbJzCaU6B7VnvT2pzJvOyXYEeU8H1rJ+bxh BEOSNfv3wREXBtNdP6Gdpf+VrOnLwX+040n2HU34Xmj9Pbs6PBZsKh7OllopcQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700843961; a=rsa-sha256; cv=none; b=EN5edROXcUIHI8FiIKUD70lheORAUFKlVYXfVknHd4KCXsIsSUDGo/ngDqfv8XdwCYHPnf LrIQZN9YBiqFaUfQ8ns30numFxWdOrvl9pA+VrQ+SglujMbr9NOP5hja/6f3+ca8dPZPFN vucahHiVUNozth/23lFGe2OFNA7vaJbrLnvKsJ/RY+nlRqBZ9WlawVi1RamwnCITb9q34Y RfXAEof0NSieZl4upKIXgZtv2bhFBQjK7hUBNZH/WYR/hSNbQbcVkXX/cQWWLWBwbwO+ZC 4uVA347b0mAtGhr8PmSrWCzvVXfZbHZuz+j55OvoVtTiiZIp0LTegYbHSyxJ1Q== 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 4ScLKj2dqjzsLC; Fri, 24 Nov 2023 16:39:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOGdLZw068159; Fri, 24 Nov 2023 16:39:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOGdLJn068156; Fri, 24 Nov 2023 16:39:21 GMT (envelope-from git) Date: Fri, 24 Nov 2023 16:39:21 GMT Message-Id: <202311241639.3AOGdLJn068156@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 73902ed85ab7 - main - ldconfig: only configure compat32 when kernel supports it List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 73902ed85ab73d455d4be8c77336c88a07512230 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=73902ed85ab73d455d4be8c77336c88a07512230 commit 73902ed85ab73d455d4be8c77336c88a07512230 Author: Konstantin Belousov AuthorDate: 2023-11-18 13:09:30 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-24 16:38:42 +0000 ldconfig: only configure compat32 when kernel supports it and eliminate hard-coded arch list. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42669 --- libexec/rc/rc.d/ldconfig | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/libexec/rc/rc.d/ldconfig b/libexec/rc/rc.d/ldconfig index ed3484017d84..beb79ba95b84 100755 --- a/libexec/rc/rc.d/ldconfig +++ b/libexec/rc/rc.d/ldconfig @@ -39,10 +39,7 @@ ldconfig_start() startmsg 'ELF ldconfig path:' ${_LDC} ${ldconfig} -elf ${_ins} ${_LDC} - machine_arch=$(sysctl -n hw.machine_arch) - - case ${machine_arch} in - aarch64|amd64|powerpc64) + if check_kern_features compat_freebsd32; then for i in ${ldconfig_local32_dirs}; do if [ -d "${i}" ]; then _files=`find ${i} -type f` @@ -67,7 +64,7 @@ ldconfig_start() startmsg '32-bit compatibility ldconfig path:' ${_LDC} ${ldconfig} -32 ${_ins} ${_LDC} ;; - esac + fi fi } From nobody Fri Nov 24 17:27:39 2023 X-Original-To: dev-commits-src-main@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 4ScMPV2g3Qz51Lnh; Fri, 24 Nov 2023 17:27:42 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScMPV2C5lz4HSD; Fri, 24 Nov 2023 17:27:42 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846862; 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: in-reply-to:in-reply-to:references:references; bh=LhkH4PTSu595nBFXLYXN3K35Btg3cLswbFkc5Jl1g4I=; b=dfYFkJbCmFipB75nR9pcG1KlO+Nvw5vvzA4G4QlwZCJ/laUk4+7i9NLX+l/9i8IO22kPoi Fk5L60TL7no0hdu21q8S5LERx+Px0ac+LPuBWUmLBg5yecyIeUoQt2ji3Tqtg3JIZcJL4F gbrdWh+gL+bU6UNnl0c9Pa2OOqBiLb/IelBOIBXuMva7DQLAnFHTR0PrwpxmFVk54WoePt wgY1GUSznCx+fXFXEbL5xlxE4vqi8B2WnlrF/WpCR9V4/Z7B7oiTV+WdeCBL26HYG2lnB9 h+KvFLicQKTBt4JxhVOgsO0bKIehCYjOOQwUuqxwVwd6Q4QbxfKneC3Esrmphg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846862; 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: in-reply-to:in-reply-to:references:references; bh=LhkH4PTSu595nBFXLYXN3K35Btg3cLswbFkc5Jl1g4I=; b=PymXkhDpzpnsAUrpwaTY0m1WgYSkZXUwEVQ4YvulTZR6G8OOa2a8XqB3R2DwKwiKTlVJAc 9IFz2AxEOp+3I+82VEVCksjN8kkqad5+smNY4GsD7mJq6uG4QUHOyosxD7Ss87wxzJPb8P NhGdHY4tj8vGlxY0tlVK6MgPyt8YRWPIs+hlhVZTE2Z5aLszZD7u/2opLUIsL14jVKM7tC d9NBKQZfY/C/CuWYPY4H+Uw0BKCgmb38+g9g97+Fm08xWOW144bpe8+waAog53Pffw3jG/ vmC/dQIO/PtswSNjmXHJgV3O1BEF1kpkTYvivr3hhyFcETzD7VNxhEM+7Zr9Fw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700846862; a=rsa-sha256; cv=none; b=HYQRtxXzDtkosBmDLunnrjMIS1y9kr58kcht7DUmBimwk9BKIlxdrDez/KQJf/Qf77lYNG ecV5m3TAVBIL42Cqb3haisUctk1WjrU+YqaWmkFl/szp8fMllkjOyOsHdyn80MF1JMdD1C 7FK/2QFF1yid4BfWkpia9D+kV89BbWmy/MwcAHqcMCvvNrKgTA30Q4FE/8W4FpeId2B3LU l1roIvpNEvjxLaqeOLT0plNdYhovmxYQA8GjiFds5lOLgjCPKPUBYqgBkZrE8dKEYzmbHp Nxb5SAPKvHdfj3FtcQQin1XbPJfnFGKCoDVM9fmNpE1C9hrYGbAjHB5/h+b2bg== Received: from [IPV6:2601:648:8384:fd00:cd8e:ae25:64ed:d338] (unknown [IPv6:2601:648:8384:fd00:cd8e:ae25:64ed:d338]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ScMPT5GMtz49q; Fri, 24 Nov 2023 17:27:41 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <79e6e3a1-96a5-4d3e-9c48-a89bcbd6303d@FreeBSD.org> Date: Fri, 24 Nov 2023 09:27:39 -0800 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 2a35f3cdf63d - main - sys/mutex.h: Include sys/lock.h instead of sys/_lock.h Content-Language: en-US To: Emmanuel Vadot , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202311240950.3AO9oSeH089169@gitrepo.freebsd.org> From: John Baldwin In-Reply-To: <202311240950.3AO9oSeH089169@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/24/23 1:50 AM, Emmanuel Vadot wrote: > The branch main has been updated by manu: > > URL: https://cgit.FreeBSD.org/src/commit/?id=2a35f3cdf63d1f9b1ea5ab0174adabb631757210 > > commit 2a35f3cdf63d1f9b1ea5ab0174adabb631757210 > Author: Emmanuel Vadot > AuthorDate: 2022-10-27 09:43:19 +0000 > Commit: Emmanuel Vadot > CommitDate: 2023-11-24 09:49:58 +0000 > > sys/mutex.h: Include sys/lock.h instead of sys/_lock.h > > It uses the LA_ defines when INVARIANTS is set. > This unbreak dpaa2 with FDT only kernel (like ALLWINNER or ROCKCHIP) as > the driver only include sys/lock.h via header polution for ACPI kernels. > > Sponsored by: Beckhoff Automation GmbH & Co. KG > Differential Revision: https://reviews.freebsd.org/D37145 > Reviewed by: kib, mjg Avoiding the nested include here was originally an intentional design decision. It was supposed to be a compile error if you didn't include lock.h first, and callers are always supposed to include both (up until now). However, I'm fine with changing this, but we should be consistent and change all the other lock headers at once including sys/rwlock.h, sys/sx.h, and sys/lockmgr.h. You will also need to patch all of these headers to remove the #error if LOCK_DEBUG or LOCK_FILE isn't defined (including sys/mutex.h which you missed in this commit). You will also need to update all the relevant manpages (mutex.9, sx.9, rwlock.9, and lockmgr.9) to remove the #include . For MFC purposes I would suggest to also fix dpaa2 to #include explicitly as it was supposed to do previously. -- John Baldwin From nobody Fri Nov 24 17:28:54 2023 X-Original-To: dev-commits-src-main@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 4ScMQv1FhRz51MQg; Fri, 24 Nov 2023 17:28:55 +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 4ScMQv0QVbz4J3G; Fri, 24 Nov 2023 17:28:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846935; 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=aLWr30l1l6AnhsSRpBwkKGh0U2M346GsFEv/roMh3fs=; b=czpN/tT/l6DFUmq3yqeIrgGpkcvJYkXWYL7YxN9dflKPpvgSFx1CdsE+FmUeNcuiZazvje 0M/8K3YFGxld2kAGgfdvod2An6ON4f0gzO0ff3L1Zjkj+ZOY6lpJbt95BIST0XpzqECSy/ F//oHK6N6yJ7/BI6zNopFH0X0GN83ir1S7VWYxJzua+DE3SzWBX8Tiq7Ce6nsmVkEpxLGn 38FLRoOqETzqO3RevHE7On51wqZEUTp9Fww+5F8uMsheWUCqLLImAmNBd0SbVj1gfEXTSD eaUVZ3elAoXesLSnS3GfpjTDzZcPsA1ImyAQL0V3aI0+Sw0G3Rs8/WbHn25Uvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846935; 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=aLWr30l1l6AnhsSRpBwkKGh0U2M346GsFEv/roMh3fs=; b=XW6IRkECu7DmBGsTAHb9UxO5aSYOwzvAuZGWUhyoCYa8aXuZ1m1XgqozYs5BSOBC0GzfGC oaEgbAKNI5RVvQUyFUwc5DDSeltJcVKhgQC3/PCY3gB/dkAg26C43ci4yuY7M1hEk7PsLy CjD7LcheRnIcBNXipZbd1IjA5gzDleWL1zW9sFP3XKcRTexNnO/R+Kl7WcBko0+aY595vR Qyfea6JyQuJ00Pimknkip3NK660SkpaJebQaqP+bmgyhS2jOn+11EvluYInv+AnZ5TPuQm UDOMumUxuzs5RO4YbREkjyU7N4AsY7Fi3yqBlepinGLXaGJETggozIWI6Ss6LQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700846935; a=rsa-sha256; cv=none; b=VjvVrooYkh+DXfim4cf25OGWyDp1CStlIHbt0pZDdduueezQxmNxCovB6BtOP7YcEvm10S Vl9jMavRhnHA2F1dmb9yPlk4GYn47Q/cUPhUguOuPLkEpOXgA8XoFuXCotsUotjouYuy2n YhD5FubOTka3JymVw9c8BRvbqQzInz0vw/tU/ZLxA7IOT2IB14F3dtHUMXvkcpzUdteTiq kUsE4axt5F03TW71OqwcJSRqH/ncxE6qTm9DJVRaee4YPYJZAKwAy0Pwnbz4vj0QEGoKy6 JscLMGT06xhQTCqsEwYYKrTuEIVmtC2LzjnrpKiTjyTwPAJfrxsBWhRDbCshAw== 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 4ScMQt6bQwztZS; Fri, 24 Nov 2023 17:28:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHSsD3051627; Fri, 24 Nov 2023 17:28:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHSsou051624; Fri, 24 Nov 2023 17:28:54 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:28:54 GMT Message-Id: <202311241728.3AOHSsou051624@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 751615c53844 - main - newbus: Add a set of bus resource helpers for nexus-like devices List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 751615c538446ea0384f8faa9cb2508670c3799a Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=751615c538446ea0384f8faa9cb2508670c3799a commit 751615c538446ea0384f8faa9cb2508670c3799a Author: John Baldwin AuthorDate: 2023-11-24 17:28:00 +0000 Commit: John Baldwin CommitDate: 2023-11-24 17:28:00 +0000 newbus: Add a set of bus resource helpers for nexus-like devices These routines can be used to implement bus_alloc/adjust/activate/deactive/release_resource on bus drivers which suballocate resources from rman(9) resource managers. These methods require a new bus_get_rman method in the bus driver to return the suitable rman for a given resource type. The activate/deactivate helpers also require the bus to implement the bus_map/ummap_resource methods. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42739 --- sys/kern/bus_if.m | 24 ++++++++ sys/kern/subr_bus.c | 157 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sys/sys/bus.h | 17 ++++++ 3 files changed, 198 insertions(+) diff --git a/sys/kern/bus_if.m b/sys/kern/bus_if.m index 7bd08fb713f8..7078683911b8 100644 --- a/sys/kern/bus_if.m +++ b/sys/kern/bus_if.m @@ -77,6 +77,12 @@ CODE { { return (0); } + + static struct rman * + null_get_rman(device_t bus, int type, u_int flags) + { + return (NULL); + } }; /** @@ -622,6 +628,24 @@ METHOD struct resource_list * get_resource_list { device_t _child; } DEFAULT bus_generic_get_resource_list; +/** + * @brief Return a struct rman. + * + * Used by drivers which use bus_generic_rman_alloc_resource() etc. to + * implement their resource handling. It should return the resource + * manager used for the given resource type. + * + * @param _dev the bus device + * @param _type the resource type + * @param _flags resource flags (@c RF_XXX flags in + * ) + */ +METHOD struct rman * get_rman { + device_t _dev; + int _type; + u_int _flags; +} DEFAULT null_get_rman; + /** * @brief Is the hardware described by @p _child still attached to the * system? diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 80fe182eab56..9e191f4c3a4f 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -4189,6 +4189,163 @@ bus_generic_rl_alloc_resource(device_t dev, device_t child, int type, start, end, count, flags)); } +/** + * @brief Helper function for implementing BUS_ALLOC_RESOURCE(). + * + * This implementation of BUS_ALLOC_RESOURCE() allocates a + * resource from a resource manager. It uses BUS_GET_RMAN() + * to obtain the resource manager. + */ +struct resource * +bus_generic_rman_alloc_resource(device_t dev, device_t child, int type, + int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags) +{ + struct resource *r; + struct rman *rm; + + rm = BUS_GET_RMAN(dev, type, flags); + if (rm == NULL) + return (NULL); + + r = rman_reserve_resource(rm, start, end, count, flags & ~RF_ACTIVE, + child); + if (r == NULL) + return (NULL); + rman_set_rid(r, *rid); + + if (flags & RF_ACTIVE) { + if (bus_activate_resource(child, type, *rid, r) != 0) { + rman_release_resource(r); + return (NULL); + } + } + + return (r); +} + +/** + * @brief Helper function for implementing BUS_ADJUST_RESOURCE(). + * + * This implementation of BUS_ADJUST_RESOURCE() adjusts resources only + * if they were allocated from the resource manager returned by + * BUS_GET_RMAN(). + */ +int +bus_generic_rman_adjust_resource(device_t dev, device_t child, int type, + struct resource *r, rman_res_t start, rman_res_t end) +{ + struct rman *rm; + + rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); + if (rm == NULL) + return (ENXIO); + if (!rman_is_region_manager(r, rm)) + return (EINVAL); + return (rman_adjust_resource(r, start, end)); +} + +/** + * @brief Helper function for implementing BUS_RELEASE_RESOURCE(). + * + * This implementation of BUS_RELEASE_RESOURCE() releases resources + * allocated by bus_generic_rman_alloc_resource. + */ +int +bus_generic_rman_release_resource(device_t dev, device_t child, int type, + int rid, struct resource *r) +{ +#ifdef INVARIANTS + struct rman *rm; +#endif + int error; + +#ifdef INVARIANTS + rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); + KASSERT(rman_is_region_manager(r, rm), + ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); +#endif + + if (rman_get_flags(r) & RF_ACTIVE) { + error = bus_deactivate_resource(child, type, rid, r); + if (error != 0) + return (error); + } + return (rman_release_resource(r)); +} + +/** + * @brief Helper function for implementing BUS_ACTIVATE_RESOURCE(). + * + * This implementation of BUS_ACTIVATE_RESOURCE() activates resources + * allocated by bus_generic_rman_alloc_resource. + */ +int +bus_generic_rman_activate_resource(device_t dev, device_t child, int type, + int rid, struct resource *r) +{ + struct resource_map map; +#ifdef INVARIANTS + struct rman *rm; +#endif + int error; + +#ifdef INVARIANTS + rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); + KASSERT(rman_is_region_manager(r, rm), + ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); +#endif + + error = rman_activate_resource(r); + if (error != 0) + return (error); + + if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && + (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { + error = BUS_MAP_RESOURCE(dev, child, type, r, NULL, &map); + if (error != 0) { + rman_deactivate_resource(r); + return (error); + } + + rman_set_mapping(r, &map); + } + return (0); +} + +/** + * @brief Helper function for implementing BUS_DEACTIVATE_RESOURCE(). + * + * This implementation of BUS_DEACTIVATE_RESOURCE() deactivates + * resources allocated by bus_generic_rman_alloc_resource. + */ +int +bus_generic_rman_deactivate_resource(device_t dev, device_t child, int type, + int rid, struct resource *r) +{ + struct resource_map map; +#ifdef INVARIANTS + struct rman *rm; +#endif + int error; + +#ifdef INVARIANTS + rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); + KASSERT(rman_is_region_manager(r, rm), + ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); +#endif + + error = rman_deactivate_resource(r); + if (error != 0) + return (error); + + if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && + (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { + rman_get_mapping(r, &map); + BUS_UNMAP_RESOURCE(dev, child, type, r, &map); + } + return (0); +} + /** * @brief Helper function for implementing BUS_CHILD_PRESENT(). * diff --git a/sys/sys/bus.h b/sys/sys/bus.h index 88ae4000004b..2ec735659452 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -499,6 +499,23 @@ int bus_generic_rl_set_resource (device_t, device_t, int, int, rman_res_t, rman_res_t); int bus_generic_rl_release_resource (device_t, device_t, int, int, struct resource *); +struct resource * + bus_generic_rman_alloc_resource(device_t dev, device_t child, int type, + int *rid, rman_res_t start, + rman_res_t end, rman_res_t count, + u_int flags); +int bus_generic_rman_adjust_resource(device_t dev, device_t child, int type, + struct resource *r, rman_res_t start, + rman_res_t end); +int bus_generic_rman_release_resource(device_t dev, device_t child, + int type, int rid, + struct resource *r); +int bus_generic_rman_activate_resource(device_t dev, device_t child, + int type, int rid, + struct resource *r); +int bus_generic_rman_deactivate_resource(device_t dev, device_t child, + int type, int rid, + struct resource *r); int bus_generic_shutdown(device_t dev); int bus_generic_suspend(device_t dev); From nobody Fri Nov 24 17:28:55 2023 X-Original-To: dev-commits-src-main@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 4ScMQw1nWdz51MFy; Fri, 24 Nov 2023 17:28:56 +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 4ScMQw1MqFz4JM5; Fri, 24 Nov 2023 17:28:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846936; 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=qWyHihyDODaI5uhhDLkU9KUNmGYFPyuYMIRLbFTfuTk=; b=UVuNYMqnZtMpceVOR34n/gMZgvd0MqqHoaTeNi7XAGVPurelg3NyuRBF2gzhHkoOmHsuZD SUQ5v2Ok0eQNWTjU8VBr4KK7UCcl1jkK7LM/okCbu3ytoTgkQ5hyqS0Urb6npQ0lDPlUIB N8YZyrUh+zX+qpzhT4S1djyrjOl4PqadwIfj9R38ONAU1JCBQRXJjkNpIMLKKBojIs5YwI ySpJi8Lp+vngFUxs6PDXQ/ggFuAD6Ll6ppYpW7R/rlcTFv1ed6LFRw3Z57QJSNZ3ESCAJw zXVNgNLEEEUw1E2pa2JNna7SdZhiH/X+82ImTGdZ28jXRhQa4f/fuSqpkK8OvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846936; 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=qWyHihyDODaI5uhhDLkU9KUNmGYFPyuYMIRLbFTfuTk=; b=WyTHS9frTX0DbefK+nhooBeSvWhx2esPFJyVgE7G2fhWk36pb1Gnlxr/LdqLwEvKhWkhKH 93zElMUZLgIBqhnZbUK28/UQ/qygqcSgpCW0iKzv11dnCRCXXfWVTmRbJM8fp1/hOYf1hr HJRA63BK+/G6F+oWG+49prBCQ/ofdPfHwzUVvvPM3X4gC8XtwroneNVwDjDwpBpu+g7JEd ae72ObFBW7CM+E34OCP8A8st8vc1zxrRVjCt2IPKbsmcZAOW0uBvmYplGifan1utzSFMMo EKZum/Oux8marcSFHxh1C54yAGM+wxgV+J4dA1v2iLNggX0XQIioNSX5FcUbkA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700846936; a=rsa-sha256; cv=none; b=T7OTjGCyvo9qyO0EhdiMoWEpMa93RAozZq4IiDYbGhkC8QO+sVTXcygnViS7crQa6Hw3tQ 0EUb4THVip2FjNHW4cuZ5mSnldrCvOEDXEd0gN1+03mWlM1Rdq3Bxxhyddy/AQPCbRc02D 3oyKJkPDgrs2rgP9VFMNNE+8XX/JoJxw5uKlWg4hET3DjKqQKJsUdXb/E77oZxzxHsqjmZ wdnvRJz4hw6JW8jX7go2G1P6YEuxhgW5wISuGSHv/XUbM8sSiBgOi8U14Mr5c66z/fL9im V9/YQHa5/6NCDgYHVorREC7IK9CSXc1tzhi+oPAEZFCh+aOp+Bct4NaW7ytMuQ== 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 4ScMQw0CQWztZT; Fri, 24 Nov 2023 17:28:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHStmA051666; Fri, 24 Nov 2023 17:28:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHStlO051663; Fri, 24 Nov 2023 17:28:55 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:28:55 GMT Message-Id: <202311241728.3AOHStlO051663@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: a03a335a8012 - main - x86 nexus: Use bus_generic_rman_*_resource List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a03a335a801246dfb95ccf35ec3f64b9fe968874 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a03a335a801246dfb95ccf35ec3f64b9fe968874 commit a03a335a801246dfb95ccf35ec3f64b9fe968874 Author: John Baldwin AuthorDate: 2023-11-24 17:28:10 +0000 Commit: John Baldwin CommitDate: 2023-11-24 17:28:10 +0000 x86 nexus: Use bus_generic_rman_*_resource Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42740 --- sys/x86/x86/nexus.c | 110 +++++----------------------------------------------- 1 file changed, 9 insertions(+), 101 deletions(-) diff --git a/sys/x86/x86/nexus.c b/sys/x86/x86/nexus.c index 54c655c4fafd..9b05758a6cbf 100644 --- a/sys/x86/x86/nexus.c +++ b/sys/x86/x86/nexus.c @@ -97,13 +97,10 @@ static device_attach_t nexus_attach; static bus_add_child_t nexus_add_child; static bus_print_child_t nexus_print_child; -static bus_activate_resource_t nexus_activate_resource; -static bus_adjust_resource_t nexus_adjust_resource; static bus_alloc_resource_t nexus_alloc_resource; -static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; +static bus_get_rman_t nexus_get_rman; static bus_map_resource_t nexus_map_resource; -static bus_release_resource_t nexus_release_resource; static bus_unmap_resource_t nexus_unmap_resource; #ifdef SMP @@ -138,15 +135,16 @@ static device_method_t nexus_methods[] = { /* Bus interface */ DEVMETHOD(bus_print_child, nexus_print_child), DEVMETHOD(bus_add_child, nexus_add_child), - DEVMETHOD(bus_activate_resource, nexus_activate_resource), - DEVMETHOD(bus_adjust_resource, nexus_adjust_resource), + DEVMETHOD(bus_activate_resource, bus_generic_rman_activate_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_rman_adjust_resource), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), - DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), + DEVMETHOD(bus_deactivate_resource, bus_generic_rman_deactivate_resource), DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), DEVMETHOD(bus_get_resource_list, nexus_get_reslist), + DEVMETHOD(bus_get_rman, nexus_get_rman), DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), DEVMETHOD(bus_map_resource, nexus_map_resource), - DEVMETHOD(bus_release_resource, nexus_release_resource), + DEVMETHOD(bus_release_resource, bus_generic_rman_release_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), #ifdef SMP @@ -328,7 +326,7 @@ nexus_add_child(device_t bus, u_int order, const char *name, int unit) } static struct rman * -nexus_rman(int type) +nexus_get_rman(device_t bus, int type, u_int flags) { switch (type) { case SYS_RES_IRQ: @@ -354,10 +352,7 @@ nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, u_int flags) { struct nexus_device *ndev = DEVTONX(child); - struct resource *rv; struct resource_list_entry *rle; - struct rman *rm; - int needactivate = flags & RF_ACTIVE; /* * If this is an allocation of the "default" range for a given @@ -376,81 +371,8 @@ nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, count = rle->count; } - flags &= ~RF_ACTIVE; - rm = nexus_rman(type); - if (rm == NULL) - return (NULL); - - rv = rman_reserve_resource(rm, start, end, count, flags, child); - if (rv == NULL) - return (NULL); - rman_set_rid(rv, *rid); - - if (needactivate) { - if (bus_activate_resource(child, type, *rid, rv)) { - rman_release_resource(rv); - return (NULL); - } - } - - return (rv); -} - -static int -nexus_adjust_resource(device_t bus, device_t child, int type, - struct resource *r, rman_res_t start, rman_res_t end) -{ - struct rman *rm; - - rm = nexus_rman(type); - if (rm == NULL) - return (ENXIO); - if (!rman_is_region_manager(r, rm)) - return (EINVAL); - return (rman_adjust_resource(r, start, end)); -} - -static int -nexus_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) -{ - struct resource_map map; - int error; - - error = rman_activate_resource(r); - if (error != 0) - return (error); - - if (!(rman_get_flags(r) & RF_UNMAPPED) && - (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { - error = nexus_map_resource(bus, child, type, r, NULL, &map); - if (error) { - rman_deactivate_resource(r); - return (error); - } - - rman_set_mapping(r,&map); - } - return (0); -} - -static int -nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) -{ - struct resource_map map; - int error; - - error = rman_deactivate_resource(r); - if (error) - return (error); - - if (!(rman_get_flags(r) & RF_UNMAPPED) && - (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { - rman_get_mapping(r, &map); - nexus_unmap_resource(bus, child, type, r, &map); - } - return (0); + return (bus_generic_rman_alloc_resource(bus, child, type, rid, + start, end, count, flags)); } static int @@ -523,20 +445,6 @@ nexus_unmap_resource(device_t bus, device_t child, int type, struct resource *r, return (0); } -static int -nexus_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) -{ - int error; - - if (rman_get_flags(r) & RF_ACTIVE) { - error = bus_deactivate_resource(child, type, rid, r); - if (error != 0) - return (error); - } - return (rman_release_resource(r)); -} - /* * Currently this uses the really grody interface from kern/kern_intr.c * (which really doesn't belong in kern/anything.c). Eventually, all of From nobody Fri Nov 24 17:28:57 2023 X-Original-To: dev-commits-src-main@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 4ScMQx3DRlz51MTD; Fri, 24 Nov 2023 17:28:57 +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 4ScMQx2Vskz4JK7; Fri, 24 Nov 2023 17:28:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846937; 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=vYgsmvg1LJslU9LyJtKUkqn3t6SS8pWOZoZ03z7a8bQ=; b=Z1oZama/e7TStJlzt4gZ+75hYvlUUuqFvp7Y7q4DDlezLH4kBYUiDL3rSocL7n3MjNfAIK fI0mKbeScKVHlct7qk6DDM/adeOLRQ2PzXb6EisfuG+b8AJbxGPHrK82bjVqny26SFS0qA y6DTU0e31Mcf7Q+zJqPINTibKR1hG08+nWSNK8ugPNv2kHbnFikfrygl4EJsazlhVDhEPY BqHfmBRTbvXzuEpUGncN742GNyTAseKOCMxtckf+y6LNShCIBp3jZ/nd4EpJBAqyQjLyu1 Fc0J7prpNpD+xBN3W3J0fl1mNi1eDU8P90J9o/TNpJAWPhYFqXtjkA/yJRgiqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846937; 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=vYgsmvg1LJslU9LyJtKUkqn3t6SS8pWOZoZ03z7a8bQ=; b=EJ9Afv5/FGsa9cqG+qfh93HXQPolJDiumVpQLlN0GNgVqaUV0naoaw9qO2KlZX6upR7Qw/ 8AsnVsVnAO0pu0DXg7gMMPAZ90lUlT5K/Sq6dWqgDl79vFjKCSEIPTSK7ywa+i45IJwW6Y Yt9EGPgenrOq5fa2B+HAOJtN9o9Q0gkEB7T57Jhc9zb77ZmFODvCcyP8WGegGUELp21SiR g4FEQbAVj/LYVx1IXN/ONs+iPGZXnpgZSBonT/eF8x2ov2xaawoGFfsGe0ma/4OqXRwZD0 5Ajc+h8xGkaMy9FbHOTVaXHW8iijs7aYmvCFwmvjF0E4AsHe/V/gtEyTmU2KTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700846937; a=rsa-sha256; cv=none; b=qCa5VM3lYNKowoI1lpThAQwSdFEUOa4xgysbREpYdw6UjWV5hVOI1ApxXy6qHMndHHNRDq 419D+pxqKsr/2+ZsipsQ5v+wA276/PKbEsAh5P6zqDRoIXcfxc3yhMwMpIGP99tO8mOg2S F4fXazCwuQ8VRMfHu9VVWCu1mTE/H1ygQwBUTmaJF6V+Jfi6cE/WNrVhvzIWZq9RvIWqr9 sh/Vdish72fYKNg2G36CHx5P/KLVoin2slALtdOMJNLmwbT1M7qu3Dx2q6PhQVxoJ81iTv qIzv6ZcT8Ftr8CjG/+IH58nCSldY1OS6vGBhfBmC/4Gvdr64Eckb9tQALd39Kw== 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 4ScMQx1D8BztpK; Fri, 24 Nov 2023 17:28:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHSvib051705; Fri, 24 Nov 2023 17:28:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHSvZ6051702; Fri, 24 Nov 2023 17:28:57 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:28:57 GMT Message-Id: <202311241728.3AOHSvZ6051702@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 658501d25930 - main - aarch64 nexus: Use bus_generic_rman_*_resource List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 658501d25930bcf24839f3308ee1da971145c018 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=658501d25930bcf24839f3308ee1da971145c018 commit 658501d25930bcf24839f3308ee1da971145c018 Author: John Baldwin AuthorDate: 2023-11-24 17:28:19 +0000 Commit: John Baldwin CommitDate: 2023-11-24 17:28:19 +0000 aarch64 nexus: Use bus_generic_rman_*_resource Custom activate/deactivate_resource methods are still needed to handle IRQ resources. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42741 --- sys/arm64/arm64/nexus.c | 123 +++++++++++++++--------------------------------- 1 file changed, 37 insertions(+), 86 deletions(-) diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index a20f8d0289ad..32b5542f1916 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -106,12 +106,11 @@ static bus_add_child_t nexus_add_child; static bus_print_child_t nexus_print_child; static bus_activate_resource_t nexus_activate_resource; -static bus_adjust_resource_t nexus_adjust_resource; static bus_alloc_resource_t nexus_alloc_resource; static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; +static bus_get_rman_t nexus_get_rman; static bus_map_resource_t nexus_map_resource; -static bus_release_resource_t nexus_release_resource; static bus_unmap_resource_t nexus_unmap_resource; #ifdef SMP @@ -133,14 +132,15 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_add_child, nexus_add_child), DEVMETHOD(bus_print_child, nexus_print_child), DEVMETHOD(bus_activate_resource, nexus_activate_resource), - DEVMETHOD(bus_adjust_resource, nexus_adjust_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_rman_adjust_resource), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), DEVMETHOD(bus_get_resource_list, nexus_get_reslist), + DEVMETHOD(bus_get_rman, nexus_get_rman), DEVMETHOD(bus_map_resource, nexus_map_resource), - DEVMETHOD(bus_release_resource, nexus_release_resource), + DEVMETHOD(bus_release_resource, bus_generic_rman_release_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), #ifdef SMP @@ -215,6 +215,21 @@ nexus_add_child(device_t bus, u_int order, const char *name, int unit) return (child); } +static struct rman * +nexus_get_rman(device_t bus, int type, u_int flags) +{ + + switch (type) { + case SYS_RES_IRQ: + return (&irq_rman); + case SYS_RES_MEMORY: + case SYS_RES_IOPORT: + return (&mem_rman); + default: + return (NULL); + } +} + /* * Allocate a resource on behalf of child. NB: child is usually going to be a * child of one of our descendants, not a direct child of nexus0. @@ -224,10 +239,7 @@ nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags) { struct nexus_device *ndev = DEVTONX(child); - struct resource *rv; struct resource_list_entry *rle; - struct rman *rm; - int needactivate = flags & RF_ACTIVE; /* * If this is an allocation of the "default" range for a given @@ -246,70 +258,8 @@ nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, count = rle->count; } - switch (type) { - case SYS_RES_IRQ: - rm = &irq_rman; - break; - - case SYS_RES_MEMORY: - case SYS_RES_IOPORT: - rm = &mem_rman; - break; - - default: - return (NULL); - } - - rv = rman_reserve_resource(rm, start, end, count, flags, child); - if (rv == NULL) - return (NULL); - - rman_set_rid(rv, *rid); - rman_set_bushandle(rv, rman_get_start(rv)); - - if (needactivate) { - if (bus_activate_resource(child, type, *rid, rv)) { - rman_release_resource(rv); - return (NULL); - } - } - - return (rv); -} - -static int -nexus_adjust_resource(device_t bus __unused, device_t child __unused, int type, - struct resource *r, rman_res_t start, rman_res_t end) -{ - struct rman *rm; - - switch (type) { - case SYS_RES_IRQ: - rm = &irq_rman; - break; - case SYS_RES_MEMORY: - rm = &mem_rman; - break; - default: - return (EINVAL); - } - if (rman_is_region_manager(r, rm) == 0) - return (EINVAL); - return (rman_adjust_resource(r, start, end)); -} - -static int -nexus_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *res) -{ - int error; - - if (rman_get_flags(res) & RF_ACTIVE) { - error = bus_deactivate_resource(child, type, rid, res); - if (error) - return (error); - } - return (rman_release_resource(res)); + return (bus_generic_rman_alloc_resource(bus, child, type, rid, start, + end, count, flags)); } static int @@ -417,8 +367,10 @@ nexus_activate_resource_flags(device_t bus, device_t child, int type, int rid, rman_deactivate_resource(r); return (err); } + return (0); + default: + return (EINVAL); } - return (0); } static int @@ -440,23 +392,22 @@ static int nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) { - bus_size_t psize; - bus_space_handle_t vaddr; - - if (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT) { - psize = (bus_size_t)rman_get_size(r); - vaddr = rman_get_bushandle(r); + int error; - if (vaddr != 0) { - bus_space_unmap(&memmap_bus, vaddr, psize); - rman_set_virtual(r, NULL); - rman_set_bushandle(r, 0); - } - } else if (type == SYS_RES_IRQ) { + switch (type) { + case SYS_RES_MEMORY: + case SYS_RES_IOPORT: + return (bus_generic_rman_deactivate_resource(bus, child, type, + rid, r)); + case SYS_RES_IRQ: + error = rman_deactivate_resource(r); + if (error) + return (error); intr_deactivate_irq(child, r); + return (0); + default: + return (EINVAL); } - - return (rman_deactivate_resource(r)); } static int From nobody Fri Nov 24 17:28:58 2023 X-Original-To: dev-commits-src-main@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 4ScMQy4KDsz51MGC; Fri, 24 Nov 2023 17:28:58 +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 4ScMQy3C5Wz4JKR; Fri, 24 Nov 2023 17:28:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846938; 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=pI/xqAMEgluGjf6gFGlduvYOEneOxLQgARr/KYg15xY=; b=eqJN7NtLXvPLxnJnhR8lXc1iW48lMZ/s3tZnpapvjDyW6wbZra5KCDDmaCfOk+O2W2CZBV iHzzflE1iFmto0r0RkkrrpoLeJU3uTwlH0iZeyNxi6EToVgxg8bozu7WlQAiwRMuH2gsA7 cE6Y4brSQkKi+pcf5FKqOxEDXhrMniP6PxEIQdNqKU8/mrywNA1vanOhqaCwFa4sxtFh0+ S0/igtqubJu8E6Jc7hRZwMN7dV8yEXO+L346Wnn3rBq/J9wV1/EDs/X+Ev+ZqRkb70LvYl 8EQIlyazpLm/1AGdAwnqBODJxLlDnGxE4uhEhB93eqlR5F3bfjV7o/RhwbUHfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846938; 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=pI/xqAMEgluGjf6gFGlduvYOEneOxLQgARr/KYg15xY=; b=kEj4d6jMmFYWzPRI7aMKM46jE6f1MX4Iio7MzK29ZHqkfY1UMLYPY1PVY44yXtin3QOK5l 7KCukJCMWYjZnovb6XbJvAH5zkHezx28aYjoyhVhsO57QOZ55lONuiEYkLcM/X5vyLgUUS 6eAqiWfj7HZMcMNiXpbCbvZXdXlED40mI4pUfhU8zlmoQK2ItT/RRmZl6tIqyyOIRiRirn KaYf6/Mjw182kp68vVkRS1ur6ygnZGAgPi008eeX+D2BUt8jP17FoKpICLCs86KFlCd4k6 h/mPk0fTNtOqd0RUj/fN55emoQMINuR9ibamMJCO0SrM/cyOFE9jAvt9SHkxEQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700846938; a=rsa-sha256; cv=none; b=bqD7IRJy6+LcsVSIBJns/1xu30WYFXm58hJsTEWCSdVxuxO/AY8VkEpWWAFbc9DhJ2DI4A F3tdESpphS8RH6UIk4VWxRgxS7QwLNtlxQAcOqDApsDMtB3Mt1O9ZRF3tUqdhYformfw8w uPvY3RpNFz1mPQ/J3B79Y6IsrWZ2ENl+mizq5JK2ZveS7cf8EA0fLyZ8g+xHWYRqbzPv7X P8MWH2IKYXbblA57wFYBVwF/1zGYMwJtyVM8PeuM1nLhvYdjNtuOdX8FetXQapVIPtM5cw A8gxnkH51HiQmPy7oCuTk81IvdicqImmcnw4b0DDf64D5T6tQhAUWQW5LtI9ZA== 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 4ScMQy2CkcztX7; Fri, 24 Nov 2023 17:28:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHSwt0051744; Fri, 24 Nov 2023 17:28:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHSwLQ051741; Fri, 24 Nov 2023 17:28:58 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:28:58 GMT Message-Id: <202311241728.3AOHSwLQ051741@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: f8709c826be9 - main - riscv nexus: Use bus_generic_rman_*_resource List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f8709c826be977471df5663833f291f43d93d54c Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=f8709c826be977471df5663833f291f43d93d54c commit f8709c826be977471df5663833f291f43d93d54c Author: John Baldwin AuthorDate: 2023-11-24 17:28:28 +0000 Commit: John Baldwin CommitDate: 2023-11-24 17:28:28 +0000 riscv nexus: Use bus_generic_rman_*_resource Custom activate/deactivate_resource methods are still needed to handle IRQ resources. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D42742 --- sys/riscv/riscv/nexus.c | 158 ++++++++++++++++-------------------------------- 1 file changed, 51 insertions(+), 107 deletions(-) diff --git a/sys/riscv/riscv/nexus.c b/sys/riscv/riscv/nexus.c index d92ad7861ae9..f710e6826c21 100644 --- a/sys/riscv/riscv/nexus.c +++ b/sys/riscv/riscv/nexus.c @@ -81,12 +81,11 @@ static bus_add_child_t nexus_add_child; static bus_print_child_t nexus_print_child; static bus_activate_resource_t nexus_activate_resource; -static bus_adjust_resource_t nexus_adjust_resource; static bus_alloc_resource_t nexus_alloc_resource; static bus_deactivate_resource_t nexus_deactivate_resource; static bus_get_resource_list_t nexus_get_reslist; +static bus_get_rman_t nexus_get_rman; static bus_map_resource_t nexus_map_resource; -static bus_release_resource_t nexus_release_resource; static bus_unmap_resource_t nexus_unmap_resource; static bus_config_intr_t nexus_config_intr; @@ -110,15 +109,16 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_add_child, nexus_add_child), DEVMETHOD(bus_print_child, nexus_print_child), DEVMETHOD(bus_activate_resource, nexus_activate_resource), - DEVMETHOD(bus_adjust_resource, nexus_adjust_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_rman_adjust_resource), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), DEVMETHOD(bus_get_resource_list, nexus_get_reslist), + DEVMETHOD(bus_get_rman, nexus_get_rman), DEVMETHOD(bus_map_resource, nexus_map_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), - DEVMETHOD(bus_release_resource, nexus_release_resource), + DEVMETHOD(bus_release_resource, bus_generic_rman_release_resource), DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), DEVMETHOD(bus_config_intr, nexus_config_intr), DEVMETHOD(bus_describe_intr, nexus_describe_intr), @@ -207,6 +207,21 @@ nexus_add_child(device_t bus, u_int order, const char *name, int unit) return (child); } +static struct rman * +nexus_get_rman(device_t bus, int type, u_int flags) +{ + + switch (type) { + case SYS_RES_IRQ: + return (&irq_rman); + case SYS_RES_MEMORY: + case SYS_RES_IOPORT: + return (&mem_rman); + default: + return (NULL); + } +} + /* * Allocate a resource on behalf of child. NB: child is usually going to be a * child of one of our descendants, not a direct child of nexus0. @@ -216,10 +231,7 @@ nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags) { struct nexus_device *ndev = DEVTONX(child); - struct resource *rv; struct resource_list_entry *rle; - struct rman *rm; - int needactivate = flags & RF_ACTIVE; /* * If this is an allocation of the "default" range for a given @@ -238,70 +250,8 @@ nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, count = rle->count; } - switch (type) { - case SYS_RES_IRQ: - rm = &irq_rman; - break; - - case SYS_RES_MEMORY: - case SYS_RES_IOPORT: - rm = &mem_rman; - break; - - default: - return (NULL); - } - - rv = rman_reserve_resource(rm, start, end, count, flags, child); - if (rv == NULL) - return (NULL); - - rman_set_rid(rv, *rid); - rman_set_bushandle(rv, rman_get_start(rv)); - - if (needactivate) { - if (bus_activate_resource(child, type, *rid, rv)) { - rman_release_resource(rv); - return (NULL); - } - } - - return (rv); -} - -static int -nexus_adjust_resource(device_t bus __unused, device_t child __unused, int type, - struct resource *r, rman_res_t start, rman_res_t end) -{ - struct rman *rm; - - switch (type) { - case SYS_RES_IRQ: - rm = &irq_rman; - break; - case SYS_RES_MEMORY: - rm = &mem_rman; - break; - default: - return (EINVAL); - } - if (rman_is_region_manager(r, rm) == 0) - return (EINVAL); - return (rman_adjust_resource(r, start, end)); -} - -static int -nexus_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *res) -{ - int error; - - if (rman_get_flags(res) & RF_ACTIVE) { - error = bus_deactivate_resource(child, type, rid, res); - if (error != 0) - return (error); - } - return (rman_release_resource(res)); + return (bus_generic_rman_alloc_resource(bus, child, type, rid, + start, end, count, flags)); } static int @@ -357,37 +307,29 @@ static int nexus_activate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) { - struct resource_map map; - int err; - - if ((err = rman_activate_resource(r)) != 0) - return (err); + int error; - /* - * If this is a memory resource, map it into the kernel. - */ switch (type) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - if ((rman_get_flags(r) & RF_UNMAPPED) == 0) { - err = nexus_map_resource(bus, child, type, r, NULL, - &map); - if (err != 0) { - rman_deactivate_resource(r); - return (err); - } - - rman_set_mapping(r, &map); - } + error = bus_generic_rman_activate_resource(bus, child, type, + rid, r); break; case SYS_RES_IRQ: - err = intr_activate_irq(child, r); - if (err != 0) { + error = rman_activate_resource(r); + if (error != 0) + return (error); + error = intr_activate_irq(child, r); + if (error != 0) { rman_deactivate_resource(r); - return (err); + return (error); } + break; + default: + error = EINVAL; + break; } - return (0); + return (error); } static struct resource_list * @@ -402,23 +344,25 @@ static int nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) { - bus_size_t psize; - bus_space_handle_t vaddr; - - if (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT) { - psize = (bus_size_t)rman_get_size(r); - vaddr = rman_get_bushandle(r); + int error; - if (vaddr != 0) { - bus_space_unmap(&memmap_bus, vaddr, psize); - rman_set_virtual(r, NULL); - rman_set_bushandle(r, 0); - } - } else if (type == SYS_RES_IRQ) { + switch (type) { + case SYS_RES_IOPORT: + case SYS_RES_MEMORY: + error = bus_generic_rman_deactivate_resource(bus, child, type, + rid, r); + break; + case SYS_RES_IRQ: + error = rman_deactivate_resource(r); + if (error != 0) + return (error); intr_deactivate_irq(child, r); + break; + default: + error = EINVAL; + break; } - - return (rman_deactivate_resource(r)); + return (error); } static int From nobody Fri Nov 24 17:28:59 2023 X-Original-To: dev-commits-src-main@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 4ScMQz5v50z51MWY; Fri, 24 Nov 2023 17:28:59 +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 4ScMQz47DSz4JKd; Fri, 24 Nov 2023 17:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846939; 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=2qnOEEwADD+vCcXvCAwhRrwFCfJ1sctOYDr3MeP1qLQ=; b=cQbN6mYb3vz9a06OSuAJEQ07jqL7DD9RRVr7veU9ibJxm0LvHXSH3bHXNoF/xhnEExCERv 8i0GQj+/oJxIzuqUOnHbo/6iStFQ0ak3CWY7dYGb+hT6TSZtnSS45NdbniD65O0n6+jrgH s2ycPT5ce/u6KvPQnkjfcDCNFemMbadaFWckDi/oCUR51w84ulwGvJFW+AOLy9NDRLmNTq KwSqAshV+AhfsccynA9Z5Ph6jWilVGHKnWJAZpeBNQt5HRunHAEHYJb6LkF63OO2GfkMO8 6MLmTdExjYAN7RMnZ1YdCOEkGKrxpjzga0OU0UYwJm6AHdw6l9nkPX9PLW4NdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700846939; 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=2qnOEEwADD+vCcXvCAwhRrwFCfJ1sctOYDr3MeP1qLQ=; b=j1bGlw599FnsQ3rSTdFSe3kO0one2bpqAeKPUETkpvV58h/9kTpjEgNksNsIHTS0F0QzEl FwpyVePFD9dFPT5jCzRAYaTjq5lC32pGFscLr+vSwrXlghrcH5uYnWQHKSdhLvM8ju3sXh bznPgdEHKyuZDWwRn7X+girLCXK4B2X5tzS3JQDzejuKIsAw4Oap5tL1ZO4toJQHyJ96NO +htj+7mLQSfxEjvQsISfa6wKPxzKSrxXffBfMImBCcw147BvzY6NquzktS9SB2rMYa8vW3 sN26+J62IUJQny7I+Ji5d94Q/ob8Ka4GyXWUnZVo5WXZW3y7x9AhSH6GN6TeIA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700846939; a=rsa-sha256; cv=none; b=Bqn3e4GZmpmuE9OdbW36kzn+0U/vkm3rnPSd70K0zfviwOeFOX1zJg6QLAdx+aq1S1nCQl HfSHL5JaX8WR8A7Mp6+1TGQZWY9Gtq8gRkRFZcXIrzTVWekOzlKKqP+z9Enu4fqQoOEWmI qjkfHFBT3cPSlKJggFut4rgmYvGygQTHkF23qFP7vyokXE9985/ABI+SpX4IW+jVNm0jcX FKkr1y53pwByCoTivgtlYp5b7OI6Q6fss/YrK1MMvzq0V3yDYq6LXwhZyGZWOPbwxmh0lO tQnNzxZpMOKTT+hpPD+rVUkQtt9Y73Pj9A9NplA9+1ZlxC/01xsMrSGN3Bhw4A== 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 4ScMQz3DxBztH2; Fri, 24 Nov 2023 17:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHSxvm051796; Fri, 24 Nov 2023 17:28:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHSxFP051793; Fri, 24 Nov 2023 17:28:59 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:28:59 GMT Message-Id: <202311241728.3AOHSxFP051793@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 7bf9223ca958 - main - riscv nexus: Sort bus_set_resource in DEVMETHOD table List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7bf9223ca958aed45a998890f351afaae67550fe Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=7bf9223ca958aed45a998890f351afaae67550fe commit 7bf9223ca958aed45a998890f351afaae67550fe Author: John Baldwin AuthorDate: 2019-09-11 07:39:37 +0000 Commit: John Baldwin CommitDate: 2023-11-24 17:28:40 +0000 riscv nexus: Sort bus_set_resource in DEVMETHOD table --- sys/riscv/riscv/nexus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/riscv/riscv/nexus.c b/sys/riscv/riscv/nexus.c index f710e6826c21..06dc6412b885 100644 --- a/sys/riscv/riscv/nexus.c +++ b/sys/riscv/riscv/nexus.c @@ -117,8 +117,8 @@ static device_method_t nexus_methods[] = { DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_get_rman, nexus_get_rman), DEVMETHOD(bus_map_resource, nexus_map_resource), - DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_release_resource, bus_generic_rman_release_resource), + DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_unmap_resource, nexus_unmap_resource), DEVMETHOD(bus_config_intr, nexus_config_intr), DEVMETHOD(bus_describe_intr, nexus_describe_intr), From nobody Fri Nov 24 17:31:54 2023 X-Original-To: dev-commits-src-main@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 4ScMVL4gnsz51Nk4; Fri, 24 Nov 2023 17:31:54 +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 4ScMVL4CX9z4LNJ; Fri, 24 Nov 2023 17:31:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847114; 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=bJYL2JLRVx4p9OfoURWiG38yFwSAspwoSFFYlWrGbmk=; b=UOY5tkU0XPXX1omPME0lCfiFLuTcHiFUhvCmgEK5QkseDoB3G3c/B8MzHmpF2KxLrbvu5q QDnT50mJUltP4WPe/1y6LzZPrgxrxYULpGFwwWrF2b9rs8X3Gmx58bNrUXKBjSYn3dF0u4 MZHSFPirGEiu1MmGpv9kKd+gNJL/TVKXXRB6Tp4ckhkYN1torj1YnDt8dKuHMHE2OZ2H05 r9Pkquh0Y+6/wfJ836zW8o7gKYHtxPeyCCkghePZMjJYge/AKSpnp8iK1bypMvVfmWTZ/T lH83EQ0qgNrIt56Sv+duFFTEra1QUc7BYe0OekfZT9KNoSuSWaLcjOS9Xo3xMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847114; 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=bJYL2JLRVx4p9OfoURWiG38yFwSAspwoSFFYlWrGbmk=; b=bS5vVDGy5nVNNQxK2Gu1vLdAubBe5FJpk4Z3mHIO6mMXw89ZcM0+fv4RmTLEEJUAR6r4tK p8qX+SEHL2X6gdAYJBWz5Y3KyjGwbl2Odp3iRTqO+QFS3hPUYCWmi+Y5+OdvxNJu4GvlQr 9l75NGssBynQKYTkBIGh0yDzO3elFrLP4woW3NGlQIUhzdFgt8B6bTy/EeiLp6gtJNV+CA xj4GRt56oRBPdvIqmIfLuJvQdk/mVx5q9HvTysptcvz/fpZc4JLK0Rbuvuh0fSZu7IoQJ3 pwddrtK+K6g5Oe0hr7OVoHl6YPwE+lAt588VFUQVOdGEHXgYtwiB5wkW5dzxxQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700847114; a=rsa-sha256; cv=none; b=Eg+L3HOR1+78RYW8/Y2l5X716WnJDk6t1zIRC4zVQ9Ocok4GtGjTxYUDPdSnqyuUdfEhHw hjROPxLA0sspKAjh4fnHCzXL3Q6SSOyxiWJE5+ZCpllH+kmJWa0FgZL7EXNUbOiZUF1roL NkTkel2p9ZJ+rjyUDuJJB4+RdgTNIGdcYKYiqj/h4Oy0rQwsZWhny4vFZhX7Vd5DWP0b4t 8ZMWDkGYJ0lHWGQj4/9nd3cr+MVPTVRTs0teTOVGd6UaPgchJGV1NnX8+YtJCOf0EnBasa qGZOXF+nxYykboPa2m6j0BKbmjqvidhXjLGD4i6NBylFdCHMIYrpXwjm3s+6pQ== 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 4ScMVL3JB3ztL7; Fri, 24 Nov 2023 17:31:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHVsBi061733; Fri, 24 Nov 2023 17:31:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHVsEJ061730; Fri, 24 Nov 2023 17:31:54 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:31:54 GMT Message-Id: <202311241731.3AOHVsEJ061730@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 14dcd4098374 - main - linuxkpi: `GFP_KERNEL` equals `M_NOWAIT` now List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 14dcd40983748596d116d91acb934a8a95ac76bc Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=14dcd40983748596d116d91acb934a8a95ac76bc commit 14dcd40983748596d116d91acb934a8a95ac76bc Author: Jean-Sébastien Pédron AuthorDate: 2023-11-24 17:30:33 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-11-24 17:31:32 +0000 linuxkpi: `GFP_KERNEL` equals `M_NOWAIT` now ... instead of `M_WAITOK`. [Why] The reason is that in some places in the DRM drivers (in particular, the framebuffer management code), kmalloc() is called from a non-sleepable context, such as after a call to mtx_lock(8) with an MTX_DEF mutex. If `GFP_KERNEL` is defined as `M_WAITOK`, we hit an assertion from witness(4). [How] The definition of `GFP_KERNEL` is changed to `M_NOWAIT`. This means that callers should verify the return value of kmalloc(). Fortunately, this is always the case in Linux. Reviewed by: bz, emaste, manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D42054 --- sys/compat/linuxkpi/common/include/linux/gfp.h | 2 +- sys/compat/linuxkpi/common/include/linux/slab.h | 8 ++++---- sys/compat/linuxkpi/common/src/linux_compat.c | 7 +++++-- sys/compat/linuxkpi/common/src/linux_interrupt.c | 3 +++ sys/compat/linuxkpi/common/src/linux_pci.c | 4 ++-- sys/compat/linuxkpi/common/src/linux_shmemfs.c | 11 +++++++++-- 6 files changed, 24 insertions(+), 11 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/gfp.h b/sys/compat/linuxkpi/common/include/linux/gfp.h index c5de09e896de..17590806343f 100644 --- a/sys/compat/linuxkpi/common/include/linux/gfp.h +++ b/sys/compat/linuxkpi/common/include/linux/gfp.h @@ -64,7 +64,7 @@ #define GFP_NOWAIT M_NOWAIT #define GFP_ATOMIC (M_NOWAIT | M_USE_RESERVE) -#define GFP_KERNEL M_WAITOK +#define GFP_KERNEL M_NOWAIT #define GFP_USER M_WAITOK #define GFP_HIGHUSER M_WAITOK #define GFP_HIGHUSER_MOVABLE M_WAITOK diff --git a/sys/compat/linuxkpi/common/include/linux/slab.h b/sys/compat/linuxkpi/common/include/linux/slab.h index 8557f831bb60..3e857a4adc54 100644 --- a/sys/compat/linuxkpi/common/include/linux/slab.h +++ b/sys/compat/linuxkpi/common/include/linux/slab.h @@ -47,12 +47,12 @@ MALLOC_DECLARE(M_KMALLOC); #define kzalloc(size, flags) kmalloc(size, (flags) | __GFP_ZERO) #define kzalloc_node(size, flags, node) kmalloc_node(size, (flags) | __GFP_ZERO, node) #define kfree_const(ptr) kfree(ptr) -#define vzalloc(size) __vmalloc(size, GFP_KERNEL | __GFP_NOWARN | __GFP_ZERO, 0) +#define vzalloc(size) __vmalloc(size, M_WAITOK | __GFP_NOWARN | __GFP_ZERO, 0) #define vfree(arg) kfree(arg) #define kvfree(arg) kfree(arg) -#define vmalloc_node(size, node) __vmalloc_node(size, GFP_KERNEL, node) -#define vmalloc_user(size) __vmalloc(size, GFP_KERNEL | __GFP_ZERO, 0) -#define vmalloc(size) __vmalloc(size, GFP_KERNEL, 0) +#define vmalloc_node(size, node) __vmalloc_node(size, M_WAITOK, node) +#define vmalloc_user(size) __vmalloc(size, M_WAITOK | __GFP_ZERO, 0) +#define vmalloc(size) __vmalloc(size, M_WAITOK, 0) #define __kmalloc(...) kmalloc(__VA_ARGS__) /* diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index b913ae602ab3..baa4ff2fee44 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -574,7 +574,7 @@ linux_file_alloc(void) { struct linux_file *filp; - filp = kzalloc(sizeof(*filp), GFP_KERNEL); + filp = kzalloc(sizeof(*filp), M_WAITOK); /* set initial refcount */ filp->f_count = 1; @@ -1412,6 +1412,9 @@ linux_file_mmap_single(struct file *fp, const struct file_operations *fop, return (EINVAL); vmap = kzalloc(sizeof(*vmap), GFP_KERNEL); + if (vmap == NULL) + return (ENOMEM); + vmap->vm_start = 0; vmap->vm_end = size; vmap->vm_pgoff = *offset / PAGE_SIZE; @@ -1941,7 +1944,7 @@ vmmap_add(void *addr, unsigned long size) { struct vmmap *vmmap; - vmmap = kmalloc(sizeof(*vmmap), GFP_KERNEL); + vmmap = kmalloc(sizeof(*vmmap), M_WAITOK); mtx_lock(&vmmaplock); vmmap->vm_size = size; vmmap->vm_addr = addr; diff --git a/sys/compat/linuxkpi/common/src/linux_interrupt.c b/sys/compat/linuxkpi/common/src/linux_interrupt.c index 5602b09c8fb8..886a5d5ad014 100644 --- a/sys/compat/linuxkpi/common/src/linux_interrupt.c +++ b/sys/compat/linuxkpi/common/src/linux_interrupt.c @@ -135,6 +135,9 @@ lkpi_request_irq(struct device *xdev, unsigned int irq, GFP_KERNEL | __GFP_ZERO); else irqe = kzalloc(sizeof(*irqe), GFP_KERNEL); + if (irqe == NULL) + return (-ENOMEM); + irqe->dev = dev; irqe->res = res; irqe->arg = arg; diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index 8386552dcd51..f692b9c3ef09 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -305,7 +305,7 @@ lkpifill_pci_dev(device_t dev, struct pci_dev *pdev) pdev->subsystem_device = pci_get_subdevice(dev); pdev->class = pci_get_class(dev); pdev->revision = pci_get_revid(dev); - pdev->path_name = kasprintf(GFP_KERNEL, "%04d:%02d:%02d.%d", + pdev->path_name = kasprintf(M_WAITOK, "%04d:%02d:%02d.%d", pci_get_domain(dev), pci_get_bus(dev), pci_get_slot(dev), pci_get_function(dev)); pdev->bus = malloc(sizeof(*pdev->bus), M_DEVBUF, M_WAITOK | M_ZERO); @@ -1469,7 +1469,7 @@ linux_dma_pool_create(char *name, struct device *dev, size_t size, priv = dev->dma_priv; - pool = kzalloc(sizeof(*pool), GFP_KERNEL); + pool = kzalloc(sizeof(*pool), M_WAITOK); pool->pool_device = dev; pool->pool_entry_size = size; diff --git a/sys/compat/linuxkpi/common/src/linux_shmemfs.c b/sys/compat/linuxkpi/common/src/linux_shmemfs.c index 3c71d6495f4a..bf6a8cd775e9 100644 --- a/sys/compat/linuxkpi/common/src/linux_shmemfs.c +++ b/sys/compat/linuxkpi/common/src/linux_shmemfs.c @@ -48,8 +48,15 @@ linux_shmem_read_mapping_page_gfp(vm_object_t obj, int pindex, gfp_t gfp) struct page *page; int rv; - if ((gfp & GFP_NOWAIT) != 0) - panic("GFP_NOWAIT is unimplemented"); + /* + * Historically, GFP_KERNEL was the equivalent of M_WAITOK. But it was + * changed to a synonym of M_NOWAIT to allow allocations in + * non-sleepable code. + * + * However, there was an assertion here to make sure that `gfp` was + * never set to GFP_NOWAIT/M_NOWAIT. Do we need a specific handling of + * M_NOWAIT here? + */ VM_OBJECT_WLOCK(obj); rv = vm_page_grab_valid(&page, obj, pindex, VM_ALLOC_NORMAL | From nobody Fri Nov 24 17:31:55 2023 X-Original-To: dev-commits-src-main@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 4ScMVM6NMnz51dYc; Fri, 24 Nov 2023 17:31:55 +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 4ScMVM5xS3z4LJb; Fri, 24 Nov 2023 17:31:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847115; 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=Qd1BRslPKTZ5Zy2KL+VP9koRzdzgPGCTcDZ6t2L5eTo=; b=ZkgV6uHGwsb5/kHbvY4jemP3kF1TqanWX8c8TdpyajtHru9Dts7obDWbqm9O4+PN9XRORL S/f83jAt5s1RNyyT70fNnA6SbxpYFC5Qcfdm0H5iUvuRRm903KqCh6j31JJH/9Z7L11ug7 Q+D6yplrmIsris/T1UuPyi5WWsscwk3FakAZ2/VxtK5cfQapVbyj7iMIUPGUrRPRiJHj7H j3WWech57hfFZUkJpsbGVWaU6EmvUtZltfac7fl5O18KBEkpMo3hR7jo2UdCdDwTVPTM/P tPoCj3lzkVq26c/iV7WRK5dKe1o8ZZLrW7mRYakMWjDBQP+Yu+oV/izdHul9ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847115; 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=Qd1BRslPKTZ5Zy2KL+VP9koRzdzgPGCTcDZ6t2L5eTo=; b=JTXISYDab9kMJK0ajYnqDTNMdxeVy2WYVyEdDhQVypmIxMYH1awNH47EgoaVOI+UIHDYMF RKgtAMrMaSS6K40DOqbYUgV+H3UWkNbAcrkDZC5rSBdd8KJ558bziliowFpO7dAy8Y1njl WhYMKVQ22HHdZMpf6cJAaVcgYLWoSfFbt1ODvUi8GGfEoHTWA9alaz9gluTADJ062ahriR efaOumDwoZ72aIYxAUVvsu4fCyh4j2X+FijKlm/X6nmxurn1uQY7vvJULGmGKkjOUdamvh zVgFjUFO1aBtYgQ0FTgca9moDu242ZE7lA9CUlMJ2p3IUTcCbpqSw0qSW9WkGw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700847115; a=rsa-sha256; cv=none; b=io2LOmncELmemuSuPsHKsvu2Bk48JOpyJ2Hco8ehmITIc8rujgIaNKjpLWTjwl7/qaXqNl sqIkxpld+0zUMMik81yIL2CMxbUuiPMzHgo+lt0p58VoJHhnvauipEKIDTbsHx3l98qw3n Y8AhuCZipwmxisFs6y4CU2XnOAYr/PkzJSeqntYvS8MLfAULP0llnUWQXp9a/FG19pPYah 8zjWXXjxHsqYCJ5yMCW2wEa2pJM8f15ox1y1I2qCtxscPqXm/SdYagzaH2GJyP+iL+kBA+ ylKi1vTOFndnoQBaaCVsNAuTBgei34RpCXHmlvsSUjtXYjLcW7NEMVw94EiARA== 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 4ScMVM4HvBztw5; Fri, 24 Nov 2023 17:31:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHVtgW061793; Fri, 24 Nov 2023 17:31:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHVtg1061791; Fri, 24 Nov 2023 17:31:55 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:31:55 GMT Message-Id: <202311241731.3AOHVtg1061791@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 049e3fba04e8 - main - vt(4): Skip vt_flush() for nested panics List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 049e3fba04e82f840cc43080edade0ed415fee72 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=049e3fba04e82f840cc43080edade0ed415fee72 commit 049e3fba04e82f840cc43080edade0ed415fee72 Author: Jean-Sébastien Pédron AuthorDate: 2023-11-24 17:30:33 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-11-24 17:31:33 +0000 vt(4): Skip vt_flush() for nested panics [Why] If there is a problem with DRM drivers or in their integration with vt(4) and displaying something on the console triggers a panic, there is a high chance that displaying that panic will trigger another one, recursively. [How] If vt_flush() is called and it detects is is called resursively from another panic, it return immediately, doing nothing, to avoid the risk of triggering another panic. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D42056 --- sys/dev/vt/vt_core.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index c97cb80ca3f1..406472a8fbf6 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -274,6 +274,8 @@ SYSINIT(vt_update_static, SI_SUB_KMEM, SI_ORDER_ANY, vt_update_static, SYSINIT(vt_early_cons, SI_SUB_INT_CONFIG_HOOKS, SI_ORDER_ANY, vt_upgrade, &vt_consdev); +static bool inside_vt_flush = false; + /* Initialize locks/mem depended members. */ static void vt_update_static(void *dummy) @@ -1344,6 +1346,9 @@ vt_flush(struct vt_device *vd) int cursor_was_shown, cursor_moved; #endif + if (inside_vt_flush && KERNEL_PANICKED()) + return (0); + vw = vd->vd_curwindow; if (vw == NULL) return (0); @@ -1357,6 +1362,8 @@ vt_flush(struct vt_device *vd) vtbuf_lock(&vw->vw_buf); + inside_vt_flush = true; + #ifndef SC_NO_CUTPASTE cursor_was_shown = vd->vd_mshown; cursor_moved = (vd->vd_mx != vd->vd_mx_drawn || @@ -1414,10 +1421,12 @@ vt_flush(struct vt_device *vd) if (tarea.tr_begin.tp_col < tarea.tr_end.tp_col) { vd->vd_driver->vd_bitblt_text(vd, vw, &tarea); + inside_vt_flush = false; vtbuf_unlock(&vw->vw_buf); return (1); } + inside_vt_flush = false; vtbuf_unlock(&vw->vw_buf); return (0); } @@ -1444,6 +1453,9 @@ vtterm_pre_input(struct terminal *tm) { struct vt_window *vw = tm->tm_softc; + if (inside_vt_flush && KERNEL_PANICKED()) + return; + vtbuf_lock(&vw->vw_buf); } @@ -1452,6 +1464,9 @@ vtterm_post_input(struct terminal *tm) { struct vt_window *vw = tm->tm_softc; + if (inside_vt_flush && KERNEL_PANICKED()) + return; + vtbuf_unlock(&vw->vw_buf); vt_resume_flush_timer(vw, 0); } From nobody Fri Nov 24 17:31:56 2023 X-Original-To: dev-commits-src-main@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 4ScMVP09FSz51dYn; Fri, 24 Nov 2023 17:31:57 +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 4ScMVN6pZHz4LTv; Fri, 24 Nov 2023 17:31:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847117; 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=MoH+2MSOkNuUkPDacgIINTrZBj+wYgOrtAqpWx2q7Ko=; b=qCJhVeHGafYIbN+VEo7/g7fZ9UZYiJSwSBbZ65thf/zetVoxu5S41Cir5nin8oEYZYPFvF O/nn147vU1XoPryvOYBd8tXcjHpki1kPTVinORkfUEekx1ByWXw4LyrfV311egDQxAMulA giuOBvPxi4ZTYzWdLy9p+UTQH8jmr+pBeMv9c6yHKaPTA7sR3ocqXYUUiTdTB79ep98tjB qa80hmVIZlgTGUzeeAAynK9eRarxknXBM7UcdggovqDpIYJsttv3UlvdNbag9pnU5pr4qS bwWig8lANoOI3V+qDRZBa2z2069SC+VHzbgLEcI3io5gkOftQHpD4RP4t91xOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847117; 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=MoH+2MSOkNuUkPDacgIINTrZBj+wYgOrtAqpWx2q7Ko=; b=QJ4YQb16qaOqTlnCIvE4xcGOogPE/jJtq9HcN52pafhns3xsXC+ICxPuBFmPlawZUkJm/J Y8ZdNc2jfReddsnL7Y31LwFibXltGZgBV77wUMrk1zrtBwxJk+MBlomX12kwmgpA7317+8 jHe1pdQQdKIp4bpQUA2Id/dU+Vzk+WsNvl0oHLUJPVn71gm3S7gHyGMWrbluPMOS34pdcK tSulS/koMWxzrQGUkHC/3ZQv+80wzqpFkMempr03uS18IoTB6auXzlYsSGmuvK07IR+bD8 yOp3pXchujaAyrimqsJUPfWMiOe+uKJMCt5OLbwD2G+Ia5x/aqjpfCp1g9C7dQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700847117; a=rsa-sha256; cv=none; b=uu+KoNTjgBJb55R571GCkOBVl8Pna5wGzDGkVCqvgBK/O9b1TXUCVqNSNQUHMkSi4G21m0 6kUlmgoN1RhmfwZL4MV3LLeZFnznuePcciBTWRJMP0yv+LNAqovvjyjjkDM4eGafzhXukR GI+oNRGcNHSbGubjdLcpvpfnIve+Tjc6IVEzJBv/d3mAp8TSxOPdOfeGYy00Xw7tGwyTXk s5EDXYu9Xy/unyt3ZbDjehRSKQtq4BcKddwcke4SLtof7n/Y4I8uubsxqieaA2fZGm/0Xz DEbVzRUor8nGgNtujK9Sh7OlNDYFoPXEDhnH7HZXr4xxv3ZRz9IwQghlG4BudQ== 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 4ScMVN5KMGzv8s; Fri, 24 Nov 2023 17:31:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHVuHC061846; Fri, 24 Nov 2023 17:31:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHVuEI061843; Fri, 24 Nov 2023 17:31:56 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:31:56 GMT Message-Id: <202311241731.3AOHVuEI061843@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 24d6f256f825 - main - vt(4): Skip vt_window_switch() for nested panics List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 24d6f256f825e5d7f8ca6b5d16499f13614f9cdd Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=24d6f256f825e5d7f8ca6b5d16499f13614f9cdd commit 24d6f256f825e5d7f8ca6b5d16499f13614f9cdd Author: Jean-Sébastien Pédron AuthorDate: 2023-11-24 17:30:33 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-11-24 17:31:33 +0000 vt(4): Skip vt_window_switch() for nested panics [Why] The same protection was added to vt_flush() in the previous commit. We want the same one in vt_window_switch(): if e.g. the DRM driver panics while handling a call to vt_window_switch(), we don't want to recursively call vt_window_switch() again and trigger another panic. Reviewed by: imp, manu Approved by: imp, manu Differential Revision: https://reviews.freebsd.org/D42750 --- sys/dev/vt/vt_core.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index 406472a8fbf6..6d44c81181a3 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -275,6 +275,7 @@ SYSINIT(vt_early_cons, SI_SUB_INT_CONFIG_HOOKS, SI_ORDER_ANY, vt_upgrade, &vt_consdev); static bool inside_vt_flush = false; +static bool inside_vt_window_switch = false; /* Initialize locks/mem depended members. */ static void @@ -564,6 +565,11 @@ vt_window_switch(struct vt_window *vw) struct vt_window *curvw = vd->vd_curwindow; keyboard_t *kbd; + if (inside_vt_window_switch && KERNEL_PANICKED()) + return (0); + + inside_vt_window_switch = true; + if (kdb_active) { /* * When grabbing the console for the debugger, avoid @@ -575,13 +581,16 @@ vt_window_switch(struct vt_window *vw) */ if (curvw == vw) return (0); - if (!(vw->vw_flags & (VWF_OPENED|VWF_CONSOLE))) + if (!(vw->vw_flags & (VWF_OPENED|VWF_CONSOLE))) { + inside_vt_window_switch = false; return (EINVAL); + } vd->vd_curwindow = vw; vd->vd_flags |= VDF_INVALID; if (vd->vd_driver->vd_postswitch) vd->vd_driver->vd_postswitch(vd); + inside_vt_window_switch = false; return (0); } @@ -595,10 +604,12 @@ vt_window_switch(struct vt_window *vw) if ((kdb_active || KERNEL_PANICKED()) && vd->vd_driver->vd_postswitch) vd->vd_driver->vd_postswitch(vd); + inside_vt_window_switch = false; VT_UNLOCK(vd); return (0); } if (!(vw->vw_flags & (VWF_OPENED|VWF_CONSOLE))) { + inside_vt_window_switch = false; VT_UNLOCK(vd); return (EINVAL); } @@ -627,6 +638,7 @@ vt_window_switch(struct vt_window *vw) mtx_unlock(&Giant); DPRINTF(10, "%s(ttyv%d) done\n", __func__, vw->vw_number); + inside_vt_window_switch = false; return (0); } From nobody Fri Nov 24 17:31:57 2023 X-Original-To: dev-commits-src-main@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 4ScMVQ1Pzvz51Npr; Fri, 24 Nov 2023 17:31:58 +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 4ScMVQ0KKPz4LXb; Fri, 24 Nov 2023 17:31:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847118; 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=tkWLASMCM9kPBBAP8SRO1D8kvOTnVBacsKl+vcyRTaE=; b=Uss3/PeskkB17l6PTdMkj1Boj86xSSBygmLPtQKAqkzWjfN7CmOwgAEcduq8O11s3TNynQ FWShryjKbnXp71nIcpdEMfuqdG46CkaG19ISSVyI/tnopt1xIR85lRVV6ky0la3kMw7iMh iFjobt+cvwSW/tU0KMqEv0eL8hI66mjd4BA9P5qOuV4JJpoWjXULYKw/EviNtIhrV+LmWe s6Rw7K3jLP/sJjf7YSmJVGb5w9RVj4Y5gAM7hSaM6/7vyK+DSfLBoYuANuowT0U6B+A9n9 0AHV21sEF/ACHvDkE/7Fx0y1JOberSmmRl59w4hAQpAM5DkFwQSRcdQGPz5+0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847118; 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=tkWLASMCM9kPBBAP8SRO1D8kvOTnVBacsKl+vcyRTaE=; b=BNlLY94T2cJcshV51oi2D21SIvwdq3zd1e3g3N4m5PtmTnakb09lPAY717VtZPsPNMrjuh LbwJysl0fzuhIOrws3a89VgcyisvRakRyuC9m/St7CA3NwAJrg0HFossrTbMUu0WW+lmGg PlQ7o3cKuVzTr/rrH7x98DpEJP16vk5d4TNdTa0hIBjkA4MY/1/EwP8yp9utOj/Bk/UyC5 +ygfH0HE+cBqLf9E+vjvMF5ECsTyByvVSnw07HEuuPYJgl18H/Cgj+BURzIT/IxtkJDQ5a 3nLei00U7anooG+ZeCM8QvoAx9AQExLESeUdLBu/hTpC85x6P9kqpzTin84+mw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700847118; a=rsa-sha256; cv=none; b=YH/1mxt3MlxFSkAKnqLrC1bLK2+wqODmRwoxNY/My2dgOizGF8pLz7kybvnLkQW9xyCtY8 YyFLM0aZKp9b0XCma8r4VzxBp0jw09bFTLCygHOJkifxQVMzKi+ThJZmva8LeCA07W5bW/ qW4Ngc8Q9ZweCzZlXLVrk+oHfX/Tt5U0SqnV/nJ6D4lMUkZOVAJYkzNYSK6Fyjz0Q3RjyE rpegy7FAbeojehS3lLTKLwQ3ocuFFDPmFDDJ0HKCcYPF7rTILcOU5Vot2PgnKUN/JePasW 2n88SzpDCnKdKt7XZv+vpFdOVXDHnZZZpUmSDT80Sa1U150fMQZLRtdwdFYwRQ== 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 4ScMVP6M8sztq6; Fri, 24 Nov 2023 17:31:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHVvSJ061909; Fri, 24 Nov 2023 17:31:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHVv3N061906; Fri, 24 Nov 2023 17:31:57 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:31:57 GMT Message-Id: <202311241731.3AOHVv3N061906@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 162a2b858854 - main - vt(4): New bitblt_text variant making a copy before unlocking vt_buf List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 162a2b858854656ddd6b75d290be8a640ba8f324 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=162a2b858854656ddd6b75d290be8a640ba8f324 commit 162a2b858854656ddd6b75d290be8a640ba8f324 Author: Jean-Sébastien Pédron AuthorDate: 2023-11-24 17:30:34 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-11-24 17:31:33 +0000 vt(4): New bitblt_text variant making a copy before unlocking vt_buf [Why] In the DRM drivers and the integration with vt(4), we need to execute DRM code outside of the vtbuf_lock. The reason is that this DRM code acquires locks which can't be acquired when vtbuf_lock, an MTX_SPIN mutex, is already held. [How] A vt(4) backend can now set the `vd_bitblt_after_vtbuf_unlock` flag to true if it wants to be called outside of vt_buf_lock. In this case, vt(4) uses an internal version of bitblt_text that uses the `vd_drawn` arrays, plus a new `vd_pos_to_flush` array, to track characters to draw/refresh. This internal version then uses the backend's bitblt_bmp callback to draw the characters after vt_buf has been unlocked. Drawing borders and CPU logos is also deferred after the vt_buf lock is released for the same reason. We introduce another lock (a default mutex), only used when the `vd_bitblt_after_vtbuf_unlock` flag is set, to replace part the role of the vt_buf lock and manage concurrent calls to vt_flush(). The `SC_NO_CONSDRAWN` define is dropped because we now always need the `vd_drawn` arrays. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D42057 --- sys/dev/vt/vt.h | 19 ++++++ sys/dev/vt/vt_core.c | 180 +++++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 185 insertions(+), 14 deletions(-) diff --git a/sys/dev/vt/vt.h b/sys/dev/vt/vt.h index a21ecea999ec..56a28c0420c7 100644 --- a/sys/dev/vt/vt.h +++ b/sys/dev/vt/vt.h @@ -165,6 +165,9 @@ struct vt_device { term_char_t *vd_drawn; /* (?) Most recent char drawn. */ term_color_t *vd_drawnfg; /* (?) Most recent fg color drawn. */ term_color_t *vd_drawnbg; /* (?) Most recent bg color drawn. */ + + struct mtx vd_flush_lock; /* (?) vt_flush() lock. */ + bool *vd_pos_to_flush;/* (?) Positions to flush. */ }; #define VD_PASTEBUF(vd) ((vd)->vd_pastebuf.vpb_buf) @@ -175,6 +178,14 @@ struct vt_device { #define VT_UNLOCK(vd) mtx_unlock(&(vd)->vd_lock) #define VT_LOCK_ASSERT(vd, what) mtx_assert(&(vd)->vd_lock, what) +#define VT_FLUSH_LOCK(vd) \ + if ((vd)->vd_driver->vd_bitblt_after_vtbuf_unlock) \ + mtx_lock(&(vd)->vd_flush_lock) + +#define VT_FLUSH_UNLOCK(vd) \ + if ((vd)->vd_driver->vd_bitblt_after_vtbuf_unlock) \ + mtx_unlock(&(vd)->vd_flush_lock) + void vt_resume(struct vt_device *vd); void vt_resume_flush_timer(struct vt_window *vw, int ms); void vt_suspend(struct vt_device *vd); @@ -376,6 +387,14 @@ struct vt_driver { #define VD_PRIORITY_DUMB 10 #define VD_PRIORITY_GENERIC 100 #define VD_PRIORITY_SPECIFIC 1000 + + /* + * Should vd_bitblt_text() be called after unlocking vtbuf? If true, + * characters are copied before vd_bitblt_bmp() is called. + * + * This is only valid when the default bitblt_text callback is used. + */ + bool vd_bitblt_after_vtbuf_unlock; }; /* diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index 6d44c81181a3..3e4db9a1ba30 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -202,11 +202,10 @@ SET_DECLARE(vt_drv_set, struct vt_driver); static struct terminal vt_consterm; static struct vt_window vt_conswindow; -#ifndef SC_NO_CONSDRAWN static term_char_t vt_consdrawn[PIXEL_HEIGHT(VT_FB_MAX_HEIGHT) * PIXEL_WIDTH(VT_FB_MAX_WIDTH)]; static term_color_t vt_consdrawnfg[PIXEL_HEIGHT(VT_FB_MAX_HEIGHT) * PIXEL_WIDTH(VT_FB_MAX_WIDTH)]; static term_color_t vt_consdrawnbg[PIXEL_HEIGHT(VT_FB_MAX_HEIGHT) * PIXEL_WIDTH(VT_FB_MAX_WIDTH)]; -#endif +static bool vt_cons_pos_to_flush[PIXEL_HEIGHT(VT_FB_MAX_HEIGHT) * PIXEL_WIDTH(VT_FB_MAX_WIDTH)]; struct vt_device vt_consdev = { .vd_driver = NULL, .vd_softc = NULL, @@ -228,11 +227,11 @@ struct vt_device vt_consdev = { .vd_mcursor_bg = TC_BLACK, #endif -#ifndef SC_NO_CONSDRAWN .vd_drawn = vt_consdrawn, .vd_drawnfg = vt_consdrawnfg, .vd_drawnbg = vt_consdrawnbg, -#endif + + .vd_pos_to_flush = vt_cons_pos_to_flush, }; static term_char_t vt_constextbuf[(_VTDEFW) * (VBF_DEFAULT_HISTORY_SIZE)]; static term_char_t *vt_constextbufrows[VBF_DEFAULT_HISTORY_SIZE]; @@ -292,6 +291,7 @@ vt_update_static(void *dummy) printf("VT: init without driver.\n"); mtx_init(&main_vd->vd_lock, "vtdev", NULL, MTX_DEF); + mtx_init(&main_vd->vd_flush_lock, "vtdev flush", NULL, MTX_DEF); cv_init(&main_vd->vd_winswitch, "vtwswt"); } @@ -1348,6 +1348,122 @@ vt_set_border(struct vt_device *vd, const term_rect_t *area, vd->vd_height - 1, 1, c); } +static void +vt_flush_to_buffer(struct vt_device *vd, + const struct vt_window *vw, const term_rect_t *area) +{ + unsigned int col, row; + term_char_t c; + term_color_t fg, bg; + size_t z; + + for (row = area->tr_begin.tp_row; row < area->tr_end.tp_row; ++row) { + for (col = area->tr_begin.tp_col; col < area->tr_end.tp_col; + ++col) { + z = row * PIXEL_WIDTH(VT_FB_MAX_WIDTH) + col; + if (z >= PIXEL_HEIGHT(VT_FB_MAX_HEIGHT) * + PIXEL_WIDTH(VT_FB_MAX_WIDTH)) + continue; + + c = VTBUF_GET_FIELD(&vw->vw_buf, row, col); + vt_determine_colors(c, + VTBUF_ISCURSOR(&vw->vw_buf, row, col), &fg, &bg); + + if (vd->vd_drawn && (vd->vd_drawn[z] == c) && + vd->vd_drawnfg && (vd->vd_drawnfg[z] == fg) && + vd->vd_drawnbg && (vd->vd_drawnbg[z] == bg)) { + vd->vd_pos_to_flush[z] = false; + continue; + } + + vd->vd_pos_to_flush[z] = true; + + if (vd->vd_drawn) + vd->vd_drawn[z] = c; + if (vd->vd_drawnfg) + vd->vd_drawnfg[z] = fg; + if (vd->vd_drawnbg) + vd->vd_drawnbg[z] = bg; + } + } +} + +static void +vt_bitblt_buffer(struct vt_device *vd, const struct vt_window *vw, + const term_rect_t *area) +{ + unsigned int col, row, x, y; + struct vt_font *vf; + term_char_t c; + term_color_t fg, bg; + const uint8_t *pattern; + size_t z; + + vf = vw->vw_font; + + for (row = area->tr_begin.tp_row; row < area->tr_end.tp_row; ++row) { + for (col = area->tr_begin.tp_col; col < area->tr_end.tp_col; + ++col) { + x = col * vf->vf_width + + vw->vw_draw_area.tr_begin.tp_col; + y = row * vf->vf_height + + vw->vw_draw_area.tr_begin.tp_row; + + z = row * PIXEL_WIDTH(VT_FB_MAX_WIDTH) + col; + if (z >= PIXEL_HEIGHT(VT_FB_MAX_HEIGHT) * + PIXEL_WIDTH(VT_FB_MAX_WIDTH)) + continue; + if (!vd->vd_pos_to_flush[z]) + continue; + + c = vd->vd_drawn[z]; + fg = vd->vd_drawnfg[z]; + bg = vd->vd_drawnbg[z]; + + pattern = vtfont_lookup(vf, c); + vd->vd_driver->vd_bitblt_bmp(vd, vw, + pattern, NULL, vf->vf_width, vf->vf_height, + x, y, fg, bg); + } + } + +#ifndef SC_NO_CUTPASTE + if (!vd->vd_mshown) + return; + + term_rect_t drawn_area; + + drawn_area.tr_begin.tp_col = area->tr_begin.tp_col * vf->vf_width; + drawn_area.tr_begin.tp_row = area->tr_begin.tp_row * vf->vf_height; + drawn_area.tr_end.tp_col = area->tr_end.tp_col * vf->vf_width; + drawn_area.tr_end.tp_row = area->tr_end.tp_row * vf->vf_height; + + if (vt_is_cursor_in_area(vd, &drawn_area)) { + vd->vd_driver->vd_bitblt_bmp(vd, vw, + vd->vd_mcursor->map, vd->vd_mcursor->mask, + vd->vd_mcursor->width, vd->vd_mcursor->height, + vd->vd_mx_drawn + vw->vw_draw_area.tr_begin.tp_col, + vd->vd_my_drawn + vw->vw_draw_area.tr_begin.tp_row, + vd->vd_mcursor_fg, vd->vd_mcursor_bg); + } +#endif +} + +static void +vt_draw_decorations(struct vt_device *vd) +{ + struct vt_window *vw; + const teken_attr_t *a; + + vw = vd->vd_curwindow; + + a = teken_get_curattr(&vw->vw_terminal->tm_emulator); + vt_set_border(vd, &vw->vw_draw_area, a->ta_bgcolor); + + if (vt_draw_logo_cpus) + vtterm_draw_cpu_logos(vd); +} + static int vt_flush(struct vt_device *vd) { @@ -1357,6 +1473,7 @@ vt_flush(struct vt_device *vd) #ifndef SC_NO_CUTPASTE int cursor_was_shown, cursor_moved; #endif + bool needs_refresh; if (inside_vt_flush && KERNEL_PANICKED()) return (0); @@ -1372,8 +1489,9 @@ vt_flush(struct vt_device *vd) if (((vd->vd_flags & VDF_TEXTMODE) == 0) && (vf == NULL)) return (0); - vtbuf_lock(&vw->vw_buf); + VT_FLUSH_LOCK(vd); + vtbuf_lock(&vw->vw_buf); inside_vt_flush = true; #ifndef SC_NO_CUTPASTE @@ -1417,29 +1535,63 @@ vt_flush(struct vt_device *vd) vtbuf_undirty(&vw->vw_buf, &tarea); /* Force a full redraw when the screen contents might be invalid. */ + needs_refresh = false; if (vd->vd_flags & (VDF_INVALID | VDF_SUSPENDED)) { - const teken_attr_t *a; - + needs_refresh = true; vd->vd_flags &= ~VDF_INVALID; - a = teken_get_curattr(&vw->vw_terminal->tm_emulator); - vt_set_border(vd, &vw->vw_draw_area, a->ta_bgcolor); vt_termrect(vd, vf, &tarea); if (vd->vd_driver->vd_invalidate_text) vd->vd_driver->vd_invalidate_text(vd, &tarea); - if (vt_draw_logo_cpus) - vtterm_draw_cpu_logos(vd); } if (tarea.tr_begin.tp_col < tarea.tr_end.tp_col) { - vd->vd_driver->vd_bitblt_text(vd, vw, &tarea); - inside_vt_flush = false; - vtbuf_unlock(&vw->vw_buf); + if (vd->vd_driver->vd_bitblt_after_vtbuf_unlock) { + /* + * When `vd_bitblt_after_vtbuf_unlock` is set to true, + * we first remember the characters to redraw. They are + * already copied to the `vd_drawn` arrays. + * + * We then unlock vt_buf and proceed with the actual + * drawing using the backend driver. + */ + vt_flush_to_buffer(vd, vw, &tarea); + vtbuf_unlock(&vw->vw_buf); + vt_bitblt_buffer(vd, vw, &tarea); + + if (needs_refresh) + vt_draw_decorations(vd); + + /* + * We can reset `inside_vt_flush` after unlocking vtbuf + * here because we also hold vt_flush_lock in this code + * path. + */ + inside_vt_flush = false; + } else { + /* + * When `vd_bitblt_after_vtbuf_unlock` is false, we use + * the backend's `vd_bitblt_text` callback directly. + */ + vd->vd_driver->vd_bitblt_text(vd, vw, &tarea); + + if (needs_refresh) + vt_draw_decorations(vd); + + inside_vt_flush = false; + vtbuf_unlock(&vw->vw_buf); + } + + VT_FLUSH_UNLOCK(vd); + return (1); } inside_vt_flush = false; vtbuf_unlock(&vw->vw_buf); + + VT_FLUSH_UNLOCK(vd); + return (0); } From nobody Fri Nov 24 17:31:58 2023 X-Original-To: dev-commits-src-main@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 4ScMVR4ny5z51dZ4; Fri, 24 Nov 2023 17:31:59 +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 4ScMVR2Gfwz4Lb1; Fri, 24 Nov 2023 17:31:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847119; 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=Wd0s+OthZzTByy8kftF9njLP8xf7M78swoI2TnWFk84=; b=Byy4cp6sdOGdXe9M1GSCLPZEwFjhlTRRRCnWcbrz1D/wa19EoghrEQ5BZ1UlnW0eyktYzP z8i8gIVKgFuadO+ydtjMN4bmxERyWt048HqTSYvXolgFdgFqgJtCVpQvyKxKePzA9ykoCK KcB93hx9dm+u2KVQOfogxtvrsX891eU3BmGnmVvghIU7xui9XPWuFUJH3EdCIKPMNuMXNd uk3xp0BCINPBl/WEqPXEJT7UIG5fAF3dUmx2VKDPVsFwcCnLwGj2Z3mxpV3CR1Q9OtX3Os z29Faw/paB4kU559R3EWKSIYceiKieoixVT4pKAuzBhqk+FYtFB9YtgVUhMF7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847119; 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=Wd0s+OthZzTByy8kftF9njLP8xf7M78swoI2TnWFk84=; b=YAFlf8iWgw9uxtAbqBKLXWMQ671nOfZWCaWyWtXVj8mcGRLvK695gHvCJg0KgvbyxUgUpw b1eljeBxWmHIFL4NQC+6zsXXOkvKzW+ZwztHmZzjVqTXWm0TrGlHtJJU98/sqts7H+csZS ZbS9OuUClaYhBaoRFzbli7+Q234ddoTT3YlB5bxQK5Ju44yN+Gczpsov8GjGgqo/8cuM53 xuhhfzvDQxljW7fz19zrpP+LQq5Ii6AQKOewdUhrXHpP+OD7/NwbimHpx2yNlzFkadxmgB aBCvkGEeGyWovd2HX5zQQrzzGuLbFOn/Hfu8711GY9BXFB0N/JtJDOL96ir53g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700847119; a=rsa-sha256; cv=none; b=yqOy0h8l5ShaGnmWiv9hRbFlLKj0Soy2cbdYBnItnXJI+svfPbcVWIUu3Bn3grU98cUvfG O8tLCiylT9uKk6nsu45ucp8yse2yNFkc0ryfXgNa53DaC73UQfs8e9RhkiJAP7cdmhHcWP OQi+J5x2ZAh25Mt6dRe0O6XUeaSRL03Esn2JxCOaNh5zOyL+WJC36DJVBYM+pbOD3aihR8 TSZ7bd3NXTQih21v7BLRdMkEGEPJBuc7H42Fa/jENQMpCIG+grtbE/liN8A9DpLwTQi8QE Sj7t1C+pnzYN79ror9BK0dta+xpV6IjSNYi7GpTZvtEVE6pcNgsN6Jc5ijeu8Q== 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 4ScMVR0JqKztx5; Fri, 24 Nov 2023 17:31:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHVwFt061969; Fri, 24 Nov 2023 17:31:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHVw0w061966; Fri, 24 Nov 2023 17:31:58 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:31:58 GMT Message-Id: <202311241731.3AOHVw0w061966@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 16b13bd3fd63 - main - vt(4): Call vd_postswitch callback regardless of the current window List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 16b13bd3fd63be56653296ba54956f5526918445 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=16b13bd3fd63be56653296ba54956f5526918445 commit 16b13bd3fd63be56653296ba54956f5526918445 Author: Jean-Sébastien Pédron AuthorDate: 2023-11-24 17:30:34 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-11-24 17:31:33 +0000 vt(4): Call vd_postswitch callback regardless of the current window [Why] We want the same behavior at the backend level, regardless if we need to switch the current window or not. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D42751 --- sys/dev/vt/vt_core.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index 3e4db9a1ba30..bfd99665be4a 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -579,8 +579,6 @@ vt_window_switch(struct vt_window *vw) * debugger entry/exit to be equivalent to * successfully try-locking here. */ - if (curvw == vw) - return (0); if (!(vw->vw_flags & (VWF_OPENED|VWF_CONSOLE))) { inside_vt_window_switch = false; return (EINVAL); From nobody Fri Nov 24 17:32:00 2023 X-Original-To: dev-commits-src-main@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 4ScMVS2Z6nz51Npw; Fri, 24 Nov 2023 17:32:00 +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 4ScMVS1yBRz4LQG; Fri, 24 Nov 2023 17:32:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847120; 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=KIqIrAAZIJoGddyo7ZQ2ADs0onw/G29dYNmELKW9iXo=; b=v8Z0IDrl5KAbPMHpN7fiut9AcmDalBtnm7pLKlgbM3RtGC3IvDZMbTHtv8g/UK1l5PtZha /Jj0DffbzrjMhSIVIT4uf5qezSXb/iejaOOyuNtGLTmF+rf/Zl//gzR8YWjrKon7dmZY5z s65l1ik4cpIYlcu7NYdb2c1l+FUOI3UIczgYgHrTJ7tuQK/FRmzmNsOAx/lNEDtKcp8qbw 1PoC8wcxzlkUhaitP3zVd+mgyyNsRJ49PtPdr1LCKPZKXHCewSUQIDbX+3onV/zrbR5MvY AYPUkuqh5SgCEWmXjGROycOI6yy+eXXZPIjH9yJLahmu5I8ykeBRoucwQisB5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700847120; 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=KIqIrAAZIJoGddyo7ZQ2ADs0onw/G29dYNmELKW9iXo=; b=lSKOaOoIxkths5Gkv+rFaDksZ6HJ/5g8tufxw9CR9/1YKEPofV/d89TkXNgwKB7OHqk/ha zxEzUjsfkvdAYQS/tsSPNqSuMrhMlcqyuJslcybY3lyEHfUZFAcdjVTpSoS/B+r5NqTc/l aL+yrq52RJ3UTsavqkv9acbxPGLmkALq+HgrtoYqM6euOeWe+7+Y8b40S37TgwrVw7R3Lx UBF9Zae96MQDaXHXo4QBQrprZH+tFBIHoIxAM+H/4CXs3XPrLhboPfz704P7rgHAGbz0fT 4IaYoUI/U+aI/qhPOYnLPK8GiPclX5CHDxEu5/bJagED3D5U0zzTgyU7jUonuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700847120; a=rsa-sha256; cv=none; b=I4rDHu8QCw+KhcrY8jYyMRl55JZplgAJ/WBcBD7JvvmuMU5iJ2Qw5Mzrd+6/dSUTPP3ivT byV1LFWJ8hcFkU+SBBO9nFywiqn61OoxFu8XmkgEq7tEVhU//Sn+zC6KZWbYXhTYYSkdF8 5p6cBwx11vza6gbJSYfhmED692x3TKS5vU6d2zFTooWg5wU2xikllj097q8PDhivVB0F8s 3G/T/l1LjQWrFMuBb8DAXOSIPR25g48lEzd2YEn2EH2IHuHkPZhCDcHqA9JXQd3LdblnS4 RkpN42uSzUg2mLMROBVHCGDUPFYN3p6tsxLv4vk/x9va7E3+v3v8x/21IbVwNA== 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 4ScMVS10zTztx6; Fri, 24 Nov 2023 17:32:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOHW0pq062922; Fri, 24 Nov 2023 17:32:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOHW0B9062919; Fri, 24 Nov 2023 17:32:00 GMT (envelope-from git) Date: Fri, 24 Nov 2023 17:32:00 GMT Message-Id: <202311241732.3AOHW0B9062919@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: f18b3ce0b7be - main - vt(4): Always call vt_window_switch() in vtterm_cnungrab() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f18b3ce0b7be0b24a743ec59077ca8e7929a353c Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=f18b3ce0b7be0b24a743ec59077ca8e7929a353c commit f18b3ce0b7be0b24a743ec59077ca8e7929a353c Author: Jean-Sébastien Pédron AuthorDate: 2023-11-24 17:30:35 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-11-24 17:31:33 +0000 vt(4): Always call vt_window_switch() in vtterm_cnungrab() [Why] This ensures that vtterm_cnungrab() is the mirror of vtterm_cngrab(). And the latter always call vt_window_switch() and thus the backend's vd_postswitch(). This makes sure that whatever the backend did during vtterm_cngrab(), it can undo it during vtterm_cnungrab(). Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D42752 --- sys/dev/vt/vt_core.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index bfd99665be4a..4a1031f1aa69 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -2046,7 +2046,7 @@ static void vtterm_cnungrab(struct terminal *tm) { struct vt_device *vd; - struct vt_window *vw; + struct vt_window *vw, *grabwindow; vw = tm->tm_softc; vd = vw->vw_device; @@ -2055,10 +2055,19 @@ vtterm_cnungrab(struct terminal *tm) if (vtterm_cnungrab_noswitch(vd, vw) != 0) return; - if (!cold && vd->vd_grabwindow != vw) - vt_window_switch(vd->vd_grabwindow); - + /* + * We set `vd_grabwindow` to NULL before calling vt_window_switch() + * because it allows the underlying vt(4) backend to distinguish a + * "grab" from an "ungrab" of the console. + * + * This is used by `vt_drmfb` in drm-kmod to call either + * fb_debug_enter() or fb_debug_leave() appropriately. + */ + grabwindow = vd->vd_grabwindow; vd->vd_grabwindow = NULL; + + if (!cold) + vt_window_switch(grabwindow); } static void From nobody Fri Nov 24 18:21:22 2023 X-Original-To: dev-commits-src-main@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 4ScNbT02xVz524sJ; Fri, 24 Nov 2023 18:21:25 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScNbS55Ljz4fXZ; Fri, 24 Nov 2023 18:21:24 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850084; 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: in-reply-to:in-reply-to:references:references; bh=vN6ppuuqo2eMelQU+KqVIy0u0gQe3DySCPDvDmx+A5c=; b=VqaBS/PGuKDNM2cewisie7fGjP056qla+nzLz0fA7ArMgCFjNHfZA050fGhMHI3c0XT+3B OCDaU2M1RQuv+5W2MaxKIpcMMJR7iuKk76K7MWrKHdritMKHhV+SjZCIuVMJghkhDBZrq3 GUqs6ZyzgkmfrkN6HcQk466BMT0ipDvEwLjBoqCDs5e+B5TUNeHxPTPT8NQcKMOQtWUkeo 4JWnYYcLX3k6tUCMWh3pj9OMju086deOw8n+dwB1PfruWrbsrhsQFehUgrF0XdrTEoTHH7 z+R1i+wKqDn+gsPUmRqXFjwD9YWrmSp1P8uGvZT6O9b3wxXaEwBQF4OlVCZHJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850084; 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: in-reply-to:in-reply-to:references:references; bh=vN6ppuuqo2eMelQU+KqVIy0u0gQe3DySCPDvDmx+A5c=; b=qGObOTq/iRRVuSr0ypbAMfQ2tKwLspqiHQKJzf/a/EEjClM73iyRb7HuL7uQLhRv88NfDR k/ML084K0mUOTRNQG9EYEXwbuOEFl/3u1ofeUUPkia79Z5B1yJqPdbEP7K3aEiClAskE0v nJVu6GevLIiIdCXxEF6NXZyfa2YJ+LtwrtFgV/U/qMl4MxM45wARSvi+lQ4neWpUwTYzCM D4UfPJrKfYBjfPrWs2HFsC4GI9bzRlxI29der7AjFSv2Ir78as2gPzJu992/nawI5uJ5Nb nSYenuLcFGNiFurValI1mu7Qcdaqfsw7jYo6URaoRXIUIltEq++PhkMSnwYMbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700850084; a=rsa-sha256; cv=none; b=WtJVYSUu/kaq22PvehCvPYep+pxKE23ewIyxenMB6ME835dGFk9xa6NxEqzHET9no2ZBjC zeTXz8Q9uFSUQGONGAmiyjbSnRseGSQwByKKW+fccfOKe0/Y5I0KjeZmqxfeTpAg2xPonD mBtqXuQXIcRcGrKBQxfOtQDp3rJ2bD7ridb14VT9SRYj4m5a/S/hEe+3P3yy11jW0pvJvu Qa0pgkDuijhc0cKYwTWM8120luzYKY/O9+frtgs0SYAs7G/o6LrWhaUfuLDqwv+itO6lQJ dL8zExrBvRxAdXvQewFEFotvb6TyVY9UXtpTRNYe0yVtYonOJ8KKVUmZpulc0Q== Received: from [IPV6:2601:648:8384:fd00:b51f:602b:c1d1:8fc9] (unknown [IPv6:2601:648:8384:fd00:b51f:602b:c1d1:8fc9]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ScNbS1Cqmz466; Fri, 24 Nov 2023 18:21:24 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: Date: Fri, 24 Nov 2023 10:21:22 -0800 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function Content-Language: en-US To: Mitchell Horne , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202311231707.3ANH758D008755@gitrepo.freebsd.org> <48b90d6b-5772-4aba-8948-bcf8b50c9b5b@freebsd.org> From: John Baldwin In-Reply-To: <48b90d6b-5772-4aba-8948-bcf8b50c9b5b@freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/23/23 9:41 AM, Mitchell Horne wrote: > > > On 11/23/23 13:07, John Baldwin wrote: >> The branch main has been updated by jhb: >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=19f073c612afa0111d216e5ccab9525bfc97ec32 >> >> commit 19f073c612afa0111d216e5ccab9525bfc97ec32 >> Author: John Baldwin >> AuthorDate: 2023-11-23 17:06:24 +0000 >> Commit: John Baldwin >> CommitDate: 2023-11-23 17:06:24 +0000 >> >> new-bus: Add resource_validate_map_request function >> >> This helper function for BUS_MAP_RESOURCE performs common argument >> validation. >> >> Reviewed by: imp >> Differential Revision: https://reviews.freebsd.org/D42723 >> --- >> sys/kern/subr_bus.c | 31 +++++++++++++++++++++++++++++++ >> sys/sys/bus.h | 6 +++++- >> 2 files changed, 36 insertions(+), 1 deletion(-) >> >> diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c >> index 648394abd026..80fe182eab56 100644 >> --- a/sys/kern/subr_bus.c >> +++ b/sys/kern/subr_bus.c >> @@ -2715,6 +2715,37 @@ resource_init_map_request_impl(struct resource_map_request *args, size_t sz) >> args->memattr = VM_MEMATTR_DEVICE; >> } >> >> +int >> +resource_validate_map_request(struct resource *r, >> + struct resource_map_request *in, struct resource_map_request *out, >> + rman_res_t *startp, rman_res_t *lengthp) > > Can the function be given a top-level comment stating its purpose? This > file does a really good job providing this for the majority of its > public functions. > > Sorry to ask post-commit, but I did not see the review. Sure. I also hope to write a manpage for bus_generic_rl_* (and bus_get_resource_list) along with a second manpage for bus_generic_rman_* (and bus_get_rman) describing when they should be used. A manpage for resource_list_* might also be nice to write, but possibly a bit more work. -- John Baldwin From nobody Fri Nov 24 18:32:40 2023 X-Original-To: dev-commits-src-main@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 4ScNrS3nmFz529vb; Fri, 24 Nov 2023 18:32:40 +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 4ScNrS2r6Rz3Fb1; Fri, 24 Nov 2023 18:32:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850760; 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=c2YNOcp9XzXdtGkJ9kMc063keeqqZepJhdaIOz7PRIE=; b=KHN1SpYqFaQ5ysd24kOJlnGhCbP3xYZuCH8L0u+ZKWgZtnP6AHwkO5ea7eva+NV67mtw+W sIDp0H3Rd3EWCS8JKghYHYTsIVLFC93cPe7nLKR01IBgyq06CudOoz/Keci47lgG6CLN0/ +9grZkgdJCd5fQJ/WXugBp0L6lqfy5LAUUXjYbfbPsZlvLgI9Qtovn8j4oXgIr6BC8Jfqv LW1IgF+/+BOMA3IvLf1lIjm7QcvURVfKwzJuVu8Mexd1NY2zBkLsBkpNergMx6PK7ipDKJ kh5VMbzM6QfsVEmLyk2142dr7lBpOZwSKz4j6lhe/f5dPP2+gEVDQFIEI0d3ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850760; 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=c2YNOcp9XzXdtGkJ9kMc063keeqqZepJhdaIOz7PRIE=; b=qQMv2QU19R0WXeZ+hdXk7IbxiTAYbO6YBp00gq6ld5C0yLFuonr+FWxs4mrBDLS48D+WUq t1kGRMm4pA8SCby992uKGYl39K4pUcU0FnVzt/dWenzGxpndtTWyoLLXRAw2wk7aj4kaCM lJDur6obPuiS0kuOGyfJJoWsnQMAJlnYA/JW9VJ7vgAyFsZvnoGmJZPQfE4RiPRcovV4hs LMjtOsWwfd4yAAtuU21lHByigDCs44wN7tc9pYVn7iFNSdv8dSsO5dXAehgX7sHFCq9b0q d1+BToQ9MViRAxfqNxvz7nhFXaOswB2YL1UDDp7rTQPejh82o81djtvhLYRcvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700850760; a=rsa-sha256; cv=none; b=VO+Je9qHzK8y5ZgWdV+byvsU51qNj5jR889/WnNO0l/xoH7hPTTzHuObqNsGC4kODOL1Al BDbVKO7v+qKfQ1iN7ZLsuQkMKqVKaWdBSpKEGByBYZhuePMlpJU/cgPjHxOMqveaQ4dF7M /5r/axJRGcFioDjMZC4UY1hyEg/L+9K1AyTFoA1EyCt3UVWfxD6T5INbuORyYp7B+o9FID dlSNqLxpzdVRK3cWEGJFXIkhbjQdqFy69Su5fs89rS5ZABpvCyJ8rCk2HNwl8Z1+eKefwW WRm0jzCoKWurdsBqJltbvNlhi4WDs3wLCVnXujwXjoXaGjodSRYJmZeFXyLs9g== 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 4ScNrS1ws5zwlw; Fri, 24 Nov 2023 18:32:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOIWeZP068224; Fri, 24 Nov 2023 18:32:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOIWeFS068221; Fri, 24 Nov 2023 18:32:40 GMT (envelope-from git) Date: Fri, 24 Nov 2023 18:32:40 GMT Message-Id: <202311241832.3AOIWeFS068221@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 21795c374ace - main - stand: Retire setting hw.eisa_slots. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 21795c374aceb685dbdb1bd18c7a5c41c3cf0baf Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=21795c374aceb685dbdb1bd18c7a5c41c3cf0baf commit 21795c374aceb685dbdb1bd18c7a5c41c3cf0baf Author: Warner Losh AuthorDate: 2023-11-24 17:58:44 +0000 Commit: Warner Losh CommitDate: 2023-11-24 17:58:44 +0000 stand: Retire setting hw.eisa_slots. When the eisa code was removed in 2017, prior to the stable/12 branch, setting hw.eisa_slots became a nop. The oldest supported branch doesn't have eisa at all. The need to set it manually on boot disappeared largely by 2000... Sponsored by: Netflix --- stand/forth/menu-commands.4th | 2 -- stand/lua/core.lua | 2 -- stand/lua/core.lua.8 | 1 - 3 files changed, 5 deletions(-) diff --git a/stand/forth/menu-commands.4th b/stand/forth/menu-commands.4th index decf3fdf6fa4..8121272114d0 100644 --- a/stand/forth/menu-commands.4th +++ b/stand/forth/menu-commands.4th @@ -127,7 +127,6 @@ also menu-namespace also menu-command-helpers s" set hw.ata.ata_dma=0" evaluate s" set hw.ata.atapi_dma=0" evaluate s" set hw.ata.wc=0" evaluate - s" set hw.eisa_slots=0" evaluate s" set kern.eventtimer.periodic=1" evaluate s" set kern.geom.part.check_integrity=0" evaluate ; @@ -137,7 +136,6 @@ also menu-namespace also menu-command-helpers s" hw.ata.ata_dma" unsetenv s" hw.ata.atapi_dma" unsetenv s" hw.ata.wc" unsetenv - s" hw.eisa_slots" unsetenv s" kern.eventtimer.periodic" unsetenv s" kern.geom.part.check_integrity" unsetenv ; diff --git a/stand/lua/core.lua b/stand/lua/core.lua index f4a2815769c9..4c121319eb36 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -177,7 +177,6 @@ function core.setSafeMode(safe_mode) loader.setenv("hw.ata.ata_dma", "0") loader.setenv("hw.ata.atapi_dma", "0") loader.setenv("hw.ata.wc", "0") - loader.setenv("hw.eisa_slots", "0") loader.setenv("kern.eventtimer.periodic", "1") loader.setenv("kern.geom.part.check_integrity", "0") else @@ -185,7 +184,6 @@ function core.setSafeMode(safe_mode) loader.unsetenv("hw.ata.ata_dma") loader.unsetenv("hw.ata.atapi_dma") loader.unsetenv("hw.ata.wc") - loader.unsetenv("hw.eisa_slots") loader.unsetenv("kern.eventtimer.periodic") loader.unsetenv("kern.geom.part.check_integrity") end diff --git a/stand/lua/core.lua.8 b/stand/lua/core.lua.8 index 61eab6fe24f6..f0f27ee5ae13 100644 --- a/stand/lua/core.lua.8 +++ b/stand/lua/core.lua.8 @@ -127,7 +127,6 @@ Sets or unsets .Ev hw.ata.ata_dma , .Ev hw.ata.atapi_dma , .Ev hw.ata.wc , -.Ev hw.eisa_slots , .Ev kern.eventtimer.periodic , and .Ev kern.geom.part.check_integrity . From nobody Fri Nov 24 18:32:41 2023 X-Original-To: dev-commits-src-main@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 4ScNrT5MJLz52B3r; Fri, 24 Nov 2023 18:32:41 +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 4ScNrT3srYz3FJW; Fri, 24 Nov 2023 18:32:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850761; 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=KQhW2knvOHnN3s2PxrzcTFExdbE6IibhIkkEdeMjhlk=; b=kxuHkDI17ZDE3AP6jMxVbS3aYNyGFM+igN406iBtUAjU3nU2R35g7XmrMJ69EBbpW1h14o QmmizSbqn+tcTPYGnuK6NidkSJa7pfH+eImlpe6wCAguafs4PhOwamco0cKkOyM5KX+ra6 IT2F06KI1LWe6yN7ZXVrRaPxREvmzrzzUMMnSUboEepa+VM50Jb/Px8eLcg4Ck0AAnso3O tUrIpWdfssBtcJOp+BMEUVm0elM5Q4iYh8wiYue9np4MjFkaUPg4O+BXRTpMWVsO7TmLO3 VUZUPEsTqAxZplcj2n3jGPFYBSn1yzNrvYwqmYU/9Al/2Ux04SvJKSIXf2wb5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850761; 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=KQhW2knvOHnN3s2PxrzcTFExdbE6IibhIkkEdeMjhlk=; b=jz8sUa3QZ0zGCouH0hcI4Z7jMFn1I9JB7oZ40YOUOImzlLdEYfBatsWTJVqYAmE8iiz/Oi gpfROrM6Vh4RvEQ0qaImfxqWOQ5w3xx5LCItSooVFjcEz4++pEX5jlaizy3O988iHFc4fD HUFHZ16l43mDpEZf0qCvNFEUOF0+RI9NhTTzaTbXaTsjZfpAigRUAEr+4yfXOGMnDz4dAH Bg7L0FnWMvGRXwDwQmCSjW/ErrKVYDnNepGYJr05FNRGCJh1Y43RiY1ocbTmmbK25yp4Yi otlqc6Drw28+A2oKxwOeVgjxWEa9fS5+P7Xh8UsMU/YPbfPL7K9Kwui1/WfI5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700850761; a=rsa-sha256; cv=none; b=Iyf0eDBkT4svJRIE9n/bzUD735qDQTjNp4Yxop4OdqdrZ6MKcu642GJjR0ERtKNWKHKUBf X6S+SVCP6hhiI2a4NKsp1vPtE45/SPvTNnpHth/fry0ADR7RGMGoLz1GnTwsn1W5R39RJZ ZSL91XBhT1fwNQ9v7Z+uJ1w4cFd0JB0szQxKEnL5IJpatekAI7mhPoyOggC0VYuLLDIbNg JIzH72/fsZoG9jF7C8FusaqXezGqVB7djPqtGZIcI/G3KTh5Yritioo6FevAeFdoUOV4lT j+RBFc8ql/sLgsOis/Jcc32wkVAuNahkiLcqsXe75Xp7AU4KvEfgz7bDlL/66g== 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 4ScNrT2xzTzwpd; Fri, 24 Nov 2023 18:32:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOIWfue068270; Fri, 24 Nov 2023 18:32:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOIWfvs068267; Fri, 24 Nov 2023 18:32:41 GMT (envelope-from git) Date: Fri, 24 Nov 2023 18:32:41 GMT Message-Id: <202311241832.3AOIWfvs068267@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: e0e508153866 - main - ata: Retire unused variable / externs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e0e508153866947115d1f855a31d83cdaf49aa68 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e0e508153866947115d1f855a31d83cdaf49aa68 commit e0e508153866947115d1f855a31d83cdaf49aa68 Author: Warner Losh AuthorDate: 2023-11-24 18:27:38 +0000 Commit: Warner Losh CommitDate: 2023-11-24 18:27:38 +0000 ata: Retire unused variable / externs When looking for something else, I noticed these are no longer used anywhere. Sponsored by: Netflix --- sys/dev/ata/ata-all.c | 3 +-- sys/dev/ata/ata-all.h | 4 ---- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/sys/dev/ata/ata-all.c b/sys/dev/ata/ata-all.c index dae833bbd849..c12043c9915d 100644 --- a/sys/dev/ata/ata-all.c +++ b/sys/dev/ata/ata-all.c @@ -71,7 +71,6 @@ static int ata_str2mode(const char *str); /* global vars */ MALLOC_DEFINE(M_ATA, "ata_generic", "ATA driver generic layer"); -int (*ata_raid_ioctl_func)(u_long cmd, caddr_t data) = NULL; devclass_t ata_devclass; int ata_dma_check_80pin = 1; @@ -428,7 +427,7 @@ void ata_udelay(int interval) { /* for now just use DELAY, the timer/sleep subsystems are not there yet */ - if (1 || interval < (1000000/hz) || ata_delayed_attach) + if (1 || interval < (1000000/hz)) DELAY(interval); else pause("ataslp", interval/(1000000/hz)); diff --git a/sys/dev/ata/ata-all.h b/sys/dev/ata/ata-all.h index 41faa271abda..056a391cb621 100644 --- a/sys/dev/ata/ata-all.h +++ b/sys/dev/ata/ata-all.h @@ -450,11 +450,7 @@ struct ata_channel { #define ATA_LED_MASK 0x03 /* externs */ -extern int (*ata_raid_ioctl_func)(u_long cmd, caddr_t data); -extern struct intr_config_hook *ata_delayed_attach; extern devclass_t ata_devclass; -extern int ata_wc; -extern int ata_setmax; extern int ata_dma_check_80pin; /* public prototypes */ From nobody Fri Nov 24 18:32:42 2023 X-Original-To: dev-commits-src-main@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 4ScNrW5qPrz529vs; Fri, 24 Nov 2023 18:32:43 +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 4ScNrV56Zmz3FPm; Fri, 24 Nov 2023 18:32:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850762; 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=GPALkXUkd/F/lSSiJqS4v6eA9rVj212YlZZuPjd7/uo=; b=wbN6V8E6O+IuHvomMmHogSl4ZZAAOWMzPubmEyjGAH//MtS7XhdiEPDexR1B2cSzGZM3bA tG32uIuXGTk2dWi+P14YgBk/gP2Ps4Csy917ZUw4MBPU0+Bqo3y5b23tffJ7Nt30OUSJ3D Sq49xohVFnXLH7hbFTRG0wPV1kZ7Hf4Tm8vYx6guQqt03SZ4fZrvm81kQj8EZHxZ+YbZKw 0KmKeajyrKdMgyMOW1Ffhad+OX7emq4JQtnxwBXdUsiWHLpQZfdgxMDUIQK5XuV0POqFHI zjYvfVb6Y/ZHM/4ehiK0tOpYbUkPRvtWevjt173itAw0g7C6MMOEb3Jb/hpckQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850762; 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=GPALkXUkd/F/lSSiJqS4v6eA9rVj212YlZZuPjd7/uo=; b=jriQSAQoD3yEa5+ZmJxWLVZlI0XoyT6H6PyQwJglSvw1g8960he6+3PkoYk8QOqHQy+Yxg yP3spK2X4UbmHcf/C0Qj6q+wk3yE7jxc2VBGjEhY9uCVM4Jgedol85+dbT4xHPNhFppPj0 XiDEws+Whk6zXIj4k72jQqmsCroqOghZbWKtiz271u2Hr/3F4tZmjn5sGBDwT9tjY55kTf ds+vtrOe8WUQCmq6WLGoZZuflS9LlY+Jy8Ei3qonqfcgjksjvdkeJNuEX9/bWYB2QFvLSt BWKspPDGZxLx/QdTkRJJp3YbsQqMS/dZw4U9QeCUmbopzyuOevVemasVj6ANZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700850762; a=rsa-sha256; cv=none; b=sKwr3DIlvu7Ioo+GA5s1A26LPfmmurwYKMoPSJ5ZJxLYu7WeSTGvfIRY9CJLmILwPTQty6 lmP/3p48u0Sk26tgz/Waaas07B3M6SBFGQA2PqbNhtlffuhg8YdsWkl95ezvEAhQ6QeXBf rm0GvgDklrTjsRP3yPBCl3PFCtPC9i5Gt/zj6y87K+TnIf68Qk8AC8fFRG1oH5hs2M8XWd UcihWvmDdGc6J30wl6kRRkIn9DGXSVVVWt2Ht9Qb3Em1lqTXHysyqfmjNsUEvh4yaIvtSU iOW4hNAonezyhHhU2cKO9NzqhhuT+iC3PzYaR7EIMxeq1aZu/KhynB6gx0C3/g== 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 4ScNrV46P0zwc4; Fri, 24 Nov 2023 18:32:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOIWgsq068324; Fri, 24 Nov 2023 18:32:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOIWgHA068321; Fri, 24 Nov 2023 18:32:42 GMT (envelope-from git) Date: Fri, 24 Nov 2023 18:32:42 GMT Message-Id: <202311241832.3AOIWgHA068321@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 67d2bd974d34 - main - stand: Retire setting hw.ata.wc: it doesn't exist. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 67d2bd974d34d918255307321107273562f11dde Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=67d2bd974d34d918255307321107273562f11dde commit 67d2bd974d34d918255307321107273562f11dde Author: Warner Losh AuthorDate: 2023-11-24 18:28:44 +0000 Commit: Warner Losh CommitDate: 2023-11-24 18:28:44 +0000 stand: Retire setting hw.ata.wc: it doesn't exist. hw.ata.wc was disconnected as part ot the 2013 cam-ification of ata. No need to continue setting it. It's been unused in FreeBSD 10.x and newer. Sponsored by: Netflix --- stand/forth/menu-commands.4th | 2 -- stand/lua/core.lua | 2 -- stand/lua/core.lua.8 | 1 - 3 files changed, 5 deletions(-) diff --git a/stand/forth/menu-commands.4th b/stand/forth/menu-commands.4th index 8121272114d0..2c3d787c65e1 100644 --- a/stand/forth/menu-commands.4th +++ b/stand/forth/menu-commands.4th @@ -126,7 +126,6 @@ also menu-namespace also menu-command-helpers s" set kern.smp.disabled=1" evaluate s" set hw.ata.ata_dma=0" evaluate s" set hw.ata.atapi_dma=0" evaluate - s" set hw.ata.wc=0" evaluate s" set kern.eventtimer.periodic=1" evaluate s" set kern.geom.part.check_integrity=0" evaluate ; @@ -135,7 +134,6 @@ also menu-namespace also menu-command-helpers s" kern.smp.disabled" unsetenv s" hw.ata.ata_dma" unsetenv s" hw.ata.atapi_dma" unsetenv - s" hw.ata.wc" unsetenv s" kern.eventtimer.periodic" unsetenv s" kern.geom.part.check_integrity" unsetenv ; diff --git a/stand/lua/core.lua b/stand/lua/core.lua index 4c121319eb36..5c3c65463e51 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -176,14 +176,12 @@ function core.setSafeMode(safe_mode) loader.setenv("kern.smp.disabled", "1") loader.setenv("hw.ata.ata_dma", "0") loader.setenv("hw.ata.atapi_dma", "0") - loader.setenv("hw.ata.wc", "0") loader.setenv("kern.eventtimer.periodic", "1") loader.setenv("kern.geom.part.check_integrity", "0") else loader.unsetenv("kern.smp.disabled") loader.unsetenv("hw.ata.ata_dma") loader.unsetenv("hw.ata.atapi_dma") - loader.unsetenv("hw.ata.wc") loader.unsetenv("kern.eventtimer.periodic") loader.unsetenv("kern.geom.part.check_integrity") end diff --git a/stand/lua/core.lua.8 b/stand/lua/core.lua.8 index f0f27ee5ae13..5274ba4c2143 100644 --- a/stand/lua/core.lua.8 +++ b/stand/lua/core.lua.8 @@ -126,7 +126,6 @@ Sets or unsets .Ev kern.smp.disabled , .Ev hw.ata.ata_dma , .Ev hw.ata.atapi_dma , -.Ev hw.ata.wc , .Ev kern.eventtimer.periodic , and .Ev kern.geom.part.check_integrity . From nobody Fri Nov 24 18:34:58 2023 X-Original-To: dev-commits-src-main@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 4ScNv71nf0z52BQT; Fri, 24 Nov 2023 18:34:59 +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 4ScNv71BSwz3Gnt; Fri, 24 Nov 2023 18:34:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850899; 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=4uvld2owC5ENFFuZkTW/p7jNvU80m24fifayOYLSmrU=; b=iHAHi1SRTR5NAahzFvf+6NatUsZqOX5PrueFuUBJ1SdCIVEWkuc5xf7Q+KENpPEzqpmUUv EL7ZosX11yuhP1DdnTJqEPBUBudrldL30HchLQJL/Og0xCNAw+GYkbA4Si38Q14gYJ0Hgh uCcqLjWw0A2lFd2soy5worLj3swJMNzPzz0ewV0tr6G3bW46j9pS/W/HmyDbYQCT7U2GVN K8OlYoTHOHdCOA/0PwsatSIKhUGZaO7aIL0fYKqgUi5RRcUbNl7ePJZZsQMPWhmPT5C8Ch bJHC9DNcdvOpyWCrgRfF0oaVFEsmO/nviikicCxX1C7bCC1zSh5mmWgy/LpUCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850899; 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=4uvld2owC5ENFFuZkTW/p7jNvU80m24fifayOYLSmrU=; b=AS6MHq3W9hzXvJhbhflHgH9epwoKj+hMmQFwqzulSJKgLdXxSPT2F+3oOmaatBChxUuYdC pcT7N/tAVM1Vw+TytKGkJ6tx6m+kyVs1Qyugo1B0aFnASgdXpJXTdE4FuKTUcif7jqVS0H P7suNKbnYUGl9mLqXAar8vyxpRbH5DJSYYDHRC5E7xCvEvFVOgwLY4N9AhA7JK6m2meZdT tnB6rg8/cIMe7aNthjFqtCEB9Ax1Rrfouaroug7Q7vqYdsBXbBR+T9GedtLXzMS22aBIVD JO28cy01jjsusy4TnwiBvT9XvJ/pV0Vuji0bhCLW4CzGR7M9Sq+n4yjxkwTstA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700850899; a=rsa-sha256; cv=none; b=XdINPeexWqYvhGsp2pV1bqZkm6a32hc0u8794nJkav6dbh0r/8cOdGIvFx9qZ0+JK2ummK LPz2R+3Bpb5SS1nagf3rgfYtEB5LpL6ot+ljjM3lwfe26PDg76Mz3/Ka9+LPd5q4LVrGlZ 7v/IaFe/fLAEYfsos97Zu+Y1rcBznSsJ6nnM8ZkC/kgHUE3K1lTbbT7Y3Wc9GgzIDxTUz7 BfJVLfX4VA/SxeBrbN5PD9kZNWG7+nJc9hv/KV0vGcEMZOKbpdcG56V15+1qOieaMCclyE kjbxSphiuJ6JlMaFzPmtH70SIz/v7V6LQTs/EyrVWsPK2yoOZrR4uPxkBLktiA== 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 4ScNv70Fhszw3x; Fri, 24 Nov 2023 18:34:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOIYwJ6068829; Fri, 24 Nov 2023 18:34:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOIYw0p068826; Fri, 24 Nov 2023 18:34:58 GMT (envelope-from git) Date: Fri, 24 Nov 2023 18:34:58 GMT Message-Id: <202311241834.3AOIYw0p068826@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 00b3cde596dd - main - new-bus: Add a comment for bus_generic_get_domain List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 00b3cde596dd3945d56aa12f2a4957b2910e1ee3 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=00b3cde596dd3945d56aa12f2a4957b2910e1ee3 commit 00b3cde596dd3945d56aa12f2a4957b2910e1ee3 Author: John Baldwin AuthorDate: 2023-11-24 18:33:57 +0000 Commit: John Baldwin CommitDate: 2023-11-24 18:33:57 +0000 new-bus: Add a comment for bus_generic_get_domain --- sys/kern/subr_bus.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 9e191f4c3a4f..1c6710dbbb3c 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -4358,6 +4358,13 @@ bus_generic_child_present(device_t dev, device_t child) return (BUS_CHILD_PRESENT(device_get_parent(dev), dev)); } +/** + * @brief Helper function for implementing BUS_GET_DOMAIN(). + * + * This simple implementation of BUS_GET_DOMAIN() calls the + * BUS_GET_DOMAIN() method of the parent of @p dev. If @p dev + * does not have a parent, the function fails with ENOENT. + */ int bus_generic_get_domain(device_t dev, device_t child, int *domain) { From nobody Fri Nov 24 18:35:00 2023 X-Original-To: dev-commits-src-main@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 4ScNv83wH8z52BYL; Fri, 24 Nov 2023 18:35:00 +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 4ScNv8316mz3Gm4; Fri, 24 Nov 2023 18:35:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850900; 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=p9Y481syPlTaM0yMvFpSFdsUSZxrgytSXHXWr8rgkAw=; b=dUwS6ueTeq4VbQAg2MNglM+j1PZNCmcMBnuOk9LnBSIthvs63+Ou0QzROPmQpn+tPo9UDQ X0cm67UIIuXPOFVCYIMixP+CWyPcU2oVYLR6bwdKaxHZodZ+1S6vMc5kJ8ODWDXfJZdIwz LFPt1EgibEEv/kmR0hsBgcVbIu1ug6leEkbzTqrJT1m3/pONvMseGUZZrp5rgLYaydw+1n iQNW/8j4mtjJQGUNoDUZ0xV1+zGi269DKbLgHGtcP/eelpBwdJQCl1QRqMu+SNVPppuzbu a48nG5w2ynz919D2fhUWjZj/JPBYRKtVet9m80zKZ77rR8Ut3GWUQZC91aCL0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700850900; 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=p9Y481syPlTaM0yMvFpSFdsUSZxrgytSXHXWr8rgkAw=; b=aZfVcTndWNUKxnYrks49smaVEseHW3O1i1FDjwspzoPA3Hh+kOKXcbB5TQAWzAVcIYbYKW /ECXlOxsAkcGa30wRo3u6+CxkebJqnJ7ayy/Pr/bT7Fk9RfOo7qv8Mz6+REHuJjLRvrXIO 8LUWqrBowqBaiBqzZAMa3dNou+9b+CMCfBUqe/5xjLrNEmXb1cUfN+2keY1F0VjYJ1RiKZ UU6hd6ew0J6XOgG5qtNGCdTpJ/wpjdLfdG/t47t9aNDWrH7Q2dbrubHs3qnIQH2ASQJdr9 Nq+BepwBcoK1/HXmritM9XF5hqHfj6AN+9ufREm+EXYRRM2QV5fUDBGp/nts0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700850900; a=rsa-sha256; cv=none; b=af419n0WfeJwEEtEa3cGaNI21NLiIaAKQE4aJ/pRs3ytY5Y/Jwj6/iio8xFoSoSWlVx2DW ud3t1en+qITOP2IH2nZsZE5gYsofI21OJegp1njPA0IUJNktk8+poaWzTEmf7pfC0dQzAl fF5yvvv17plijfm/JPAQG0yHmRw+IVjOLLIxbmpYbY+dNPrm0rbcVFZbj4od+5O7hFuhTC X1xn/siTbsWLmsDhzA/+wNsDJokpjGD4QtiC12O4w3IbJow9em24VoP0ZabwRtaAbW+XXP g0UgGlgPapmB/0TByCrsokTW5/cWp1dRkPc6hy39fMtPK5bYN8sc3FvoPNM41A== 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 4ScNv81c8hzwTF; Fri, 24 Nov 2023 18:35:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOIZ08O068886; Fri, 24 Nov 2023 18:35:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOIZ0x4068883; Fri, 24 Nov 2023 18:35:00 GMT (envelope-from git) Date: Fri, 24 Nov 2023 18:35:00 GMT Message-Id: <202311241835.3AOIZ0x4068883@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 46971d38de33 - main - new-bus: Add comments for resource_*_map_request* List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 46971d38de334a9418e2b66b37cea7d051b6731a Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=46971d38de334a9418e2b66b37cea7d051b6731a commit 46971d38de334a9418e2b66b37cea7d051b6731a Author: John Baldwin AuthorDate: 2023-11-24 18:33:57 +0000 Commit: John Baldwin CommitDate: 2023-11-24 18:33:57 +0000 new-bus: Add comments for resource_*_map_request* Requested by: mhorne --- sys/kern/subr_bus.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 1c6710dbbb3c..8da99e158f1c 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -2707,6 +2707,15 @@ device_set_unit(device_t dev, int unit) * Some useful method implementations to make life easier for bus drivers. */ +/** + * @brief Initialize a resource mapping request + * + * This is the internal implementation of the public API + * resource_init_map_request. Callers may be using a different layout + * of struct resource_map_request than the kernel, so callers pass in + * the size of the structure they are using to identify the structure + * layout. + */ void resource_init_map_request_impl(struct resource_map_request *args, size_t sz) { @@ -2715,6 +2724,18 @@ resource_init_map_request_impl(struct resource_map_request *args, size_t sz) args->memattr = VM_MEMATTR_DEVICE; } +/** + * @brief Validate a resource mapping request + * + * Translate a device driver's mapping request (@p in) to a struct + * resource_map_request using the current structure layout (@p out). + * In addition, validate the offset and length from the mapping + * request against the bounds of the resource @p r. If the offset or + * length are invalid, fail with EINVAL. If the offset and length are + * valid, the absolute starting address of the requested mapping is + * returned in @p startp and the length of the requested mapping is + * returned in @p lengthp. + */ int resource_validate_map_request(struct resource *r, struct resource_map_request *in, struct resource_map_request *out, From nobody Fri Nov 24 20:13:05 2023 X-Original-To: dev-commits-src-main@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 4ScR4K449hz524Rt; Fri, 24 Nov 2023 20:13:05 +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 4ScR4K3gmdz3dyL; Fri, 24 Nov 2023 20:13:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700856785; 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=+LqJbSS9bCj3ZnucUYnU64ObngSQ/WJydMTF3ZeJMs4=; b=Sd37B5rvbM8+Tf1FZMw8Rl/fP4qTQ/uAH1hsDG0fEoJQseBMZkgh5KvizKax/wGkvRYi8A LdLJmPx8im4GeLDWdUK4GImAQud65+BQ6m3HOL9a/UhpT5XxtgjU79ci7tKgNzblHh3sw3 Wf4IzveOT/g6ksVWRa+X179luAcy+OssUWHiFAUFZ8Cb4+sJTcWTCu/2XagfbR0PgMJzrK CVHI+n8PCWINWmSn/c0dGkZ9SqjMlwgrOng+o+93qZTJ5R9PeHyenvB2Bolri+XgRgXnm9 adqFpbYB4e2/aE5Eoe9z8q6s4vs14pt5e3YsAvJxfKeA47HDJ1NhG6IKAMy21Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700856785; 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=+LqJbSS9bCj3ZnucUYnU64ObngSQ/WJydMTF3ZeJMs4=; b=TCtYmE8JMAGDQPux/VCpB0690Df56fPV4dbn8pzurcSaViPTOiJeur5pCb6FXFOREp1niY s1YZ4+NpFDX1H075MYiRarTge5bs6jU4rD5m34k1hShkN0TXOwvTS96x7J9dzv2BahOhVp IqC1/QzYnyNjZT1bKpXF9dwRNyoeloecfPbATVskV3rOPRMlFiqBJWUBpLKWi+oi8pHOt4 xgmWLPc753Zn6sviWwk/fJIVDYU9ZXY9KHfZlxJl2nWzbMtFBFrJVma0Cv4lmOZ9DJ8sM2 rHnXVMwXhuzc0a+3EVhOkvQc01RmDO8yMZ92fIoznmT8nYbmRgEdY4PnNyboVA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700856785; a=rsa-sha256; cv=none; b=p3b1Ycw0d/EwEx0YdqndskojSdICShQRvOOzFgJSO9+8paih44XKl1qLVrTq4q2U6Ehrgq psbd+4pFR0C3VK0EXwMqntrbOfRoko5SZVlZE+wjQ4X8bUV/ovF5zlV2D72uDzsV1BBT37 wCi6w/z31ESz8sC5jNvgVyDLAD2RX8W6Dwg/u5T89D8GulZx1uwDSyFE23ei2QQ5NEqBXg vXZIPHCcD9s9POqtHHDcu0LNcg3m3L4atfvfQ7Wp+VPY9jqfnbMWSXBKAprs2PRks8y6nc rd5Yt3IplkPA/Y6CF7EyBMC5bR+6dxgS3LgiTioyh+Zabc0rGdndJRR64OhAvA== 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 4ScR4K2mZNzywJ; Fri, 24 Nov 2023 20:13:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOKD5Jl036180; Fri, 24 Nov 2023 20:13:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOKD55V036177; Fri, 24 Nov 2023 20:13:05 GMT (envelope-from git) Date: Fri, 24 Nov 2023 20:13:05 GMT Message-Id: <202311242013.3AOKD55V036177@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: ac910ad9951a - main - rc.d/ldconfig: Remove stray ;; List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ac910ad9951a52743389a47fa4a3feabe9021aaa Auto-Submitted: auto-generated The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=ac910ad9951a52743389a47fa4a3feabe9021aaa commit ac910ad9951a52743389a47fa4a3feabe9021aaa Author: Cy Schubert AuthorDate: 2023-11-24 20:11:45 +0000 Commit: Cy Schubert CommitDate: 2023-11-24 20:11:45 +0000 rc.d/ldconfig: Remove stray ;; Stray ";;" causes the ldconfig rc script to fail at boot. Remove it. Fixes: 73902ed85ab7 --- libexec/rc/rc.d/ldconfig | 1 - 1 file changed, 1 deletion(-) diff --git a/libexec/rc/rc.d/ldconfig b/libexec/rc/rc.d/ldconfig index beb79ba95b84..5c404a823dbb 100755 --- a/libexec/rc/rc.d/ldconfig +++ b/libexec/rc/rc.d/ldconfig @@ -63,7 +63,6 @@ ldconfig_start() done startmsg '32-bit compatibility ldconfig path:' ${_LDC} ${ldconfig} -32 ${_ins} ${_LDC} - ;; fi fi From nobody Fri Nov 24 22:01:48 2023 X-Original-To: dev-commits-src-main@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 4ScTTm3DCxz51kR0; Fri, 24 Nov 2023 22:01:48 +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 4ScTTm2q9Pz4cPx; Fri, 24 Nov 2023 22:01:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700863308; 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=XjaGLRmwqvoUtZ4dQKFD1pFZjj13nuGIdJTV6TP0J+M=; b=OraErKQZwtZ47GR8fYYFFBjSqQwe65PXHfX1MUWwhUbjDLCqm+p+Ckbnj+ge5GNfeplcEB z429+q3s73EHrzF61iSu3LBcjf/ruASDGQEgv40PmDHhdbN6aJ8wEFpg474avwbmjzWZVo /T/HECTkYRuPvUYEMg8BN84POB7s81P5CJccyleIdg5UeAEHuiUNdf1m2F9ZkhG2+ybJhW xIEWVq4YQZuFRocCdKiqFLdBtZZ37g79gHbHJSkvuvMqYOti3d0tYmXYI/npv5Y44Big9u 4T1puLvtHPsQMK8JxBViemJDdCqaDccNXnw+oIPPPfb6y2wUYz0kkJaJ4lX4vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700863308; 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=XjaGLRmwqvoUtZ4dQKFD1pFZjj13nuGIdJTV6TP0J+M=; b=YKGAkrBAF/aRo3b1ip91NqxL5knBXUo5XWFsdf/70tSSQobB8FUwAIl2DTiiIM2SnzgBJo MVU9mbKtQtSP3u3CtTlaZnQfUxPfMoz4CtLZsi2TcsTNV43/Q9G05xmTn+bRi1+Ghrs39t 0AdE4taat17M+zD950b67d++Yv1FihiSgx+CM8hTV/+Y8UXqgqDVmJ5wuZakkO0PmptcEs A/JSAftHg6B3nk1CUiMh/DYcRrKyw45TJ7CfrqYj6p3kRkJ6OzK6zxc2ppZx/BZ64aUxU7 DFurCnag7jGPc61PjepE8yYSO3ZUEEMKVpsR7SF4pE4fdvtk9HGggtvz69H9LA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700863308; a=rsa-sha256; cv=none; b=B8YgBkRPjnYIWQ3GtimM3GFl6ue8bbRmpj7YYnp4GfuzkfOAckBcNaYmBxxTMwo86uo6C2 qtZE+3xlU0TquxyXQtBK9tF/Ftb7Y9nd3RRsSSXRBfIH8VR0wiRgpqgec+Dxv2ZubqxPFb bwjWVRcWIW8Monb4/N8d9GrKVC2o4jGWmg73DCbDRs0X+qZhPffqOqL11h+buwVKAYp3NZ 4vnRYKYbDIdKZN+L1NwQCi9ovTOehtR5wfBEhly1a3+qB1FTVuCwfIM6BpfwoQU1rXrF76 FHpW/ZXUlTVpuIl8KmKrNL0AHNFyMQ8qVMJKwPW4f7ZETJkPWBgrHepcHQsw/g== 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 4ScTTm1tgPz12h6; Fri, 24 Nov 2023 22:01:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOM1mSg018444; Fri, 24 Nov 2023 22:01:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOM1m9i018441; Fri, 24 Nov 2023 22:01:48 GMT (envelope-from git) Date: Fri, 24 Nov 2023 22:01:48 GMT Message-Id: <202311242201.3AOM1m9i018441@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 5622f52c98cd - main - aarch64 nexus: Fix a mismerge in nexus_activate_resource List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5622f52c98cda7df1faef11d847e04500158e107 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=5622f52c98cda7df1faef11d847e04500158e107 commit 5622f52c98cda7df1faef11d847e04500158e107 Author: John Baldwin AuthorDate: 2023-11-24 22:00:33 +0000 Commit: John Baldwin CommitDate: 2023-11-24 22:00:33 +0000 aarch64 nexus: Fix a mismerge in nexus_activate_resource Fixes: 658501d25930 aarch64 nexus: Use bus_generic_rman_*_resource --- sys/arm64/arm64/nexus.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index 32b5542f1916..2c19d4ecfc0e 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -367,10 +367,8 @@ nexus_activate_resource_flags(device_t bus, device_t child, int type, int rid, rman_deactivate_resource(r); return (err); } - return (0); - default: - return (EINVAL); } + return (0); } static int From nobody Fri Nov 24 22:31:50 2023 X-Original-To: dev-commits-src-main@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 4ScV8R0hhFz521FX; Fri, 24 Nov 2023 22:31:51 +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 4ScV8Q4yLZz4kf5; Fri, 24 Nov 2023 22:31:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700865110; 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=vT8vR9mo/qh1pNAikAgmyRNdg8xzekaGLFSmELb4zX4=; b=WvZCWo2wi7uDJ3E6u4BJxkGJH6t7YJ4MHVoZpfbfSdwt6bC+KTokmJCLX3FUwnGQyLcNSB gAHiXvKJ/XJ2Zut5kydnJi5sVWhF2sRKti2hkbbSotIwMhPpd29a2w20KSZjKqWkCW5D7k 2BAltQpDTR26gGYwB8w05b7YN4oEECiPP4EiW0VNXdss3aEUVJRwDCcMnWyWDMgfjVez+4 MCwTtAfPp3FKRCTVDJqsscgg/LfmyODZoZTGbpewK8AMS2RwaKiItASPM1l714IqO1rOEX D4OPZZl2fDEHwJ2khXUAZfP6fHgR9MIwoiCL/r5s55rGXIAyzOdzBt/9dB/PhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700865110; 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=vT8vR9mo/qh1pNAikAgmyRNdg8xzekaGLFSmELb4zX4=; b=jUZ9JH7c/C6rB4qfHNr5iITMBZ/xm/TCO7+u9YlpM/YldjmXlsYMUVBEctfe3ofE6BKT+u xDY/9RF0PdXHcumOEEKJEyOZOVxO8gNmDKwrStbVv5I48A+XAQnZHTl0uNiEhfsOIDy4Yz hKExntxN9vv2qvx1sAQrIwmVwP6aVGbg61YokN/KHeajAjuDGrAw4oovPeFEOCQ8EZi9vl y1PSkKi2Nll6EKURJmtTs88Ie039+ix8zbGiZJXI2520oPezstVx7vUEQBexByLrZlwEMd 4B0mc800nWKTINDIaZ51TiyoOK7YoUN0Ld1WB8hSyBU2Dzk38O8bruJwqW1woQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700865110; a=rsa-sha256; cv=none; b=sFI4t8ZcSscKz7SrMahS/siT4qKQUPSxcUpd5F/P3ZpE7IUL6r8nh6CRoKoJ/FXNWUxXBg 9dLKhvK0IHgpJftLAlPRvFCif7Z0DPv2xk1YP17rmxeeieryHC4PoxXThvwH+ag0kmRU/R MkES3pMQ6sTyJvq6MEqIRwvc4Pfn+cspoVbDbfMbUPWaev2VTu3eH9vGAL7I7sUN8z4r0O f73/+lLFes/U2+VAqsxbLBC4P1pXnCoXHUxfR4ee+beUbNu2B/KPPG2rXEYfVub44qwSkM Evm8F5ViheAc7mhSmbujE2/2Da+RB/F9Uk6SMfiMHs2/5Po4WjcnhVrHtFlPaw== 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 4ScV8Q442zz13c2; Fri, 24 Nov 2023 22:31:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AOMVopH065020; Fri, 24 Nov 2023 22:31:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AOMVopt065017; Fri, 24 Nov 2023 22:31:50 GMT (envelope-from git) Date: Fri, 24 Nov 2023 22:31:50 GMT Message-Id: <202311242231.3AOMVopt065017@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: f72b4f7e149d - main - etcupdate: temporarily comment out one tzsetup test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f72b4f7e149d82ef5b8ed7a3aa415fcd7603b350 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f72b4f7e149d82ef5b8ed7a3aa415fcd7603b350 commit f72b4f7e149d82ef5b8ed7a3aa415fcd7603b350 Author: Ed Maste AuthorDate: 2023-11-24 22:28:31 +0000 Commit: Ed Maste CommitDate: 2023-11-24 22:31:28 +0000 etcupdate: temporarily comment out one tzsetup test This test fails after tzsetup was changed to symlink rather than copy the zoneinfo file (5e16809c953f). --- usr.sbin/etcupdate/tests/tzsetup_test.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/usr.sbin/etcupdate/tests/tzsetup_test.sh b/usr.sbin/etcupdate/tests/tzsetup_test.sh index dd76884e13eb..155830bddae7 100644 --- a/usr.sbin/etcupdate/tests/tzsetup_test.sh +++ b/usr.sbin/etcupdate/tests/tzsetup_test.sh @@ -232,7 +232,8 @@ echo "Differences for real update:" diff -u -L "correct" $WORKDIR/correct.out -L "test" $WORKDIR/test.out \ || FAILED=yes -file /etc/localtime "foo" -file /var/db/zoneinfo "foo" +# XXX tzsetup installs a symlink as of 5e16809c953f +#file /etc/localtime "foo" +#file /var/db/zoneinfo "foo" [ "${FAILED}" = no ] From nobody Fri Nov 24 23:35:41 2023 X-Original-To: dev-commits-src-main@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 4ScWZK4vFRz51KWq; Fri, 24 Nov 2023 23:35:53 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScWZJ3Rl5z3JkZ; Fri, 24 Nov 2023 23:35:52 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=hlxbJz+N; spf=pass (mx1.freebsd.org: domain of rick.macklem@gmail.com designates 2607:f8b0:4864:20::1029 as permitted sender) smtp.mailfrom=rick.macklem@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-285196aaecaso1996594a91.0; Fri, 24 Nov 2023 15:35:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700868951; x=1701473751; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=UiSEmEcUxsLqFGUNGaTpue5DgZavQCO83qAFvfYMLEw=; b=hlxbJz+N/OjKkjSu7Qp1b3sebWhGgmn0GIX8EHD+YMpK7/QiuLUvc8eLojYm8Irlmu lgouFnDjV1SCzthoi009UUU/8gi55ud0pUY9R7ZafiV2f9wocDKZ+qD4d8D6DVLArpHx lIA1hHWriGyz8xRdC3y11Q18VP2NCyOuEvWI6+JeQ5qqXhONes/h/JA7KA0pj4NBelNw 1nqUvgx2xqFhYm0E1u3R3VYDp31QJzRIvIrMuZ7LTnmmZ+kaNpO47dm/QMQYHsYXhAyp 35S9kszEKf2+3wIrCDgO+wEhagNDzGSaUf99Egshzc8cD7IbhLwLHlaDjSHZx/ZHkpvx 4HMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700868951; x=1701473751; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UiSEmEcUxsLqFGUNGaTpue5DgZavQCO83qAFvfYMLEw=; b=gdV6Hw6znTkhBJs2WhIcdqWq0bjTV9QvZtPNvqb/5meyvpY41YbSvPQwIcrnm18G+4 V6EGCQkiN7N9AFIQOEMjVvT+nP0BhlGYQrM6nEQgvpw+UpeOR/laH778kNsZPs6aDjZa eb+86CkDVtfbI1UeWtWsB5/mV3W9bfGESb3v74L3H7tczUdDB1NCjwCq0xDkq026CnU6 rAlOLpwPOpATV1jVdc0E7VHqwEmYatzNefuQvcaFaux/KS/oetZ98jf+e6de4lsvyxVy BZPROIGsslfnyXzNdCm/+KS8fX4gwbS5v8GPO+vPIV1A3S7lupIwuQWAn2Ib4Kv/zblu pl7A== X-Gm-Message-State: AOJu0Ywk+aLz3YmbpZx3yPHZuGd3YXLdt7lJLszMIS5IYws46kSH7X2p d3XKGDoLpxHnNEfqg6iRvT6uuXKurvJDwD6cmA== X-Google-Smtp-Source: AGHT+IFHQqKeV+j0H1QaNZUrRAXhtbj3uVCsfOwhILJvPKrZF65jU/XgisKq0Z7RrH0f8OjWL+wATgKJpK4FKIc2pVE= X-Received: by 2002:a17:90b:1d0a:b0:27c:f1f8:261f with SMTP id on10-20020a17090b1d0a00b0027cf1f8261fmr4370480pjb.20.1700868950755; Fri, 24 Nov 2023 15:35:50 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> In-Reply-To: From: Rick Macklem Date: Fri, 24 Nov 2023 15:35:41 -0800 Message-ID: Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots To: Mike Karels Cc: Konstantin Belousov , Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-3.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.999]; NEURAL_HAM_LONG(-0.99)[-0.992]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::1029:from]; TAGGED_FROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCPT_COUNT_SEVEN(0.00)[7]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_CC(0.00)[gmail.com,leidinger.net,freebsd.org] X-Rspamd-Queue-Id: 4ScWZJ3Rl5z3JkZ X-Spamd-Bar: --- On Fri, Nov 24, 2023 at 8:16=E2=80=AFAM Rick Macklem wrote: > > On Fri, Nov 24, 2023 at 7:58=E2=80=AFAM Rick Macklem wrote: > > > > On Fri, Nov 24, 2023 at 5:18=E2=80=AFAM Mike Karels w= rote: > > > > > > CAUTION: This email originated from outside of the University of Guel= ph. Do not click links or open attachments unless you recognize the sender = and know the content is safe. If in doubt, forward suspicious emails to ITh= elp@uoguelph.ca. > > > > > > > > > On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > > > > > > > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger wrote= : > > > >> Am 2023-11-23 16:25, schrieb Rick Macklem: > > > >>> The branch main has been updated by rmacklem: > > > >>> > > > >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728adec4c5b3= e840a1fb16bd16f8cc956d > > > >>> > > > >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > > >>> Author: Rick Macklem > > > >>> AuthorDate: 2023-11-23 15:23:33 +0000 > > > >>> Commit: Rick Macklem > > > >>> CommitDate: 2023-11-23 15:23:33 +0000 > > > >>> > > > >>> nfsd: Fix NFS access to .zfs/snapshot snapshots > > > >>> > > > >>> When a process attempts to access a snapshot under > > > >>> //.zfs/snapshot, the snapshot is automounted. > > > >>> However, without this patch, the automount does not > > > >>> set mnt_exjail, which results in the snapshot not being > > > >>> accessible over NFS. > > > >>> > > > >>> This patch defines a new function called vfs_exjail_clone() > > > >>> which sets mnt_exjail from another mount point and > > > >>> then uses that function to set mnt_exjail in the snapshot > > > >>> automount. A separate patch that is currently a pull request > > > >>> for OpenZFS, calls this function to fix the problem. > > > >> > > > >> May the same/similar fix like for ZFS be needed / useful for nullf= s mounted > > > >> stuff? > > > >> > > > >> I have a ZFS dataset which is mounted via nullfs into a jail. This > > > >> nullfs-mount is then exported via samba. In samba I have the shado= w-copy > > > >> stuff enabled, but it doesn't work, as the jails can't access the = snapshot. > > > > > > > > Jails cannot access snapshots because, as I understand, snapshots > > > > are mounts. Nullfs does not provide an option to recursively bypass > > > > into mounts. The patch you responded to does not automatically moun= ts > > > > snapshots on clients, it only allows them to mount if wanted. > > > > > > It works for me, with main and this change, or 13.2 without a patch. > > > I don't know the mechanics, but it doesn't use nullfs, and the snapsh= ot > > > does not show up as a separate filesystem with the mount command. > > Yes. ZFS essentially does an automount of the snapshots under .zfs/snap= shot. > > (As I understand it, there are non-default ZFS options that allow these= to be > > mounted manually instead.) > > I can now see that these automounts are 'real mounts" in the > > mountlist. The only reason > > they are not visible is that they have MNT_IGNORE set on them. > Oh and I forgot to mention that this automount is for some weird in > memory file system that does just enough so you can see the snapshots. > Once you "cd ", the vnodes are associated with the ZFS > mount (dataset) and not this weird snapshot fs. (That is why it doesn't n= eed to > be exported, but did need mnt_exjail to be set properly.) > > I might be able to test a nullfs over ZFS case later to-day and will > post if I do so. Yes, it is broken in a similar way. With a nullfs mount on top of a ZFS mou= nt that is exported to an NFS client, you can access the snapshots under .zfs/snapshot if the mnt_exjail checks are commented out. However, if the checks are done, they fail. So, yes, something similar to what ZFS will do is needed for nullfs. Now I have to figure out how/when it can be done. I will play with it to-da= y, but it probably won't get fixed until late Dec. Again, sorry for the breakage, rick > > rick > > > > > Now, as for what happens when nullfs is on top of ZFS, I do not know. > > What Kostik says about nullfs recursing into mounts suggests it will no= t work. > > I will look at it, but since I am headed to Florida for a few weeks, it= may > > not happen until the end of the year. > > > > If someone can test this case and determine if there is no NFS client a= ccess > > for snapshots under .zfs after applying the patch that is an > > attachment in PR#275200 > > when nullfs is over the ZFS file system, that would be appreciated. > > > > rick > > > > > > > > Mike > > > > > > > You might try to set up something with autofs, no idea if it could = be made > > > > to work usefully. > > > From nobody Sat Nov 25 00:15:06 2023 X-Original-To: dev-commits-src-main@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 4ScXRq0btlz51wby; Sat, 25 Nov 2023 00:15:19 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScXRn68Zsz3V4G; Sat, 25 Nov 2023 00:15:17 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=loBVIHDk; spf=pass (mx1.freebsd.org: domain of rick.macklem@gmail.com designates 2607:f8b0:4864:20::435 as permitted sender) smtp.mailfrom=rick.macklem@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pf1-x435.google.com with SMTP id d2e1a72fcca58-6cb55001124so2433405b3a.0; Fri, 24 Nov 2023 16:15:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700871316; x=1701476116; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=4185JS/4+FU25c9iP87CDPdWUbK63pcLAlZP8a4r+Gw=; b=loBVIHDkm/ToNGj6VvgD8/vEOERHpPCVZiKAwMODDHW5n+mJJ0HsR+Vx11KgQP0/Ek 9GO4+5r2Uy4WUavAFZthk+OgLSWt5gSoETkECHGEpDNq3nS5esoEwMzBKVae0lpFXC6g VYec69xhf7InpDvYBD8GBzx5ictPhCJg4npvCdYW5As8oA0lhEImK4ueE2pJbIWZeNbm 1+iQUc5sDd2kQMS05Ek2wtfhdXAFNBtW9ok81T5LRO2ZitD3uWKUloNJOxlNKO7vEUMg 0S917EWL9ZsLDMJo8yHQ93H6Y69cQ8Fi4kt8kfdzn+rzKikfJuniWZcERdRTWULJ0jpk ge/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700871316; x=1701476116; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4185JS/4+FU25c9iP87CDPdWUbK63pcLAlZP8a4r+Gw=; b=pzMYR4mE8mMxFsXH5AJXlsQQoHnn/ZfLORsH/EmvG0V1ed3+bIu3OXUuDwPh1+opID IqeOnA30pN4gK//dPg3qeAHiSXmV+b2A+4LH10yEHz7zzAniA/K44Jk6gxaAopGp2Nj2 UIsFtl+ea+2Q9787O3ywIHmT/lhgkyI8RhPJcnm4bgLPtwj2RXEMmB4uP2QRC/5TSBs4 gC4UndTn16g15u4p3mwc4Tc5n0xcp901g9ORF6v04B0oycfTCadKO/wgKc/YunmGfMzO aWpADQ5t6gl+fZziZBDlpPYVZcG7pj79vpX1UjYRQ7O9GP9+CBdy8vG2NM6G8TePfx/a qGFw== X-Gm-Message-State: AOJu0Yz5C5pQkBtGfbF2DJ2s3RxMDSdXWAC8mOmAkztdfwewlAOHxewy +5FmRgwQbCxDfn6YufVRZidvbBosJL//xNrniQ== X-Google-Smtp-Source: AGHT+IGj9e2WDxE6dJ/zrT2A7JrMesUscQwE6sGYlGTQ60eiA6+dx/cwMLhvQVM+Ygprz90VUroKljYJWQjsJzfCKLc= X-Received: by 2002:a17:90b:33cd:b0:285:9d40:80c5 with SMTP id lk13-20020a17090b33cd00b002859d4080c5mr2606634pjb.19.1700871316258; Fri, 24 Nov 2023 16:15:16 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> In-Reply-To: From: Rick Macklem Date: Fri, 24 Nov 2023 16:15:06 -0800 Message-ID: Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots To: Mike Karels Cc: Konstantin Belousov , Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-3.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-0.99)[-0.992]; NEURAL_HAM_SHORT(-0.97)[-0.974]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::435:from]; TAGGED_FROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCPT_COUNT_SEVEN(0.00)[7]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_CC(0.00)[gmail.com,leidinger.net,freebsd.org] X-Rspamd-Queue-Id: 4ScXRn68Zsz3V4G X-Spamd-Bar: --- On Fri, Nov 24, 2023 at 3:35=E2=80=AFPM Rick Macklem wrote: > > On Fri, Nov 24, 2023 at 8:16=E2=80=AFAM Rick Macklem wrote: > > > > On Fri, Nov 24, 2023 at 7:58=E2=80=AFAM Rick Macklem wrote: > > > > > > On Fri, Nov 24, 2023 at 5:18=E2=80=AFAM Mike Karels = wrote: > > > > > > > > CAUTION: This email originated from outside of the University of Gu= elph. Do not click links or open attachments unless you recognize the sende= r and know the content is safe. If in doubt, forward suspicious emails to I= Thelp@uoguelph.ca. > > > > > > > > > > > > On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > > > > > > > > > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger wro= te: > > > > >> Am 2023-11-23 16:25, schrieb Rick Macklem: > > > > >>> The branch main has been updated by rmacklem: > > > > >>> > > > > >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728adec4c5= b3e840a1fb16bd16f8cc956d > > > > >>> > > > > >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > > > >>> Author: Rick Macklem > > > > >>> AuthorDate: 2023-11-23 15:23:33 +0000 > > > > >>> Commit: Rick Macklem > > > > >>> CommitDate: 2023-11-23 15:23:33 +0000 > > > > >>> > > > > >>> nfsd: Fix NFS access to .zfs/snapshot snapshots > > > > >>> > > > > >>> When a process attempts to access a snapshot under > > > > >>> //.zfs/snapshot, the snapshot is automounted. > > > > >>> However, without this patch, the automount does not > > > > >>> set mnt_exjail, which results in the snapshot not being > > > > >>> accessible over NFS. > > > > >>> > > > > >>> This patch defines a new function called vfs_exjail_clone() > > > > >>> which sets mnt_exjail from another mount point and > > > > >>> then uses that function to set mnt_exjail in the snapshot > > > > >>> automount. A separate patch that is currently a pull reque= st > > > > >>> for OpenZFS, calls this function to fix the problem. > > > > >> > > > > >> May the same/similar fix like for ZFS be needed / useful for nul= lfs mounted > > > > >> stuff? > > > > >> > > > > >> I have a ZFS dataset which is mounted via nullfs into a jail. Th= is > > > > >> nullfs-mount is then exported via samba. In samba I have the sha= dow-copy > > > > >> stuff enabled, but it doesn't work, as the jails can't access th= e snapshot. > > > > > > > > > > Jails cannot access snapshots because, as I understand, snapshots > > > > > are mounts. Nullfs does not provide an option to recursively bypa= ss > > > > > into mounts. The patch you responded to does not automatically mo= unts > > > > > snapshots on clients, it only allows them to mount if wanted. > > > > > > > > It works for me, with main and this change, or 13.2 without a patch= . > > > > I don't know the mechanics, but it doesn't use nullfs, and the snap= shot > > > > does not show up as a separate filesystem with the mount command. > > > Yes. ZFS essentially does an automount of the snapshots under .zfs/sn= apshot. > > > (As I understand it, there are non-default ZFS options that allow the= se to be > > > mounted manually instead.) > > > I can now see that these automounts are 'real mounts" in the > > > mountlist. The only reason > > > they are not visible is that they have MNT_IGNORE set on them. > > Oh and I forgot to mention that this automount is for some weird in > > memory file system that does just enough so you can see the snapshots. > > Once you "cd ", the vnodes are associated with the ZFS > > mount (dataset) and not this weird snapshot fs. (That is why it doesn't= need to > > be exported, but did need mnt_exjail to be set properly.) > > > > I might be able to test a nullfs over ZFS case later to-day and will > > post if I do so. > Yes, it is broken in a similar way. With a nullfs mount on top of a ZFS m= ount > that is exported to an NFS client, you can access the snapshots under > .zfs/snapshot > if the mnt_exjail checks are commented out. > However, if the checks are done, they fail. > > So, yes, something similar to what ZFS will do is needed for nullfs. > Now I have to figure out how/when it can be done. I will play with it to-= day, > but it probably won't get fixed until late Dec. Oops. Now my test is not working, even when the mnt_exjail check is commented out. (When I NFS mount the ZFS , I can see the snapshots under .zfs/snapshot, but when I NFS mount the nullfs mount that is on top of the ZFS I do not see it. So, I think Kostik is correct and it does not see the .zfs/snapshot automou= nt. I don't know how I screwed up on the first test after I disabled the mnt_exjail check, but it does not appear to have broken this case after all. rick > > Again, sorry for the breakage, rick > > > > > rick > > > > > > > > Now, as for what happens when nullfs is on top of ZFS, I do not know. > > > What Kostik says about nullfs recursing into mounts suggests it will = not work. > > > I will look at it, but since I am headed to Florida for a few weeks, = it may > > > not happen until the end of the year. > > > > > > If someone can test this case and determine if there is no NFS client= access > > > for snapshots under .zfs after applying the patch that is an > > > attachment in PR#275200 > > > when nullfs is over the ZFS file system, that would be appreciated. > > > > > > rick > > > > > > > > > > > Mike > > > > > > > > > You might try to set up something with autofs, no idea if it coul= d be made > > > > > to work usefully. > > > > From nobody Sat Nov 25 02:52:55 2023 X-Original-To: dev-commits-src-main@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 4Scbxv0HQkz523yH; Sat, 25 Nov 2023 02:53:07 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com [IPv6:2607:f8b0:4864:20::102e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Scbxt1TLQz3K9l; Sat, 25 Nov 2023 02:53:06 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b="MHR2J/Vu"; spf=pass (mx1.freebsd.org: domain of rick.macklem@gmail.com designates 2607:f8b0:4864:20::102e as permitted sender) smtp.mailfrom=rick.macklem@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pj1-x102e.google.com with SMTP id 98e67ed59e1d1-2859bde1d62so536699a91.2; Fri, 24 Nov 2023 18:53:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700880785; x=1701485585; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=MKJi58AdBzxNYF1SsTgU2c3Jo9CeARVUMJpt9Jhs0pA=; b=MHR2J/VuPnz1+WIXl1W5PsHjk0nudl3hOc9Bk00suHLjrukCJD2w7lP+swNtZWpqeA 8unRKtgvfOM9d4rvGG0zwlROV235scxierMSqB3dk+tO3LOSzW3lKhnJY2TjCk/9HF/1 Ek3X4npiyq4+D/E2bbGfqFGjMqM4dLJhcvVUzASdaPJY5kNZJ5rNDiLjIH3SvKX996LP HBrfuf4YD0p+oq/vDxKEV9wNtVKqfgd5fXgyt4pjFZZzuOnNVmgz/jMRWbX6IhPG/c8a O/Iw/BjI+pzZ84n3H3H2Z0Nwrw+C2PTCXBRIoqfJVfJ/yA+HBJMhnbehsQ2lGUqqjLww lPTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700880785; x=1701485585; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MKJi58AdBzxNYF1SsTgU2c3Jo9CeARVUMJpt9Jhs0pA=; b=qpYApM62jRk7lXqAWfoclwPAer2NCHH8bGkXhypn9G2vFCxm3Fxhk+Nf/HuaYpVCuJ F23JDmvr6eQRWQE1DPZ5stQNHaQkcskgBGWen67KQjjwCC4/X4InX15V/0GmQk2loFY7 DhAPtRykFmKYlhy0BVa3pmhiOQ/fNxvKJevy8fOLkXHQpfx19VzY1/xQJ1j70PpULEla ntpLmFLCHc4TVgoRyzVY5jt6tR+IfE3+ZMUv7c2Z4SM32JdXgMIfYV0MAMVpmBFL4Kfr mP1k/uwmYLHTcdIiAZoKj20oX6P812O7TWbYM292mCNtVDdtkJyn1Pzh4N3OUJ2NgStA v+/Q== X-Gm-Message-State: AOJu0Yw60gMb2ecr6wvRzKcUxYNSS3jVMfHOFeWx0SZjph7FjiUo1Kv3 uxIFmLsiMAhsM6WERt3wdHiK8vjluACrpVJnnw== X-Google-Smtp-Source: AGHT+IF2tglO1ovGkZneTZ+cREmtqQPSCIXu1DhyxQvRxpvRNdk0Lu8UIV8KHAW72wV4qI/ZT3GdwUxD9LaiEMwOj/0= X-Received: by 2002:a17:90b:4ad1:b0:285:9860:8a8a with SMTP id mh17-20020a17090b4ad100b0028598608a8amr3262484pjb.7.1700880784625; Fri, 24 Nov 2023 18:53:04 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> In-Reply-To: From: Rick Macklem Date: Fri, 24 Nov 2023 18:52:55 -0800 Message-ID: Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots To: Mike Karels Cc: Konstantin Belousov , Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-3.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; NEURAL_HAM_LONG(-0.99)[-0.992]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::102e:from]; TAGGED_FROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCPT_COUNT_SEVEN(0.00)[7]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_CC(0.00)[gmail.com,leidinger.net,freebsd.org] X-Rspamd-Queue-Id: 4Scbxt1TLQz3K9l X-Spamd-Bar: --- On Fri, Nov 24, 2023 at 4:15=E2=80=AFPM Rick Macklem wrote: > > On Fri, Nov 24, 2023 at 3:35=E2=80=AFPM Rick Macklem wrote: > > > > On Fri, Nov 24, 2023 at 8:16=E2=80=AFAM Rick Macklem wrote: > > > > > > On Fri, Nov 24, 2023 at 7:58=E2=80=AFAM Rick Macklem wrote: > > > > > > > > On Fri, Nov 24, 2023 at 5:18=E2=80=AFAM Mike Karels wrote: > > > > > > > > > > CAUTION: This email originated from outside of the University of = Guelph. Do not click links or open attachments unless you recognize the sen= der and know the content is safe. If in doubt, forward suspicious emails to= IThelp@uoguelph.ca. > > > > > > > > > > > > > > > On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > > > > > > > > > > > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger w= rote: > > > > > >> Am 2023-11-23 16:25, schrieb Rick Macklem: > > > > > >>> The branch main has been updated by rmacklem: > > > > > >>> > > > > > >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728adec4= c5b3e840a1fb16bd16f8cc956d > > > > > >>> > > > > > >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > > > > >>> Author: Rick Macklem > > > > > >>> AuthorDate: 2023-11-23 15:23:33 +0000 > > > > > >>> Commit: Rick Macklem > > > > > >>> CommitDate: 2023-11-23 15:23:33 +0000 > > > > > >>> > > > > > >>> nfsd: Fix NFS access to .zfs/snapshot snapshots > > > > > >>> > > > > > >>> When a process attempts to access a snapshot under > > > > > >>> //.zfs/snapshot, the snapshot is automounted. > > > > > >>> However, without this patch, the automount does not > > > > > >>> set mnt_exjail, which results in the snapshot not being > > > > > >>> accessible over NFS. > > > > > >>> > > > > > >>> This patch defines a new function called vfs_exjail_clone= () > > > > > >>> which sets mnt_exjail from another mount point and > > > > > >>> then uses that function to set mnt_exjail in the snapshot > > > > > >>> automount. A separate patch that is currently a pull req= uest > > > > > >>> for OpenZFS, calls this function to fix the problem. > > > > > >> > > > > > >> May the same/similar fix like for ZFS be needed / useful for n= ullfs mounted > > > > > >> stuff? > > > > > >> > > > > > >> I have a ZFS dataset which is mounted via nullfs into a jail. = This > > > > > >> nullfs-mount is then exported via samba. In samba I have the s= hadow-copy > > > > > >> stuff enabled, but it doesn't work, as the jails can't access = the snapshot. > > > > > > > > > > > > Jails cannot access snapshots because, as I understand, snapsho= ts > > > > > > are mounts. Nullfs does not provide an option to recursively by= pass > > > > > > into mounts. The patch you responded to does not automatically = mounts > > > > > > snapshots on clients, it only allows them to mount if wanted. > > > > > > > > > > It works for me, with main and this change, or 13.2 without a pat= ch. > > > > > I don't know the mechanics, but it doesn't use nullfs, and the sn= apshot > > > > > does not show up as a separate filesystem with the mount command. > > > > Yes. ZFS essentially does an automount of the snapshots under .zfs/= snapshot. > > > > (As I understand it, there are non-default ZFS options that allow t= hese to be > > > > mounted manually instead.) > > > > I can now see that these automounts are 'real mounts" in the > > > > mountlist. The only reason > > > > they are not visible is that they have MNT_IGNORE set on them. > > > Oh and I forgot to mention that this automount is for some weird in > > > memory file system that does just enough so you can see the snapshots= . > > > Once you "cd ", the vnodes are associated with the ZFS > > > mount (dataset) and not this weird snapshot fs. (That is why it doesn= 't need to > > > be exported, but did need mnt_exjail to be set properly.) > > > > > > I might be able to test a nullfs over ZFS case later to-day and will > > > post if I do so. > > Yes, it is broken in a similar way. With a nullfs mount on top of a ZFS= mount > > that is exported to an NFS client, you can access the snapshots under > > .zfs/snapshot > > if the mnt_exjail checks are commented out. > > However, if the checks are done, they fail. > > > > So, yes, something similar to what ZFS will do is needed for nullfs. > > Now I have to figure out how/when it can be done. I will play with it t= o-day, > > but it probably won't get fixed until late Dec. > Oops. Now my test is not working, even when the mnt_exjail check is > commented out. > (When I NFS mount the ZFS , I can see the snapshots under > .zfs/snapshot, > but when I NFS mount the nullfs mount that is on top of the ZFS > I do not see it. > > So, I think Kostik is correct and it does not see the .zfs/snapshot autom= ount. > > I don't know how I screwed up on the first test after I disabled the > mnt_exjail check, but > it does not appear to have broken this case after all. More info. Thanks to some off-list info from Mike Karels I tried it again. It turns out that the nullfs on top of ZFS export (the nullfs mount must be exported) sorta works. When you cd .zfs/snapshot/, it works. What doesn't work is: cd .zfs/snapshot ls --> which does not show the snapshot names The snapshot names are shown for a mount of the ZFS file system. So, it seems that the Readdir has issues for a nullfs on top of ZFS export for the .zfs/snapshot directory. I will poke at it some more in late Dec., but it does not seem to be a problem related to mnt_exjail. rick > > rick > > > > > Again, sorry for the breakage, rick > > > > > > > > rick > > > > > > > > > > > Now, as for what happens when nullfs is on top of ZFS, I do not kno= w. > > > > What Kostik says about nullfs recursing into mounts suggests it wil= l not work. > > > > I will look at it, but since I am headed to Florida for a few weeks= , it may > > > > not happen until the end of the year. > > > > > > > > If someone can test this case and determine if there is no NFS clie= nt access > > > > for snapshots under .zfs after applying the patch that is an > > > > attachment in PR#275200 > > > > when nullfs is over the ZFS file system, that would be appreciated. > > > > > > > > rick > > > > > > > > > > > > > > Mike > > > > > > > > > > > You might try to set up something with autofs, no idea if it co= uld be made > > > > > > to work usefully. > > > > > From nobody Sat Nov 25 05:07:45 2023 X-Original-To: dev-commits-src-main@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 4ScfxS4rCPz529HQ; Sat, 25 Nov 2023 05:07:56 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com [IPv6:2607:f8b0:4864:20::102e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScfxR4YGJz4SZZ; Sat, 25 Nov 2023 05:07:55 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=Kyq1cvBb; spf=pass (mx1.freebsd.org: domain of rick.macklem@gmail.com designates 2607:f8b0:4864:20::102e as permitted sender) smtp.mailfrom=rick.macklem@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pj1-x102e.google.com with SMTP id 98e67ed59e1d1-2851a2b30a2so1826490a91.3; Fri, 24 Nov 2023 21:07:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700888874; x=1701493674; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=PiMG3HJ6AT9/hOyCFeiiqx3YGFdYVOiuHe1S4Ni7stk=; b=Kyq1cvBb8zTggqdCy4pIlrJVH/S0I96fknFehSUUmIOoRy6gLAaGTI7nJZzUvKCbvu CVc3Ci1PdXWplI5QC7xnmtj9pAVW6FVNmD7V++XcSQN/6VMVtUAJP3XVZa++80iTwzxt pReh3aJ70Y+dHzen+3huyQKaFpQUmc+iJwXZ+r4NVnvYyJnUs3zJKhqdU7fQVzF998vg dkhAobcl5UXz8VXQ3X4OAAiIBkfAkd5cIs5r+acBF7QXbUwAWXaleWwxcXxGDunfbBaP 1VKJ1dBryfdtTsrthQQTNPMP0oq5vBhLJWfX8k5TxPaRcsMiNEk8ukXB9BujqFg7Br7F Hjuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700888874; x=1701493674; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PiMG3HJ6AT9/hOyCFeiiqx3YGFdYVOiuHe1S4Ni7stk=; b=mp1fOPEr06UCS3RXAtBwKDCfMa6erXoEO5HcfdUckOo4MoejCe2vAL7Ylc+q6hbay9 Xax0gAMK5dKmI65FzZv/RAZVuWNpPzeX7say4Hn31gBEu/WTt5ukZdMWV6O0uyHVdMkn /w8FLpPzltHAP4384LYCdt0EHaPhUXBokZBZjXSoLLIVsni51eu9U/4eY27axszL31eL DOLnW57AAfvyaqrZSl1PRjtJC4rgqxjwmIBl8mF1uF//qjV2DkIp9njqKAZUiERCHyNo 6Y94YVieha4iJlKUdgjn4CtasF2jy8BlkmMASBOZlep2h5yfB3vsc5nO+UocVQTnCHlR yqYw== X-Gm-Message-State: AOJu0YxvQfKvAoJosfSm4Q5fPsakNr0KK/OdCNySZJrNqH73yVB6pgp7 IYVTj4cqgpHqHJIE66AkPdaH1Qp1WbZV/KD7eQ== X-Google-Smtp-Source: AGHT+IHgLm72dd2uyTXJkINHm8muUEtT4iCik3NW9OrQZpL9PU8h7unViQV5JORro4rP2EIVSQHuFoN94vY1JOLeu90= X-Received: by 2002:a17:90b:3cb:b0:285:6211:6e1b with SMTP id go11-20020a17090b03cb00b0028562116e1bmr5439207pjb.28.1700888874115; Fri, 24 Nov 2023 21:07:54 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 References: <202311231525.3ANFPBo6039293@gitrepo.freebsd.org> <987d4593d50b9cbffb9b6443d3825499@Leidinger.net> In-Reply-To: From: Rick Macklem Date: Fri, 24 Nov 2023 21:07:45 -0800 Message-ID: Subject: Re: git: f5f277728ade - main - nfsd: Fix NFS access to .zfs/snapshot snapshots To: Mike Karels Cc: Konstantin Belousov , Alexander Leidinger , Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-2.82 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-0.99)[-0.992]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; NEURAL_SPAM_SHORT(0.17)[0.171]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::102e:from]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FREEMAIL_ENVFROM(0.00)[gmail.com]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; RCPT_COUNT_SEVEN(0.00)[7]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_CC(0.00)[gmail.com,leidinger.net,freebsd.org] X-Rspamd-Queue-Id: 4ScfxR4YGJz4SZZ X-Spamd-Bar: -- Just to summarize... Mike Karels has done a simple test that works, so I don't know why my tests have misbehaved. I will do some more tests in a few weeks. If you encounter problems accessing snapshots under .zfs/snapshot over NFS when you have added the patch in PR#275200, please post. rick On Fri, Nov 24, 2023 at 6:52=E2=80=AFPM Rick Macklem wrote: > > On Fri, Nov 24, 2023 at 4:15=E2=80=AFPM Rick Macklem wrote: > > > > On Fri, Nov 24, 2023 at 3:35=E2=80=AFPM Rick Macklem wrote: > > > > > > On Fri, Nov 24, 2023 at 8:16=E2=80=AFAM Rick Macklem wrote: > > > > > > > > On Fri, Nov 24, 2023 at 7:58=E2=80=AFAM Rick Macklem wrote: > > > > > > > > > > On Fri, Nov 24, 2023 at 5:18=E2=80=AFAM Mike Karels wrote: > > > > > > > > > > > > CAUTION: This email originated from outside of the University o= f Guelph. Do not click links or open attachments unless you recognize the s= ender and know the content is safe. If in doubt, forward suspicious emails = to IThelp@uoguelph.ca. > > > > > > > > > > > > > > > > > > On 24 Nov 2023, at 7:02, Konstantin Belousov wrote: > > > > > > > > > > > > > On Fri, Nov 24, 2023 at 08:50:22AM +0100, Alexander Leidinger= wrote: > > > > > > >> Am 2023-11-23 16:25, schrieb Rick Macklem: > > > > > > >>> The branch main has been updated by rmacklem: > > > > > > >>> > > > > > > >>> URL: https://cgit.FreeBSD.org/src/commit/?id=3Df5f277728ade= c4c5b3e840a1fb16bd16f8cc956d > > > > > > >>> > > > > > > >>> commit f5f277728adec4c5b3e840a1fb16bd16f8cc956d > > > > > > >>> Author: Rick Macklem > > > > > > >>> AuthorDate: 2023-11-23 15:23:33 +0000 > > > > > > >>> Commit: Rick Macklem > > > > > > >>> CommitDate: 2023-11-23 15:23:33 +0000 > > > > > > >>> > > > > > > >>> nfsd: Fix NFS access to .zfs/snapshot snapshots > > > > > > >>> > > > > > > >>> When a process attempts to access a snapshot under > > > > > > >>> //.zfs/snapshot, the snapshot is automounted. > > > > > > >>> However, without this patch, the automount does not > > > > > > >>> set mnt_exjail, which results in the snapshot not being > > > > > > >>> accessible over NFS. > > > > > > >>> > > > > > > >>> This patch defines a new function called vfs_exjail_clo= ne() > > > > > > >>> which sets mnt_exjail from another mount point and > > > > > > >>> then uses that function to set mnt_exjail in the snapsh= ot > > > > > > >>> automount. A separate patch that is currently a pull r= equest > > > > > > >>> for OpenZFS, calls this function to fix the problem. > > > > > > >> > > > > > > >> May the same/similar fix like for ZFS be needed / useful for= nullfs mounted > > > > > > >> stuff? > > > > > > >> > > > > > > >> I have a ZFS dataset which is mounted via nullfs into a jail= . This > > > > > > >> nullfs-mount is then exported via samba. In samba I have the= shadow-copy > > > > > > >> stuff enabled, but it doesn't work, as the jails can't acces= s the snapshot. > > > > > > > > > > > > > > Jails cannot access snapshots because, as I understand, snaps= hots > > > > > > > are mounts. Nullfs does not provide an option to recursively = bypass > > > > > > > into mounts. The patch you responded to does not automaticall= y mounts > > > > > > > snapshots on clients, it only allows them to mount if wanted. > > > > > > > > > > > > It works for me, with main and this change, or 13.2 without a p= atch. > > > > > > I don't know the mechanics, but it doesn't use nullfs, and the = snapshot > > > > > > does not show up as a separate filesystem with the mount comman= d. > > > > > Yes. ZFS essentially does an automount of the snapshots under .zf= s/snapshot. > > > > > (As I understand it, there are non-default ZFS options that allow= these to be > > > > > mounted manually instead.) > > > > > I can now see that these automounts are 'real mounts" in the > > > > > mountlist. The only reason > > > > > they are not visible is that they have MNT_IGNORE set on them. > > > > Oh and I forgot to mention that this automount is for some weird in > > > > memory file system that does just enough so you can see the snapsho= ts. > > > > Once you "cd ", the vnodes are associated with the Z= FS > > > > mount (dataset) and not this weird snapshot fs. (That is why it doe= sn't need to > > > > be exported, but did need mnt_exjail to be set properly.) > > > > > > > > I might be able to test a nullfs over ZFS case later to-day and wil= l > > > > post if I do so. > > > Yes, it is broken in a similar way. With a nullfs mount on top of a Z= FS mount > > > that is exported to an NFS client, you can access the snapshots under > > > .zfs/snapshot > > > if the mnt_exjail checks are commented out. > > > However, if the checks are done, they fail. > > > > > > So, yes, something similar to what ZFS will do is needed for nullfs. > > > Now I have to figure out how/when it can be done. I will play with it= to-day, > > > but it probably won't get fixed until late Dec. > > Oops. Now my test is not working, even when the mnt_exjail check is > > commented out. > > (When I NFS mount the ZFS , I can see the snapshots under > > .zfs/snapshot, > > but when I NFS mount the nullfs mount that is on top of the ZFS > > I do not see it. > > > > So, I think Kostik is correct and it does not see the .zfs/snapshot aut= omount. > > > > I don't know how I screwed up on the first test after I disabled the > > mnt_exjail check, but > > it does not appear to have broken this case after all. > More info. Thanks to some off-list info from Mike Karels I tried it again= . > It turns out that the nullfs on top of ZFS export (the nullfs mount must = be > exported) sorta works. When you cd .zfs/snapshot/, it > works. > > What doesn't work is: > cd .zfs/snapshot > ls > --> which does not show the snapshot names > The snapshot names are shown for a mount of the ZFS file system. > > So, it seems that the Readdir has issues for a nullfs on top of ZFS > export for the .zfs/snapshot directory. I will poke at it some more > in late Dec., but it does not seem to be a problem related to mnt_exjail. > > rick > > > > > rick > > > > > > > > Again, sorry for the breakage, rick > > > > > > > > > > > rick > > > > > > > > > > > > > > Now, as for what happens when nullfs is on top of ZFS, I do not k= now. > > > > > What Kostik says about nullfs recursing into mounts suggests it w= ill not work. > > > > > I will look at it, but since I am headed to Florida for a few wee= ks, it may > > > > > not happen until the end of the year. > > > > > > > > > > If someone can test this case and determine if there is no NFS cl= ient access > > > > > for snapshots under .zfs after applying the patch that is an > > > > > attachment in PR#275200 > > > > > when nullfs is over the ZFS file system, that would be appreciate= d. > > > > > > > > > > rick > > > > > > > > > > > > > > > > > Mike > > > > > > > > > > > > > You might try to set up something with autofs, no idea if it = could be made > > > > > > > to work usefully. > > > > > > From nobody Sat Nov 25 06:49:06 2023 X-Original-To: dev-commits-src-main@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 4ScjBN2V0Sz521MN; Sat, 25 Nov 2023 06:49:16 +0000 (UTC) (envelope-from delphij@delphij.net) Received: from anubis.delphij.net (anubis.delphij.net [IPv6:2001:470:1:117::25]) (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 "anubis.delphij.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ScjBM01qWz3RTj; Sat, 25 Nov 2023 06:49:14 +0000 (UTC) (envelope-from delphij@delphij.net) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=delphij.net header.s=y07n header.b=SZySVv+E; dkim=pass header.d=delphij.net header.s=w44o header.b=NQmS8pUK; spf=pass (mx1.freebsd.org: domain of delphij@delphij.net designates 2001:470:1:117::25 as permitted sender) smtp.mailfrom=delphij@delphij.net; dmarc=pass (policy=reject) header.from=delphij.net DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/simple; d=delphij.net; i=@delphij.net; q=dns/txt; s=y07n; t=1700894948; h=message-id : date : mime-version : reply-to : subject : to : references : from : in-reply-to : content-type : from; bh=JvLM1ZUb6CgGc+4nbV/ERL/80bYuEVp220pyPkmcR8c=; b=SZySVv+EH0WIV/M10+t6XImADfvm4HlFQW7KaKoingrX0koq6mZYCNkaS6nDvYCgcE9RF 3DQCseCKT9reu+MDg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=delphij.net; i=@delphij.net; q=dns/txt; s=w44o; t=1700894948; h=message-id : date : mime-version : reply-to : subject : to : references : from : in-reply-to : content-type : from; bh=JvLM1ZUb6CgGc+4nbV/ERL/80bYuEVp220pyPkmcR8c=; b=NQmS8pUKh74xzlp/bFZX0aPxRYqTyCDa2C1IEjbWQimDFqKCATI+pRWxl3ZLu+SCUt7Hg GnfvIMUeYsYCN0x0OUGfe8sJu4no6+VHeJiNWiKgjTjQtzSH9Jej717Kl/P376UKvVeFw5e ghmY9X7q4gyobPLzmeeuZ1msRS9Ar/h0hfiGt5sJsY5jftZJOZ6VxxNgXE0BEnL4w8ps4dH fdQWO+OTxN10htE7bzY5cOmELOP1ZxMDLEQ5/xG7cCAaxc6uTckveVjKKVnMdREUSRcJh6E GqsPXFWmQGVCFsVf/C1qG9NiS9zV1L67ZZ7NMrifCo1gddXwC/nZLkcYHnqg== Received: from xins-laptop (unknown [IPv6:2601:646:9a00:3b0a:d73:692:cf6f:687d]) by anubis.delphij.net (Postfix) with ESMTPSA id E935B2E2C1; Fri, 24 Nov 2023 22:49:07 -0800 (PST) Message-ID: <934faa57-60d2-4be7-bdd3-e64c62ae71ad@delphij.net> Date: Fri, 24 Nov 2023 22:49:06 -0800 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Reply-To: d@delphij.net Subject: Re: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function Content-Language: en-US To: John Baldwin , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202311231707.3ANH758D008755@gitrepo.freebsd.org> From: Xin Li Autocrypt: addr=delphij@delphij.net; keydata= xjMEZPbDoRYJKwYBBAHaRw8BAQdAsUNmxEWz6QiGdFbBrVVEpjNpgQV9FXjDWsLsY0UwRPvN HFhpbiBMSSA8ZGVscGhpakBkZWxwaGlqLm5ldD7ClgQTFgoAPhYhBLskk2pXNatsapeNzxED 4uuXWeTFBQJk9sRMAhsDBQkKBDXmBQsJCAcDBRUKCQgLBRYCAwEAAh4FAheAAAoJEBED4uuX WeTF6yIA/2Ls3Rb/qC8mQZ6D2S0UO5vblPghJfboFJLNJFw3i4GYAQCsTmQg3ahgbNEJu/vU xgtro2kTxa6kKnZ35IbqPqPcCc44BGT2w6ESCisGAQQBl1UBBQEBB0Cxji+sQgVPajLNA/Lw yHx0ogSalPQszdkfVgeg3iR3FAMBCAfCeAQYFgoAIBYhBLskk2pXNatsapeNzxED4uuXWeTF BQJk9sOhAhsMAAoJEBED4uuXWeTF3BQBAIx/gPCTFN2DPBrKLkE3oC/+j9EkmNLMUCGidlP/ Zb6HAP4nL1kStTsOldIGhi/3m1LvU7r3Kel3MnlIK8/9BlLPAg== In-Reply-To: <202311231707.3ANH758D008755@gitrepo.freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------MMtI5XCMNWTqaLa3YXfa0tEf" X-Spamd-Result: default: False [-4.87 / 15.00]; SIGNED_PGP(-2.00)[]; MIME_BASE64_TEXT_BOGUS(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-0.996]; NEURAL_HAM_SHORT(-0.98)[-0.982]; DMARC_POLICY_ALLOW(-0.50)[delphij.net,reject]; MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain]; R_DKIM_ALLOW(-0.20)[delphij.net:s=y07n,delphij.net:s=w44o]; R_SPF_ALLOW(-0.20)[+a:sirius.delphij.net]; ONCE_RECEIVED(0.10)[]; MIME_BASE64_TEXT(0.10)[]; XM_UA_NO_VERSION(0.01)[]; FREEFALL_USER(0.00)[delphij]; FROM_HAS_DN(0.00)[]; HAS_REPLYTO(0.00)[d@delphij.net]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; REPLYTO_DOM_EQ_FROM_DOM(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]; HAS_ATTACHMENT(0.00)[]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; DKIM_TRACE(0.00)[delphij.net:+]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; MLMMJ_DEST(0.00)[dev-commits-src-all@FreeBSD.org,dev-commits-src-main@FreeBSD.org]; RCVD_TLS_ALL(0.00)[] X-Rspamd-Queue-Id: 4ScjBM01qWz3RTj X-Spamd-Bar: ---- This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------MMtI5XCMNWTqaLa3YXfa0tEf Content-Type: multipart/mixed; boundary="------------XaZN7DPn0T10BUE60sMQ22jJ"; protected-headers="v1" From: Xin Li Reply-To: d@delphij.net To: John Baldwin , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Message-ID: <934faa57-60d2-4be7-bdd3-e64c62ae71ad@delphij.net> Subject: Re: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function References: <202311231707.3ANH758D008755@gitrepo.freebsd.org> In-Reply-To: <202311231707.3ANH758D008755@gitrepo.freebsd.org> --------------XaZN7DPn0T10BUE60sMQ22jJ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAyMy0xMS0yMyAwOTowNywgSm9obiBCYWxkd2luIHdyb3RlOg0KPiBUaGUgYnJhbmNo IG1haW4gaGFzIGJlZW4gdXBkYXRlZCBieSBqaGI6DQo+IA0KPiBVUkw6IGh0dHBzOi8vY2dp dC5GcmVlQlNELm9yZy9zcmMvY29tbWl0Lz9pZD0xOWYwNzNjNjEyYWZhMDExMWQyMTZlNWNj YWI5NTI1YmZjOTdlYzMyDQo+IA0KPiBjb21taXQgMTlmMDczYzYxMmFmYTAxMTFkMjE2ZTVj Y2FiOTUyNWJmYzk3ZWMzMg0KPiBBdXRob3I6ICAgICBKb2huIEJhbGR3aW4gPGpoYkBGcmVl QlNELm9yZz4NCj4gQXV0aG9yRGF0ZTogMjAyMy0xMS0yMyAxNzowNjoyNCArMDAwMA0KPiBD b21taXQ6ICAgICBKb2huIEJhbGR3aW4gPGpoYkBGcmVlQlNELm9yZz4NCj4gQ29tbWl0RGF0 ZTogMjAyMy0xMS0yMyAxNzowNjoyNCArMDAwMA0KPiANCj4gICAgICBuZXctYnVzOiBBZGQg cmVzb3VyY2VfdmFsaWRhdGVfbWFwX3JlcXVlc3QgZnVuY3Rpb24NCj4gICAgICANCj4gICAg ICBUaGlzIGhlbHBlciBmdW5jdGlvbiBmb3IgQlVTX01BUF9SRVNPVVJDRSBwZXJmb3JtcyBj b21tb24gYXJndW1lbnQNCj4gICAgICB2YWxpZGF0aW9uLg0KPiAgICAgIA0KPiAgICAgIFJl dmlld2VkIGJ5OiAgICBpbXANCj4gICAgICBEaWZmZXJlbnRpYWwgUmV2aXNpb246ICBodHRw czovL3Jldmlld3MuZnJlZWJzZC5vcmcvRDQyNzIzDQoNCkFmdGVyIHRoaXMgY2hhbmdlIG15 IGtlcm5lbCBwYW5pY3Mgd2l0aDoNCg0KSFBUUyBpcyBpbiBJTlZBUklBTlQgbW9kZSEhDQpy YW5kb206IGVudHJvcHkgZGV2aWNlIGV4dGVybmFsIGludGVyZmFjZQ0Ka2JkMCBhdCBrYmRt dXgwDQpXQVJOSU5HOiBEZXZpY2UgInNwa3IiIGlzIEdpYW50IGxvY2tlZCBhbmQgbWF5IGJl IGRlbGV0ZWQgYmVmb3JlIEZyZWVCU0QgDQoxNS4wLg0KdnR2Z2EwOiA8VlQgVkdBIGRyaXZl cj4NCmFlc25pMDogPEFFUy1DQkMsQUVTLUNDTSxBRVMtR0NNLEFFUy1JQ00sQUVTLVhUUz4N CmFjcGkwOiA8QUxBU0tBIEEgTSBJID4NCmFjcGkwOiBQb3dlciBCdXR0b24gKGZpeGVkKQ0K Y3B1MDogPEFDUEkgQ1BVPiBvbiBhY3BpMA0KaHBldDA6IDxIaWdoIFByZWNpc2lvbiBFdmVu dCBUaW1lcj4gaW9tZW0gMHhmZWQwMDAwMC0weGZlZDAwM2ZmIG9uIGFjcGkwDQpwYW5pYzog YnVzX2dlbmVyaWNfcm1hbl9hY3RpdmF0ZV9yZXNvdXJjZTogcm1hbiAweGZmZmZmZmZmODEy MjI3NzAgDQpkb2Vzbid0IG1hdGNoIGZvciByZXNvdXJjZSAweGZmZmZmODAwMDNkMWE0MDAN CmNwdWlkID0gMA0KdGltZSA9IDENCktEQjogc3RhY2sgYmFja3RyYWNlOg0KZGJfdHJhY2Vf c2VsZl93cmFwcGVyKCkgYXQgZGJfdHJhY2Vfc2VsZl93cmFwcGVyKzB4MmIvZnJhbWUgDQow eGZmZmZmZmZmODJkNWM4ODANCnZwYW5pYygpIGF0IHZwYW5pYysweDEzMi9mcmFtZSAweGZm ZmZmZmZmODJkNWM5YjANCnBhbmljKCkgYXQgcGFuaWMrMHg0My9mcmFtZSAweGZmZmZmZmZm ODJkNWNhMTANCmJ1c19nZW5lcmljX3JtYW5fYWN0aXZhdGVfcmVzb3VyY2UoKSBhdCANCmJ1 c19nZW5lcmljX3JtYW5fYWN0aXZhdGVfcmVzb3VyY2UrMHgxNDYvZnJhbWUgMHhmZmZmZmZm ZjgyZDVjYTcwDQphY3BpX2FsbG9jX3N5c3JlcygpIGF0IGFjcGlfYWxsb2Nfc3lzcmVzKzB4 ODEvZnJhbWUgMHhmZmZmZmZmZjgyZDVjYWIwDQphY3BpX2FsbG9jX3Jlc291cmNlKCkgYXQg YWNwaV9hbGxvY19yZXNvdXJjZSsweDEwNi9mcmFtZSAweGZmZmZmZmZmODJkNWNiNzANCmJ1 c19hbGxvY19yZXNvdXJjZSgpIGF0IGJ1c19hbGxvY19yZXNvdXJjZSsweDliL2ZyYW1lIDB4 ZmZmZmZmZmY4MmQ1Y2JkMA0KaHBldF9hdHRhY2goKSBhdCBocGV0X2F0dGFjaCsweGI0L2Zy YW1lIDB4ZmZmZmZmZmY4MmQ1Y2NiMA0KZGV2aWNlX2F0dGFjaCgpIGF0IGRldmljZV9hdHRh Y2grMHgzYmMvZnJhbWUgMHhmZmZmZmZmZjgyZDVjY2YwDQpkZXZpY2VfcHJvYmVfYW5kX2F0 dGFjaCgpIGF0IGRldmljZV9wcm9iZV9hbmRfYXR0YWNoKzB4NzAvZnJhbWUgDQoweGZmZmZm ZmZmODJkNWNkMjANCmJ1c19nZW5lcmljX2F0dGFjaCgpIGF0IGJ1c19nZW5lcmljX2F0dGFj aCsweDE4L2ZyYW1lIDB4ZmZmZmZmZmY4MmQ1Y2Q0MA0KYWNwaV9wcm9iZV9jaGlsZHJlbigp IGF0IGFjcGlfcHJvYmVfY2hpbGRyZW4rMHgyMjYvZnJhbWUgMHhmZmZmZmZmZjgyZDVjZGEw DQphY3BpX2F0dGFjaCgpIGF0IGFjcGlfYXR0YWNoKzB4OTdiL2ZyYW1lIDB4ZmZmZmZmZmY4 MmQ1Y2UzMA0KZGV2aWNlX2F0dGFjaCgpIGF0IGRldmljZV9hdHRhY2grMHgzYmMvZnJhbWUg MHhmZmZmZmZmZjgyZDVjZTcwDQpkZXZpY2VfcHJvYmVfYW5kX2F0dGFjaCgpIGF0IGRldmlj ZV9wcm9iZV9hbmRfYXR0YWNoKzB4NzAvZnJhbWUgDQoweGZmZmZmZmZmODJkNWNlYTANCmJ1 c19nZW5lcmljX2F0dGFjaCgpIGF0IGJ1c19nZW5lcmljX2F0dGFjaCsweDE4L2ZyYW1lIDB4 ZmZmZmZmZmY4MmQ1Y2VjMA0KZGV2aWNlX2F0dGFjaCgpIGF0IGRldmljZV9hdHRhY2grMHgz YmMvZnJhbWUgMHhmZmZmZmZmZjgyZDVjZjAwDQpkZXZpY2VfcHJvYmVfYW5kX2F0dGFjaCgp IGF0IGRldmljZV9wcm9iZV9hbmRfYXR0YWNoKzB4NzAvZnJhbWUgDQoweGZmZmZmZmZmODJk NWNmMzANCmJ1c19nZW5lcmljX25ld19wYXNzKCkgYXQgYnVzX2dlbmVyaWNfbmV3X3Bhc3Mr MHhlZC9mcmFtZSAweGZmZmZmZmZmODJkNWNmNjANCmJ1c19zZXRfcGFzcygpIGF0IGJ1c19z ZXRfcGFzcysweDM2L2ZyYW1lIDB4ZmZmZmZmZmY4MmQ1Y2Y5MA0KY29uZmlndXJlKCkgYXQg Y29uZmlndXJlKzB4OS9mcmFtZSAweGZmZmZmZmZmODJkNWNmYTANCm1pX3N0YXJ0dXAoKSBh dCBtaV9zdGFydHVwKzB4MWM4L2ZyYW1lIDB4ZmZmZmZmZmY4MmQ1Y2ZmMA0KS0RCOiBlbnRl cjogcGFuaWMNClsgdGhyZWFkIHBpZCAwIHRpZCAxMDAwMDAgXQ0KU3RvcHBlZCBhdCAgICAg IGtkYl9lbnRlcisweDMyOiBtb3ZxICAgICQwLDB4YTM4OGIzKCVyaXApDQpkYj4NCg0KQ2hl ZXJzLA0KDQo= --------------XaZN7DPn0T10BUE60sMQ22jJ-- --------------MMtI5XCMNWTqaLa3YXfa0tEf Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wnsEABYIACMWIQS7JJNqVzWrbGqXjc8RA+Lrl1nkxQUCZWGY4gUDAAAAAAAKCRARA+Lrl1nkxZz/ AQDUSklW/iQvgZb21yhhx/Wxht1Wk7kcRI7w4hgpSEZFkgEAysycQVTYta5WFGv4mjRzPvo951ro nEgOvkESjEZWzww= =rKxb -----END PGP SIGNATURE----- --------------MMtI5XCMNWTqaLa3YXfa0tEf-- From nobody Sat Nov 25 07:51:36 2023 X-Original-To: dev-commits-src-main@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 4SckZM0rvdz52WS4; Sat, 25 Nov 2023 07:51:39 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SckZM0PyZz4FwQ; Sat, 25 Nov 2023 07:51:39 +0000 (UTC) (envelope-from bapt@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700898699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=U5YqbOYjmZWP2mldxcqGAeK5+tHRfHjXd42//77hOtY=; b=Wg3lx5O2+iVtF882DZ8fSU5QoRUESWF3HnhBM1m7yXJ2gNAmCyc62WgiZW7j1HdCwzoImD kmValT93zIonU8/ScZOPGnK8jWN07o4YRvnm1hby8RkBymAdQtmccBmhvfUq07kfNl2nVQ 487+ahQhySALrsrLlqKs8i7Ks3lONMcB+7awQoHLQPM+JUWXo2g+SGSGN5QQmPK6Kw/VAi LJzFa7H73P6ezrvQrOTtn6Fgg/4sNclGlvdW1/tcoFhyz2hTN50NLQgzhzm9nxJrHgGexi L96Dz0V6V1ClO7dKvQOsgFh3pPAKM/rS0nLZnVWO9m6rzfcJWgI7fgHkPfxyxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700898699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=U5YqbOYjmZWP2mldxcqGAeK5+tHRfHjXd42//77hOtY=; b=ZUhXHWCY79+eD8jV7n4zay35XrFp+iWWoxDP5E3iYvmNRuBJih1qDe3wan0QH3Y4VrnhwD ZG/Znl66GDN63kMKLRm3eNVDOdCtDNJdK2G9aOckcNq1dXuNuFBHxqayMDLJmU84/6GDiy Qp4abZjnIvXK49SCsLDNN1sQmtVGfYmqay34YjvnK2ipS3wexAn3RalKVjz8P4mFKtEMnv G5JgUou2mPcmXJA2HjUhc9g3wUqxu258qVura+XvETqyn6PFOIurL85pQLS+CraBxBkd2j unKEIErln6rDCA7D7ZXV9Eg0AFwAt6joaY2In67Fkler4mcMmH2EA8FebqbCgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700898699; a=rsa-sha256; cv=none; b=oj9QGHfTZ2wIxjeNHEowesg8B0oYKnjOv1/J+Fn+dzJ3pxn+BIuku4G2Yvq+B7RtVcXwRC cA5Z2ayogCgqD35wdb/NSVBmxGGQHVN/IG4gBkNRJ34akbN0A7tx3uCGj8b8ZREEft3Qh9 jxBGvtjdNNDMnB+WcfeLukJnoUIULub972Ms3BO4nVCBt7Nt6u4SpGMANFdQXnU7arIZsx HEZpwmXcb25YTljXQDD7/rtcnajwdtdqSHmaL1HlaYxhWi8/lP8K26Q4pqBxJIJI/j63AT z16Fh10OT4tuvsBe7GDiJIjlg3DCCzkKR1/vcU0FsNQb4H9g5o7ByMfe3HKWwA== Received: from aniel.nours.eu (nours.eu [176.31.115.77]) (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) (Authenticated sender: bapt) by smtp.freebsd.org (Postfix) with ESMTPSA id 4SckZL5zyRzr0H; Sat, 25 Nov 2023 07:51:38 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: by aniel.nours.eu (Postfix, from userid 1001) id 62BCC1A34D9; Sat, 25 Nov 2023 08:51:36 +0100 (CET) Date: Sat, 25 Nov 2023 08:51:36 +0100 From: Baptiste Daroussin To: Mateusz Guzik Cc: Mitchell Horne , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: ad34121518bb - main - Revert "pst: improve shutdown_post_sync handler" Message-ID: References: <202311231948.3ANJmwEC076780@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Kernel building for i386 is broken now and pkgbase builders do complain, can anyone have a look? Best regards, Bapt On Thu, Nov 23, 2023 at 10:09:35PM +0100, Mateusz Guzik wrote: > i386 kernel is going down, i suggest just dropping the patch > > On 11/23/23, Mitchell Horne wrote: > > The branch main has been updated by mhorne: > > > > URL: > > https://cgit.FreeBSD.org/src/commit/?id=ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a > > > > commit ad34121518bb7e1a38d4a6b1ccf9ca6fe298dd0a > > Author: Mitchell Horne > > AuthorDate: 2023-11-23 19:46:28 +0000 > > Commit: Mitchell Horne > > CommitDate: 2023-11-23 19:48:44 +0000 > > > > Revert "pst: improve shutdown_post_sync handler" > > > > I did not realize this driver was i386-only, and the change fails to > > compile. Revert so that I can fix it properly. > > > > This reverts commit 428ebb7cd9f51afb6809bf81cf21a05e0fd93ff4. > > > > Pointy hat to: mhorne > > --- > > sys/dev/pst/pst-iop.c | 2 +- > > sys/dev/pst/pst-raid.c | 14 +++++--------- > > 2 files changed, 6 insertions(+), 10 deletions(-) > > > > diff --git a/sys/dev/pst/pst-iop.c b/sys/dev/pst/pst-iop.c > > index 43ced2401d2c..f9921a564333 100644 > > --- a/sys/dev/pst/pst-iop.c > > +++ b/sys/dev/pst/pst-iop.c > > @@ -432,7 +432,7 @@ iop_queue_wait_msg(struct iop_softc *sc, int mfa, struct > > i2o_basic_message *msg) > > int status, timeout = 10000; > > > > mtx_lock(&sc->mtx); > > - if ((sc->reg->oqueue_intr_mask & I20_OUT_INTR_QUEUE) == 0) { > > + if (!(sc->reg->oqueue_intr_mask & 0x08)) { > > msg->transaction_context = (u_int32_t)&request; > > msg->initiator_context = (u_int32_t)iop_done; > > sc->reg->iqueue = mfa; > > diff --git a/sys/dev/pst/pst-raid.c b/sys/dev/pst/pst-raid.c > > index 4f9279462ee8..4e9c4fb724bc 100644 > > --- a/sys/dev/pst/pst-raid.c > > +++ b/sys/dev/pst/pst-raid.c > > @@ -73,7 +73,7 @@ struct pst_request { > > static disk_strategy_t pststrategy; > > static int pst_probe(device_t); > > static int pst_attach(device_t); > > -static void pst_shutdown_post_sync(device_t, int); > > +static int pst_shutdown(device_t); > > static void pst_start(struct pst_softc *); > > static void pst_done(struct iop_softc *, u_int32_t, struct i2o_single_reply > > *); > > static int pst_rw(struct pst_request *); > > @@ -170,23 +170,18 @@ pst_attach(device_t dev) > > name, psc->info->capacity/(512*255*63), 255, 63, > > device_get_nameunit(psc->iop->dev)); > > > > - EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown_post_sync, > > + EVENTHANDLER_REGISTER(shutdown_post_sync, pst_shutdown, > > dev, SHUTDOWN_PRI_FIRST); > > return 0; > > } > > > > -static void > > -pst_shutdown_post_sync(device_t dev, int howto __unused) > > +static int > > +pst_shutdown(device_t dev) > > { > > struct pst_softc *psc = device_get_softc(dev); > > struct i2o_bsa_cache_flush_message *msg; > > int mfa; > > > > - if (SCHEDULER_STOPPED()) { > > - /* Request polled shutdown. */ > > - psc->reg->oqueue_intr_mask = 0xffffffff; > > - } > > - > > mfa = iop_get_mfa(psc->iop); > > msg = (struct i2o_bsa_cache_flush_message *)(psc->iop->ibase + mfa); > > bzero(msg, sizeof(struct i2o_bsa_cache_flush_message)); > > @@ -199,6 +194,7 @@ pst_shutdown_post_sync(device_t dev, int howto > > __unused) > > msg->control_flags = 0x0; /* 0x80 = post progress reports */ > > if (iop_queue_wait_msg(psc->iop, mfa, (struct i2o_basic_message > > *)msg)) > > printf("pst: shutdown failed!\n"); > > + return 0; > > } > > > > static void > > > > > > > -- > Mateusz Guzik > From nobody Sat Nov 25 08:39:46 2023 X-Original-To: dev-commits-src-main@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 4SclfH5tSRz51fgf; Sat, 25 Nov 2023 08:40:07 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4SclfH2Jt2z4VBb; Sat, 25 Nov 2023 08:40:07 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.17.1/8.17.1) with ESMTP id 3AP8dkXZ031758; Sat, 25 Nov 2023 10:39:49 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 3AP8dkXZ031758 Received: (from kostik@localhost) by tom.home (8.17.1/8.17.1/Submit) id 3AP8dkGG031757; Sat, 25 Nov 2023 10:39:46 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sat, 25 Nov 2023 10:39:46 +0200 From: Konstantin Belousov To: d@delphij.net Cc: John Baldwin , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function Message-ID: References: <202311231707.3ANH758D008755@gitrepo.freebsd.org> <934faa57-60d2-4be7-bdd3-e64c62ae71ad@delphij.net> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <934faa57-60d2-4be7-bdd3-e64c62ae71ad@delphij.net> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4SclfH2Jt2z4VBb On Fri, Nov 24, 2023 at 10:49:06PM -0800, Xin Li wrote: > On 2023-11-23 09:07, John Baldwin wrote: > > The branch main has been updated by jhb: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=19f073c612afa0111d216e5ccab9525bfc97ec32 > > > > commit 19f073c612afa0111d216e5ccab9525bfc97ec32 > > Author: John Baldwin > > AuthorDate: 2023-11-23 17:06:24 +0000 > > Commit: John Baldwin > > CommitDate: 2023-11-23 17:06:24 +0000 > > > > new-bus: Add resource_validate_map_request function > > This helper function for BUS_MAP_RESOURCE performs common argument > > validation. > > Reviewed by: imp > > Differential Revision: https://reviews.freebsd.org/D42723 > > After this change my kernel panics with: > > HPTS is in INVARIANT mode!! > random: entropy device external interface > kbd0 at kbdmux0 > WARNING: Device "spkr" is Giant locked and may be deleted before FreeBSD > 15.0. > vtvga0: > aesni0: > acpi0: > acpi0: Power Button (fixed) > cpu0: on acpi0 > hpet0: iomem 0xfed00000-0xfed003ff on acpi0 > panic: bus_generic_rman_activate_resource: rman 0xffffffff81222770 doesn't > match for resource 0xfffff80003d1a400 > cpuid = 0 > time = 1 > KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame > 0xffffffff82d5c880 > vpanic() at vpanic+0x132/frame 0xffffffff82d5c9b0 > panic() at panic+0x43/frame 0xffffffff82d5ca10 > bus_generic_rman_activate_resource() at > bus_generic_rman_activate_resource+0x146/frame 0xffffffff82d5ca70 > acpi_alloc_sysres() at acpi_alloc_sysres+0x81/frame 0xffffffff82d5cab0 > acpi_alloc_resource() at acpi_alloc_resource+0x106/frame 0xffffffff82d5cb70 > bus_alloc_resource() at bus_alloc_resource+0x9b/frame 0xffffffff82d5cbd0 > hpet_attach() at hpet_attach+0xb4/frame 0xffffffff82d5ccb0 > device_attach() at device_attach+0x3bc/frame 0xffffffff82d5ccf0 > device_probe_and_attach() at device_probe_and_attach+0x70/frame > 0xffffffff82d5cd20 > bus_generic_attach() at bus_generic_attach+0x18/frame 0xffffffff82d5cd40 > acpi_probe_children() at acpi_probe_children+0x226/frame 0xffffffff82d5cda0 > acpi_attach() at acpi_attach+0x97b/frame 0xffffffff82d5ce30 > device_attach() at device_attach+0x3bc/frame 0xffffffff82d5ce70 > device_probe_and_attach() at device_probe_and_attach+0x70/frame > 0xffffffff82d5cea0 > bus_generic_attach() at bus_generic_attach+0x18/frame 0xffffffff82d5cec0 > device_attach() at device_attach+0x3bc/frame 0xffffffff82d5cf00 > device_probe_and_attach() at device_probe_and_attach+0x70/frame > 0xffffffff82d5cf30 > bus_generic_new_pass() at bus_generic_new_pass+0xed/frame 0xffffffff82d5cf60 > bus_set_pass() at bus_set_pass+0x36/frame 0xffffffff82d5cf90 > configure() at configure+0x9/frame 0xffffffff82d5cfa0 > mi_startup() at mi_startup+0x1c8/frame 0xffffffff82d5cff0 > KDB: enter: panic > [ thread pid 0 tid 100000 ] > Stopped at kdb_enter+0x32: movq $0,0xa388b3(%rip) > db> Me too. But in my case, it is not HPET but atrtc_acpi_attach(). From nobody Sat Nov 25 09:37:22 2023 X-Original-To: dev-commits-src-main@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 4ScmwL2qpYz529sm; Sat, 25 Nov 2023 09:37:22 +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 4ScmwL2P4Wz3LRt; Sat, 25 Nov 2023 09:37:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700905042; 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=C/2lGkCHXnDj0BTViRiyfbee/8XSggE2QpzDSYi+mhs=; b=pVTK2vTdJCt4g55BsGgmJ5lsxSIzVEagWL3ViaObQkDtw9TU6V3KTmJshlPGSfhAx0jNMi s0GX2mmAyNWjB54/nBNqrNZAqS5KRP0gxSK8AcUvLB6zWYTXn1ClxY8ij53CZa8UU28rf8 VcWclcz4xK4K3nXs2weRKM9kqUB8FEagi4uw693CVpb5Erz/FMaK6vupqENS5JdwLBE7l4 GZa7t0r6dHHV6UMTeOJobCxW9YFjcbSgZJGMo3eTe2D0YmK69RIuZoC1RqEQqTsuMHcLK7 Vkg93c3LZ1hwhpy8sUflFoy7Gf7+CVC7sP/2HXLeL9acX196X0ktG52KyhHpDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700905042; 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=C/2lGkCHXnDj0BTViRiyfbee/8XSggE2QpzDSYi+mhs=; b=MyLqljeQjCG+y08CE9KBYJnt8l81rEzyaUoM6wmJKKuTRuTfwP3XeJJujhn6MvZJ2wTNdE qyl+wTIBztfKtFECYEmEIHh+T7JqKP1K9oiopUifjzUs3BEYxu8yRV+leTuIfV0nn2Bw2b KLbiHxF4qXU64dkrbEUF86CB86MTooAHPo4WQD4lWSPme/qTwrRwz684kZhqLXaZXW2OYT S9U9xDpLm3ICWBb82ro0GKUFyJI7jYZ8bHcgA/defjRKdRIRV9t4hAYrSRVsneSOPEku54 MWGymSp85L4W7swylPi1FHQqHmOb232VPsXjL/2tu/go+MyrDX5YHkX88dhM8Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700905042; a=rsa-sha256; cv=none; b=fxbF+FiEkH7AqTIp9HhCwo5c4EwR2vdaaKx4vub/LXxYdXzbdHqSXSj+VXTLdKSflQ5qZG VieCHDxWqyDhXVi6YhJIL4QM9Q5qUFWnmIU4bSW9adO+TGJc1AGyCQOcx9mwvG3AOisZZL C/fzuJHvlE/68hT/H56x50iaXj1hedIU3b1BOb2pUxRjPD4eZBborOu1wes55EpZ8lpVXB Okr92qhAFUgbEb/W+BCcBE2zW54XtAPp050nlVf48R0ooZ0D5gWJwT4gCuQ19jsywdkp8A 5q4MDyTww/1PbCwbVtA3dHNwYznc/2Sn6RI2fdmAvwMhPSYYBbpXLe3NAsYrcA== 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 4ScmwL1Sm6z1MRD; Sat, 25 Nov 2023 09:37:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3AP9bMj9071566; Sat, 25 Nov 2023 09:37:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3AP9bMkn071563; Sat, 25 Nov 2023 09:37:22 GMT (envelope-from git) Date: Sat, 25 Nov 2023 09:37:22 GMT Message-Id: <202311250937.3AP9bMkn071563@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Peter Holm Subject: git: 49a83b94395a - main - stress2: Do not make assumptions about the value of UFS_LINK_MAX List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: pho X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 49a83b94395a6eaae4642aa72c9f6a40143f0f45 Auto-Submitted: auto-generated The branch main has been updated by pho: URL: https://cgit.FreeBSD.org/src/commit/?id=49a83b94395a6eaae4642aa72c9f6a40143f0f45 commit 49a83b94395a6eaae4642aa72c9f6a40143f0f45 Author: Peter Holm AuthorDate: 2023-11-25 09:36:00 +0000 Commit: Peter Holm CommitDate: 2023-11-25 09:36:00 +0000 stress2: Do not make assumptions about the value of UFS_LINK_MAX --- tools/test/stress2/misc/nlink3.sh | 2 +- tools/test/stress2/misc/nlink4.sh | 2 +- tools/test/stress2/misc/nlink5.sh | 7 +++++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/tools/test/stress2/misc/nlink3.sh b/tools/test/stress2/misc/nlink3.sh index 0c1b9fc0c32d..55557124c9c2 100755 --- a/tools/test/stress2/misc/nlink3.sh +++ b/tools/test/stress2/misc/nlink3.sh @@ -52,7 +52,7 @@ main (void) { err(1, "creat(%s)", file); close(fd); - mx = UFS_LINK_MAX - 1; /* UFS_LINK_MAX = 32767 */ + mx = UFS_LINK_MAX - 1; for (i = 0; i < mx; i++) { snprintf(file, sizeof(file), "%d", i); if (link("f", file) == -1) diff --git a/tools/test/stress2/misc/nlink4.sh b/tools/test/stress2/misc/nlink4.sh index 5f31df2c24d0..cce8bb06985a 100755 --- a/tools/test/stress2/misc/nlink4.sh +++ b/tools/test/stress2/misc/nlink4.sh @@ -51,7 +51,7 @@ main (void) { err(1, "creat(%s)", file); close(fd); - mx = UFS_LINK_MAX - 1; /* UFS_LINK_MAX = 32767 */ + mx = UFS_LINK_MAX - 1; for (i = 0; i < mx; i++) { snprintf(file, sizeof(file), "%d", i); if (link("f", file) == -1) diff --git a/tools/test/stress2/misc/nlink5.sh b/tools/test/stress2/misc/nlink5.sh index af19d052f9f3..4e7f2d9c827d 100755 --- a/tools/test/stress2/misc/nlink5.sh +++ b/tools/test/stress2/misc/nlink5.sh @@ -33,6 +33,9 @@ . ../default.cfg +UFS_LINK_MAX=`grep UFS_LINK_MAX /usr/include/ufs/ufs/dinode.h 2>/dev/null` +[ -z "$UFS_LINK_MAX" ] && exit 0 +UFS_LINK_MAX=`echo $UFS_LINK_MAX | awk '{print $NF}'` cat > /tmp/nlink5.c < #include @@ -46,7 +49,7 @@ main (void) { int i, mx; char dir[100]; - mx = UFS_LINK_MAX - 2; /* UFS_LINK_MAX = 32767 */ + mx = UFS_LINK_MAX - 2; for (i = 0; i < mx; i++) { snprintf(dir, sizeof(dir), "%d", i); if (mkdir(dir, 0700) == -1) @@ -111,7 +114,7 @@ set +e cd $mntpoint /tmp/nlink5; s=$? n=`find . -type d -maxdepth 1 | wc -l` -[ $n -ne 32766 ] && s=2 +[ $n -ne $((UFS_LINK_MAX - 1)) ] && s=2 cd $here umount $mntpoint From nobody Sat Nov 25 18:30:13 2023 X-Original-To: dev-commits-src-main@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 4Sd0lD00Msz52S2m; Sat, 25 Nov 2023 18:30:16 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Sd0lC6J20z3dmw; Sat, 25 Nov 2023 18:30:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700937015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=m2VywToliUyTTMXWJc/U7M1LdUtbA8uR5Tqk5kyS3pE=; b=iRmY03dtrtDL66a84EAUhz/HQ1LcwvsaOF6Xb6n7TReSyyN1m5akhn8FEORm7YHbuN0EGH 17Egho46ruvUXTDF+ziTuuBmdCh8a8ElnErMKcEEQSLslCkcynzWcWJi1izLXtI7sDwMoY GMbk79Eftld3n+EzV/jWKxH3Ioj063DWWTmcFbUZB0cTEO1OW9eRIt/8eJQupIkHW9V1NZ p4XkhgLboGMIQgaNISB2pjdT6I8kOsuYreCDWtoUmXzu00l65b9Ptv9NdwgR8dZ5N7YPOx ePxJuk262sZh1u6vGXVImXHsMtvLJQeakLNS8fhT5VP4PtUkv9nfX37niCS1qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700937015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=m2VywToliUyTTMXWJc/U7M1LdUtbA8uR5Tqk5kyS3pE=; b=by14rzhskcXkyA3a/8ipCyyPsdzQ250XmAipHcqNunbv5cnE99lUqXvZSrUDTLm9+ZRSDA qIk6gG28e45BM3oZNb13XOiN0w68EFkSwzx8jbaQH1Bco6QC4SyIBfoy95RVGkY136Z0X0 BdR8zK3ErhR4wI3Ibj68Rl+Kyz8KH4hE9G2aweNVz2+Io6REbmwPBggOtVa+Uj3zvWjEJA coqPulcDF8rmkdxPUeSxg3nQBnMXKYpaV9ZkKzyRlOo2FmnT7J2N6fwZd98b2av+yT04eB SyyZG/peqZIvr7dymNLIeD+CFNeiPyP4v9eUvynqbIZMhgyWHw5QIYXCPy9Ryw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700937015; a=rsa-sha256; cv=none; b=W7IJAALgenKj0rFROTbA8gstaIc9P6KiHB1g4v9LpTHI3w63gfolJR7oDQrVHhwU+IW/bz x0E2XvgJSVs+Xc4NAi9KnY3Oqos+93ujRvn8HcstXMJiAZfuQ7TD0PXfwohQKFA/CClViD qDXIx2tVwGs5/OD2wupcv1vsbFfRBfn4q9u8Jh3xDQisNTGhFy5VEaBZQ459Bz5jWNqcdL UH/mdPNzYNePGLFJrv0JobZjd65NrusUD8cIOqhl7T7XpZEDGf+Y10q5FkPGZDpz3p9CTl KYTs2J3lw3FKIkOkMWi+KnCBnEQrTCsXgpuErdojSqCQI97v/fAvK3wSXwjRjg== Received: from [IPV6:2601:648:8384:fd00:815b:80c5:5564:2a43] (unknown [IPv6:2601:648:8384:fd00:815b:80c5:5564:2a43]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Sd0lC1tfFz13LB; Sat, 25 Nov 2023 18:30:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <0e2a051b-d676-4f28-b0c6-60b5409d931e@FreeBSD.org> Date: Sat, 25 Nov 2023 10:30:13 -0800 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 19f073c612af - main - new-bus: Add resource_validate_map_request function Content-Language: en-US To: Konstantin Belousov , d@delphij.net Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202311231707.3ANH758D008755@gitrepo.freebsd.org> <934faa57-60d2-4be7-bdd3-e64c62ae71ad@delphij.net> From: John Baldwin In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/25/23 12:39 AM, Konstantin Belousov wrote: > On Fri, Nov 24, 2023 at 10:49:06PM -0800, Xin Li wrote: >> On 2023-11-23 09:07, John Baldwin wrote: >>> The branch main has been updated by jhb: >>> >>> URL: https://cgit.FreeBSD.org/src/commit/?id=19f073c612afa0111d216e5ccab9525bfc97ec32 >>> >>> commit 19f073c612afa0111d216e5ccab9525bfc97ec32 >>> Author: John Baldwin >>> AuthorDate: 2023-11-23 17:06:24 +0000 >>> Commit: John Baldwin >>> CommitDate: 2023-11-23 17:06:24 +0000 >>> >>> new-bus: Add resource_validate_map_request function >>> This helper function for BUS_MAP_RESOURCE performs common argument >>> validation. >>> Reviewed by: imp >>> Differential Revision: https://reviews.freebsd.org/D42723 >> >> After this change my kernel panics with: >> >> HPTS is in INVARIANT mode!! >> random: entropy device external interface >> kbd0 at kbdmux0 >> WARNING: Device "spkr" is Giant locked and may be deleted before FreeBSD >> 15.0. >> vtvga0: >> aesni0: >> acpi0: >> acpi0: Power Button (fixed) >> cpu0: on acpi0 >> hpet0: iomem 0xfed00000-0xfed003ff on acpi0 >> panic: bus_generic_rman_activate_resource: rman 0xffffffff81222770 doesn't >> match for resource 0xfffff80003d1a400 >> cpuid = 0 >> time = 1 >> KDB: stack backtrace: >> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame >> 0xffffffff82d5c880 >> vpanic() at vpanic+0x132/frame 0xffffffff82d5c9b0 >> panic() at panic+0x43/frame 0xffffffff82d5ca10 >> bus_generic_rman_activate_resource() at >> bus_generic_rman_activate_resource+0x146/frame 0xffffffff82d5ca70 >> acpi_alloc_sysres() at acpi_alloc_sysres+0x81/frame 0xffffffff82d5cab0 >> acpi_alloc_resource() at acpi_alloc_resource+0x106/frame 0xffffffff82d5cb70 >> bus_alloc_resource() at bus_alloc_resource+0x9b/frame 0xffffffff82d5cbd0 >> hpet_attach() at hpet_attach+0xb4/frame 0xffffffff82d5ccb0 >> device_attach() at device_attach+0x3bc/frame 0xffffffff82d5ccf0 >> device_probe_and_attach() at device_probe_and_attach+0x70/frame >> 0xffffffff82d5cd20 >> bus_generic_attach() at bus_generic_attach+0x18/frame 0xffffffff82d5cd40 >> acpi_probe_children() at acpi_probe_children+0x226/frame 0xffffffff82d5cda0 >> acpi_attach() at acpi_attach+0x97b/frame 0xffffffff82d5ce30 >> device_attach() at device_attach+0x3bc/frame 0xffffffff82d5ce70 >> device_probe_and_attach() at device_probe_and_attach+0x70/frame >> 0xffffffff82d5cea0 >> bus_generic_attach() at bus_generic_attach+0x18/frame 0xffffffff82d5cec0 >> device_attach() at device_attach+0x3bc/frame 0xffffffff82d5cf00 >> device_probe_and_attach() at device_probe_and_attach+0x70/frame >> 0xffffffff82d5cf30 >> bus_generic_new_pass() at bus_generic_new_pass+0xed/frame 0xffffffff82d5cf60 >> bus_set_pass() at bus_set_pass+0x36/frame 0xffffffff82d5cf90 >> configure() at configure+0x9/frame 0xffffffff82d5cfa0 >> mi_startup() at mi_startup+0x1c8/frame 0xffffffff82d5cff0 >> KDB: enter: panic >> [ thread pid 0 tid 100000 ] >> Stopped at kdb_enter+0x32: movq $0,0xa388b3(%rip) >> db> > > Me too. > > But in my case, it is not HPET but atrtc_acpi_attach(). I think I know why this is, and I'll have to disable the assertion for now. Logically speaking, bus devices should not be passing resources they've created form their internal rman's up to a parent device to activate. Instead, when a device allocates a rman such as the sysres rman for ACPI, or the windows for PCI-PCI bridges, it allocates a real resource from the upstream bus and then uses an rman to sub-allocate that resource to child devices. What these bus devices should be doing (eventually) is taking a request to map one of these resources and turning it into a request to map the corresponding window (subset) of the resource allocated from the parent. bus_map/unmap_resource are designed to facilitate that. For now I can quiet the assertion, but I will fix the ACPI bus eventually. This also provides a better way to handle "translated" resources btw as a host bridge that does translation (e.g. of PCI BARs) should allocate the "translated" resource from the parent and use bus_map/unmap to activate regions of that parent resource to use as mappings of the child resources allocated from an internal rman in the bridge driver. However, fixing all that requires having proper bus_map/unmap up in all the nexus drivers which we don't have yet (I have most (all?) of them fixed in a branch that these recent patches came from). I'm not sure why the VM I tested booted didn't trip over this case though as bhyve VMs do have ACPI devices that allocate from sysres ranges. :( -- John Baldwin From nobody Sat Nov 25 18:39:39 2023 X-Original-To: dev-commits-src-main@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 4Sd0y35GsKz52Wq8; Sat, 25 Nov 2023 18:39:39 +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 4Sd0y34qSwz4BYp; Sat, 25 Nov 2023 18:39:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700937579; 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=rBMmdfxS4yGBaaigekzaQFjTusetLv/Z5sRIOBbbCNM=; b=gjEEo2GR7cSfp8nD8knshx+c5yO9WuSUqQ6+sZBv0gPswM1qloFpW4FEr129Hezz0HxFri F1zfeEuayfg9132KGtn7Y3aoM6nuiQ2e2cJWsZraKNsZAy4I0uAq5XQhA/Qer6TCRrkaZG Sre/4G0M3Qs/HDIq9nK6fq+nZX8//evshwQ6VfDZbpFkNnX0Rbqgp9I6D1mdB08MGiJoSn WofeY6QMzYi6E8kdXJiYMTkwDQLN5GugHfi7oTYf1LmukTBHmIalfnZwUtn5Gmfc1W0asT EPUWyTnLYq+YBLb6jq++cX/C861iWs0mLdemg6nsuMO4t+8WE7NacTiji7HEAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700937579; 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=rBMmdfxS4yGBaaigekzaQFjTusetLv/Z5sRIOBbbCNM=; b=vx6NAxk/LVH2R9hvFE73sO/M+FgY0dvZSeB5idEydXEr8mP/8GcgQTNPwjM/V8O4FmU0D0 lxsVtDAFa+NXyf6U476y63aPAcWU3PdBpM4yGd8pvQPvApM5uhXgObTpTOhOYC05A2g8x8 aNNXq1sdIfysQZUQTztsKceVU0ttpEJLAqA6meMJVrL0v/Dh/pzd0Ize1iDOODl7ydLnnC VLrhtf6IXWXyeriqxa0Wfg8K7HXJ8xU+qelxCGnUCeheb2WG9ye1H3eltq0ZBtL1FLdTCU fbZ369U4iLP23n9j5rn+vsn0gN91xZFfds7mdv3tP1+aNo7DoMs8WXiuHMXSUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700937579; a=rsa-sha256; cv=none; b=s2anVeg6Th3bQtzuB4GANvT3K1ItTlvfg7/PcjQaCRH03mh8c3AW8Rbg9PPAlwrXD9jhCA dXS8gWEdum3H0y2KNssxckckhU2qrATycj1jinVnka8xzfbuxVSRL0fEGlZE8qTWDD8Y8Z OEw9/n1u46T+FatVOLUZgFoYn1yP6aQ/0qVR17WNBe9fYZZwV8ReKBjLxqoQonlvSneDEO zREt+6XVYiWHC//lisVzhfjBTS2UXqZMc5dEImrzFOmQw3Vs10ToJgKvctwKakGNSGi4DP 4KzvbhNPHFJmNjJQTgGXpfA5wLPWoPweGF5P5pzCyyX9bR1Ewq51/NQQMaXLJg== 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 4Sd0y33jnwz8c5; Sat, 25 Nov 2023 18:39:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3APIddUS072716; Sat, 25 Nov 2023 18:39:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3APIddHX072713; Sat, 25 Nov 2023 18:39:39 GMT (envelope-from git) Date: Sat, 25 Nov 2023 18:39:39 GMT Message-Id: <202311251839.3APIddHX072713@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: ed88eef140a1 - main - new-bus: Disable assertions for rman mismatches for activate/deactivate List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ed88eef140a1c3d57d546f409c216806dd3da809 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=ed88eef140a1c3d57d546f409c216806dd3da809 commit ed88eef140a1c3d57d546f409c216806dd3da809 Author: John Baldwin AuthorDate: 2023-11-25 18:32:19 +0000 Commit: John Baldwin CommitDate: 2023-11-25 18:32:19 +0000 new-bus: Disable assertions for rman mismatches for activate/deactivate Bus drivers which use an rman to sub-divide a resource allocated from a parent bus should handle mapping requests (and activate/deactivate requests) for those sub-allocated resources by doing a subset mapping of the resource allocated from the parent (and then using this to handle activate/deactivate requests). However, not all bus drivers which use internal rmans (such as acpi(4) and pci_pci(4)) do that since not all nexus drivers support bus_map/unmap. Eventually bus drivers should be updated to do this properly at which point these assertions can be reenabled. Reported by: delphij, kib --- sys/kern/subr_bus.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 8da99e158f1c..4f7053cc2613 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -4305,12 +4305,12 @@ bus_generic_rman_activate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { struct resource_map map; -#ifdef INVARIANTS +#ifdef INVARIANTS_XXX struct rman *rm; #endif int error; -#ifdef INVARIANTS +#ifdef INVARIANTS_XXX rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); KASSERT(rman_is_region_manager(r, rm), ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); @@ -4344,12 +4344,12 @@ bus_generic_rman_deactivate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { struct resource_map map; -#ifdef INVARIANTS +#ifdef INVARIANTS_XXX struct rman *rm; #endif int error; -#ifdef INVARIANTS +#ifdef INVARIANTS_XXX rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); KASSERT(rman_is_region_manager(r, rm), ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); From nobody Sat Nov 25 18:47:54 2023 X-Original-To: dev-commits-src-main@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 4Sd17b0FFcz52ZyC; Sat, 25 Nov 2023 18:47:55 +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 4Sd17Z6t0Vz4Fh5; Sat, 25 Nov 2023 18:47:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700938075; 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=EEj9XMN7KjgXe5S9hVf+RsJo4jDL0JcciA69nIoFx1g=; b=Z2z9QHV7epuPjbKXCrpg1JIxo2TM5U2TkbtFHXO7mgKRA/aNNX41tGsImFwKnFmUOA9jrE bp5AiD5lJMd/mSlzT9K2n+f8OA+EWNMsztjVppR10pP0AP0MI3tyNJUJQYP0d04PLV+uVB /TVHrHKGG7/izobplhrv7yZFxY4QFfEfLlv3gc+BSuLQXFv9PqfGnhUUrgdYBqsj0yQdww SH4UNY6nQmY9loyIFieWftFadzi8ArJlBthNEA6MDbU/ZvJv4/63VXahaFMxtIBl92fnvC BlRpwN5ZPsAYYzQZ1vDKcwq86qfZd3aSaNXFhu1u87FGEFvMA0SalgMvd6cWDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700938075; 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=EEj9XMN7KjgXe5S9hVf+RsJo4jDL0JcciA69nIoFx1g=; b=Sq5Jj/0wUuYyDf/5zDo/N8mUQnJA7ZsQJMHWzSt3TeGblJcby1oFVlqbT+Xc8cbmmM5Emr dxsBzaPcdqz/MjneAR3XP1I5LQS8of4NPinmJ2tyse5R/jgCpgR/9TawccGCDGcAEjL+a4 V0o5itWugGZ6PESDuK1LNeZdAsopXdZDuSK93vFGBJxZgJR8VNITkWISsTo4IGC4upTye7 BVoDz8gFu+Qh52fb4go0qTm1QZs8C+DzqoAwmDLcag27pd9fTKZEm2DBM8YfUYkE9/v8da 4ekLEjaqPjX+Zdw4qlwtev0SXtxVNi8CGfTXz/l8h/vgzjGNVl6RW8FBkVEQdQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700938075; a=rsa-sha256; cv=none; b=XlC7GsWetOiCFsCHGV6TH44+Tq51Ya4lHkX3cm45gsuYRq8hGXq8IJqREQTFf29BTgryBn YJbAtchfd5eiBCQnhsBmBSAZz82/szg7OcYsPnJoUajnW5q5R8JqQ0O2U3hrSRCTSdulfr IU8hHHPsIhKj478UU8okXdveyFg6uhusrH+Oy5oU5HTHH3dwzNC37oSz5RahCDr6ywRU9x W7HQfnpUH0Z6KvBQ9VNJR93HESb6V3Ju405V+OwRriC3oGH7qCO9I73INpopp6c42ZuINE mSxSPtKbMiX/xQcwlUNz0974LRHxZ2jQ4FxlDlsMNcWhYEfo6GP1OhzcJmcE7w== 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 4Sd17Z5WgDz8WQ; Sat, 25 Nov 2023 18:47:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3APIlsEu088922; Sat, 25 Nov 2023 18:47:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3APIlscO088919; Sat, 25 Nov 2023 18:47:54 GMT (envelope-from git) Date: Sat, 25 Nov 2023 18:47:54 GMT Message-Id: <202311251847.3APIlscO088919@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: d3849ec3c9e7 - main - Set installed kernel and driver files access modes using KMODMODE var List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d3849ec3c9e700956a8a1d03f7755d586934f225 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d3849ec3c9e700956a8a1d03f7755d586934f225 commit d3849ec3c9e700956a8a1d03f7755d586934f225 Author: Konstantin Belousov AuthorDate: 2023-11-25 13:28:34 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-25 18:40:39 +0000 Set installed kernel and driver files access modes using KMODMODE var Reviewed by: emaste, imp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42768 --- sys/conf/kern.post.mk | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk index cb34ebc36295..d2968b42f5ef 100644 --- a/sys/conf/kern.post.mk +++ b/sys/conf/kern.post.mk @@ -426,22 +426,22 @@ kernel-install: .PHONY fi .endif mkdir -p ${DESTDIR}${KODIR} - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO} ${DESTDIR}${KODIR}/ + ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO} ${DESTDIR}${KODIR}/ .if defined(DEBUG) && !defined(INSTALL_NODEBUG) && ${MK_KERNEL_SYMBOLS} != "no" mkdir -p ${DESTDIR}${KERN_DEBUGDIR}${KODIR} - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/ + ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/ .endif .if defined(KERNEL_EXTRA_INSTALL) - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_EXTRA_INSTALL} ${DESTDIR}${KODIR}/ + ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_EXTRA_INSTALL} ${DESTDIR}${KODIR}/ .endif kernel-reinstall: @-chflags -R noschg ${DESTDIR}${KODIR} - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO} ${DESTDIR}${KODIR}/ + ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO} ${DESTDIR}${KODIR}/ .if defined(DEBUG) && !defined(INSTALL_NODEBUG) && ${MK_KERNEL_SYMBOLS} != "no" - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/ + ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/ .endif config.o env.o hints.o vers.o vnode_if.o: From nobody Sat Nov 25 18:47:55 2023 X-Original-To: dev-commits-src-main@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 4Sd17c1k2qz52ZyH; Sat, 25 Nov 2023 18:47:56 +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 4Sd17c0flzz4Fvs; Sat, 25 Nov 2023 18:47:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700938076; 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=W8nTGkHb58KFWjTVmeyEB/rM6rnv7Y6NN+KP1SQsiVs=; b=T8QWQHJkKOTTeT7NWvEEm3nx2bqYZ+49Fy6KL+2jcO9MwED7paSU+xX5lLEnrzxgMlaHmR AcusYvTHDaaTbQLMJM5mK2EjQgw91OzG8VC7F8miBFK74OeloDX4xl3YthuRoQWL9ZhLSh eAYTRCs4OAYxqtYdnf2CnJUGMc5Jy2n3Ji8VE6SmcJ6VIyZMMPEoLCFyL4GNtQQ3ua5hXk gVvl3bBEFFULP+2ewIBMMAJDUjLjn39cG6pNP0Il2eQj2wC0tUojE93V1xBWcaHcGdJb/G IQe0s857nXoL6eGCRohyv+JVhK4f1q8Im+/6OdyiTkCgM7M/p8PobsQ/OM3IIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1700938076; 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=W8nTGkHb58KFWjTVmeyEB/rM6rnv7Y6NN+KP1SQsiVs=; b=SOQvHkjs+w+1C10IXTX2DO02JLfzZ0Yl7S56syQLLFX8aZ/02QWR8r5Rt628Xa/8YzTeX3 XhfSI6Vf0h0Rm+3/0j8W4/KcRPEFKZdNlk8/2pGAFe+BBqk/WHZ5GHC/vs8HTmgtGrTuPm f/SRYu6rhdv25Jm/JjE/uw4PHzj/yVXiGUuaEEAPu9sXw4fLszz8LB/HaStUt3lPAEIex5 0Xn4v0yLhz8WokEQQIDUHtNuoKjVNPyyx2/rnF2sBr6Zvudm6xVBZWop194QWp8EHtMUUQ Zj1lMiaYwfcXsUs/4tsN9i8QaEzWsQFRcs9VudNLOCRWwogzCtJAkcn9+lahYw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1700938076; a=rsa-sha256; cv=none; b=AEd3NYd3pFuYebs8J+sWj/ZUayQtnEcGcVn6LaNIFgWpinWLXMwfTH60myZyxWUqRNgf9D ruxwO9MID6vK7US5OZwJiL7WgJM43muSU9i/KiXUQdSHbqe7O2VzmjHyjYsWgxERGaVTlj qffGn59poUrooJWIILjxrsfQAxwgagsWnjRJvIAus01M5w20mMBBHGfWkeS18VZrsyRC2W tU1RHcDVkJmtlESZ4ZN1ECtxtjRAB9sY/LTV4JUk0CHDPUE53RoecnusKwymwHY0n6J72x 6D7P9LJEJ9rCTX9hlSNglCi5IXsOEZm1YV0oKyTUWdTouK+d2fgBahrd2xYdoA== 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 4Sd17b6qMvz8ch; Sat, 25 Nov 2023 18:47:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3APIltnp088982; Sat, 25 Nov 2023 18:47:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3APIltD3088979; Sat, 25 Nov 2023 18:47:55 GMT (envelope-from git) Date: Sat, 25 Nov 2023 18:47:55 GMT Message-Id: <202311251847.3APIltD3088979@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: a9758e46473b - main - Do not install kernel and modules with executable access bit set List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a9758e46473babc03bfe06edfec35e0c71fa7780 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a9758e46473babc03bfe06edfec35e0c71fa7780 commit a9758e46473babc03bfe06edfec35e0c71fa7780 Author: Konstantin Belousov AuthorDate: 2023-11-25 13:30:06 +0000 Commit: Konstantin Belousov CommitDate: 2023-11-25 18:47:42 +0000 Do not install kernel and modules with executable access bit set They are not executables and cannot be activated by kernel. Reviewed by: emaste, imp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D42768 --- share/mk/bsd.own.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/mk/bsd.own.mk b/share/mk/bsd.own.mk index 6205faf61a2f..aec88d64850f 100644 --- a/share/mk/bsd.own.mk +++ b/share/mk/bsd.own.mk @@ -171,7 +171,7 @@ NOBINMODE?= 444 KMODDIR?= /boot/modules KMODOWN?= ${BINOWN} KMODGRP?= ${BINGRP} -KMODMODE?= ${BINMODE} +KMODMODE?= ${NOBINMODE} DTBDIR?= /boot/dtb DTBODIR?= /boot/dtb/overlays DTBOWN?= root