From nobody Sun Jan 22 04:53: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 4P018j4RWvz2t5G2; Sun, 22 Jan 2023 04:53: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 4P018j3ssRz46xx; Sun, 22 Jan 2023 04:53:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674363221; 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=mcLJxnAj8CN0/tsO5i8ncMp4LlppXMVAFvEEfy3vr6A=; b=WTmXQWhKJFgwitQIIhL8u6khAinN3+DzrOzWV/zpzpXHfDJB1SJq0gSp2h/0jBTZqCsZiy yQXVj9ODhLBPM3xfDCz8OzyeLtEEpS6LhyYzBFahcfZf734IjC9pXn3zPac+jtjZqfN5Bj EtPOEbs1Qp0DSzkD/dtm17Y78rQ3OkuJgnnkZV7mdNHhA/fWC8o6AQgdjeqg03ziFTMDM2 w3FM+CGzRL2ULFqnlHjHgnkTnwscA/kOYkQqBglj7fn6cROgfN/rf+jfgur9VOL/tlW33h VS6ri1chLG136FGuhYyWIlwG5SLN/iWvj7afF79MvTD3DplpB5Qglj8TWOLGKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674363221; 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=mcLJxnAj8CN0/tsO5i8ncMp4LlppXMVAFvEEfy3vr6A=; b=bhMeTu3+13V2ZLM+HMVeAjN1/pgPV4Kc8dDnUKq1OFb+hbfL+sVxecEVwWDiM2jKbwww/2 382loL/fFwD42SRxvHKw4lhPfGWsZC8mWkMHg+RhOKcrpAcf8FC69Dh6S+XiXvqDSsWUar L1i961lOK+YWSlhdn7tGlByTzL8gAkt39/bceFBYQhc3qy4Ov53ElqcPBkO3LlLIlhagzS VlJMhP2wuSjijCO94agYzgG725a0JL+PxUSkMK3feh2Nd3Mual8a1neLqcYTTT1Jw5OPLk HGSIf5dKE0/jaW7zackjM74jq/Rixhmdmw/vmzrs0CtTBxi2tq6tHcBmvpyXYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674363221; a=rsa-sha256; cv=none; b=dHpCDQ2ILyJYSD7CStZroc+wJzHG7X/AWQfx3UQZOzwg9sbMaOJhk8E3Yj5p5EYApc++R5 VdzluNUOFVD/7X0ebZvoCPoFipD4b/IhtcN1vNyFaU1zTJd3WE6zEE1C7wt2KdzNVxo0cx dJ9TetJap6p3yLFQFG/dilih2X2DodtRYbON08pOpaU7ZH9R4iNo5v7A0UnZWZeZgTkS7i Z74mQndSZ5xfrg3+/0JLONRXzIu34RMz6/q1bv2HAVgiIiv5l3dJp8axIIjUTkXSgPbvW0 dJ64DaCzwUiHr1kxf0BdecgFTHE/xLzMAbd1Oidtvw3VS0q5CoXTAlMPQAbRbg== 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 4P018j2vKZzcPN; Sun, 22 Jan 2023 04:53:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30M4rfkA073396; Sun, 22 Jan 2023 04:53:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30M4rfpk073395; Sun, 22 Jan 2023 04:53:41 GMT (envelope-from git) Date: Sun, 22 Jan 2023 04:53:41 GMT Message-Id: <202301220453.30M4rfpk073395@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: a39dedeb3105 - main - netpfil tests: improve sniffer.py 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: a39dedeb31052ec74b0cd394d56f8d7cc8534645 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=a39dedeb31052ec74b0cd394d56f8d7cc8534645 commit a39dedeb31052ec74b0cd394d56f8d7cc8534645 Author: Kajetan Staszkiewicz AuthorDate: 2023-01-20 01:40:34 +0000 Commit: Kristof Provost CommitDate: 2023-01-22 03:26:32 +0000 netpfil tests: improve sniffer.py Multiple improvements to sniffer.py: * Remove ambiguity of configuring recvif, it must be now explicitly specified. * Don't catch exceptions around creating the sniffer, let it properly fail and display the whole stack trace. * Count correct packets so that duplicates can be found. MFC after: 1 week Sponsored by: InnoGames GmbH Differential Revision: https://reviews.freebsd.org/D38120 --- tests/sys/net/pcp.py | 4 ++-- tests/sys/net/stp.py | 4 ++-- tests/sys/netpfil/common/pft_icmp_check.py | 4 ++-- tests/sys/netpfil/common/pft_ping.py | 10 +++++----- tests/sys/netpfil/common/sniffer.py | 20 +++++++------------- tests/sys/netpfil/pf/CVE-2019-5598.py | 4 ++-- 6 files changed, 20 insertions(+), 26 deletions(-) diff --git a/tests/sys/net/pcp.py b/tests/sys/net/pcp.py index cea88faaf438..c0b6d4efc3b0 100644 --- a/tests/sys/net/pcp.py +++ b/tests/sys/net/pcp.py @@ -61,11 +61,11 @@ def main(): args = parser.parse_args() - sniffer = Sniffer(args, check_pcp, recvif=args.recvif[0], timeout=20) + sniffer = Sniffer(args, check_pcp, args.recvif[0], timeout=20) sniffer.join() - if sniffer.foundCorrectPacket: + if sniffer.correctPackets: sys.exit(0) sys.exit(1) diff --git a/tests/sys/net/stp.py b/tests/sys/net/stp.py index 3e7d011efdd1..dc6634fb7279 100644 --- a/tests/sys/net/stp.py +++ b/tests/sys/net/stp.py @@ -100,14 +100,14 @@ def main(): args = parser.parse_args() - sniffer = Sniffer(args, check_stp) + sniffer = Sniffer(args, check_stp, args.recvif[0]) invalid_stp(args.sendif[0]) sniffer.join() # The 'correct' packet is a corrupt STP packet, so it shouldn't turn up. - if sniffer.foundCorrectPacket: + if sniffer.correctPackets: sys.exit(1) if __name__ == '__main__': diff --git a/tests/sys/netpfil/common/pft_icmp_check.py b/tests/sys/netpfil/common/pft_icmp_check.py index e3c5b927aa63..070465a198f7 100644 --- a/tests/sys/netpfil/common/pft_icmp_check.py +++ b/tests/sys/netpfil/common/pft_icmp_check.py @@ -96,14 +96,14 @@ def main(): args = parser.parse_args() sniffer = None if not args.recvif is None: - sniffer = Sniffer(args, check_icmp_too_big) + sniffer = Sniffer(args, check_icmp_too_big, args.recvif[0]) ping(args.sendif[0], args.to[0], args) if sniffer: sniffer.join() - if sniffer.foundCorrectPacket: + if sniffer.correctPackets: sys.exit(0) else: sys.exit(1) diff --git a/tests/sys/netpfil/common/pft_ping.py b/tests/sys/netpfil/common/pft_ping.py index 9ed6a00cab34..ba64b9a0cb73 100644 --- a/tests/sys/netpfil/common/pft_ping.py +++ b/tests/sys/netpfil/common/pft_ping.py @@ -317,16 +317,16 @@ def main(): if args.tcpsyn: checkfn=check_tcpsyn - sniffer = Sniffer(args, checkfn) + sniffer = Sniffer(args, checkfn, args.recvif[0]) replysniffer = None if not args.replyif is None: checkfn=check_ping_reply - replysniffer = Sniffer(args, checkfn, recvif=args.replyif[0]) + replysniffer = Sniffer(args, checkfn, args.replyif[0]) dupsniffer = None if args.checkdup is not None: - dupsniffer = Sniffer(args, check_dup, recvif=args.checkdup[0]) + dupsniffer = Sniffer(args, check_dup, args.checkdup[0]) if args.tcpsyn: tcpsyn(args.sendif[0], args.to[0], args) @@ -344,7 +344,7 @@ def main(): if sniffer: sniffer.join() - if sniffer.foundCorrectPacket: + if sniffer.correctPackets: sys.exit(0) else: sys.exit(1) @@ -352,7 +352,7 @@ def main(): if replysniffer: replysniffer.join() - if replysniffer.foundCorrectPacket: + if replysniffer.correctPackets: sys.exit(0) else: sys.exit(1) diff --git a/tests/sys/netpfil/common/sniffer.py b/tests/sys/netpfil/common/sniffer.py index 5e09a2e4db37..cee6f73e22dc 100644 --- a/tests/sys/netpfil/common/sniffer.py +++ b/tests/sys/netpfil/common/sniffer.py @@ -31,18 +31,15 @@ import scapy.all as sp import sys class Sniffer(threading.Thread): - def __init__(self, args, check_function, recvif=None, timeout=3): + def __init__(self, args, check_function, recvif, timeout=3): threading.Thread.__init__(self) self._sem = threading.Semaphore(0) self._args = args self._timeout = timeout - if recvif is not None: - self._recvif = recvif - else: - self._recvif = args.recvif[0] + self._recvif = recvif self._check_function = check_function - self.foundCorrectPacket = False + self.correctPackets = 0 self.start() if not self._sem.acquire(timeout=30): @@ -51,7 +48,7 @@ class Sniffer(threading.Thread): def _checkPacket(self, packet): ret = self._check_function(self._args, packet) if ret: - self.foundCorrectPacket = True + self.correctPackets += 1 return ret def _startedCb(self): @@ -59,9 +56,6 @@ class Sniffer(threading.Thread): def run(self): self.packets = [] - try: - self.packets = sp.sniff(iface=self._recvif, - stop_filter=self._checkPacket, timeout=self._timeout, - started_callback=self._startedCb) - except Exception as e: - print(e, file=sys.stderr) + self.packets = sp.sniff(iface=self._recvif, + stop_filter=self._checkPacket, timeout=self._timeout, + started_callback=self._startedCb) diff --git a/tests/sys/netpfil/pf/CVE-2019-5598.py b/tests/sys/netpfil/pf/CVE-2019-5598.py index 603a1aef376f..b72c04c5e19b 100644 --- a/tests/sys/netpfil/pf/CVE-2019-5598.py +++ b/tests/sys/netpfil/pf/CVE-2019-5598.py @@ -72,7 +72,7 @@ def main(): sp.sendp(udp, iface=args.sendif[0], verbose=False) # Start sniffing on recvif - sniffer = Sniffer(args, check_icmp_error) + sniffer = Sniffer(args, check_icmp_error, args.recvif[0]) # Send the bad error packet icmp_reachable = sp.Ether() / \ @@ -83,7 +83,7 @@ def main(): sp.sendp(icmp_reachable, iface=args.sendif[0], verbose=False) sniffer.join() - if sniffer.foundCorrectPacket: + if sniffer.correctPackets: sys.exit(1) sys.exit(0) From nobody Sun Jan 22 04:53: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 4P018k5lhbz2t4tZ; Sun, 22 Jan 2023 04:53: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 4P018k52brz46nK; Sun, 22 Jan 2023 04:53:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674363222; 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=iNPGUVkW3WjF4Mk87V5ClBBrIpYFfFysFfxgWhjzXr0=; b=YVvu0bx/YD+gTkBxe8Hea1fnzBIpiZk4IHNILEIdT/clvI/HXSgnbeHlXBqsh3j6ZRqzyY BQpx6GaNCImqwUGM2bBdGh3eguXY25SimhvUnqbEcA0RAPc2v3DhYmhxnHA2S3703Hx5NU s6HNNrZe03jmqcyY9LD2ANaGD3ZO6hrFZTo+Gr/6WeXBPWO0UhdtJwDNIv+E8xJ4+6UJZA tfTNz3iALs/h7U7jgsNKW7m0SXFdbtEYEmxnz5fWOZCJZrpDmpXDEwUs7kUL70XznNNSeJ MGLSc7DV9bGDGb+jr6UyrTnJAat4+EsX729Qd59Rd7iIAGsUW1dP9qmLdofcjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674363222; 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=iNPGUVkW3WjF4Mk87V5ClBBrIpYFfFysFfxgWhjzXr0=; b=G1cNJVkFROYh2TZcWQMTU+A5yosgd4ut1IkhxHxlCqy+SEvTj9PcvT4LWuZNX0sNzqeV6B rZJRRITABh+BrrGWIh+dxxdv/2b+sB6oPRFmaJOkhkUBbS1fK0uNIHg0/wJO6tkLt5irMi A70h9ZDJCPqrSz2VtoDqY8dMHStoCv2E7eLv2FLpIWervs5t/z57Lg3A32PXPiHZcsQq5v VRMmBNyTu+bdVYpOn3MRzlMcgSA68mjwZfc4pbLQrH+6v3YOWAZFZtegz2OuZLuHfOFSyZ G8eld+3Pdoz/7sj7WyT6HQNpTFeKuPTQ3sJg5fB+6BUbnuay65R5zgSezjZQUA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674363222; a=rsa-sha256; cv=none; b=XwXCo14rUR6olXmqRy/TdsRSqg7Eex3RdBSvJQ1poMs848CmUljGPqEQVs75adxtcWjcsZ N40ok7O+Wu2i2LYUF1P2WoO9AwaWBXgLhLPNSeI8JYneqs7OrkHdzgf3Wv5F6tJqI5r9bc p/f/6Z9wSY0BuPy18DTRY4SJyvHGzQ1a5CbtggmGCqpRj6Nu3tLIy6/YpqVb1RpYiN2iWX 8Q5mgr27PGhFlVxZLDaVP1P0s/eiKhIol+Zww/cY9WBm/3c+mJkew/WYKEkdmh3hrrj51l RnzAQxbNrZqzQLyJVbygw4WOEoaml5GgePTJRGqktCNHMxGYocgfbEhh37TzaA== 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 4P018k3b23zcRg; Sun, 22 Jan 2023 04:53:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30M4rgTm073425; Sun, 22 Jan 2023 04:53:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30M4rg8V073424; Sun, 22 Jan 2023 04:53:42 GMT (envelope-from git) Date: Sun, 22 Jan 2023 04:53:42 GMT Message-Id: <202301220453.30M4rg8V073424@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: f57218e469a7 - main - netpfil tests: improve pft_ping.py 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: f57218e469a7b1ab40521ea75ebfd45b493851ca Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f57218e469a7b1ab40521ea75ebfd45b493851ca commit f57218e469a7b1ab40521ea75ebfd45b493851ca Author: Kajetan Staszkiewicz AuthorDate: 2023-01-21 02:44:52 +0000 Commit: Kristof Provost CommitDate: 2023-01-22 03:26:32 +0000 netpfil tests: improve pft_ping.py Multiple improvements to pft_ping.py: * Automatically use IPv6 when IPv6 addresses are used, --ip6 is not needed. * Building of ping requests and parsing of ping replies is done layer by layer. This way most arguments are available both for IPv6 and IPv4, for ICMP and TCP. * Use argument groups for improved readability. * Change ToS and TTL argument name to TC and HL to reflect the modern IPv6 nomenclature. The argument still set related IPv4 header fields properly. * Instead of sniffing for the very specific case of duplicated packets, allow for sniffing on multiple interfaces. * Report which sniffer has failed by setting bits of error code. * Raise meaningful exceptions when irrecoverable errors happen. * Make IPv4 fragmentation flags configurable. * Make IPv6 HL / IPv4 TTL configurable. * Make TCP MSS configurable. * Make TCP sequence number configurable. * Make ICMP payload size configurable. * Add debug output. * Move command line argument parsing out of network functions. * Make the code somehow PEP-8 compliant. MFC after: 1 week Sponsored by: InnoGames GmbH Differential Revision: https://reviews.freebsd.org/D38122 --- tests/sys/netpfil/common/pft_ping.py | 811 +++++++++++++++++++++-------------- tests/sys/netpfil/common/tos.sh | 10 +- tests/sys/netpfil/pf/checksum.sh | 6 +- tests/sys/netpfil/pf/dup.sh | 3 +- tests/sys/netpfil/pf/forward.sh | 5 - tests/sys/netpfil/pf/killstate.sh | 1 - tests/sys/netpfil/pf/set_tos.sh | 22 +- 7 files changed, 509 insertions(+), 349 deletions(-) diff --git a/tests/sys/netpfil/common/pft_ping.py b/tests/sys/netpfil/common/pft_ping.py index ba64b9a0cb73..af5b84e34c67 100644 --- a/tests/sys/netpfil/common/pft_ping.py +++ b/tests/sys/netpfil/common/pft_ping.py @@ -3,6 +3,7 @@ # SPDX-License-Identifier: BSD-2-Clause # # Copyright (c) 2017 Kristof Provost +# Copyright (c) 2023 Kajetan Staszkiewicz # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -29,333 +30,505 @@ import argparse import logging logging.getLogger("scapy").setLevel(logging.CRITICAL) +import math import scapy.all as sp -import socket import sys -from sniffer import Sniffer -PAYLOAD_MAGIC = bytes.fromhex('42c0ffee') +from copy import copy +from sniffer import Sniffer -dup_found = 0 - -def check_dup(args, packet): - """ - Verify that this is an ICMP packet, and that we only see one - """ - global dup_found - - icmp = packet.getlayer(sp.ICMP) - if not icmp: - return False - - raw = packet.getlayer(sp.Raw) - if not raw: - return False - if raw.load != PAYLOAD_MAGIC: - return False - - dup_found = dup_found + 1 - return False - -def check_ping_request(args, packet): - if args.ip6: - return check_ping6_request(args, packet) - else: - return check_ping4_request(args, packet) - -def check_ping4_request(args, packet): - """ - Verify that the packet matches what we'd have sent - """ - dst_ip = args.to[0] - - ip = packet.getlayer(sp.IP) - if not ip: - return False - if ip.dst != dst_ip: - return False - - icmp = packet.getlayer(sp.ICMP) - if not icmp: - return False - if sp.icmptypes[icmp.type] != 'echo-request': - return False - - raw = packet.getlayer(sp.Raw) - if not raw: - return False - if raw.load != PAYLOAD_MAGIC: - return False - - # Wait to check expectations until we've established this is the packet we - # sent. - if args.expect_tos: - if ip.tos != int(args.expect_tos[0]): - print("Unexpected ToS value %d, expected %d" \ - % (ip.tos, int(args.expect_tos[0]))) - return False - - return True - -def check_ping6_request(args, packet): - """ - Verify that the packet matches what we'd have sent - """ - dst_ip = args.to[0] - - ip = packet.getlayer(sp.IPv6) - if not ip: - return False - if ip.dst != dst_ip: - return False - - icmp = packet.getlayer(sp.ICMPv6EchoRequest) - if not icmp: - return False - if icmp.data != PAYLOAD_MAGIC: - return False - - # Wait to check expectations until we've established this is the packet we - # sent. - if args.expect_tc: - if ip.tc != int(args.expect_tc[0]): - print("Unexpected traffic class value %d, expected %d" \ - % (ip.tc, int(args.expect_tc[0]))) - return False - - return True - -def check_ping_reply(args, packet): - if args.ip6: - return check_ping6_reply(args, packet) - else: - return check_ping4_reply(args, packet) - -def check_ping4_reply(args, packet): - """ - Check that this is a reply to the ping request we sent - """ - dst_ip = args.to[0] - - ip = packet.getlayer(sp.IP) - if not ip: - return False - if ip.src != dst_ip: - return False - - icmp = packet.getlayer(sp.ICMP) - if not icmp: - return False - if sp.icmptypes[icmp.type] != 'echo-reply': - return False - - raw = packet.getlayer(sp.Raw) - if not raw: - return False - if raw.load != PAYLOAD_MAGIC: - return False - - if args.expect_tos: - if ip.tos != int(args.expect_tos[0]): - print("Unexpected ToS value %d, expected %d" \ - % (ip.tos, int(args.expect_tos[0]))) - return False - - return True - -def check_ping6_reply(args, packet): - """ - Check that this is a reply to the ping request we sent - """ - dst_ip = args.to[0] - - ip = packet.getlayer(sp.IPv6) - if not ip: - return False - if ip.src != dst_ip: - return False - - icmp = packet.getlayer(sp.ICMPv6EchoReply) - if not icmp: - print("No echo reply!") - return False - - if icmp.data != PAYLOAD_MAGIC: - print("data mismatch") - return False - - if args.expect_tc: - if ip.tc != int(args.expect_tc[0]): - print("Unexpected traffic class value %d, expected %d" \ - % (ip.tc, int(args.expect_tc[0]))) - return False - - return True - -def ping(send_if, dst_ip, args): - ether = sp.Ether() - ip = sp.IP(dst=dst_ip) - icmp = sp.ICMP(type='echo-request') - raw = sp.raw(PAYLOAD_MAGIC) - - if args.send_tos: - ip.tos = int(args.send_tos[0]) - - if args.fromaddr: - ip.src = args.fromaddr[0] - - req = ether / ip / icmp / raw - sp.sendp(req, iface=send_if, verbose=False) - -def ping6(send_if, dst_ip, args): - ether = sp.Ether() - ip6 = sp.IPv6(dst=dst_ip) - icmp = sp.ICMPv6EchoRequest(data=sp.raw(PAYLOAD_MAGIC)) - - if args.send_tc: - ip6.tc = int(args.send_tc[0]) - - if args.fromaddr: - ip6.src = args.fromaddr[0] - - req = ether / ip6 / icmp - sp.sendp(req, iface=send_if, verbose=False) - -def check_tcpsyn(args, packet): - dst_ip = args.to[0] - - ip = packet.getlayer(sp.IP) - if not ip: - return False - if ip.dst != dst_ip: - return False - - tcp = packet.getlayer(sp.TCP) - if not tcp: - return False - - # Verify IP checksum - chksum = ip.chksum - ip.chksum = None - new_chksum = sp.IP(sp.raw(ip)).chksum - if chksum != new_chksum: - print("Expected IP checksum %x but found %x\n" % (new_cshkum, chksum)) - return False - - # Verify TCP checksum - chksum = tcp.chksum - packet_raw = sp.raw(packet) - tcp.chksum = None - newpacket = sp.Ether(sp.raw(packet[sp.Ether])) - new_chksum = newpacket[sp.TCP].chksum - if chksum != new_chksum: - print("Expected TCP checksum %x but found %x\n" % (new_chksum, chksum)) - return False - - return True +logging.basicConfig(format='%(message)s') +LOGGER = logging.getLogger(__name__) -def tcpsyn(send_if, dst_ip, args): - opts=[('Timestamp', (1, 1)), ('MSS', 1280)] - - if args.tcpopt_unaligned: - opts = [('NOP', 0 )] + opts +PAYLOAD_MAGIC = bytes.fromhex('42c0ffee') - ether = sp.Ether() - ip = sp.IP(dst=dst_ip) - tcp = sp.TCP(dport=666, flags='S', options=opts) - - req = ether / ip / tcp - sp.sendp(req, iface=send_if, verbose=False) +def build_payload(l): + pl = len(PAYLOAD_MAGIC) + ret = PAYLOAD_MAGIC * math.floor(l/pl) + ret += PAYLOAD_MAGIC[0:(l % pl)] + return ret + + +def prepare_ipv6(dst_address, send_params): + src_address = send_params.get('src_address') + hlim = send_params.get('hlim') + tc = send_params.get('tc') + ip6 = sp.IPv6(dst=dst_address) + if src_address: + ip6.src = src_address + if hlim: + ip6.hlim = hlim + if tc: + ip6.tc = tc + return ip6 + + +def prepare_ipv4(dst_address, send_params): + src_address = send_params.get('src_address') + flags = send_params.get('flags') + tos = send_params.get('tc') + ttl = send_params.get('hlim') + ip = sp.IP(dst=dst_address) + if src_address: + ip.src = src_address + if flags: + ip.flags = flags + if tos: + ip.tos = tos + if ttl: + ip.ttl = ttl + return ip + + +def send_icmp_ping(dst_address, sendif, send_params): + send_length = send_params['length'] + ether = sp.Ether() + if ':' in dst_address: + ip6 = prepare_ipv6(dst_address, send_params) + icmp = sp.ICMPv6EchoRequest(data=sp.raw(build_payload(send_length))) + req = ether / ip6 / icmp + else: + ip = prepare_ipv4(dst_address, send_params) + icmp = sp.ICMP(type='echo-request') + raw = sp.raw(build_payload(send_length)) + req = ether / ip / icmp / raw + sp.sendp(req, sendif, verbose=False) + + +def send_tcp_syn(dst_address, sendif, send_params): + tcpopt_unaligned = send_params.get('tcpopt_unaligned') + seq = send_params.get('seq') + mss = send_params.get('mss') + ether = sp.Ether() + opts=[('Timestamp', (1, 1)), ('MSS', mss if mss else 1280)] + if tcpopt_unaligned: + opts = [('NOP', 0 )] + opts + if ':' in dst_address: + ip = prepare_ipv6(dst_address, send_params) + else: + ip = prepare_ipv4(dst_address, send_params) + tcp = sp.TCP(dport=666, flags='S', options=opts, seq=seq) + req = ether / ip / tcp + sp.sendp(req, iface=sendif, verbose=False) + + +def send_ping(dst_address, sendif, ping_type, send_params): + if ping_type == 'icmp': + send_icmp_ping(dst_address, sendif, send_params) + elif ping_type == 'tcpsyn': + send_tcp_syn(dst_address, sendif, send_params) + else: + raise Exception('Unspported ping type') + + +def check_ipv4(expect_params, packet): + src_address = expect_params.get('src_address') + dst_address = expect_params.get('dst_address') + flags = expect_params.get('flags') + tos = expect_params.get('tc') + ttl = expect_params.get('hlim') + ip = packet.getlayer(sp.IP) + if not ip: + LOGGER.debug('Packet is not IPv4!') + return False + if src_address and ip.src != src_address: + LOGGER.debug('Source IPv4 address does not match!') + return False + if dst_address and ip.dst != dst_address: + LOGGER.debug('Destination IPv4 address does not match!') + return False + chksum = ip.chksum + ip.chksum = None + new_chksum = sp.IP(sp.raw(ip)).chksum + if chksum != new_chksum: + LOGGER.debug(f'Expected IP checksum {new_chksum} but found {chksum}') + return False + if flags and ip.flags != flags: + LOGGER.debug(f'Wrong IP flags value {ip.flags}, expected {flags}') + return False + if tos and ip.tos != tos: + LOGGER.debug(f'Wrong ToS value {ip.tos}, expected {tos}') + return False + if ttl and ip.ttl != ttl: + LOGGER.debug(f'Wrong TTL value {ip.ttl}, expected {ttl}') + return False + return True + + +def check_ipv6(expect_params, packet): + src_address = expect_params.get('src_address') + dst_address = expect_params.get('dst_address') + flags = expect_params.get('flags') + hlim = expect_params.get('hlim') + tc = expect_params.get('tc') + ip6 = packet.getlayer(sp.IPv6) + if not ip6: + LOGGER.debug('Packet is not IPv6!') + return False + if src_address and ip6.src != src_address: + LOGGER.debug('Source IPv6 address does not match!') + return False + if dst_address and ip6.dst != dst_address: + LOGGER.debug('Destination IPv6 address does not match!') + return False + # IPv6 has no IP-level checksum. + if flags: + raise Exception("There's no fragmentation flags in IPv6") + if hlim and ip6.hlim != hlim: + LOGGER.debug(f'Wrong Hop Limit value {ip6.hlim}, expected {hlim}') + return False + if tc and ip6.tc != tc: + LOGGER.debug(f'Wrong TC value {ip6.tc}, expected {tc}') + return False + return True + + +def check_ping_4(expect_params, packet): + expect_length = expect_params['length'] + if not check_ipv4(expect_params, packet): + return False + icmp = packet.getlayer(sp.ICMP) + if not icmp: + LOGGER.debug('Packet is not IPv4 ICMP!') + return False + raw = packet.getlayer(sp.Raw) + if not raw: + LOGGER.debug('Packet contains no payload!') + return False + if raw.load != build_payload(expect_length): + LOGGER.debug('Payload magic does not match!') + return False + return True + + +def check_ping_request_4(expect_params, packet): + if not check_ping_4(expect_params, packet): + return False + icmp = packet.getlayer(sp.ICMP) + if sp.icmptypes[icmp.type] != 'echo-request': + LOGGER.debug('Packet is not IPv4 ICMP Echo Request!') + return False + return True + + +def check_ping_reply_4(expect_params, packet): + if not check_ping_4(expect_params, packet): + return False + icmp = packet.getlayer(sp.ICMP) + if sp.icmptypes[icmp.type] != 'echo-reply': + LOGGER.debug('Packet is not IPv4 ICMP Echo Reply!') + return False + return True + + +def check_ping_request_6(expect_params, packet): + expect_length = expect_params['length'] + if not check_ipv6(expect_params, packet): + return False + icmp = packet.getlayer(sp.ICMPv6EchoRequest) + if not icmp: + LOGGER.debug('Packet is not IPv6 ICMP Echo Request!') + return False + if icmp.data != build_payload(expect_length): + LOGGER.debug('Payload magic does not match!') + return False + return True + + +def check_ping_reply_6(expect_params, packet): + expect_length = expect_params['length'] + if not check_ipv6(expect_params, packet): + return False + icmp = packet.getlayer(sp.ICMPv6EchoReply) + if not icmp: + LOGGER.debug('Packet is not IPv6 ICMP Echo Reply!') + return False + if icmp.data != build_payload(expect_length): + LOGGER.debug('Payload magic does not match!') + return False + return True + + +def check_ping_request(expect_params, packet): + src_address = expect_params.get('src_address') + dst_address = expect_params.get('dst_address') + if not (src_address or dst_address): + raise Exception('Source or destination address must be given to match the ping request!') + if ( + (src_address and ':' in src_address) or + (dst_address and ':' in dst_address) + ): + return check_ping_request_6(expect_params, packet) + else: + return check_ping_request_4(expect_params, packet) + + +def check_ping_reply(expect_params, packet): + src_address = expect_params.get('src_address') + dst_address = expect_params.get('dst_address') + if not (src_address or dst_address): + raise Exception('Source or destination address must be given to match the ping reply!') + if ( + (src_address and ':' in src_address) or + (dst_address and ':' in dst_address) + ): + return check_ping_reply_6(expect_params, packet) + else: + return check_ping_reply_4(expect_params, packet) + + +def check_tcp(expect_params, packet): + tcp_flags = expect_params.get('tcp_flags') + mss = expect_params.get('mss') + seq = expect_params.get('seq') + tcp = packet.getlayer(sp.TCP) + if not tcp: + LOGGER.debug('Packet is not TCP!') + return False + chksum = tcp.chksum + tcp.chksum = None + newpacket = sp.Ether(sp.raw(packet[sp.Ether])) + new_chksum = newpacket[sp.TCP].chksum + if chksum != new_chksum: + LOGGER.debug(f'Wrong TCP checksum {chksum}, expected {new_chksum}!') + return False + if tcp_flags and tcp.flags != tcp_flags: + LOGGER.debug(f'Wrong TCP flags {tcp.flags}, expected {tcp_flags}!') + return False + if seq: + if tcp_flags == 'S': + tcp_seq = tcp.seq + elif tcp_flags == 'SA': + tcp_seq = tcp.ack - 1 + if seq != tcp_seq: + LOGGER.debug(f'Wrong TCP Sequence Number {tcp_seq}, expected {seq}') + return False + if mss: + for option in tcp.options: + if option[0] == 'MSS': + if option[1] != mss: + LOGGER.debug(f'Wrong TCP MSS {option[1]}, expected {mss}') + return False + return True + + +def check_tcp_syn_request_4(expect_params, packet): + if not check_ipv4(expect_params, packet): + return False + if not check_tcp(expect_params | {'tcp_flags': 'S'}, packet): + return False + return True + + +def check_tcp_syn_reply_4(expect_params, packet): + if not check_ipv4(expect_params, packet): + return False + if not check_tcp(expect_params | {'tcp_flags': 'SA'}, packet): + return False + return True + + +def check_tcp_syn_request_6(expect_params, packet): + if not check_ipv6(expect_params, packet): + return False + if not check_tcp(expect_params | {'tcp_flags': 'S'}, packet): + return False + return True + + +def check_tcp_syn_reply_6(expect_params, packet): + if not check_ipv6(expect_params, packet): + return False + if not check_tcp(expect_params | {'tcp_flags': 'SA'}, packet): + return False + return True + + +def check_tcp_syn_request(expect_params, packet): + src_address = expect_params.get('src_address') + dst_address = expect_params.get('dst_address') + if not (src_address or dst_address): + raise Exception('Source or destination address must be given to match the tcp syn request!') + if ( + (src_address and ':' in src_address) or + (dst_address and ':' in dst_address) + ): + return check_tcp_syn_request_6(expect_params, packet) + else: + return check_tcp_syn_request_4(expect_params, packet) + + +def check_tcp_syn_reply(expect_params, packet): + src_address = expect_params.get('src_address') + dst_address = expect_params.get('dst_address') + if not (src_address or dst_address): + raise Exception('Source or destination address must be given to match the tcp syn reply!') + if ( + (src_address and ':' in src_address) or + (dst_address and ':' in dst_address) + ): + return check_tcp_syn_reply_6(expect_params, packet) + else: + return check_tcp_syn_reply_4(expect_params, packet) + + +def setup_sniffer(recvif, ping_type, sniff_type, expect_params): + if ping_type == 'icmp' and sniff_type == 'request': + checkfn = check_ping_request + elif ping_type == 'icmp' and sniff_type == 'reply': + checkfn = check_ping_reply + elif ping_type == 'tcpsyn' and sniff_type == 'request': + checkfn = check_tcp_syn_request + elif ping_type == 'tcpsyn' and sniff_type == 'reply': + checkfn = check_tcp_syn_reply + else: + raise Exception('Unspported ping or sniff type') + + return Sniffer(expect_params, checkfn, recvif) + + +def parse_args(): + parser = argparse.ArgumentParser("pft_ping.py", + description="Ping test tool") + + # Parameters of sent ping request + parser.add_argument('--sendif', nargs=1, + required=True, + help='The interface through which the packet(s) will be sent') + parser.add_argument('--to', nargs=1, + required=True, + help='The destination IP address for the ping request') + parser.add_argument('--ping-type', + choices=('icmp', 'tcpsyn'), + help='Type of ping: ICMP (default) or TCP SYN', + default='icmp') + parser.add_argument('--fromaddr', nargs=1, + help='The source IP address for the ping request') + + # Where to look for packets to analyze. + # The '+' format is ugly as it mixes positional with optional syntax. + # But we have no positional parameters so I guess it's fine to use it. + parser.add_argument('--recvif', nargs='+', + help='The interfaces on which to expect the ping request') + parser.add_argument('--replyif', nargs='+', + help='The interfaces which to expect the ping response') + + # Packet settings + parser_send = parser.add_argument_group('Values set in transmitted packets') + parser_send.add_argument('--send-flags', nargs=1, type=str, + help='IPv4 fragmentation flags') + parser_send.add_argument('--send-hlim', nargs=1, type=int, + help='IPv6 Hop Limit or IPv4 Time To Live') + parser_send.add_argument('--send-mss', nargs=1, type=int, + help='TCP Maximum Segment Size') + parser_send.add_argument('--send-seq', nargs=1, type=int, + help='TCP sequence number') + parser_send.add_argument('--send-length', nargs=1, type=int, + default=[len(PAYLOAD_MAGIC)], help='ICMP Echo Request payload size') + parser_send.add_argument('--send-tc', nargs=1, type=int, + help='IPv6 Traffic Class or IPv4 DiffServ / ToS') + parser_send.add_argument('--send-tcpopt-unaligned', action='store_true', + help='Include unaligned TCP options') + + # Expectations + parser_expect = parser.add_argument_group('Values expected in sniffed packets') + parser_expect.add_argument('--expect-flags', nargs=1, type=str, + help='IPv4 fragmentation flags') + parser_expect.add_argument('--expect-hlim', nargs=1, type=int, + help='IPv6 Hop Limit or IPv4 Time To Live') + parser_expect.add_argument('--expect-mss', nargs=1, type=int, + help='TCP Maximum Segment Size') + parser_send.add_argument('--expect-seq', nargs=1, type=int, + help='TCP sequence number') + parser_expect.add_argument('--expect-tc', nargs=1, type=int, + help='IPv6 Traffic Class or IPv4 DiffServ / ToS') + + parser.add_argument('-v', '--verbose', action='store_true', + help=('Enable verbose logging. Apart of potentially useful information ' + 'you might see warnings from parsing packets like NDP or other ' + 'packets not related to the test being run. Use only when ' + 'developing because real tests expect empty stderr and stdout.')) + + return parser.parse_args() def main(): - parser = argparse.ArgumentParser("pft_ping.py", - description="Ping test tool") - parser.add_argument('--sendif', nargs=1, - required=True, - help='The interface through which the packet(s) will be sent') - parser.add_argument('--recvif', nargs=1, - help='The interface on which to expect the ICMP echo request') - parser.add_argument('--replyif', nargs=1, - help='The interface on which to expect the ICMP echo response') - parser.add_argument('--checkdup', nargs=1, - help='The interface on which to expect the duplicated ICMP packets') - parser.add_argument('--ip6', action='store_true', - help='Use IPv6') - parser.add_argument('--to', nargs=1, - required=True, - help='The destination IP address for the ICMP echo request') - parser.add_argument('--fromaddr', nargs=1, - help='The source IP address for the ICMP echo request') - - # TCP options - parser.add_argument('--tcpsyn', action='store_true', - help='Send a TCP SYN packet') - parser.add_argument('--tcpopt_unaligned', action='store_true', - help='Include unaligned TCP options') - - # Packet settings - parser.add_argument('--send-tos', nargs=1, - help='Set the ToS value for the transmitted packet') - parser.add_argument('--send-tc', nargs=1, - help='Set the traffic class value for the transmitted packet') - - # Expectations - parser.add_argument('--expect-tos', nargs=1, - help='The expected ToS value in the received packet') - parser.add_argument('--expect-tc', nargs=1, - help='The expected traffic class value in the received packet') - - args = parser.parse_args() - - # We may not have a default route. Tell scapy where to start looking for routes - sp.conf.iface6 = args.sendif[0] - - sniffer = None - if not args.recvif is None: - checkfn=check_ping_request - if args.tcpsyn: - checkfn=check_tcpsyn - - sniffer = Sniffer(args, checkfn, args.recvif[0]) - - replysniffer = None - if not args.replyif is None: - checkfn=check_ping_reply - replysniffer = Sniffer(args, checkfn, args.replyif[0]) - - dupsniffer = None - if args.checkdup is not None: - dupsniffer = Sniffer(args, check_dup, args.checkdup[0]) - - if args.tcpsyn: - tcpsyn(args.sendif[0], args.to[0], args) - else: - if args.ip6: - ping6(args.sendif[0], args.to[0], args) - else: - ping(args.sendif[0], args.to[0], args) - - if dupsniffer: - dupsniffer.join() - if dup_found != 1: - sys.exit(1) - - if sniffer: - sniffer.join() - - if sniffer.correctPackets: - sys.exit(0) - else: - sys.exit(1) - - if replysniffer: - replysniffer.join() - - if replysniffer.correctPackets: - sys.exit(0) - else: - sys.exit(1) + args = parse_args() + + if args.verbose: + LOGGER.setLevel(logging.DEBUG) + + # Dig out real values of program arguments + send_if = args.sendif[0] + reply_ifs = args.replyif + recv_ifs = args.recvif + dst_address = args.to[0] + + # Standardize parameters which have nargs=1. + send_params = {} + expect_params = {} + for param_name in ('flags', 'hlim', 'length', 'mss', 'seq', 'tc'): + param_arg = vars(args).get(f'send_{param_name}') + send_params[param_name] = param_arg[0] if param_arg else None + param_arg = vars(args).get(f'expect_{param_name}') + expect_params[param_name] = param_arg[0] if param_arg else None + + expect_params['length'] = send_params['length'] + send_params['tcpopt_unaligned'] = args.send_tcpopt_unaligned + send_params['src_address'] = args.fromaddr[0] if args.fromaddr else None + + # We may not have a default route. Tell scapy where to start looking for routes + sp.conf.iface6 = send_if + + # Configuration sanity checking. + if not (reply_ifs or recv_ifs): + raise Exception('With no reply or recv interface specified no traffic ' + 'can be sniffed and verified!' + ) + + sniffers = [] + + if recv_ifs: + sniffer_params = copy(expect_params) + sniffer_params['src_address'] = None + sniffer_params['dst_address'] = dst_address + for iface in recv_ifs: + LOGGER.debug(f'Installing receive sniffer on {iface}') + sniffers.append( + setup_sniffer(iface, args.ping_type, 'request', sniffer_params, + )) + + if reply_ifs: + sniffer_params = copy(expect_params) + sniffer_params['src_address'] = dst_address + sniffer_params['dst_address'] = None + for iface in reply_ifs: + LOGGER.debug(f'Installing reply sniffer on {iface}') + sniffers.append( + setup_sniffer(iface, args.ping_type, 'reply', sniffer_params, + )) + + LOGGER.debug(f'Installed {len(sniffers)} sniffers') + + send_ping(dst_address, send_if, args.ping_type, send_params) + + err = 0 + sniffer_num = 0 + for sniffer in sniffers: + sniffer.join() + if sniffer.correctPackets == 1: + LOGGER.debug(f'Expected ping has been sniffed on {sniffer._recvif}.') + else: + # Set a bit in err for each failed sniffer. + err |= 1< 1: + LOGGER.debug(f'Duplicated ping has been sniffed on {sniffer._recvif}!') + else: + LOGGER.debug(f'Expected ping has not been sniffed on {sniffer._recvif}!') + sniffer_num += 1 + + return err + if __name__ == '__main__': - main() + sys.exit(main()) diff --git a/tests/sys/netpfil/common/tos.sh b/tests/sys/netpfil/common/tos.sh index 452c6a002bbf..bd5e657ecf72 100644 --- a/tests/sys/netpfil/common/tos.sh +++ b/tests/sys/netpfil/common/tos.sh @@ -68,7 +68,7 @@ tos_body() --sendif ${epair_send}a \ --to 198.51.100.3 \ --recvif ${epair_recv}a \ - --expect-tos 36 + --expect-tc 36 # Check if the firewall is able to set the ToS bits # and persists the EN bits (if already set) @@ -82,8 +82,8 @@ tos_body() --sendif ${epair_send}a \ --to 198.51.100.3 \ --recvif ${epair_recv}a \ - --send-tos 3 \ - --expect-tos 39 + --send-tc 3 \ + --expect-tc 39 # Check if the firewall is able to filter the # packets based on the ToS value @@ -97,13 +97,13 @@ tos_body() --sendif ${epair_send}a \ --to 198.51.100.3 \ --recvif ${epair_recv}a \ - --send-tos 36 + --send-tc 36 atf_check -s exit:0 $(atf_get_srcdir)/pft_ping.py \ --sendif ${epair_send}a \ --to 198.51.100.3 \ --recvif ${epair_recv}a \ - --send-tos 32 + --send-tc 32 } tos_cleanup() diff --git a/tests/sys/netpfil/pf/checksum.sh b/tests/sys/netpfil/pf/checksum.sh index 836bc1233963..9060e763d18d 100644 --- a/tests/sys/netpfil/pf/checksum.sh +++ b/tests/sys/netpfil/pf/checksum.sh @@ -64,15 +64,15 @@ unaligned_body() --sendif ${epair_in}a \ --to 198.51.100.2 \ --recvif ${epair_out}b \ - --tcpsyn + --ping-type tcpsyn # And unaligned atf_check -s exit:0 ${common_dir}/pft_ping.py \ --sendif ${epair_in}a \ --to 198.51.100.2 \ --recvif ${epair_out}b \ - --tcpsyn \ - --tcpopt_unaligned + --ping-type tcpsyn \ + --send-tcpopt-unaligned } unaligned_cleanup() diff --git a/tests/sys/netpfil/pf/dup.sh b/tests/sys/netpfil/pf/dup.sh index 3b3bef976fc2..83ef57760eef 100644 --- a/tests/sys/netpfil/pf/dup.sh +++ b/tests/sys/netpfil/pf/dup.sh @@ -67,8 +67,7 @@ dup_to_body() atf_check -s exit:0 ${common_dir}/pft_ping.py \ --sendif ${epair_send}a \ --to 198.51.100.3 \ - --recv ${epair_recv}a \ - --checkdup ${epair_dupto}a + --recv ${epair_recv}a ${epair_dupto}a } dup_to_cleanup() diff --git a/tests/sys/netpfil/pf/forward.sh b/tests/sys/netpfil/pf/forward.sh index e507c3a2b1ee..325c8ce7f6b6 100644 --- a/tests/sys/netpfil/pf/forward.sh +++ b/tests/sys/netpfil/pf/forward.sh @@ -122,7 +122,6 @@ v6_body() # Sanity check, can we forward ICMP echo requests without pf? atf_check -s exit:0 ${common_dir}/pft_ping.py \ - --ip6 \ --sendif ${epair_send}a \ --to 2001:db8:43::3 \ --recvif ${epair_recv}a @@ -133,7 +132,6 @@ v6_body() pft_set_rules alcatraz \ "block in inet6 proto icmp6 icmp6-type echoreq" atf_check -s exit:1 ${common_dir}/pft_ping.py \ - --ip6 \ --sendif ${epair_send}a \ --to 2001:db8:43::3 \ --recvif ${epair_recv}a @@ -142,7 +140,6 @@ v6_body() pft_set_rules alcatraz \ "block out inet6 proto icmp6 icmp6-type echoreq" atf_check -s exit:1 -e ignore ${common_dir}/pft_ping.py \ - --ip6 \ *** 140 LINES SKIPPED *** From nobody Sun Jan 22 04:53: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 4P018l6Zlyz2t5G6; Sun, 22 Jan 2023 04:53: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 4P018l5jRLz46nm; Sun, 22 Jan 2023 04:53:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674363223; 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=/amXRNmT/d7ADic/jzFW66c+ytyXxhSusnj9kOLYcMA=; b=HES9fDBk3UvqaRE1v9fEBfY58dsUEfPmsdbjKL+5csaPPKvLFBpkLOTnQeFZFGzWG0H27f EjM8WFWI7n21zOSOzoSogWrFDYuVUQ+dqMaRZd7l+qwVf743GjcWDnrC4XunAgf3+wlEry Ez49mDsrVhray8+XeQvBauSwI6PyWpYQ20Jzz6afJE1P6i0FYH67NUR8BLKE9HcGx1/1oy JVlEvMlDRljJzI7knLNLKQg7D2Zv/uqwG/pQ+1ZApFz5STJuDuJvHreN80yKTyz9ZRgwXN z/e9w4tXUlZ6jjQFDdQkCJvM15oJmkKPEDq4V75ckkcOzJkb94EzZhPdo9mjQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674363223; 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=/amXRNmT/d7ADic/jzFW66c+ytyXxhSusnj9kOLYcMA=; b=aEy5XsP8WOXD13yHCwCcw989GQLmAU4KvOIyUYFY5aaCjYk+dtMEQfiiRLz36cuXLSowNw xsN0cJbr69stDiORuSJx9faWXzQTLXOCQ2C28/vb/+z432dzygNuDJAIN/+HQwumEmw89x nzA3fTCSbYDBXeZmVgapPXmqhA6vNfm8z84kuJ8Xx6bwlcKLVxAS+TFXPozRMvM6JqOxGe i0FInFnB5Ie2OF6CiDN1cL+Er2KqrCAZy0mciOM4AS5RMLOTMIhKfoZaG1UxVEXM98tzvD z4Pjntt71NY9mP3hXU9S3ZbhIzyED7gWbO+9Hc7fXtabIqSXv23BJ2zLhtGsDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674363223; a=rsa-sha256; cv=none; b=tYXTQljBcwMZvS2EKQW63NGecNW0JziG3rk/xMAAoWSfX7GZ8K4Y53QFkPTRBZFR+gj6qS Ouuz0Euax+RACV8CzFmzqNely95Qa1Z1nQ+Bpdj2ZK3G6q/thtdIWueI+IJyAPhZx6j9Re 548eF7ZN90pgANHfH9qS/rtQnUJrCyBbGagwfH1s8sRBUBTgWx0nWLPbSn0RxwnoC9p4IW ch27yN0yngzJY/aWjCw61GUD/IRSYlQ8azyN5n515bhVDI3qUynRtd2c4D8XIuDcZ16EbD Sq0BYL5OGtn45DHBXvTxYmog8vpeSlR3SQ1va1PYoOv5jRISB7Lc4Rbt5dw/vA== 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 4P018l4FV9zcPP; Sun, 22 Jan 2023 04:53:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30M4rh6a073449; Sun, 22 Jan 2023 04:53:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30M4rhDb073448; Sun, 22 Jan 2023 04:53:43 GMT (envelope-from git) Date: Sun, 22 Jan 2023 04:53:43 GMT Message-Id: <202301220453.30M4rhDb073448@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: 06012728beff - main - netpfil tests: improve pfsync_defer.py 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: 06012728beff45e94d58410eae7cda2ea980ef77 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=06012728beff45e94d58410eae7cda2ea980ef77 commit 06012728beff45e94d58410eae7cda2ea980ef77 Author: Kajetan Staszkiewicz AuthorDate: 2023-01-20 09:43:02 +0000 Commit: Kristof Provost CommitDate: 2023-01-22 03:26:32 +0000 netpfil tests: improve pfsync_defer.py Return different exit code depending on which failure was encountered. The pfsync test expect a very particular failure, not just any. MFC after: 1 week Sponsored by: InnoGames GmbH Differential Revision: https://reviews.freebsd.org/D38123 --- tests/sys/netpfil/pf/pfsync.sh | 2 +- tests/sys/netpfil/pf/pfsync_defer.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/sys/netpfil/pf/pfsync.sh b/tests/sys/netpfil/pf/pfsync.sh index 75b37516762f..21cc2ed87906 100644 --- a/tests/sys/netpfil/pf/pfsync.sh +++ b/tests/sys/netpfil/pf/pfsync.sh @@ -172,7 +172,7 @@ defer_body() "set skip on ${epair_sync}a" \ "pass keep state" - atf_check -s exit:1 env PYTHONPATH=${common_dir} \ + atf_check -s exit:3 env PYTHONPATH=${common_dir} \ $(atf_get_srcdir)/pfsync_defer.py \ --syncdev ${epair_sync}b \ --indev ${epair_in}b \ diff --git a/tests/sys/netpfil/pf/pfsync_defer.py b/tests/sys/netpfil/pf/pfsync_defer.py index 4a691240b466..c1d90d4483c4 100644 --- a/tests/sys/netpfil/pf/pfsync_defer.py +++ b/tests/sys/netpfil/pf/pfsync_defer.py @@ -117,15 +117,15 @@ def main(): sys.exit(1) if not got_ping: - sys.exit(1) + sys.exit(2) if got_pfsync > got_ping: - sys.exit(1) + sys.exit(3) # Deferred packets are delayed up to 20ms (unless the pfsync peer, which we # don't have here, acks their state update earlier) if (sent_ping + 0.020) > got_ping: - sys.exit(1) + sys.exit(4) if __name__ == '__main__': main() From nobody Sun Jan 22 09:32: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 4P07LS3WWqz328G5; Sun, 22 Jan 2023 09:32: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 4P07LS1Z4bz3jyX; Sun, 22 Jan 2023 09:32:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674379952; 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=dRiC2PuYmurM9UhZv97QlX80eJgFzFxP0Gg7zdnOP/8=; b=XmCDm69+tR5f3yHZf97S6zUXrdQxC+oznKEggmB+mcU47/PmL4J3OEE+40LYaOoPnYuTFx vOp+hF5ShZsQyZ6hpcWlu7A90wgTFhGEJ8mH0/kIBxdCw3pU6fsD8PQW31XgJBHfTJP6JJ WpTjDv68zaG9wAUXw5IsAFBYquUB2Gi6QV9f5Vp0rur1obuVE7cMJceGfckPHkxR+GuyMX +D0nmrGP//onumI0IAgXEhGMRPtfXlN6clT74Z6qSHPrI1NeKnny3XXNVwspAB2fXeoGcj lVODMUSMwUv6qUg5pcnTl6aTlzM9hTF0VgKOt0dUed8wJxhrf+3x7ds4elaJOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674379952; 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=dRiC2PuYmurM9UhZv97QlX80eJgFzFxP0Gg7zdnOP/8=; b=SGqZjO4451gpSIcXSmJ/2MzJdFiFe2FyyLtt65Vt7J7OvywmpjhkbuNqt3dR6/yjGOBZ8P mZRT7240hUS3IjMPyw2jAYfYuZVA5n0qZS0TiobDTujjdfetGFXStx87BHSP1Jwqji5gMt 6VnlquJ+GuCKHMj4ZsZcXOOsk1t0WRJEd3uWn4fO88Fj1gj+9oLsLjEB2XECMwMZDYnR9F 6itaWbW3ZnsGA2J0Q6T6wDVnNTbOoXCvwoaeg7CtxDZowhTmTcYOEX07+mf1zKzkxvJo5x yXeuDg8BwlZyYEl85J4FAhDQjAgP3lslvs+pOF/5q339hd2TRnO4pWQtu20wgg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674379952; a=rsa-sha256; cv=none; b=BhFdocbN+Q15QoRaRggXbYwOiLSZ6bd5bjVgp27I7l4t4Ta1ry/QihCtzjEvu7pZNT4hhc YT845RemjAYQQ3Irmis+/tSd8CNa80zPeN3zZKcV3/hK5/C+UnZhcqxtc6elrkYIyNN8LV MdOIO8sEzIDzmhq8d3wq8nkQg3zJghNbMUHMYhBFHvnADiVVoPX1PPJEfNX6gH8ba9R9sj sSlA8DewFqRcVNOjK7PX17IHHWyiJM6Z5XurchGDYhyzE19M46eUbtL69YG8NZqKvLMu78 DmKgXGXWGBvsEC0ib30aftp/eqYwBeXoAdbKLlELM/lElH3Q2dJc1BfUcHQLow== 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 4P07LS0fJTzkyb; Sun, 22 Jan 2023 09:32:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30M9WVCd072069; Sun, 22 Jan 2023 09:32:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30M9WVJE072068; Sun, 22 Jan 2023 09:32:31 GMT (envelope-from git) Date: Sun, 22 Jan 2023 09:32:31 GMT Message-Id: <202301220932.30M9WVJE072068@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 2da12891daa2 - main - Document another example for "binat". 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: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2da12891daa2ad1c39ced5ef86e3d136f958826c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=2da12891daa2ad1c39ced5ef86e3d136f958826c commit 2da12891daa2ad1c39ced5ef86e3d136f958826c Author: Poul-Henning Kamp AuthorDate: 2023-01-22 09:31:18 +0000 Commit: Poul-Henning Kamp CommitDate: 2023-01-22 09:31:18 +0000 Document another example for "binat". --- share/man/man5/pf.conf.5 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5 index c7446f53bb49..2edce7f947eb 100644 --- a/share/man/man5/pf.conf.5 +++ b/share/man/man5/pf.conf.5 @@ -2927,6 +2927,10 @@ nat on $ext_if inet proto udp from any port = isakmp to any -\*(Gt ($ext_if) \e # (bidirectional). binat on $ext_if from 10.1.2.150 to any -\*(Gt $ext_if +# Translate packets arriving on $peer_if addressed to 172.22.16.0/20 +# to the corresponding address in 172.21.16.0/20 (bidirectional). +binat on $peer_if from 172.21.16.0/20 to any -> 172.22.16.0/20 + # RDR # Translate incoming packets' destination addresses. # As an example, redirect a TCP and UDP port to an internal machine. From nobody Sun Jan 22 09:35: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 4P07QG6Y7Jz328HD; Sun, 22 Jan 2023 09:35:50 +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 4P07QG5z9sz3kKJ; Sun, 22 Jan 2023 09:35:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674380150; 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=fzv3Bwu95GJEQIvp+JbQd5d0kx8utwl3lbXvpE2ZY5Y=; b=Kh+T8ce2RV/1gPY0vBKI3E0i55e2dczBgwcb5EiijlruyV4rfMZ1ehuoFWDbQy+bfB7QZW qlYOA2Mg2NPLfmTOkcH+PNrNFLymsBvHlbqRyDHL6Kqi1KRU9/MzFpNEVNS7hMUySIZXsV 28481LpVxr6zkZ0DJ0dEtiqw2iYWHbNVoOYEQsr7ELGRfdPo/lglCcqvnmWVJth4Ns9sWq mKciOaZZlcIkC0pNnu/F3ZPB+xHbCvDZ6HlzoAvMrcl2DNIi9v5RC0uDnWfsJyqgHfdAVR GVtMWnO6wKaoeryQDCJCfJwP+SuFpZEiYg8/XuZkEdYFZqJR9UDe7Z3/Sctq4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674380150; 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=fzv3Bwu95GJEQIvp+JbQd5d0kx8utwl3lbXvpE2ZY5Y=; b=qD+zRalHSlq/088tuvkTvLm7f1f6vMawJ8mBuHQJgle1DEFwm8epRWGweEEZj+m2cQ/nFS YA5kk9gckoLIsLFcHrArRg9QH5LKbKfZRlqZyELh8bZx0dSWYnyYIT2DQonVTVfVxHun8r 8evmCB1p2qCSeb2kHwpW73LC1VWLyak+sGeAqaBmJ67m3mGgfJLrnjUczu605LzjLTgE6U UFCGCWQtGPbkG199XqxQ8TLZCC+jNQRxujnGLAVbNHoHRFCr7S70fnEMa+Md978qAXyp3b Kgj91/2K6FH1WNxvC4tPOrwXW2f29SmpWh76ayVEjA/g4GPK98q6CFG2e7nlrQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674380150; a=rsa-sha256; cv=none; b=Qz45IPl0Dqiv1eH82G/K1xby9s48A3vydnVY/paKaexIVvS+d8jGriGA0NroTH0Vby4/Rp KebHtvXqJPXMYxGlMGg6W6IoF6fFDz7FoLVcfKYS95Q8WFgPtfiUD9sEWvLFUlApiPiTaH FgCg9sl0k780QTCn55bwp/8Mv+M1xzfZ16IWK9ZmCffXPwIB7V2YqRL/oZMR0BX4/MBpE/ L8jFaygHB0d5Pm+eja9dJvlXxAjWgwCm+pXczBqTpsUrVgFwEMtkJdi+DMG8ucK5s/Yr2/ 29Ih+F/idZSM6e1KIKmixIbDbvelHj7dfZEzoN9OYIaXVfZ/ld4Rx83job1MLA== 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 4P07QG4XJ6zkyf; Sun, 22 Jan 2023 09:35:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30M9Zobp072646; Sun, 22 Jan 2023 09:35:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30M9ZoLE072645; Sun, 22 Jan 2023 09:35:50 GMT (envelope-from git) Date: Sun, 22 Jan 2023 09:35:50 GMT Message-Id: <202301220935.30M9ZoLE072645@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: 7a56009cf5b0 - main - stress2: Added a regression 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: pho X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7a56009cf5b0606dc078346386b5eae3ccae24d3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by pho: URL: https://cgit.FreeBSD.org/src/commit/?id=7a56009cf5b0606dc078346386b5eae3ccae24d3 commit 7a56009cf5b0606dc078346386b5eae3ccae24d3 Author: Peter Holm AuthorDate: 2023-01-22 09:35:28 +0000 Commit: Peter Holm CommitDate: 2023-01-22 09:35:28 +0000 stress2: Added a regression test --- tools/test/stress2/misc/fsync4.sh | 146 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) diff --git a/tools/test/stress2/misc/fsync4.sh b/tools/test/stress2/misc/fsync4.sh new file mode 100755 index 000000000000..ac08dd6dff49 --- /dev/null +++ b/tools/test/stress2/misc/fsync4.sh @@ -0,0 +1,146 @@ +#!/bin/sh + +# +# SPDX-License-Identifier: BSD-2-Clause +# +# Copyright (c) 2023 Peter Holm +# +# 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. +# + +# Regression test for D38114: Handle ERELOOKUP from VOP_FSYNC() + +# "fsync4: msync(0x82d3cc000), file d1/d2/d3/d4/d5/../file.92660: +# Input/output error" seen + +# Fixed by: 6189672e6008 - main - Handle ERELOOKUP from VOP_FSYNC() in +# several other places + +. ../default.cfg +[ `id -u` -ne 0 ] && echo "Must be root!" && exit 1 + +dir=/tmp +odir=`pwd` +pids="" +prog=$(basename "$0" .sh) +s=0 +cd $dir +sed '1,/^EOF/d' < $odir/$0 > $dir/$prog.c +mycc -o $prog -Wall -Wextra -O0 -g $prog.c || exit 1 +rm -f $prog.c +cd $odir + +set -eu +mount | grep "on $mntpoint " | grep -q /dev/md && umount -f $mntpoint +[ -c /dev/md$mdstart ] && mdconfig -d -u $mdstart +mdconfig -a -t swap -s 1g -u $mdstart +newfs -U md$mdstart > /dev/null +mount /dev/md$mdstart $mntpoint +set +e + +cd $odir +../testcases/swap/swap -t 1m -i 20 -l 100 > /dev/null & +sleep .5 +cd $mntpoint +mkdir -p d1/d2/d3/d4/d5 +for i in `jot 8`; do + $dir/$prog $i & + pids="$pids $!" +done +cd $odir +for pid in $pids; do + wait $pid + [ $? -ne 0 ] && s=1 +done + +for i in `jot 6`; do + mount | grep -q "on $mntpoint " || break + umount $mntpoint && break || sleep 10 + [ $i -eq 6 ] && + { echo FATAL; fstat -mf $mntpoint; exit 1; } +done +mdconfig -d -u $mdstart +rm -rf $dir/$prog +exit $s +EOF +#include +#include +#include +#include + + +#include +#include +#include +#include +#include +#include + +#define RUNTIME 60 +#define SIZ (1024 * 1024) + +static time_t start; + +int +main(void) +{ + size_t len; + int fd, i, ps; + char *cp; + char *path = "d1/d2/d3/d4/d5"; + char d1[1024], d2[1024], file[1024]; + + snprintf(d1, sizeof(d1), "%s/dir.%d", path, getpid()); + snprintf(d2, sizeof(d2), "%s/new.%d", path, getpid()); + snprintf(file, sizeof(file), "%s/../file.%d", path, getpid()); + + start = time(NULL); + while (time(NULL) - start < RUNTIME) { + if (mkdir(d1, 0740) == -1) + err(1, "mkdir(%s)", d1); + if (rename(d1, d2) == -1) + err(1, "rename(%s, %s)", d1, d2); + if ((fd = open(file, O_RDWR | O_CREAT | O_TRUNC, 0600)) == -1) + err(1, "open%s()", file); + len = SIZ; + if (ftruncate(fd, len) == -1) + err(1, "ftruncate"); + cp = mmap(NULL, len, PROT_READ | PROT_WRITE, + MAP_SHARED, fd, 0); + if (cp == MAP_FAILED) + err(1, "mmap()"); + ps = getpagesize(); + for (i = 0; i < SIZ; i += ps) + cp[i] = 1; + if (msync(cp, 0, MS_SYNC) == -1) + err(1, "msync(%p), file %s", cp, file); + if (munmap(cp, len) == -1) + err(1, "unmap()"); + close(fd); + if (rename(d2, d1) == -1) + err(1, "rename(%s, %s)", d2, d1); + if (rmdir(d1) == -1) + err(1, "rmdir(%s)", d1); + } + + return (0); +} From nobody Sun Jan 22 18:50: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 4P0MkN5Yx5z3NNwW; Sun, 22 Jan 2023 18:50:36 +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 4P0MkN53zKz3nWr; Sun, 22 Jan 2023 18:50:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674413436; 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=o0xn2f/wuAguJUUtPOE2uKmd1UaiRtHd3e8Y5cI65t4=; b=SVBpjDT6080I+/l/BVfleS5fPsphcqVnMgWRVZbbEABC55mdvQv0tlw+i9hBD16dXJ2ay0 4yR4ypJ30mU8xH9CLkNh6754Q5AziifEfrqZit41FkE0fF3FCgux/ICOB6bpu7KQ0maiMT xcDsHaH4rRm5uUIjeC5OXWmhiyhn68DG/oML3SvWnjEmVcYgZvfvs9PwsOZpcNoKK/jYKU 0dyd6NdoC83C7HLiS5gB+3gShSaJeAZrFHlW/9aAEJPBWYccbYLsVc3ugFPaxewlZerhjG GkW9kxKrhi3ArnuYZ8WPJPDv/IMcF2+hTD0G8Ku2XeJjVHupSDhdhWaK3D8tYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674413436; 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=o0xn2f/wuAguJUUtPOE2uKmd1UaiRtHd3e8Y5cI65t4=; b=XOsMgFcsz4gODibpqPveMS6ATE8tWmnwicSFHW34FySCCj/en+84uCQ62RHUpIcewh2BQP dHRJvwJXU1oxcdzKK2xQHaJ7u5HvgdOnveC7cIKat5L4osmMo3NGoC2LEWDqrSAckwfMB1 9+c1rdVkqHLIZ9MuFM2w/Hswk0BaI3nWM1LXsraT/y81l4Eif/xn8P2OZ32NUPJK5Srfoc OCJmG+R/hsHKPAF9x9bBsIRpFpEQZoGgE9rRgO1k8cYd3SBa7DNZzGIQikdjXn9NFF1E2L TNDHwERTEdUGsz2g1GJpWVIkR6PcRc762Z0L/28iGP38Lvu2vhAybDAy/WMEKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674413436; a=rsa-sha256; cv=none; b=ys0zf1sp+qsiBsOzdFl/XJ0tPnwboWM+jAYvI8nohdvf1HWTVKa5KjH0UAnAgSGTEJSQlN dnnYtn0O497XcQYh7LauxSskrRZTgw67BoLZEdRUYBmsy/hhNmp4SEkHr0m+DrroQ9V9Pk q2SDEux0UfOAG9KslnKIltSRAjLmyuuz6o7e65NreaDHIoR9wrpAhxiG7bBQaQxA/EiPtV nzuqG9fVQcO0YEjfdj5aSBZkQSyomzY4ehkGWTCeiIkIoGKRkkpyeFwmm5UZvdx74LNTUG TjFs15SfTxpeF/kvlNA2AXHi5IXBw7y/DSYSjHjSkpMTtMSNtATYzj5YqmIsrQ== 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 4P0MkN46nzz10lT; Sun, 22 Jan 2023 18:50:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30MIoaOV062909; Sun, 22 Jan 2023 18:50:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30MIoaxl062908; Sun, 22 Jan 2023 18:50:36 GMT (envelope-from git) Date: Sun, 22 Jan 2023 18:50:36 GMT Message-Id: <202301221850.30MIoaxl062908@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 30dd227cff75 - main - netinet6: honor blackhole/unreach routes in the non-fastforwading code. 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: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 30dd227cff75bdabaac2002a2b17095f3392a485 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=30dd227cff75bdabaac2002a2b17095f3392a485 commit 30dd227cff75bdabaac2002a2b17095f3392a485 Author: Alexander V. Chernikov AuthorDate: 2023-01-22 16:57:36 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-01-22 18:48:07 +0000 netinet6: honor blackhole/unreach routes in the non-fastforwading code. Currently, under the conditions specified below, IPv6 ingress packet processing can ignore blackhole/reject flag on the prefix. The packet will instead be looped locally till TTL expiration and a single ICMPv6 unreachable message will be send to the source even in case of RTF_BLACKHOLE. The following conditions needs hold to make the scenario happen: * IPv6 forwarding is enabled * Packet is not fast-forwarded * Destination prefix has either RTF_BLACKHOLE or RTF_REJECT flag Fix this behavior by checking for the blackhole/reject flags in ip6_forward(). Reported by: Dmitriy Smirnov Reviewed by: ae Differential Revision: https://reviews.freebsd.org/D38164 MFC after: 3 days --- sys/netinet6/ip6_forward.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/netinet6/ip6_forward.c b/sys/netinet6/ip6_forward.c index 5173415afda6..39c93ac35427 100644 --- a/sys/netinet6/ip6_forward.c +++ b/sys/netinet6/ip6_forward.c @@ -196,6 +196,15 @@ again: goto bad; } + if (nh->nh_flags & (NHF_BLACKHOLE | NHF_REJECT)) { + IP6STAT_INC(ip6s_cantforward); + if ((nh->nh_flags & NHF_REJECT) && (mcopy != NULL)) { + icmp6_error(mcopy, ICMP6_DST_UNREACH, + ICMP6_DST_UNREACH_REJECT, 0); + } + goto bad; + } + /* * Source scope check: if a packet can't be delivered to its * destination for the reason that the destination is beyond the scope From nobody Mon Jan 23 00:51: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 4P0WlF3tlrz30y4g; Mon, 23 Jan 2023 00:51: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 4P0WlF3djBz3DZl; Mon, 23 Jan 2023 00:51:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674435113; 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=WFlTw9uPbPpxyxpMv5N1eRJlfrMZJzWS/5Um1IRQqWU=; b=ctpG+Hvn/awNB3TjZAh9kerenlGqOxu0MYp2rJ81sB5W3vxhw+HHldeHG9SH0hTUx08K0u C1Vtw0PjGa/3uRVPfr83caMlZ7B0sdL4idEZabLETtdVwd7QdcFxMJ3pn86jHn1jPfYobY JerB7RzVMtGi+ECLWC/Gf90nUcSIrAR4CTaOjx1jfFMNAIzBWHtK6mtxtGrBPm2PuiA6sd fNqOrcbJFcK2X9WEBIjQNOBW8vizuqbfITokSXu0vzbDAXBWGfN+EAyObvtI7NjV9/xkM/ EcXGG+DWlionpA9gzUH9aZhVIN3JjLtdw99KyGuoZ28nOCjtG6BciWY1lLsHkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674435113; 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=WFlTw9uPbPpxyxpMv5N1eRJlfrMZJzWS/5Um1IRQqWU=; b=t2lqU8y2cQa5c7wfedY8iEyKBZNHeaiUv9qQi72ZEVZkasq76+gcSfzOqIiCirxb8lKzoc 1VTdJSltuj1+F476Xj43YE7DlGyEvtVr/UCRyCggA96OgywCMAcrkQ9coJHs3vTP9haKWg LL4AS564T+XVzxIlaC1PEysEDLEuMO3LoVq6o+mZnGnAEmgwF62UOe/KCZHNQDjEkfDP0F VUWWsuTw537f/y1GBmLgMG61TotVzpEXHR1mJ5vvBrVP0CihDWF2ZFUSOc8TdublsgBKv1 qlhMbGxRCCZHAqRK1dEnBuuWB4nKxJoBWUzPlf2T9cfEB2jZjf+a7L/SUf7ZNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674435113; a=rsa-sha256; cv=none; b=Iw8FZ3CO2KXIork3mGXrNPMmKYJhJnGu6NOSxdfxmZKy2NsWduLn26CZrOWls5CYpNMtLR EGnMPI2vfY9AeNNAPvyX9A1Vz3x11WXjy0Jy8imS1knzJUlCHoXHv8n1B4yQKPo5dijY3+ PnYVehlMTR7YvhBTXoeh+BmDzWT/oJNrlRJFL2QhIM0BN1oKMKRRSONpjKr9Kuosopa7av sd3WP1/srolIVQMfDC9IjLMKXKmMSqBEGEdCiqCY/b2/Xp1Rhiv72r8A+HcyOZhbf61M79 jdG6DCATKGm5iPBchs1dr6qeeSp7me4c9kpkeduVXtVIBn8trPRMz4xmWLiaWg== 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 4P0WlF2kRBz18tY; Mon, 23 Jan 2023 00:51:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30N0prqc079701; Mon, 23 Jan 2023 00:51:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30N0pobd079700; Mon, 23 Jan 2023 00:51:50 GMT (envelope-from git) Date: Mon, 23 Jan 2023 00:51:50 GMT Message-Id: <202301230051.30N0pobd079700@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: 047153b41641 - main - MFV: xz 5.4.1. 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: 047153b416415605f127a3950e08c61f1910e9cb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=047153b416415605f127a3950e08c61f1910e9cb commit 047153b416415605f127a3950e08c61f1910e9cb Merge: 30dd227cff75 2690f2feae43 Author: Xin LI AuthorDate: 2023-01-23 00:49:43 +0000 Commit: Xin LI CommitDate: 2023-01-23 00:50:36 +0000 MFV: xz 5.4.1. MFC after: 3 days contrib/xz/ChangeLog | 652 +++++++++++++++++++++ contrib/xz/THANKS | 3 + contrib/xz/src/common/mythread.h | 12 +- contrib/xz/src/common/sysdefs.h | 12 +- contrib/xz/src/common/tuklib_progname.c | 2 +- contrib/xz/src/common/tuklib_progname.h | 2 +- contrib/xz/src/liblzma/api/lzma/version.h | 2 +- contrib/xz/src/liblzma/check/crc64_fast.c | 18 + contrib/xz/src/liblzma/common/filter_encoder.c | 7 +- contrib/xz/src/liblzma/common/index.c | 1 + contrib/xz/src/liblzma/common/index.h | 12 +- contrib/xz/src/liblzma/common/index_decoder.c | 2 +- contrib/xz/src/liblzma/common/index_decoder.h | 1 + contrib/xz/src/liblzma/common/index_encoder.c | 2 +- contrib/xz/src/liblzma/common/index_hash.c | 4 +- contrib/xz/src/liblzma/common/microlzma_encoder.c | 3 +- .../xz/src/liblzma/common/stream_buffer_encoder.c | 1 + contrib/xz/src/liblzma/common/stream_decoder.c | 3 +- contrib/xz/src/liblzma/common/stream_decoder_mt.c | 2 +- contrib/xz/src/liblzma/simple/arm64.c | 1 + contrib/xz/src/xz/message.c | 9 + contrib/xz/src/xz/mytime.c | 7 +- contrib/xz/src/xz/suffix.c | 3 + lib/liblzma/config.h | 27 +- 24 files changed, 744 insertions(+), 44 deletions(-) diff --cc lib/liblzma/config.h index 7f9d3265c120,000000000000..d88e3e105dad mode 100644,000000..100644 --- a/lib/liblzma/config.h +++ b/lib/liblzma/config.h @@@ -1,613 -1,0 +1,614 @@@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* How many MiB of RAM to assume if the real amount cannot be determined. */ +#define ASSUME_RAM 128 + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* FreeBSD - disabled intentionally */ +/* #undef ENABLE_NLS */ + +/* Define to 1 if bswap_16 is available. */ +/* #undef HAVE_BSWAP_16 */ + +/* Define to 1 if bswap_32 is available. */ +/* #undef HAVE_BSWAP_32 */ + +/* Define to 1 if bswap_64 is available. */ +/* #undef HAVE_BSWAP_64 */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BYTESWAP_H */ + +/* Define to 1 if Capsicum is available. */ +#define HAVE_CAPSICUM 1 + +/* Define to 1 if the system has the type `CC_SHA256_CTX'. */ +/* #undef HAVE_CC_SHA256_CTX */ + +/* Define to 1 if you have the `CC_SHA256_Init' function. */ +/* #undef HAVE_CC_SHA256_INIT */ + +/* 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 */ + +/* Define to 1 if crc32 integrity check is enabled. */ +#define HAVE_CHECK_CRC32 1 + +/* Define to 1 if crc64 integrity check is enabled. */ +#define HAVE_CHECK_CRC64 1 + +/* Define to 1 if sha256 integrity check is enabled. */ +#define HAVE_CHECK_SHA256 1 + +/* Define to 1 if you have the `clock_gettime' function. */ +#define HAVE_CLOCK_GETTIME 1 + ++/* Define to 1 if `CLOCK_MONOTONIC' is declared in . */ ++#define HAVE_CLOCK_MONOTONIC 1 ++ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_COMMONCRYPTO_COMMONDIGEST_H */ + ++/* Define to 1 if you have the header file. */ ++#define HAVE_CPUID_H 1 ++ +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* FreeBSD - disabled intentionally */ +/* #undef HAVE_DCGETTEXT */ + - /* Define to 1 if you have the declaration of `CLOCK_MONOTONIC', and to 0 if - you don't. */ - #define HAVE_DECL_CLOCK_MONOTONIC 1 - - /* Define to 1 if you have the declaration of `program_invocation_name', and - to 0 if you don't. */ - #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 - +/* Define to 1 if any of HAVE_DECODER_foo have been defined. */ +#define HAVE_DECODERS 1 + +/* Define to 1 if arm decoder is enabled. */ +#define HAVE_DECODER_ARM 1 + +/* Define to 1 if arm64 decoder is enabled. */ +#define HAVE_DECODER_ARM64 1 + +/* Define to 1 if armthumb decoder is enabled. */ +#define HAVE_DECODER_ARMTHUMB 1 + +/* Define to 1 if delta decoder is enabled. */ +#define HAVE_DECODER_DELTA 1 + +/* Define to 1 if ia64 decoder is enabled. */ +#define HAVE_DECODER_IA64 1 + +/* Define to 1 if lzma1 decoder is enabled. */ +#define HAVE_DECODER_LZMA1 1 + +/* Define to 1 if lzma2 decoder is enabled. */ +#define HAVE_DECODER_LZMA2 1 + +/* Define to 1 if powerpc decoder is enabled. */ +#define HAVE_DECODER_POWERPC 1 + +/* Define to 1 if sparc decoder is enabled. */ +#define HAVE_DECODER_SPARC 1 + +/* Define to 1 if x86 decoder is enabled. */ +#define HAVE_DECODER_X86 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if any of HAVE_ENCODER_foo have been defined. */ +#define HAVE_ENCODERS 1 + +/* Define to 1 if arm encoder is enabled. */ +#define HAVE_ENCODER_ARM 1 + +/* Define to 1 if arm64 encoder is enabled. */ +#define HAVE_ENCODER_ARM64 1 + +/* Define to 1 if armthumb encoder is enabled. */ +#define HAVE_ENCODER_ARMTHUMB 1 + +/* Define to 1 if delta encoder is enabled. */ +#define HAVE_ENCODER_DELTA 1 + +/* Define to 1 if ia64 encoder is enabled. */ +#define HAVE_ENCODER_IA64 1 + +/* Define to 1 if lzma1 encoder is enabled. */ +#define HAVE_ENCODER_LZMA1 1 + +/* Define to 1 if lzma2 encoder is enabled. */ +#define HAVE_ENCODER_LZMA2 1 + +/* Define to 1 if powerpc encoder is enabled. */ +#define HAVE_ENCODER_POWERPC 1 + +/* Define to 1 if sparc encoder is enabled. */ +#define HAVE_ENCODER_SPARC 1 + +/* Define to 1 if x86 encoder is enabled. */ +#define HAVE_ENCODER_X86 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if __attribute__((__constructor__)) is supported for functions. + */ +#define HAVE_FUNC_ATTRIBUTE_CONSTRUCTOR 1 + +/* Define to 1 if you have the `futimens' function. */ +#define HAVE_FUTIMENS 1 + +/* Define to 1 if you have the `futimes' function. */ +/* #undef HAVE_FUTIMES */ + +/* Define to 1 if you have the `futimesat' function. */ +/* #undef HAVE_FUTIMESAT */ + +/* Define to 1 if you have the header file. */ +#define HAVE_GETOPT_H 1 + +/* Define to 1 if you have the `getopt_long' function. */ +#define HAVE_GETOPT_LONG 1 + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* FreeBSD - disabled intentionally */ +/* #undef HAVE_GETTEXT */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* Define to 1 if you have the header file. */ +/* FreeBSD - only with clang because the base gcc does not support it */ +#if defined(__clang__) && defined(__FreeBSD__) && defined(__amd64__) +#define HAVE_IMMINTRIN_H 1 +#endif + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if .lz (lzip) decompression support is enabled. */ +#define HAVE_LZIP_DECODER 1 + +/* Define to 1 if mbrtowc and mbstate_t are properly declared. */ +#define HAVE_MBRTOWC 1 + +/* Define to 1 to enable bt2 match finder. */ +#define HAVE_MF_BT2 1 + +/* Define to 1 to enable bt3 match finder. */ +#define HAVE_MF_BT3 1 + +/* Define to 1 to enable bt4 match finder. */ +#define HAVE_MF_BT4 1 + +/* Define to 1 to enable hc3 match finder. */ +#define HAVE_MF_HC3 1 + +/* Define to 1 to enable hc4 match finder. */ +#define HAVE_MF_HC4 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MINIX_CONFIG_H */ + +/* Define to 1 if getopt.h declares extern int optreset. */ +#define HAVE_OPTRESET 1 + +/* Define to 1 if you have the `pledge' function. */ +/* #undef HAVE_PLEDGE */ + +/* Define to 1 if you have the `posix_fadvise' function. */ +#define HAVE_POSIX_FADVISE 1 + ++/* Define to 1 if `program_invocation_name' is declared in . */ ++/* #undef HAVE_PROGRAM_INVOCATION_NAME */ ++ +/* Define to 1 if you have the `pthread_condattr_setclock' function. */ +#define HAVE_PTHREAD_CONDATTR_SETCLOCK 1 + +/* Have PTHREAD_PRIO_INHERIT. */ +#define HAVE_PTHREAD_PRIO_INHERIT 1 + +/* Define to 1 if you have the `SHA256Init' function. */ +/* #undef HAVE_SHA256INIT */ + +/* Define to 1 if the system has the type `SHA256_CTX'. */ +#define HAVE_SHA256_CTX 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SHA256_H 1 + +/* Define to 1 if you have the `SHA256_Init' function. */ +#define HAVE_SHA256_INIT 1 + +/* Define to 1 if the system has the type `SHA2_CTX'. */ +/* #undef HAVE_SHA2_CTX */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SHA2_H */ + +/* Define to 1 if optimizing for size. */ +/* #undef HAVE_SMALL */ + +/* Define to 1 if stdbool.h conforms to C99. */ +#define HAVE_STDBOOL_H 1 + +/* 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 `st_atimensec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_ATIMENSEC 1 + +/* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1 + +/* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC */ + +/* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1 + +/* Define to 1 if `st_uatime' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_UATIME */ + +/* Define to 1 to if GNU/Linux-specific details are unconditionally wanted for + symbol versioning. Define to 2 to if these are wanted only if also PIC is + defined (allows building both shared and static liblzma at the same time + with Libtool if neither --with-pic nor --without-pic is used). This define + must be used together with liblzma_linux.map. */ +/* #undef HAVE_SYMBOL_VERSIONS_LINUX */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_BYTEORDER_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_CAPSICUM_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_ENDIAN_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* 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_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if the system has the type `uintptr_t'. */ +#define HAVE_UINTPTR_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + - /* Define to 1 if _mm_clmulepi64_si128 is usable. See configure.ac for - details. */ ++/* Define to 1 if _mm_set_epi64x and _mm_clmulepi64_si128 are usable. See ++ configure.ac for details. */ +#if defined(__FreeBSD__) && defined(__amd64__) +#define HAVE_USABLE_CLMUL 1 +#endif + +/* Define to 1 if you have the `utime' function. */ +/* #undef HAVE_UTIME */ + +/* Define to 1 if you have the `utimes' function. */ +/* #undef HAVE_UTIMES */ + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#define HAVE_VISIBILITY 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define to 1 if you have the `wcwidth' function. */ +#define HAVE_WCWIDTH 1 + +/* Define to 1 if the system has the type `_Bool'. */ +#define HAVE__BOOL 1 + +/* Define to 1 if you have the `_futime' function. */ +/* #undef HAVE__FUTIME */ + +/* Define to 1 if _mm_movemask_epi8 is available. */ +#if defined(__FreeBSD__) && defined(__amd64__) +#define HAVE__MM_MOVEMASK_EPI8 1 +#endif + +/* Define to 1 if the GNU C extension __builtin_assume_aligned is supported. + */ +#define HAVE___BUILTIN_ASSUME_ALIGNED 1 + +/* Define to 1 if the GNU C extensions __builtin_bswap16/32/64 are supported. + */ +#define HAVE___BUILTIN_BSWAPXX 1 + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Define to 1 when using POSIX threads (pthreads). */ +#define MYTHREAD_POSIX 1 + +/* Define to 1 when using Windows Vista compatible threads. This uses features + that are not available on Windows XP. */ +/* #undef MYTHREAD_VISTA */ + +/* Define to 1 when using Windows 95 (and thus XP) compatible threads. This + avoids use of features that were added in Windows Vista. */ +/* #undef MYTHREAD_WIN95 */ + +/* Define to 1 to disable debugging code. */ +#define NDEBUG 1 + +/* Name of package */ +#define PACKAGE "xz" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "xz@tukaani.org" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "XZ Utils" + +/* Define to the full name and version of this package. */ - #define PACKAGE_STRING "XZ Utils 5.4.0" ++#define PACKAGE_STRING "XZ Utils 5.4.1" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "xz" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "https://tukaani.org/xz/" + +/* Define to the version of this package. */ - #define PACKAGE_VERSION "5.4.0" ++#define PACKAGE_VERSION "5.4.1" + +/* Define to necessary symbol if this constant uses a non-standard name on + your system. */ +/* #undef PTHREAD_CREATE_JOINABLE */ + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 8 + +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ +#define STDC_HEADERS 1 + +/* Define to 1 if the number of available CPU cores can be detected with + cpuset(2). */ +#define TUKLIB_CPUCORES_CPUSET 1 + +/* Define to 1 if the number of available CPU cores can be detected with + pstat_getdynamic(). */ +/* #undef TUKLIB_CPUCORES_PSTAT_GETDYNAMIC */ + +/* Define to 1 if the number of available CPU cores can be detected with + sched_getaffinity() */ +/* #undef TUKLIB_CPUCORES_SCHED_GETAFFINITY */ + +/* Define to 1 if the number of available CPU cores can be detected with + sysconf(_SC_NPROCESSORS_ONLN) or sysconf(_SC_NPROC_ONLN). */ +/* #undef TUKLIB_CPUCORES_SYSCONF */ + +/* Define to 1 if the number of available CPU cores can be detected with + sysctl(). */ +/* #undef TUKLIB_CPUCORES_SYSCTL */ + +/* Define to 1 if the system supports fast unaligned access to 16-bit, 32-bit, + and 64-bit integers. */ +/* FreeBSD - derive from __NO_STRICT_ALIGNMENT */ +/* #undef TUKLIB_FAST_UNALIGNED_ACCESS */ + +/* Define to 1 if the amount of physical memory can be detected with + _system_configuration.physmem. */ +/* #undef TUKLIB_PHYSMEM_AIX */ + +/* Define to 1 if the amount of physical memory can be detected with + getinvent_r(). */ +/* #undef TUKLIB_PHYSMEM_GETINVENT_R */ + +/* Define to 1 if the amount of physical memory can be detected with + getsysinfo(). */ +/* #undef TUKLIB_PHYSMEM_GETSYSINFO */ + +/* Define to 1 if the amount of physical memory can be detected with + pstat_getstatic(). */ +/* #undef TUKLIB_PHYSMEM_PSTAT_GETSTATIC */ + +/* Define to 1 if the amount of physical memory can be detected with + sysconf(_SC_PAGESIZE) and sysconf(_SC_PHYS_PAGES). */ +#define TUKLIB_PHYSMEM_SYSCONF 1 + +/* Define to 1 if the amount of physical memory can be detected with sysctl(). + */ +/* #undef TUKLIB_PHYSMEM_SYSCTL */ + +/* Define to 1 if the amount of physical memory can be detected with Linux + sysinfo(). */ +/* #undef TUKLIB_PHYSMEM_SYSINFO */ + +/* Define to 1 to use unsafe type punning, e.g. char *x = ...; *(int *)x = + 123; which violates strict aliasing rules and thus is undefined behavior + and might result in broken code. */ +/* #undef TUKLIB_USE_UNSAFE_TYPE_PUNNING */ + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable general extensions on macOS. */ +#ifndef _DARWIN_C_SOURCE +# define _DARWIN_C_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable X/Open compliant socket functions that do not require linking + with -lxnet on HP-UX 11.11. */ +#ifndef _HPUX_ALT_XOPEN_SOCKET_API +# define _HPUX_ALT_XOPEN_SOCKET_API 1 +#endif +/* Identify the host operating system as Minix. + This macro does not affect the system headers' behavior. + A future release of Autoconf may stop defining this macro. */ +#ifndef _MINIX +/* # undef _MINIX */ +#endif +/* Enable general extensions on NetBSD. + Enable NetBSD compatibility extensions on Minix. */ +#ifndef _NETBSD_SOURCE +# define _NETBSD_SOURCE 1 +#endif +/* Enable OpenBSD compatibility extensions on NetBSD. + Oddly enough, this does nothing on OpenBSD. */ +#ifndef _OPENBSD_SOURCE +# define _OPENBSD_SOURCE 1 +#endif +/* Define to 1 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_SOURCE +/* # undef _POSIX_SOURCE */ +#endif +/* Define to 2 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_1_SOURCE +/* # undef _POSIX_1_SOURCE */ +#endif +/* Enable POSIX-compatible threading on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +# define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +# define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ +# define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ +# define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ +# define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ +#ifndef __STDC_WANT_LIB_EXT2__ +# define __STDC_WANT_LIB_EXT2__ 1 +#endif +/* Enable extensions specified by ISO/IEC 24747:2009. */ +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ +# define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable X/Open extensions. Define to 500 only if necessary + to make mbstate_t available. */ +#ifndef _XOPEN_SOURCE +/* # undef _XOPEN_SOURCE */ +#endif + + +/* Version number of package */ - #define VERSION "5.4.0" ++#define VERSION "5.4.1" + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined(__FreeBSD__) +#include +#if defined(__NO_STRICT_ALIGNMENT) +#define TUKLIB_FAST_UNALIGNED_ACCESS 1 +#endif +#include +#if _BYTE_ORDER == _BIG_ENDIAN +# define WORDS_BIGENDIAN 1 +#endif +#endif + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define for Solaris 2.5.1 so the uint32_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT32_T */ + +/* Define for Solaris 2.5.1 so the uint64_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT64_T */ + +/* Define for Solaris 2.5.1 so the uint8_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT8_T */ + +/* Define to rpl_ if the getopt replacement functions and variables should be + used. */ +/* #undef __GETOPT_PREFIX */ + +/* Define to the type of a signed integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int32_t */ + +/* Define to the type of a signed integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int64_t */ + +/* Define to the type of an unsigned integer type of width exactly 16 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint16_t */ + +/* Define to the type of an unsigned integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint32_t */ + +/* Define to the type of an unsigned integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint64_t */ + +/* Define to the type of an unsigned integer type of width exactly 8 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint8_t */ + +/* Define to the type of an unsigned integer type wide enough to hold a + pointer, if such a type exists, and if the system does not define it. */ +/* #undef uintptr_t */ From nobody Mon Jan 23 14:38: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 4P0t4l6Sfdz2tBgJ; Mon, 23 Jan 2023 14:38: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 4P0t4l5rQrz3m3F; Mon, 23 Jan 2023 14:38:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674484695; 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=Jp23z2OFJeUJ5rRpayeyrlEnz5zOIAF4OVJ4LkoMhNY=; b=Y6tvQhreh6TETRFT2fMpPllZfuOmgSKJ4Ag927yUehYPpofffNyFOVVtw4nVQg7gbSCYzt WlrYdeYfgjvRlgliHiEKzXr/vCLH3nh5IoCzfpNzHkViiBVNuO+fWUp1otoiS36A+o7qyY gaCA6hdLXSSyRBfjG5CMrBLW4sYx8RXNAGTm1yi7GgaJkL/+RXksXZEKA8cttV+/2qpu0q ilI9IQDQSzjNgg/c3mPFSmiULx/4G6KHmk6NryobU9fJfbIBSKMPIuzZ3pHOS4IysBD4Qk aW0JazQz8wpeA6Qzl6Yo1MMhqDGLq0CnZmufUwPhlILV9R5puON8oev8rYZZKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674484695; 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=Jp23z2OFJeUJ5rRpayeyrlEnz5zOIAF4OVJ4LkoMhNY=; b=BDEeMo8sSpQ0moGCyMTa0T77/bYh/Ugqs9PesbgpsaLuhUL3mGa0aUS5hlhswUzgNjv2sL zfcaPqQzr+hjNJFEs6Jp47bCod2LgkeQq8IFIQdZ9HMJwPQM7mAbMnKhRXXudZ4dvhg6wu +5RriiV1as0XIMbQeTCdJmDZZcV+adXXyjNE3IGP8F0T7XGv0a72TwYOjrMhMpVZ44eKgE fob2SgIktlY4yMdrA4f+/Cxgk3/aHeem69K4K6FRzoZtHgIBJYniHDmgu4eJBTJzZ9deVv lomAgJvb8SXFvrCEi+eKsgueCeCy4kDtHbqoNv7YTh7xyFbykVI+X/dkQBlCpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674484695; a=rsa-sha256; cv=none; b=OY6Ntk70gnLtGBanfk/O8AaknHJC3i+/mXddPGgG15r+b2cnm/OTSTiO67s4tObh72k153 DXWXPPmLZkl1wYGBXI2eKpJAADtfjrHKbN2mQYbFlhoY1ivvLAfPCGma3CZAOGJigls4lS YcJf81N2Sds9yT0MzA1gGzsgh7qcOiofI31FgxTM+juhVEzZ9y71rI+evCLu9fFA3tqnad zahDeVX4EMTQI6383I12kJc0/LhUj0A/u4UIZEu8tborD/w9KbDGUZMiuKEn7cz1p35hT7 3w4P3YUZPk0Wbpgn2gofhf+KuHch20hyKhvHtTlPGKI6fysEXFvvriiUFhwXIA== 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 4P0t4l4pRDzXhw; Mon, 23 Jan 2023 14:38:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NEcFds058103; Mon, 23 Jan 2023 14:38:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NEcFvt058102; Mon, 23 Jan 2023 14:38:15 GMT (envelope-from git) Date: Mon, 23 Jan 2023 14:38:15 GMT Message-Id: <202301231438.30NEcFvt058102@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mike Karels Subject: git: 7d189f669836 - main - growfs(7): conditionalize mention of adding dump device 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: karels X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7d189f669836b81dbdeb7bc7178040a43ab9d1fe Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by karels: URL: https://cgit.FreeBSD.org/src/commit/?id=7d189f669836b81dbdeb7bc7178040a43ab9d1fe commit 7d189f669836b81dbdeb7bc7178040a43ab9d1fe Author: Mike Karels AuthorDate: 2023-01-23 14:37:07 +0000 Commit: Mike Karels CommitDate: 2023-01-23 14:37:07 +0000 growfs(7): conditionalize mention of adding dump device The growfs_fstab script will add a new swap partition as a dump device as well, but only if dumpdev is set to AUTO. MFC after: 3 days Reviewed by: pauamma Differential Revision: https://reviews.freebsd.org/D38166 --- share/man/man7/growfs.7 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/share/man/man7/growfs.7 b/share/man/man7/growfs.7 index 41903023af91..1c2345918a65 100644 --- a/share/man/man7/growfs.7 +++ b/share/man/man7/growfs.7 @@ -56,7 +56,12 @@ The script adds any new swap partition to .Pa /etc/fstab after the root file system is made writable, -and enables its use as a dump partition. +and enables its use as a dump partition if the +.Va dumpdev +variable from +.Xr rc.conf 5 +is set to +.Li AUTO . .Pp The following options in .Pa /etc/rc.conf From nobody Mon Jan 23 16:32:17 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 4P0wcK3v8kz30tTb; Mon, 23 Jan 2023 16:32:17 +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 4P0wcK3M2Nz3w2P; Mon, 23 Jan 2023 16:32:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674491537; 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=SEbEFaD6dMg9nTcgKg2NmP2JmdqtY8TX69n3aPmcIuE=; b=Hwcp+iTFrLKTrne3pBxfqSh9fENRocd0R4fdPHY3Pskz+2abfMOO28ZdMS0EOzdj7tfDHF 8QuUwSw106Ry89Bny75Vg9r5MoRDW79gcczR/dCiR5bl7HrTcIcplsf5e2VaxIwJXZdpy6 rZH15+xJaFb+s/EmawxyEZPqiN93GCPOpFKRLnbZ1zgQl0WaTTsMLGhI5uc1Ldrq1RTwSB ecss0H2jxiZVukVw0Yg6KRUAMj9321MAprSM1be/uYEzTrAw5Ak2h0uUB4LchQyiPcJfsY YdUN9NiOWvtYoGWbrs/Db0pxM7+SCFQYYisBhJX9+AKsiMwYTEPVsrRBD+cqWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674491537; 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=SEbEFaD6dMg9nTcgKg2NmP2JmdqtY8TX69n3aPmcIuE=; b=oNY4EeIfkXxr1Qs2pqWObWol+3KDSnuDUYunG81PqKgwjBHnNk3DTRw9iYyrjbw9smKMRe iF/5JXQS32hHB4k+lDxbuDwB3XJ3UhElQa8qIxISPDJ8SIa13suQHePP0bW+2l/s3jydGm Q232C1YIphtOThOQJHuXERTtdJVKn8b/RXdpTd0XPhWgodUQFRpY83tZtqgnyRjwNW44TL 5HNphVJkGiY2tixAjT3pNz/yiaMBT2eoodWSAD6OWbBpJVJSxpcGUohqic9rneLiENKKpC jMnjragmMJ8biWwkY3h+xK3V4zXEE6F9PmIJXiEsTDE2VbLf8y/IXFnmeZ/mvQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674491537; a=rsa-sha256; cv=none; b=DuMO/o9ox5GzgvTRSt8z0rC9hUTJBdFYvMgouwDsi2IpFoCxDfNSZUrY8MGqnbgi4UdQAA STIx7JTkLD3wOSOxWphTWCJieepLH2qabHk68/PhQl8PJiwXKFaHd1ifeSsIID+h0t8Q7k ADbp2kJB9ibdy/9r/m7cKlTc5ctCw/fwER0mQFoShbEtXYBJuLPZRSrfIv8qoJZfOxgSbS 2zpPf7yeLRikQMttWoO5TSg1vhiZOzOH4i6vd98OHVVSDWCrbQdq+e9FBvUk6Vk3PTU4mT npHWbjcd6ImL06F8Jbdn0oe9Z7SlF0xNV4i2ZbMN6hiGk+arx08JTfMiS4s2XA== 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 4P0wcK2RkczbnC; Mon, 23 Jan 2023 16:32:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NGWH8e029608; Mon, 23 Jan 2023 16:32:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NGWHe9029607; Mon, 23 Jan 2023 16:32:17 GMT (envelope-from git) Date: Mon, 23 Jan 2023 16:32:17 GMT Message-Id: <202301231632.30NGWHe9029607@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: 8089749d3878 - main - blacklistd: diff reduction against upstream 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: 8089749d38781946c008372f4016d69eee549f1c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=8089749d38781946c008372f4016d69eee549f1c commit 8089749d38781946c008372f4016d69eee549f1c Author: Ed Maste AuthorDate: 2023-01-23 16:19:46 +0000 Commit: Ed Maste CommitDate: 2023-01-23 16:22:10 +0000 blacklistd: diff reduction against upstream Add `conf_` prefix, maching https://github.com/zoulasc/blocklist Sponsored by: The FreeBSD Foundation --- contrib/blacklist/bin/conf.c | 54 +++++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/contrib/blacklist/bin/conf.c b/contrib/blacklist/bin/conf.c index f872b3de787a..6eadf6b2ac8c 100644 --- a/contrib/blacklist/bin/conf.c +++ b/contrib/blacklist/bin/conf.c @@ -90,7 +90,7 @@ advance(char **p) } static int -getnum(const char *f, size_t l, bool local, void *rp, const char *name, +conf_getnum(const char *f, size_t l, bool local, void *rp, const char *name, const char *p) { int e; @@ -127,13 +127,14 @@ out: } static int -getnfail(const char *f, size_t l, bool local, struct conf *c, const char *p) +conf_getnfail(const char *f, size_t l, bool local, struct conf *c, + const char *p) { - return getnum(f, l, local, &c->c_nfail, "nfail", p); + return conf_getnum(f, l, local, &c->c_nfail, "nfail", p); } static int -getsecs(const char *f, size_t l, bool local, struct conf *c, const char *p) +conf_getsecs(const char *f, size_t l, bool local, struct conf *c, const char *p) { int e; char *ep; @@ -193,7 +194,7 @@ out: } static int -getport(const char *f, size_t l, bool local, void *r, const char *p) +conf_getport(const char *f, size_t l, bool local, void *r, const char *p) { struct servent *sv; @@ -207,11 +208,11 @@ getport(const char *f, size_t l, bool local, void *r, const char *p) return 0; } - return getnum(f, l, local, r, "service", p); + return conf_getnum(f, l, local, r, "service", p); } static int -getmask(const char *f, size_t l, bool local, const char **p, int *mask) +conf_getmask(const char *f, size_t l, bool local, const char **p, int *mask) { char *d; const char *s = *p; @@ -226,11 +227,12 @@ getmask(const char *f, size_t l, bool local, const char **p, int *mask) } *d++ = '\0'; - return getnum(f, l, local, mask, "mask", d); + return conf_getnum(f, l, local, mask, "mask", d); } static int -gethostport(const char *f, size_t l, bool local, struct conf *c, const char *p) +conf_gethostport(const char *f, size_t l, bool local, struct conf *c, + const char *p) { char *d; // XXX: Ok to write to string. in_port_t *port = NULL; @@ -249,7 +251,7 @@ gethostport(const char *f, size_t l, bool local, struct conf *c, const char *p) } else pstr = p; - if (getmask(f, l, local, &pstr, &c->c_lmask) == -1) + if (conf_getmask(f, l, local, &pstr, &c->c_lmask) == -1) goto out; if (d) { @@ -300,7 +302,7 @@ gethostport(const char *f, size_t l, bool local, struct conf *c, const char *p) } } - if (getport(f, l, local, &c->c_port, pstr) == -1) + if (conf_getport(f, l, local, &c->c_port, pstr) == -1) return -1; if (port && c->c_port != FSTAR && c->c_port != FEQUAL) @@ -320,7 +322,7 @@ out2: } static int -getproto(const char *f, size_t l, bool local __unused, struct conf *c, +conf_getproto(const char *f, size_t l, bool local __unused, struct conf *c, const char *p) { if (strcmp(p, "stream") == 0) { @@ -331,22 +333,22 @@ getproto(const char *f, size_t l, bool local __unused, struct conf *c, c->c_proto = IPPROTO_UDP; return 0; } - return getnum(f, l, local, &c->c_proto, "protocol", p); + return conf_getnum(f, l, local, &c->c_proto, "protocol", p); } static int -getfamily(const char *f, size_t l, bool local __unused, struct conf *c, +conf_getfamily(const char *f, size_t l, bool local __unused, struct conf *c, const char *p) { if (strncmp(p, "tcp", 3) == 0 || strncmp(p, "udp", 3) == 0) { c->c_family = p[3] == '6' ? AF_INET6 : AF_INET; return 0; } - return getnum(f, l, local, &c->c_family, "family", p); + return conf_getnum(f, l, local, &c->c_family, "family", p); } static int -getuid(const char *f, size_t l, bool local __unused, struct conf *c, +conf_getuid(const char *f, size_t l, bool local __unused, struct conf *c, const char *p) { struct passwd *pw; @@ -356,15 +358,15 @@ getuid(const char *f, size_t l, bool local __unused, struct conf *c, return 0; } - return getnum(f, l, local, &c->c_uid, "user", p); + return conf_getnum(f, l, local, &c->c_uid, "user", p); } static int -getname(const char *f, size_t l, bool local, struct conf *c, +conf_getname(const char *f, size_t l, bool local, struct conf *c, const char *p) { - if (getmask(f, l, local, &p, &c->c_rmask) == -1) + if (conf_getmask(f, l, local, &p, &c->c_rmask) == -1) return -1; if (strcmp(p, "*") == 0) { @@ -407,19 +409,19 @@ conf_parseline(const char *f, size_t l, char *p, struct conf *c, bool local) p++; memset(c, 0, sizeof(*c)); - e = getvalue(f, l, local, c, &p, gethostport); + e = getvalue(f, l, local, c, &p, conf_gethostport); if (e) return -1; - e = getvalue(f, l, local, c, &p, getproto); + e = getvalue(f, l, local, c, &p, conf_getproto); if (e) return -1; - e = getvalue(f, l, local, c, &p, getfamily); + e = getvalue(f, l, local, c, &p, conf_getfamily); if (e) return -1; - e = getvalue(f, l, local, c, &p, getuid); + e = getvalue(f, l, local, c, &p, conf_getuid); if (e) return -1; - e = getvalue(f, l, local, c, &p, getname); + e = getvalue(f, l, local, c, &p, conf_getname); if (e) return -1; - e = getvalue(f, l, local, c, &p, getnfail); + e = getvalue(f, l, local, c, &p, conf_getnfail); if (e) return -1; - e = getvalue(f, l, local, c, &p, getsecs); + e = getvalue(f, l, local, c, &p, conf_getsecs); if (e) return -1; return 0; From nobody Mon Jan 23 18:13: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 4P0ysg4lDXz3b2nr; Mon, 23 Jan 2023 18:13: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 4P0ysg4573z47H5; Mon, 23 Jan 2023 18:13:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674497639; 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=rw7M0RdtJCbpC64kL2m4dI3JHGqsSxghNJjIZFz9ys8=; b=GTQFJiTcGEI23JlIsDNZ7N60DwBcu6X+LFJP/961LN7L2TAioTTBT4tmiK7JgRTaFyUbI7 SDaLqp+CBbiXQdMpW45riQ1wIU9G6KJUD/77K5m+HALlxHUdraB+Rya4h/CiST9N71ABSa x7380GyGoun48uayRHzd8oS+JBBaM/BzvoJ2i41O/EzKiIGEFoqCTVrS7TzBWXTPOQydX+ z6UCHaZX4sYXjLNKTDn7HztijrYEVQ5oCM8w9E2XnquZqOSnvWA22MwGJ/eOKj+pYwg97I l1qJUmtfAQwiPTHBeh5tpaq79xmrvRiF3S9Cks2a6V8c9WUoauSSPxhjvrPLZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674497639; 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=rw7M0RdtJCbpC64kL2m4dI3JHGqsSxghNJjIZFz9ys8=; b=i8xlMLrED/oWauiiQ9eTEbYPvrqzHOg6qn3b7JAycIvwKL0NpN5TboeG8e4/1KzVTx17y6 cmvO3KbyF69FJObHTXDx2QZ1oQjhOZ97bXDj9DCDreu99F0aVMy+U64N2vWJ+xGBpvFraB T/xYyTqZPGcAj0XtIKHS3YEymwlACI71i1WGU7HMCgs6WAF5Gm7MVybL78Kzgsuw9jehyG npt3iKIFNLs7HIQ6QHkdI5AxGY2XdDkHaUBU48kKijEh91qPwFB0On89slxxCaOQ59se5D c0fjneoyJYYcSLW25h1a0f++/Ufvgby9LZ3MUBYJRir+YzNsETaGQaXmMhc5zA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674497639; a=rsa-sha256; cv=none; b=ZqkFEfuFaYNcFPPbeG+i1+XbIOGLoSP7b2otTpid11OA9OTau6rwGtoAEICL8Bh8O0v9XX e42YtC85gugnm7i51ozSPIQZ2gkQkTrlhZeHcHLHtyiCPgLOxSWFZUUczec4LCNfTH25Zb GWllo05Kk/npZ/QA4aeSPMUBCKmMxnyk1zh5uPXw/02MQW7lqwpMyPXRk5u4LmHV8lJHBK M1RgMGY52K8zGaJHWzAFxrUpXynn90g9BFGxA/oBAtXz/lDjXE3PzdtJUTT9FD6PPBgZ16 tb+Vvan83OIT2+0JotVfSZ4LuMVKN+rRxueYZxN4rQfaT3VN3xT92NCYfpD9bg== 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 4P0ysg37r3zf7L; Mon, 23 Jan 2023 18:13:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NIDxvp072681; Mon, 23 Jan 2023 18:13:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NIDx4P072680; Mon, 23 Jan 2023 18:13:59 GMT (envelope-from git) Date: Mon, 23 Jan 2023 18:13:59 GMT Message-Id: <202301231813.30NIDx4P072680@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: dec7db49602d - main - Add kf_file_nlink field to kf_file and populate 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: mjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dec7db49602df75119f6b57d32f1eb58e0040abc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=dec7db49602df75119f6b57d32f1eb58e0040abc commit dec7db49602df75119f6b57d32f1eb58e0040abc Author: Jiajie Chen AuthorDate: 2023-01-23 16:36:59 +0000 Commit: Mateusz Guzik CommitDate: 2023-01-23 17:09:52 +0000 Add kf_file_nlink field to kf_file and populate it This will allow user-space programs (e.g. lsof) to locate deleted files whose nlink equals zero. Prior to this commit, programs has to use stat(kf_path) to get nlink, but that will fail if the file is deleted. [mjg: s/fail/file in the commit message] Reviewed by: mjg Differential Revision: https://reviews.freebsd.org/D38169 --- sys/kern/vfs_vnops.c | 1 + sys/sys/user.h | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 48d15ce6ab25..a49070b6060d 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -2792,6 +2792,7 @@ vn_fill_kinfo_vnode(struct vnode *vp, struct kinfo_file *kif) kif->kf_un.kf_file.kf_file_rdev = va.va_rdev; kif->kf_un.kf_file.kf_file_rdev_freebsd11 = kif->kf_un.kf_file.kf_file_rdev; /* truncate */ + kif->kf_un.kf_file.kf_file_nlink = va.va_nlink; return (0); } diff --git a/sys/sys/user.h b/sys/sys/user.h index edbe6a8655ff..42799a70fbfc 100644 --- a/sys/sys/user.h +++ b/sys/sys/user.h @@ -389,7 +389,9 @@ struct kinfo_file { int kf_file_type; /* Space for future use */ int kf_spareint[3]; - uint64_t kf_spareint64[30]; + uint64_t kf_spareint64[29]; + /* Number of references to file. */ + uint64_t kf_file_nlink; /* Vnode filesystem id. */ uint64_t kf_file_fsid; /* File device. */ From nobody Mon Jan 23 19:11: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 4P107y1XgTz3b9Pq; Mon, 23 Jan 2023 19:11: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 4P107y14Vqz4FCX; Mon, 23 Jan 2023 19:11:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674501086; 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=3wn6FtbP6YtCY4uEfqMp5DKC5V2wVt8O+fKpwRMEp8E=; b=POuaPi5oY2O/4FtM6h86vFdKsSBwdCtjxmvo0itK7QoPTJddCmjjSBmR2qSEuCcsrrk40o eX0WsKMJ8wGUUzY74yEqTUwHSE5Wkrta7w108HVa9HUqfrtdIfnmO+xQ4WWrD770RYlSE8 0p5jcaZpmJV6nFSeQ9JFUwqm3ulbXjYrPruPd7P+t8YSLz/KGJk816/LibassrCm7DHqir FAt3+jrBV11sZQ7A3pnSuXq5OibOdqu3KhSxGbEQQ0Iqq/+6cmoRugDfeeP+oZqpg45SDS gU+KCsB0XeENVAWGGcx1D8Shhoxad2ngJhmgEiLza2SVbCzs7Mrg+GIpongVxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674501086; 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=3wn6FtbP6YtCY4uEfqMp5DKC5V2wVt8O+fKpwRMEp8E=; b=pEatRKbTyQIYPeitfZjg/lPnWdfABE6VpWBNphdionkIH4UFHFlSLZhX70KoUzELFFkhdC jb7g+Owtqy6wRQLnTKqJQ7vIkgduJLHjXUICgdkC4QpDe2SYUqvI4QSWD9z0WqDbZGM1xu /87axxS9/VSU6I9A+TXtKVXJ1fHYUDbTQn4ntuMfGGwRTE2ncFsTWzFpNBRfS0BSUwCfjm vaBTYNKtktEwYucEQQEtKdRSEXMFXv0/COnWkIo6jR6cxXd0x59BgMn76RJGEicOS/fJnj 22jVdVUkoNDBXVTeMhfBctVXicwJDUMnMFSrtOnfh54ir6YypI9UqpjLVp+9Ig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674501086; a=rsa-sha256; cv=none; b=vABeTKA1ecKynshh+CBEHotW8P8aTNAnL6RU0lQjyJyGt6ADml1T3szo+GkK1WlZbuhltS eAfJJ91ul1f1IdF0njhIqhSTcVYzxWXcYch+qgTonKLMEpC1ZyFHW18NuiwdcM34//EnEL DIJ0L2C1nVREi6u/DurydtGJU9WPGpLZw2Yhu4z1zj5K9e5ALMbgMOwjV/CZIx89YDAxzk XSdOvvhnyHKNtj8S9Up+y9tVP3d4xl6muvjWZc3jD2cUu5IN9YlrDxabdXI/TKuX8gjAIT Pwm2sQcRR7vdaFYMfFCOi8UQnnsQJJ8qU23S9+f2zYglMJPoEhdvqisqSVlJBg== 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 4P107y06LTzg1k; Mon, 23 Jan 2023 19:11:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJBPHe057023; Mon, 23 Jan 2023 19:11:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJBPNL057022; Mon, 23 Jan 2023 19:11:25 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:11:25 GMT Message-Id: <202301231911.30NJBPNL057022@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: 627ca221c311 - main - kern_reboot: unconditionally call shutdown_reset() 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: 627ca221c311b5d9c4132e03664a96f390ff5c0d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=627ca221c311b5d9c4132e03664a96f390ff5c0d commit 627ca221c311b5d9c4132e03664a96f390ff5c0d Author: Mitchell Horne AuthorDate: 2023-01-23 18:47:11 +0000 Commit: Mitchell Horne CommitDate: 2023-01-23 19:10:24 +0000 kern_reboot: unconditionally call shutdown_reset() Currently shutdown_reset() is registered as the final entry of the shutdown_final event handler. However, if a panic occurs early in boot before the event is registered (SI_SUB_INTRINSIC), we may end up spinning in the subsequent infinite for loop and failing to reset altogether. Instead we can simply call this function unconditionally. Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D37981 --- sys/kern/kern_shutdown.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c index ab37b54667f9..6f912369268a 100644 --- a/sys/kern/kern_shutdown.c +++ b/sys/kern/kern_shutdown.c @@ -270,8 +270,6 @@ shutdown_conf(void *unused) SHUTDOWN_PRI_LAST + 100); EVENTHANDLER_REGISTER(shutdown_final, shutdown_panic, NULL, SHUTDOWN_PRI_LAST + 100); - EVENTHANDLER_REGISTER(shutdown_final, shutdown_reset, NULL, - SHUTDOWN_PRI_LAST + 200); } SYSINIT(shutdown_conf, SI_SUB_INTRINSIC, SI_ORDER_ANY, shutdown_conf, NULL); @@ -548,6 +546,12 @@ kern_reboot(int howto) EVENTHANDLER_INVOKE(shutdown_final, howto); + /* + * Call this directly so that reset is attempted even if shutdown + * handlers are not yet registered. + */ + shutdown_reset(NULL, howto); + for(;;) ; /* safety against shutdown_reset not working */ /* NOTREACHED */ } From nobody Mon Jan 23 19:11: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 4P107z2sbQz3b9Ps; Mon, 23 Jan 2023 19:11: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 4P107z231Vz4F5k; Mon, 23 Jan 2023 19:11:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674501087; 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=BgeXMJFYykAkBbFdzi8vQ6EkcMJ9u6EZzo9f5rVoLAw=; b=CvQV3vGt6h7utBLt7MaNb8iBHOYy2fk3MKa2zTy9hrCl7F3QbDDCWYsjCY0aiQz0wo2PjK bAIp0yAKVnWCiL74A+IWYM6To2du2w6f+ojvG0Kn3ynzQh3WPfLHxtMo7ajmh5ofmlNoay hS9QkEyiEktVdN/M3iifMQ+Gi3kYFw9wkVkL4I4+87h4t/RtTvBfwWcc5GltzGhW9kJI4C WwDoMjXIk12kd8F+VeEiYyy+1yWmWyiiwr9JXr3qnAOVlQxjj2rXhvFIDYObtNRUjPj494 EiD/0eAJhWnYz7uEtLeJZKaHXSbgW9NTWEv34NVwe89LgyIHg3p3FDwqr5IWSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674501087; 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=BgeXMJFYykAkBbFdzi8vQ6EkcMJ9u6EZzo9f5rVoLAw=; b=AHv1Y1gy58LGw2i0WTWI/N1WwwS76g+FTiXhdH9Bqnfxl9YuAE86WSTGBiTbj6gi9/B8+r NClMv36oVFc3e18PbF7DD7ai5tDqV+lF3IftIgBPRwq60Pjj7WdBpWTnMJMSkohyJRFbZT 5g4HiNgRxkU8psnC7k6mhl3/DRFOyYtcO6/ZA/4AAVAkESw7S4lIXecfBrrci5MzAUMKLc sOTATeOvt7Nd5/XJkC1SH+np0oM2EcjirddDLjZxgY2iZLGcYbaJxBrrRImQpJvZ4pH7zO yv7mRPgt1x+nput0jqu0EvxXigdFy4GB0SEv1aXKlGW88144hMxhdf1zviY/IQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674501087; a=rsa-sha256; cv=none; b=t6q3SWlWKpdNWwKtLkWMlldL5h6WW1C5A9VEtBt9/SlaRTkf2yOigulMfDLG7Pjb8e+1rW 1EAYm8HKoS9+Saml7KFeXQ7xh912w/jwk9l+S2rZW9M4iXEBZwnmX7Encx57hxJKGI71XY gFfXq2NFmVxW380t2pkrIszDp2/1J4FABa7yFZ4WH2t6Pd/Jo+GzV3ap2j17WQOdHsKT3D Wod6ehd2kvLGyBYou4l7LQTUmDvzsGBFSt23SftPTnxTJhdmkid6V9C5anKWSZdZVgYwtd FKIzYchinXIFwxt1Xm7+1sirS+8FibYRh/+2nAKnQHWAmwkY+Um7wM7VTCo8Zw== 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 4P107z11y6zgcl; Mon, 23 Jan 2023 19:11:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJBRUh057047; Mon, 23 Jan 2023 19:11:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJBRaE057046; Mon, 23 Jan 2023 19:11:27 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:11:27 GMT Message-Id: <202301231911.30NJBRaE057046@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: 5644850620ae - main - ddb: have 'reset' command use normal reboot 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: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5644850620aead7c257a4e3040e20201b510f499 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=5644850620aead7c257a4e3040e20201b510f499 commit 5644850620aead7c257a4e3040e20201b510f499 Author: Mitchell Horne AuthorDate: 2023-01-07 18:09:28 +0000 Commit: Mitchell Horne CommitDate: 2023-01-23 19:10:24 +0000 ddb: have 'reset' command use normal reboot path This conditionally gives all registered shutdown handlers a chance to perform the reboot, with cpu_reset() being the fallback. The '\s' modifier can be used with the command to get the previous behaviour. The motivation is that some platforms may not be able do anything meaningful via cpu_reset(), due to a lack of standardized reset mechanism and/or firmware shortcomings. However, they may have a separate device driver attached that normally performs the reboot. Such is the case for some versions of the Raspberry Pi, where reset via PSCI fails, but the BCM2835 watchdog driver has a shutdown hook. Reported by: bz Reviewed by: markj (slightly earlier version) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D37981 --- share/man/man4/ddb.4 | 14 ++++++++++++-- sys/ddb/db_command.c | 14 +++++++++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/share/man/man4/ddb.4 b/share/man/man4/ddb.4 index 7d5da91fc684..7173da4eb447 100644 --- a/share/man/man4/ddb.4 +++ b/share/man/man4/ddb.4 @@ -524,13 +524,23 @@ The optional argument limits the search. .\" .Pp -.It Ic reboot Op Ar seconds -.It Ic reset Op Ar seconds +.It Xo +.Ic Ic reboot Ns Op Li / Ns Cm s +.Op Ar seconds +.Xc +.It Xo +.Ic Ic reset Ns Op Li / Ns Cm s +.Op Ar seconds +.Xc Hard reset the system. If the optional argument .Ar seconds is given, the debugger will wait for this long, at most a week, before rebooting. +When the +.Cm s +modifier is given, the command will skip running any registered shutdown +handlers and attempt the most basic reset. .Pp .It Ic thread Ar addr | tid Switch the debugger to the thread with ID diff --git a/sys/ddb/db_command.c b/sys/ddb/db_command.c index 0ddbf5f49629..02f79ca949c2 100644 --- a/sys/ddb/db_command.c +++ b/sys/ddb/db_command.c @@ -745,7 +745,7 @@ out: static void db_reset(db_expr_t addr, bool have_addr, db_expr_t count __unused, - char *modif __unused) + char *modif) { int delay, loop; @@ -770,6 +770,18 @@ db_reset(db_expr_t addr, bool have_addr, db_expr_t count __unused, } } + /* + * Conditionally try the standard reboot path, so any registered + * shutdown/reset handlers have a chance to run first. Some platforms + * may not support the machine-dependent mechanism used by cpu_reset() + * and rely on some other non-standard mechanism to perform the reset. + * For example, the BCM2835 watchdog driver or gpio-poweroff driver. + */ + if (modif[0] != 's') { + kern_reboot(RB_NOSYNC); + /* NOTREACHED */ + } + cpu_reset(); } From nobody Mon Jan 23 19:21: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 4P10Mq51Lsz3bBGB; Mon, 23 Jan 2023 19:21: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 4P10Mq4Z4qz4GBm; Mon, 23 Jan 2023 19:21:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674501703; 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=JFr+FQfs3UrnRkQ1sCM0vslPreBNDtANiiFIsAtnSNs=; b=r768mrYPsacTCGUWIXXEn+vTLqwoPPLuus/TloWHNiD2Kq2RR2I/zrb2sne3yKWyDyNymR myquZFkZWJPK1SqdFDFyFVD6g1sxF4Bh0t0GzPhT8ssbKMeACZ05gD8Ie+oWIhKQh66D4X rWh6RRAV5SxAHxwN+TiRs7SiLaA8EbgV3FqebgwGPPjUfri085V1+xxYDLNPO8/jWtpeyH wYIsMEkjjnPOJjVENdp7GPYO13N+6F6dejNHAlorF9VNtbz1IdDEyP+PG7ursz4ejNGWsA om8V2avzzxpsHH/rY60iGWd19EKgtRka7v2I/sB27YKSzLxBkLCB75ZuHNgyUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674501703; 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=JFr+FQfs3UrnRkQ1sCM0vslPreBNDtANiiFIsAtnSNs=; b=anaw9pIvotgWyV7Okrp7dsd3s8Vsupjga+U5J9hggJSkz7li+K4h32tavQdpuzwNI8X5im FNPLCOriQab2yIKPTOixqhZcJ4UlcW5r2M4uTvzcbpPQlYlhn6rwyqTDXevX+d7C/ZmDnC BzZFbAh/A3mCgQGeyFGBALmeIWYXT9/PS5r9fgieK9Ts9yYpYRBfw3B3b8oeuqcuWtIv0C zJPw8GOV8iJ0abjQPsE6+R1tPyw6KN/WEKiwXzlfqmZMrGtTAZmZTT7GM6+qCJzh79R9nB 5F+NmuH7mkdHRp9EAQf84lvDN1iYZdL7CbEZMO6AK00jQ65kSxx/nAItEeM3DA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674501703; a=rsa-sha256; cv=none; b=RMPb9mKf663hoCxIeUAyloLvHu2q5OCYvg19+NY067PGhh+qJOfY2J6zEwbazohwmnOVf8 0iDtHDQHNIA3M8Gli9DTXoFsY/MnKQzk1PU0rqv2t0kouHDCn07YgZzKmtzRGJ4SwZMMlJ cctSyT84AieV0aGMd0uvuhOOs0Th/EEOLa9xpFXRMBSswPPqo7Iz6qTPA6s/cj/6vHGYHl wLkdbBAgZ1omnExF/uCchzf3tqgoN2oAi1+3137KxIbMrZaMgY74judlIKX95NkqdycDbt 7l+SDZ/hLnGJ+9c3nU6gJFy1KIsRHytFAQkrxVU4DoyQWORyRsacwlqJ28zmQw== 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 4P10Mq3dgszgvm; Mon, 23 Jan 2023 19:21:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJLhev071857; Mon, 23 Jan 2023 19:21:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJLhfP071856; Mon, 23 Jan 2023 19:21:43 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:21:43 GMT Message-Id: <202301231921.30NJLhfP071856@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: 6f5141456ed0 - main - vtblk: secondary fix for dumping 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: 6f5141456ed07a24097c2cf3d6c389bf971d78d2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=6f5141456ed07a24097c2cf3d6c389bf971d78d2 commit 6f5141456ed07a24097c2cf3d6c389bf971d78d2 Author: Mitchell Horne AuthorDate: 2023-01-09 17:14:19 +0000 Commit: Mitchell Horne CommitDate: 2023-01-23 19:21:36 +0000 vtblk: secondary fix for dumping The code paths while dumping do not got through busdma. As such, safeguard against calling bus_dmamap_sync() with a NULL map. The x86 implementation tolerates this but others do not, resulting in a NULL dereference panic when dumping to a vtblk device on arm64, riscv, etc. Fixes: 782105f7c898 ("vtblk: Use busdma") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D37990 --- sys/dev/virtio/block/virtio_blk.c | 46 ++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/sys/dev/virtio/block/virtio_blk.c b/sys/dev/virtio/block/virtio_blk.c index 052017251c22..0e66cd3c89db 100644 --- a/sys/dev/virtio/block/virtio_blk.c +++ b/sys/dev/virtio/block/virtio_blk.c @@ -1126,15 +1126,17 @@ vtblk_request_execute_cb(void * callback_arg, bus_dma_segment_t * segs, sglist_append(sg, &req->vbr_ack, sizeof(uint8_t)); readable = sg->sg_nseg - writable; - switch (bp->bio_cmd) { - case BIO_READ: - bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, - BUS_DMASYNC_PREREAD); - break; - case BIO_WRITE: - bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, - BUS_DMASYNC_PREWRITE); - break; + if (req->vbr_mapp != NULL) { + switch (bp->bio_cmd) { + case BIO_READ: + bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, + BUS_DMASYNC_PREREAD); + break; + case BIO_WRITE: + bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, + BUS_DMASYNC_PREWRITE); + break; + } } error = virtqueue_enqueue(vq, req, sg, readable, writable); @@ -1191,17 +1193,21 @@ vtblk_queue_completed(struct vtblk_softc *sc, struct bio_queue *queue) } bp = req->vbr_bp; - switch (bp->bio_cmd) { - case BIO_READ: - bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, - BUS_DMASYNC_POSTREAD); - bus_dmamap_unload(sc->vtblk_dmat, req->vbr_mapp); - break; - case BIO_WRITE: - bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, - BUS_DMASYNC_POSTWRITE); - bus_dmamap_unload(sc->vtblk_dmat, req->vbr_mapp); - break; + if (req->vbr_mapp != NULL) { + switch (bp->bio_cmd) { + case BIO_READ: + bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, + BUS_DMASYNC_POSTREAD); + bus_dmamap_unload(sc->vtblk_dmat, + req->vbr_mapp); + break; + case BIO_WRITE: + bus_dmamap_sync(sc->vtblk_dmat, req->vbr_mapp, + BUS_DMASYNC_POSTWRITE); + bus_dmamap_unload(sc->vtblk_dmat, + req->vbr_mapp); + break; + } } bp->bio_error = vtblk_request_error(req); TAILQ_INSERT_TAIL(queue, bp, bio_queue); From nobody Mon Jan 23 19:52: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 4P113d3XJFz3bFcD; Mon, 23 Jan 2023 19:52: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 4P113d2jDJz4J2y; Mon, 23 Jan 2023 19:52:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503565; 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=pnE0yBj9pTIHPJJezYEZIiyDOZBOK24L5ZXlDmP4Cws=; b=X/yOBmwUI3cb9810BhMTLLCO/2g7wgv/4Lyesa3q4SlRz5taU/yXKc6XOo6kk/St4qYbcO CL37hdCPOYk75V+MKPOxvGV4xMqsTij1B0lp5LHaiVByA1GsdcGh/ZoRj5hyPSjpQXRXcq 6A53AgEr/tv/qm5+zWATV8ZbRmoOn6J3R3Ozb7YfpMpEUck7zVwQ+CdnsrupE6yBAip+XZ Xfz1tt+iJPCHrugBXDJtj1mlvi7rPDC8CTWa/w4o3ggPLjraMuybELB6HKYP9OpLhFGbYF V+vAE+I5GdHhmJ3vSYLrWqkRCPPmEI52aZvcqgdfG3mXpO8CXEoNhiqaUTDNWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503565; 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=pnE0yBj9pTIHPJJezYEZIiyDOZBOK24L5ZXlDmP4Cws=; b=Ew9JVyEG2fZBn/Mh8jMS+26C7ekm8mQ1NTmXvIKpEFnSFypcbEyap6dT4fo1OW/+gArbeX +e+P6ExiXKcuUjNpskTD+Lm940cTQI6h/9NzTzflVbL/iHpt/UdIaWHIWOc35eY095GCdF c4IMo2TdPHXHvVMq2CisIso21sDLgIMr0eAcfKkGjR6TDnH+D4Bq9i1oM/yeJbea5GG0L/ /ydPO/Ll54PB7sGXsxT0HGH+lezwzajxOhO4bmqrZw6Ltwr44Fj9NZybPZjcRc7vVcPowQ 6WjblWaGdKNKRxOK+8AQQoilmjiWiG0JrWl9+1CD8Cz6WUCqdQzqiBgDABJA/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674503565; a=rsa-sha256; cv=none; b=SZkXqljRtKIvF+vgtXaoWxSplsHy1vZt2KeiucbSooviexX2KnOt7wH1oiigEm6HLQm8n9 ZtIVZSCnIiTCl0ggrneALyzIqlFdW2dTM1eDMchyoN/P4ZRJHh7uyc57scvlMFQgXOsDTj /DU3Zke9Ni54LHIzMiVqSPN8d/UzbRXEmYQe0E+YtZnlcdoQ7FQLO6tfo0FjSf1w/FKInO lnlsIhVE9XDCAD3uP2KoFj/clKq5doa3DJ4fW2HjAinArW3kgZxCzy4mvUp2Igd2CEdAmv QeP5ZGCwuGWBHC7Q2M4ZV3v4zNtuJZqnfWdu+y7QAVUtWKiycBNK8299aXGj2w== 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 4P113d1lS3zhQf; Mon, 23 Jan 2023 19:52:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJqjHb015478; Mon, 23 Jan 2023 19:52:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJqjQD015477; Mon, 23 Jan 2023 19:52:45 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:52:45 GMT Message-Id: <202301231952.30NJqjQD015477@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: 56c438fcd4a7 - main - netmap: Tell the compiler to avoid reloading ring indices 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: 56c438fcd4a755f0abe8254779c39a0c4b530c75 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=56c438fcd4a755f0abe8254779c39a0c4b530c75 commit 56c438fcd4a755f0abe8254779c39a0c4b530c75 Author: Mark Johnston AuthorDate: 2023-01-23 19:41:05 +0000 Commit: Mark Johnston CommitDate: 2023-01-23 19:41:05 +0000 netmap: Tell the compiler to avoid reloading ring indices Per the removed comments these fields should be loaded only once, since they can in principle be modified concurrently, though this would be a violation of the userspace contract with netmap. No functional change intended. Reviewed by: vmaffione MFC after: 1 week Sponsored by: Zenarmor Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D38061 --- sys/dev/netmap/netmap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/dev/netmap/netmap.c b/sys/dev/netmap/netmap.c index 4bafa507384d..448d9a81eefb 100644 --- a/sys/dev/netmap/netmap.c +++ b/sys/dev/netmap/netmap.c @@ -1710,8 +1710,8 @@ netmap_unget_na(struct netmap_adapter *na, struct ifnet *ifp) u_int nm_txsync_prologue(struct netmap_kring *kring, struct netmap_ring *ring) { - u_int head = ring->head; /* read only once */ - u_int cur = ring->cur; /* read only once */ + u_int head = NM_ACCESS_ONCE(ring->head); + u_int cur = NM_ACCESS_ONCE(ring->cur); u_int n = kring->nkr_num_slots; nm_prdis(5, "%s kcur %d ktail %d head %d cur %d tail %d", @@ -1788,8 +1788,8 @@ nm_rxsync_prologue(struct netmap_kring *kring, struct netmap_ring *ring) * - cur could in principle go back, however it does not matter * because we are processing a brand new rxsync() */ - cur = kring->rcur = ring->cur; /* read only once */ - head = kring->rhead = ring->head; /* read only once */ + cur = kring->rcur = NM_ACCESS_ONCE(ring->cur); + head = kring->rhead = NM_ACCESS_ONCE(ring->head); #if 1 /* kernel sanity checks */ NM_FAIL_ON(kring->nr_hwcur >= n || kring->nr_hwtail >= n); #endif /* kernel sanity checks */ From nobody Mon Jan 23 19:52: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 4P113f47dXz3bFlZ; Mon, 23 Jan 2023 19:52: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 4P113f3J5bz4Hfc; Mon, 23 Jan 2023 19:52:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503566; 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=nhcRukKbaIm1RRFm2lBQxQxqBb9xZcIYWQIwSBiJI3Y=; b=mar+ZzFKXPmWqSuY3tm3mCTSTMjBQYwjIEaHa6xoR5S2RFvnuUgDAYAdlofZpUFOfFhZzJ +j34JFEGyYMHK8DnBPP40DWn9cuMogr4O2fL0lzrkcyTIU1EEMh2GlRnh9qgquPIF+Cvvn LwprrrOvrXXJha3COOt7WXew4DrCCNZTQwz6T+dGWbVSDN5JFg9q7Qd7RrKhgevSOtls8k tBFK+mvi9Yv/5lAfdhzZuxQlLn6neMlx4xkR+jWmktG8amfE/t+Gn+HOI2gOQR7oDHZGG2 Si0z4RrDXCZw19Y7F4l37JW201JNhNhIS6TLhlKXglFyX4b1hq7f/pnTCwRFvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503566; 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=nhcRukKbaIm1RRFm2lBQxQxqBb9xZcIYWQIwSBiJI3Y=; b=dhxsHeT1rKaF8iQ0y3TKyuk/ZTayIrV19FD3IGFUB8nQ1wLGU15xuO3ANhcN0POXBLKOj5 5P06bviJLfEfwfRKHU9ZELak8N8WjHIguKU3+j3s7oSzif5X7dqewWt5/VH1XiYrlHFaIt pxH7VJ4G0hS/UPUZI8IDoL2Fl9Zcs2WA+3A9+4Q4Myeezv2zqx3zT/RloUFlIoSs57PL+i TORZpm6hV3t45ZP9sdSawtr/rq/ydkxRUcNm+LI8PkE+1J235IVFb8iFgPMlXikeAbXJlG KGXZg9U5lbloynYPahwk0/CDxoDvZxfaoExgWm5vDxg8JIhlqOQ+6HcsusmmMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674503566; a=rsa-sha256; cv=none; b=KiP/ArCRMghN53P6yKUVXp43vdvtRGKKqrsox5RybsrdcqupwNb4m0VPyJE3GL3CFVtVdS IO9zmIk6V7jBe4X7MGFj8kkDRFSiAxw5YhQXfq15t1jHGPG5dEnYVo5Wwyu+jradDklp06 tzZmgYNHof4f3qiKWQwasjhiqq++diHUxz152QvZplJihFKu+ksPM2OI/kRf674S9O2MM0 6eCp2pm3Ah2zqkNt+JOp1Iqonkp/X6bSwoS+XEcFA4Me9y7a7f4WeXScN1i9bII38hNJVB FeTFNgVGPD9juBm86YS3rhtlFjttvarNXu0cj5PkPetOHMYKui+7VfbyNPnQng== 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 4P113f2NnQzhQg; Mon, 23 Jan 2023 19:52:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJqkbi015509; Mon, 23 Jan 2023 19:52:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJqkpl015508; Mon, 23 Jan 2023 19:52:46 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:52:46 GMT Message-Id: <202301231952.30NJqkpl015508@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: 539437c8281d - main - netmap: Fix a queue length check in the generic port rx 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 539437c8281d24450bacded3734276acd9983e90 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=539437c8281d24450bacded3734276acd9983e90 commit 539437c8281d24450bacded3734276acd9983e90 Author: Mark Johnston AuthorDate: 2023-01-23 19:41:55 +0000 Commit: Mark Johnston CommitDate: 2023-01-23 19:41:55 +0000 netmap: Fix a queue length check in the generic port rx path The check is ok by default, since the default value of netmap_generic_ringsize is 1024. But we should check against the configured "ring" size. Reviewed by: vmaffione MFC after: 1 week Sponsored by: Zenarmor Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D38062 --- sys/dev/netmap/netmap_generic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/netmap/netmap_generic.c b/sys/dev/netmap/netmap_generic.c index a57da84e1d24..f075cd4bd306 100644 --- a/sys/dev/netmap/netmap_generic.c +++ b/sys/dev/netmap/netmap_generic.c @@ -838,7 +838,7 @@ generic_rx_handler(struct ifnet *ifp, struct mbuf *m) nm_prlim(2, "Warning: driver pushed up big packet " "(size=%d)", (int)MBUF_LEN(m)); m_freem(m); - } else if (unlikely(mbq_len(&kring->rx_queue) > 1024)) { + } else if (unlikely(mbq_len(&kring->rx_queue) > na->num_rx_desc)) { m_freem(m); } else { mbq_safe_enqueue(&kring->rx_queue, m); From nobody Mon Jan 23 19:52: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 4P113g4nS7z3bFcP; Mon, 23 Jan 2023 19:52: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 4P113g4DHbz4Hnl; Mon, 23 Jan 2023 19:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503567; 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=mejOWM2F1iL1yKe9CNgCyFnszQxe1MuTN7HDrpadqHg=; b=ldf+KBmO0zMKec/MI3LgFI+mJHeZZZ1Vu2q0/vt1/t+wLvn3n8rq0iICDejhsLjvymqOly 0/sIS1bh7TCl7/WJwDXbpi5ubeDjwgNYQimHJGisiFRC8E47pZLESpF7CTpHeKrPGT/HVL XwbSlJ09STPtygjvW3KnB4/E6ilyuHWV2f3fPWsmhUb0ZS36NLs0IDTonx5s54T7DEx88+ 43muQ1xxtIjKQ2DvkE6+V71l2hNEXUbkmVOJisgxCOOomwjmvtkTW+vLtly+Gd/p88tloZ JOMCMXwr4W93j7k0h6xyVbrrJAt/A5/INCdChnRoKQGYu44udMPJ9BUmQaTwSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503567; 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=mejOWM2F1iL1yKe9CNgCyFnszQxe1MuTN7HDrpadqHg=; b=qAKlDmGrVApvInIxlf1an/NRPR5dSze96zyiC2gKzpNSmetu1bGWTQd3abzVn1kwaU1L1r il+8+Jl7nvcJyveyDZ9hCZg0HDtfz51b7X10zX7qasJwX19HZV20iB8JzwIseWsdEq3rPb 9w4bLSc7S3noSKSwV2eBiN77z32xderQ4gySCCvPf5R8GUqb54ns9aMoNPrOW9lD/mQMdf voUouW32s4F4LDVAaJaADNXYtFGSMtes+GtCdTKXgHEDCYtlhiGdO1zZihfi2Dt3TjRhFK Xij9lI5wh2P6EwQtFOm2cFpsptkX9OCo0LtRVFL8O8bOiWre2x7VD/rEVwQ9zQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674503567; a=rsa-sha256; cv=none; b=wB2ZJmNmfQ/iKZy7dDX4vST3MCChag7OF6mkZrDvjJWg07PTDd86lTwLNgtz+Ej72F5+Eb 85tn9l+iidNBoXOKD3pfMFDTyfubUnyDy0K4ZP+ye6hQcV3uAvp40hx8Pf+FrvFKHLuwL7 sGMDis/bNOLedIf9Gu65ZXA2wfFTmUPuPBe+zSx91VI6/jbcTAdI9X1BMBpdwZYuZWC9+h 4j9WZF5cvEhh5Cl6Vn0aTGgcX4G5WC4ybouFDyQge5p91uxDjPLx4bebXeNdpTfG5eGnAh 7zKzJk/MCjJgBk2rkYLl/EBi2K58aTgkbkeM9L1ZED8Kej00uJ/dMpkJFK/+tA== 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 4P113g3Kg0zhFJ; Mon, 23 Jan 2023 19:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJql80015535; Mon, 23 Jan 2023 19:52:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJqlbd015534; Mon, 23 Jan 2023 19:52:47 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:52:47 GMT Message-Id: <202301231952.30NJqlbd015534@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: 854b2f302dcc - main - netmap: Correct 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 854b2f302dcc73dfef2e4458d382f8149ce9167c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=854b2f302dcc73dfef2e4458d382f8149ce9167c commit 854b2f302dcc73dfef2e4458d382f8149ce9167c Author: Mark Johnston AuthorDate: 2023-01-23 19:42:19 +0000 Commit: Mark Johnston CommitDate: 2023-01-23 19:42:19 +0000 netmap: Correct a comment Reviewed by: vmaffione MFC after: 1 week Sponsored by: Zenarmor Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D38063 --- sys/dev/netmap/netmap_kern.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/netmap/netmap_kern.h b/sys/dev/netmap/netmap_kern.h index 6e6561ef7be4..eb708f5a5cc7 100644 --- a/sys/dev/netmap/netmap_kern.h +++ b/sys/dev/netmap/netmap_kern.h @@ -2145,7 +2145,7 @@ struct nm_os_gen_arg { void *head, *tail; /* tailq, if the OS-specific routine needs to build one */ void *addr; /* payload of current packet */ u_int len; /* packet length */ - u_int ring_nr; /* packet length */ + u_int ring_nr; /* transmit ring index */ u_int qevent; /* in txqdisc mode, place an event on this mbuf */ }; From nobody Mon Jan 23 19:52: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 4P113h5xBwz3bFMS; Mon, 23 Jan 2023 19:52: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 4P113h5C9Nz4JD6; Mon, 23 Jan 2023 19:52:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503568; 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=BkmvONV84sC4zW7uNzCUhla4xt3g0A/QtpvCx5FoWLY=; b=gLLdVaZZqh5zo9QJJlqHftkOGB1jqBOMOonHoUgvZTYos4jWOyBj8HDS4kPJqPG/sWZVVr YMWnfgwO3LdtUTOUk0dr4rULivzX9JNEyCaQjDRVEWvLf7cM6Pe2Qn/OyfE76Eg0XVDfjv PWdUVPVGtHeehwdy9zrwLK8QbIMGMZDsnt3vxlsoN5aFBm7hC8hO4bBqToE6R5aU3d/nEF Msdpe7bPGQnPxOWR22cnZJdpMDGnywKSU9nZ+5JTvfSg7tTY5lh0RfypLB+VwE3Gg63BC2 AxWHSQn8bcrn8OjgwrT/hmZjD/6zKomrRlAKqUt5mpwVlKWI+dsIR7zsr3qYWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674503568; 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=BkmvONV84sC4zW7uNzCUhla4xt3g0A/QtpvCx5FoWLY=; b=f9xAMv7lvxX0tDMb0Kb22ktDv9WU2BOpITKKuyc5oWm89sh6/JMJUBqfNKjgy1DzVLQOEJ AmxKEzYipGbFxEq0sbcdpXmHTZkp/+YGGDBPLUB2G1GetMP3kHph3gAfxFItM+f8sK4W5Y F/A9bFNkoxgHU3nNMueOkhbOsrwALBqoDTqi7MjHItp+Dp5Ly92TQed/o2lh9X/r8uEVmA GdiwyJscASGXGzSWUbWpDO8v4o6EM+bvdRpToqEOsEuao3tGB4U1LLOEZvjzCcHcxnyN7D ++9zoi0Tx5C+uNvT7mlWAqZUSK5TDhjgq2kP5Xp9mgTySQTP5CRavVUpVXKmSA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674503568; a=rsa-sha256; cv=none; b=PHlSyib40EON5kLD403bEC25S11gPJ61VSc+HwcbG/LWqur/VoZWtraI1IHJgpL3yCW3UP egoo+H4Esrq2Vll2rNxIUdxB0zdaPyPk4YMaqaM19A/Euv8wLz0p6luJomaRg04rupQatF t1lbLcfKEdjsRugXF4U3OUvtPKD/S+oYhKCTgt9DDISWV0/yRahIVsoNlHv+vvIzosSz1D Cn0W7GmKA8koGK/zx1u2z4bdJehJbmVR+Pwx/2NmAh0V8IbDTVjibmPUG4zUCBvjYEWBKk rwWMUhBZWF+3ahTlFDVGpKu/+paidhFPQZjUYE9+RhVJii+JAcr1H5jC2bXrRA== 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 4P113h4GzczhFK; Mon, 23 Jan 2023 19:52:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NJqm1K015564; Mon, 23 Jan 2023 19:52:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NJqml9015563; Mon, 23 Jan 2023 19:52:48 GMT (envelope-from git) Date: Mon, 23 Jan 2023 19:52:48 GMT Message-Id: <202301231952.30NJqml9015563@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: df40e30c9786 - main - netmap: Try to count packet drops in emulated mode 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: df40e30c9786ccbf51e3acdf936d5c0e20815652 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=df40e30c9786ccbf51e3acdf936d5c0e20815652 commit df40e30c9786ccbf51e3acdf936d5c0e20815652 Author: Mark Johnston AuthorDate: 2023-01-23 19:42:41 +0000 Commit: Mark Johnston CommitDate: 2023-01-23 19:42:41 +0000 netmap: Try to count packet drops in emulated mode Right now we have little visibility into packet drops within netmap. Start trying to make packet loss issues more visible by counting queue drops in the transmit path, and in the input path for interfaces running in emulated mode, where we place received packets in a bounded software queue that is processed by rxsync. Reviewed by: vmaffione MFC after: 1 week Sponsored by: Zenarmor Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D38064 --- sys/dev/netmap/netmap.c | 4 +++- sys/dev/netmap/netmap_generic.c | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/dev/netmap/netmap.c b/sys/dev/netmap/netmap.c index 448d9a81eefb..37723fb36fe8 100644 --- a/sys/dev/netmap/netmap.c +++ b/sys/dev/netmap/netmap.c @@ -4329,8 +4329,10 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) mbq_unlock(q); done: - if (m) + if (m) { + if_inc_counter(ifp, IFCOUNTER_OQDROPS, 1); m_freem(m); + } /* unconditionally wake up listeners */ kring->nm_notify(kring, 0); /* this is normally netmap_notify(), but for nics diff --git a/sys/dev/netmap/netmap_generic.c b/sys/dev/netmap/netmap_generic.c index f075cd4bd306..83908f10a3fe 100644 --- a/sys/dev/netmap/netmap_generic.c +++ b/sys/dev/netmap/netmap_generic.c @@ -837,8 +837,10 @@ generic_rx_handler(struct ifnet *ifp, struct mbuf *m) * support RX scatter-gather. */ nm_prlim(2, "Warning: driver pushed up big packet " "(size=%d)", (int)MBUF_LEN(m)); + if_inc_counter(ifp, IFCOUNTER_IQDROPS, 1); m_freem(m); } else if (unlikely(mbq_len(&kring->rx_queue) > na->num_rx_desc)) { + if_inc_counter(ifp, IFCOUNTER_IQDROPS, 1); m_freem(m); } else { mbq_safe_enqueue(&kring->rx_queue, m); From nobody Mon Jan 23 20:27: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 4P11qt6078z3bKNk; Mon, 23 Jan 2023 20:27: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 4P11qt5SZvz4NM1; Mon, 23 Jan 2023 20:27:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674505658; 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=VlbjwF4iFGQXHWTvJL7nBy6jQAv8pWAywPzlAIPptic=; b=s9gN0suwjcHgWxzlw4XiRVWNJHEmzslgAOrCshdEKH/USuvYXLhmW3v/0HFKCGrP8A0uJA k0i62W13NXZ4huW1OTuSGVnIDALp1FgyeQoxAIQEQRbGneK0QWHETqKmxh9bDCTUC87s3V w63DTH/QbXCHA7Ru6vCaT+nFkDZW4WhG1PRgOurAzpuX6nXWgTt5fBYkFwXDNPGaEhs+8r iiTN2+NhcjHMgx8rDnizrA4PRoG6xkd3dFpe5JXDGZGmdeaICRgImkvXiw2hmPA3PyS7Po 5p3vE5LoTKnL5CmO6P0DIRNIUicL3oel7Dir7jhiKMJw1zUDHARGnn/rkf65qQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674505658; 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=VlbjwF4iFGQXHWTvJL7nBy6jQAv8pWAywPzlAIPptic=; b=AefLqSnWauB0nQsBEDIt/J/Ng2Yd9ZjhyjYkig9Vhk5S5uMgvG5n0XC46ncMkyQZLCkHuM p5QpO1GDZz76yFJSNHB9fWdb4fiDN5UQunBu7RRjfj8Ch27O6Wo5bs5K/WTfa4fod/FMl3 8lrvJGCilNO9DSGfbB8b7SsK8+2E68IzOkqarGQKYFoBcKjspuqlaXlfJE1dtl/Qapljlf 63rq2yZypG9IfbtQJYzepRKO8rO5KKGAlyiZJfHPbLkVTr5jOtIO+5eEPemaexP7svMhEw glWJiZwIVorVZDKAeTK/1qZjGNIIM1uAb8eLFq4i2zNKc135+cONyl30tzwibA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674505658; a=rsa-sha256; cv=none; b=k7pY2QH/DLvoyIwl4fvrLx3jelxuzKtwuwAv/jFFi6WbCHHGm6npNgjNGifDH3S7EVVFXR 1sry5PaJ96ujU6UkOtzyBpMUKkeKeJu0u7cdbRnjMMXMv0tIf3STCi9Mmc5iapA56J8Fe/ y9blmnD1W6gakE59qYlvzQJRqJfYj9KWhlVC8OkA5uBjTBkSHDo+Ru1yN+mn3gvOyaJXLN 2P/YLQG1k7xFikwYmMK/hsRboWFS8nZxExCEUkm9MVWxMBpzIQKzkjiBeClnykcgHwWVzi 2W8Yc5czEagI8krqQQKwB8ceFMAFgiu5khfwUr9UzOAYZPP7knojn5rmGt/KDQ== 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 4P11qt4Wm1zjNv; Mon, 23 Jan 2023 20:27:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30NKRcTQ060052; Mon, 23 Jan 2023 20:27:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30NKRckV060051; Mon, 23 Jan 2023 20:27:38 GMT (envelope-from git) Date: Mon, 23 Jan 2023 20:27:38 GMT Message-Id: <202301232027.30NKRckV060051@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: 247e03ed8b83 - main - Add git-blame ignore 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: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 247e03ed8b8341cf25dc3d9ecb846612d984f424 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=247e03ed8b8341cf25dc3d9ecb846612d984f424 commit 247e03ed8b8341cf25dc3d9ecb846612d984f424 Author: Ed Maste AuthorDate: 2023-01-23 20:27:25 +0000 Commit: Ed Maste CommitDate: 2023-01-23 20:27:25 +0000 Add git-blame ignore file .git-blame-ignore-revs lists commit hashes that should be skipped by `git blame` e.g. non-functional whitespace or style cleanup. The file is populated with a few sample entries. Reviewed by: brooks, imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D36525 fixup ignore revs --- .git-blame-ignore-revs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 000000000000..2a4ab51f89c1 --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,16 @@ +# List of hashes of non-functional changes to be ignored by git-blame. +# This includes whitespace, style(9), comment typos, etc. Changes that affect +# built objects must not be included. +# +# Use `git blame --ignore-revs-file .git-blame-ignore-revs` or configure via +# `git config --global blame.ignoreRevsFile .git-blame-ignore-revs`. GitHub's +# blame view also uses this by default. +# +# For consistency this file is sorted by hash. + +# regen syscall files after d51198d63b63 +2c9764f36b6f20e9a6c71ce64a21988a394050b6 +# Remove whitespace at EOL. +7ebcc426efefea9cd16ac6f565e72030c608f7a4 +# elfctl whitespace +828e50092ac84f50247fb3f400027fc7510d8141 From nobody Tue Jan 24 00:10: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 4P16nL288sz2v1yv; Tue, 24 Jan 2023 00:10: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 4P16nL1YYKz3xhc; Tue, 24 Jan 2023 00:10:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674519046; 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=kmVydQBFBJT5sGoG36OKUuLk80QrItavSg42i8Lebz0=; b=P0zQyw01XuwP9zYf0O/3u+EDwtJKuYMF9xHXU0Feov03ijIaRuTcjbJVKwtfIFyicBmzdZ wzEHTeRxZ6uN9WzF9HKXSCnCknWQKZ3CnsP9NWUPN5cDU4NE5QLE27lB2Y26iPuRJ7kUnK 6E6Z02ZBd1w9CgS/la96v7yPqI+SRVczj30OpAIj9xhq94Cw0P8Q9ClxdDtti3Us/AhhLZ xvobUFqBP1OpHLRGH8xSNhIjmEKe8bAuuE4Gt51E9D9Q0z7G1SpK9tQmZzf83bP/QZbtsH blabOFHTCfhgaB9zC3gFTKcNBV984ZoOaiOumWO9l0p11nDI14818/qNW6T9AA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674519046; 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=kmVydQBFBJT5sGoG36OKUuLk80QrItavSg42i8Lebz0=; b=h+7oB/BRDQxafc9ISICUM7zsavOsz9DBx+fhSaMGWOwJ2jqKFimfetLHhwZcW2m/n5XCrz RsYPHN7c9ZNruRe8rWLl24XB7Zd6uH88DOG44TzddgPb3jS5mqOCI7wb7cq5hrKf31QPy6 IsZ8Skc8BUhZD70FFjqyMzC6xKG89xkjJwNb8CVLWroHJV8patcvWzdYjejoGQTyquiYzN c2Cp1AcRNchTnN1ZjMxNbTzEHAqsBuKCX68R+SnprBhacIZz4Bdh+YFlSfEvUbsJKnxBJE Ay8qh+09T4FWqq3hVMnMsXyiEr1JDuo6YJMXO29lOHHj5J5d8xupq4a9GuIvjQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674519046; a=rsa-sha256; cv=none; b=sQx8nQdMiSdVhRjctEgTI/SwFGTxb8J2lZZexSdjcuKjjXkWuPFAPt/PHIp//eg3TyIPg5 D2vgoSLGSiSJ3I5/JxEl+NZosd27KY2seIcfbqPXmLXknGzbyi+M9wB9DwQ9tiAW0ldECx 1xd/CWH20TAEm4zW7oECmNIyg1vnqjLd+JsrAdfgt29p12ncLi3hPuEdv0iz934oQWqj9a OXBip1rp6bL1Lv9xG7ouITYQ8GuMhX9xO31qKOs9vzvxrd1Zvb4Z5Zzu2ooDDy1LJCC+1h eSIuZNu2rbqmqPbfiT+GfMF/QMyQIzmxl215YFQHfz1082INxmeqH6gUzS9+uQ== 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 4P16nL0c23zp79; Tue, 24 Jan 2023 00:10:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30O0Aj94085958; Tue, 24 Jan 2023 00:10:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30O0Aj72085957; Tue, 24 Jan 2023 00:10:45 GMT (envelope-from git) Date: Tue, 24 Jan 2023 00:10:45 GMT Message-Id: <202301240010.30O0Aj72085957@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: 62adb1e95352 - main - UPDATING: fix 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: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 62adb1e95352c52b709344452e96b5eae8eb426b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=62adb1e95352c52b709344452e96b5eae8eb426b commit 62adb1e95352c52b709344452e96b5eae8eb426b Author: Warner Losh AuthorDate: 2023-01-24 00:08:12 +0000 Commit: Warner Losh CommitDate: 2023-01-24 00:09:08 +0000 UPDATING: fix typo I'd forgotten to fix this from the review, and a couple of people have pointed it out after the commit. Sponsored by: Netflix --- UPDATING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index 970365c0fed3..e9d53811df8d 100644 --- a/UPDATING +++ b/UPDATING @@ -1634,7 +1634,7 @@ https://lists.freebsd.org/archives/freebsd-current/2021-June/000153.html 20160708: The stable/11 branch has been created from head@r302406. -After branch N is created, entriels older than the N-2 branch point are removed +After branch N is created, entries older than the N-2 branch point are removed from this file. After stable/14 is branched and current becomes FreeBSD 15, entries older than stable/12 branch point will be removed from current's UPDATING file. From nobody Tue Jan 24 00:53: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 4P17kC6P1dz2v6tS; Tue, 24 Jan 2023 00:53: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 4P17kC5xgcz424K; Tue, 24 Jan 2023 00:53:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674521587; 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=grS77jV9v3o8VxSuAwtIkEE0SNHCwdbyDlBm0EbalKQ=; b=lN55ctkIweY+4t2ld2xun8OFYaQLdQHpqC5TlF6C4unKnkgXTue3AfnbPorv0vX2zn2+kR G3EBxuzW5QWEhVCs7O8pnYn8qVqdfrvd4lkAcvRRiIQn7dwYPLcMO0jNAkTgOcKSVLJAWC PPWyki6IoYhz1/37lGQxVVxGfnZee9ii9qzz9EMbrjpbWdfEFlsHOFNN3Ct1EQQ0TdJh6C B3w0eP7XynT83M0KU4yoHNMFfPV70+dZWwZDDGKajdc2Zkt7QheCDvFmsRr86qywX9oqnC /YlX2GgCLDpycvt8nzXFlMaNyYVzejoJtG464AVZ5wD3zktY5xllu7BH47LLkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674521587; 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=grS77jV9v3o8VxSuAwtIkEE0SNHCwdbyDlBm0EbalKQ=; b=kk/iO4BUdqA5Yu29b6uQ1A2Wn0yCE3wJnIL3OhmWkTR6jA4+dD5275eUnBoA+N/pparBSB tNHuYKZDkSTFjDe+O7rfLELLbc+CG8F/wDDRSp+pHAY2LgRsY0vcKJBjR0LSTPXA6LyV1N gW6n2SQHLI+2CNTMyMF5fyp/kkue2AP5Qi6ZWbD1IJMvKW34djBTCgMmZuKY93lHLZSmUL ClTD6hOge9Fnflwche/mrM4YNwx8gN2WSMXDqTfuMymrNa6frFKg1jOUCNSSwQRGZa8J/O 3U5KsmZC49yMXgtPYxXGG8FZqdrFh0XTm2vFgGBr8CdVvVeRgzy6Vl5JFqs9SA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674521587; a=rsa-sha256; cv=none; b=XUSFJ2xxU9wdzbuGT+J6cOWPECxMilqEoHGywG7BPZBAeOrGy0WzRUtuDtk6OpgqPnc0Ai wjGlgOy5eiOF13+XMMwHnBgn3TlAg+LfxxPujOdo+ZvFqwdOaQWfrTB38XPkTbHWaYtcvO XKrRt0SOjdDHAxZDZdMD9Rff+C+ACdLkTnA/KDxXjIAQog3GhLdjbHzyrLj+2gX0RYteZY I1iDXE5i/9ccdTcoZp+WNpU2z6QPv/SLOtiptsAaA4XOlCQDkAl2ZbngTtuhbbaF3Wm5Eo MiArf9iPXNV798cceRxqmZJz9aLaN7mIkwqsgVz+bjacOGPqnv8MWSrqak4q7A== 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 4P17kC50JRzqPJ; Tue, 24 Jan 2023 00:53:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30O0r7bL046670; Tue, 24 Jan 2023 00:53:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30O0r7TZ046669; Tue, 24 Jan 2023 00:53:07 GMT (envelope-from git) Date: Tue, 24 Jan 2023 00:53:07 GMT Message-Id: <202301240053.30O0r7TZ046669@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: 9c996882b0ed - main - libcxx: Implement atomic::wait/notify using _umtx_op(2) for 64bit arches 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: 9c996882b0ed279ca314d995f2eb1d538b94e3f8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=9c996882b0ed279ca314d995f2eb1d538b94e3f8 commit 9c996882b0ed279ca314d995f2eb1d538b94e3f8 Author: Konstantin Belousov AuthorDate: 2023-01-20 02:57:26 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-24 00:52:42 +0000 libcxx: Implement atomic::wait/notify using _umtx_op(2) for 64bit arches Only 64bit architectures can be supported this way, because libcxx defines __cxx_contention_t to be int64_t for FreeBSD, and 32bit arches do not have a kind of UMTX_OP_WAIT_INT64_PRIVATE operation. LLVM review: https://reviews.llvm.org/D142134 Tested by: emaste Reviewed by: dim, emaste, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D38132 --- contrib/llvm-project/libcxx/src/atomic.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/contrib/llvm-project/libcxx/src/atomic.cpp b/contrib/llvm-project/libcxx/src/atomic.cpp index 250d33e98b02..e7496fa43666 100644 --- a/contrib/llvm-project/libcxx/src/atomic.cpp +++ b/contrib/llvm-project/libcxx/src/atomic.cpp @@ -26,6 +26,11 @@ # define SYS_futex SYS_futex_time64 #endif +#elif defined(__FreeBSD__) + +#include +#include + #else // <- Add other operating systems here // Baseline needs no new headers @@ -72,6 +77,22 @@ static void __libcpp_platform_wake_by_address(__cxx_atomic_contention_t const vo const_cast<__cxx_atomic_contention_t*>(__ptr), 0); } +#elif defined(__FreeBSD__) && defined(__LP64__) + +static void __libcpp_platform_wait_on_address(__cxx_atomic_contention_t const volatile* __ptr, + __cxx_contention_t __val) +{ + _umtx_op(const_cast<__cxx_atomic_contention_t*>(__ptr), + UMTX_OP_WAIT, __val, NULL, NULL); +} + +static void __libcpp_platform_wake_by_address(__cxx_atomic_contention_t const volatile* __ptr, + bool __notify_one) +{ + _umtx_op(const_cast<__cxx_atomic_contention_t*>(__ptr), + UMTX_OP_WAKE, __notify_one ? 1 : INT_MAX, NULL, NULL); +} + #else // <- Add other operating systems here // Baseline is just a timed backoff From nobody Tue Jan 24 01:38: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 4P18kn6yBSz30vp4; Tue, 24 Jan 2023 01:38: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 4P18kn6Mt7z44jf; Tue, 24 Jan 2023 01:38:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674524321; 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=mq3UcKU63EjWMVJAKHSE/BvrBtUO20CyUBIjO9/G724=; b=lnT2D7bQ2emSP4QQH7q55w5Jz7x663gVCQLx8DnW+z7rqlHBhs84wzrr33/hYvWJzG8Rx9 k9E87TmFxnQk9CrhjxvyoXrFkWcnKZp+FL2lSQsXx7rvfotdZNC0WRlFrDDgp9kK4FI6A5 vVQWWNOg71NkvKbugmuRglKW7RXn63hUgEkLyIdt5Yf44bsQBjZZBUnfNUReUu56f9fN+E AzORk0rY6YgTC//AuPKPbOLYhQ/aMxj6H0kSCGT2Y75RYZQe3SFF0yLXL5tzR5VbF7dDBi k9hcuuezo3AbrPyUgr78zHHnsR+apEY189BVRTAOTC7TyOR422wQiksT7sruvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674524321; 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=mq3UcKU63EjWMVJAKHSE/BvrBtUO20CyUBIjO9/G724=; b=JkgX6jjtnGCMm6SPeClZDJUSOetubvCGDWWgbcajGx+WbqtuUW3l5ux37I8HYmoLNr3dEW xCBAGAUjy1b99D1LxF85U1GSJ9WN5F0zFT+pdKZIU7wEsxpBZ8OxF6qbnHMqoRkDNrWcuP 7sa5SHJjaIEiKMTXcvk6pI6zJUNr3hSCtSxQMy2KR+rP7iLqy3tpHKV9HUmcNDqWhYj5XH NZMCNZirfS9RXJhdwKvyFMLXZ15MfGZPxg7Ya4jolEH1xHTCLjdNbKZ3xY4nZYry49UPcb dMrVE97+xtwO9kSiI5uggLtIXEJWO5nfPK9VOhwDK3y3Opc9gk9zC5sYYVJSfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674524321; a=rsa-sha256; cv=none; b=gQR5HUT4at+T3AeKrqM404expA/UQcyWyHeWuAg8gFrhfsIPAZ5m2bRhIMVB2v2eiWmbEs vI1py+igI0O5X9dlLRYzGS/6RW2WkKJ+5Vc81Fn/LniDD4fVvzGU2eSKtUJW0cUYbTwpwG hZ22dboLy0GnaaIXt4MCavufLtcn3a1fOdixsz6oTRA/1Zj5DY9vfznm52Q84TWXLuAecu im2/St8m3Hz/DTC5BjYQdaEXCntEkDbMwA9xO2qnLrkz/0WEoyakVkID4YGUu6jreZUY8U JA2yKfgRt6bIorF1gHx9rXuanQnNZxWibJbPS9w+SV8uXbzQGGwaYHP06RtFKA== 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 4P18kn4vVbzrKJ; Tue, 24 Jan 2023 01:38:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30O1cfNU004113; Tue, 24 Jan 2023 01:38:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30O1cfL7004112; Tue, 24 Jan 2023 01:38:41 GMT (envelope-from git) Date: Tue, 24 Jan 2023 01:38:41 GMT Message-Id: <202301240138.30O1cfL7004112@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Gallatin Subject: git: da81cc6035f8 - main - dtrace: conditionally load the systrace_linux klds when loading dtrace. 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: gallatin X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: da81cc6035f8283b6adda1ef466977e8c1c5389e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by gallatin: URL: https://cgit.FreeBSD.org/src/commit/?id=da81cc6035f8283b6adda1ef466977e8c1c5389e commit da81cc6035f8283b6adda1ef466977e8c1c5389e Author: Andrew Gallatin AuthorDate: 2023-01-24 01:27:17 +0000 Commit: Andrew Gallatin CommitDate: 2023-01-24 01:36:24 +0000 dtrace: conditionally load the systrace_linux klds when loading dtrace. When dtrace starts, it tries to detect if the dtrace klds are loaded, and if not, it loads them by loading the dtraceall kld. This module depends on most dtrace modules, including systrace for the native freebsd and freebsd32 ABIs. However, it does not depend on the systrace_linux klds, as they in turn depend on the linux ABI klds, and we don't want to load an ABI module that the user has not explicitly requested. This can leave a naive user in a state where they think all syscall providers have been loaded, yet linux ABI syscalls are "invisible" to dtrace. To fix this, check to see if the linux ABI modules are loaded. If they are, then load their systrace klds. Reviewed by: markj, (emaste & jhb, earlier versions) Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D37986 --- cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c index 867259b5d77c..e11cdc954683 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c @@ -1115,6 +1115,15 @@ dt_vopen(int version, int flags, int *errp, */ if (err == ENOENT && modfind("dtraceall") < 0) { kldload("dtraceall"); /* ignore the error */ +#if __SIZEOF_LONG__ == 8 + if (modfind("linux64elf") >= 0) + kldload("systrace_linux"); + if (modfind("linuxelf") >= 0) + kldload("systrace_linux32"); +#else + if (modfind("linuxelf") >= 0) { + kldload("systrace_linux"); +#endif dtfd = open("/dev/dtrace/dtrace", O_RDWR | O_CLOEXEC); err = errno; } From nobody Tue Jan 24 05:30: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 4P1FtB6Rw1z3bLpn; Tue, 24 Jan 2023 05:30:26 +0000 (UTC) (envelope-from kp@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 4P1FtB55jmz4QTl; Tue, 24 Jan 2023 05:30:26 +0000 (UTC) (envelope-from kp@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674538226; 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=EqvfiOmyjjiysmnc0rmsfpo2dE4YSqMNpA4GfOhO4sg=; b=ilTsnEzSXher2002O7CVHuwZTWXPfBCN/ytt8W0h9HGK46u0HfQlAzilEYD80uGSHKFpmQ Eu3ULS6pHRRe4FQ5URpagJAEqXwAGECDI5kre0sdNIE6EsxXLdk403WKA2+5WoOCSF2ef4 vlgtqWNdwMuVbsH9OQIvpPUYxUZNNiicVxQddPfMdOTo/CCxCjTjkH0YqxNYnxO/u3bB+7 b+dLlo5hBVBd88XH5KGFlBhhO58N3OtgH+HyAYcVD4IGHFLbd7t2LSy5pJTFA/zqNMHj8F mFfBO21N6Ddbbhdjt1bd0Kr6NT8XtTGFnp5kghDrkf+MK3cHivgczgp2XfxayA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674538226; 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=EqvfiOmyjjiysmnc0rmsfpo2dE4YSqMNpA4GfOhO4sg=; b=hrOBt82ww5Tyd/S1n0Gm7U6LVQ1jhtFsrWC8lXHN8fVm5FZYXq0cRnCOelpEBfeoCb0cna lX6TvNPe1heNu/m08ko81Tj1u6+gECUFSj9t2QDZJDtPGwYNPaOQAjdpZqxsaGvr0Bm9QY sC5J1/20Y75GtgEwQPIZ16FXGqoCd6GDtKNp4TtXt6P5o1C9loE71jxwn01ucTGzoEmQPG TjP7SNGJECXHsGWs86svEAyWfAqBv7fm4AQrYiHu5Ya03wQH3zdhMcBYEAPBXomd6aXpCn inwZ9sdaZXtqfTxmfUGiYkffBiLgDyq4yTP0zixx4XDImuFzT8tLBtKwQ0qP1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674538226; a=rsa-sha256; cv=none; b=xv/ldF1TE0p/7l1Bxf+cmQj92715SP9pFb/pT8vTHjCkpY6r0x4k0+UhsvcDRdGF5VvyK1 ko87JNdvG7X4h3H1Khmh5CVE3sAdncWDEp9YkycQOTuYbbeC/YE4OaMzQ6By8Kia3kDM+d 51Nv/1rOsj+QGNCdx3GCTWdyG0o2dOSteBtk1PUizZNlErg32bizlrwGhejk67GbeiA4Sk cAZnMwe1NijTM7Wj7CY51rJJPQWlqrsKOoOmHN3gD88HoLWplSMLZk83nEqj0UklSD6uCp c+tA2gfyiEeCzd0DEEXxdP/8BMQARd8wXW126RHRIPBSX1C3d5nqbPiBy+y0jQ== Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (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 "mx1.codepro.be", Issuer "R3" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4P1FtB3QtlzYXw; Tue, 24 Jan 2023 05:30:26 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id F274947EC3; Tue, 24 Jan 2023 06:30:21 +0100 (CET) From: Kristof Provost To: Andrew Gallatin Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: da81cc6035f8 - main - dtrace: conditionally load the systrace_linux klds when loading dtrace. Date: Tue, 24 Jan 2023 18:30:16 +1300 X-Mailer: MailMate (1.14r5918) Message-ID: <00187534-3A6D-471D-B9DD-6CD42486DA3C@FreeBSD.org> In-Reply-To: <202301240138.30O1cfL7004112@gitrepo.freebsd.org> References: <202301240138.30O1cfL7004112@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=UTF-8 Content-Transfer-Encoding: quoted-printable X-ThisMailContainsUnwantedMimeParts: N On 24 Jan 2023, at 14:38, Andrew Gallatin wrote: > The branch main has been updated by gallatin: > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Dda81cc6035f8283b6adda1ef= 466977e8c1c5389e > > commit da81cc6035f8283b6adda1ef466977e8c1c5389e > Author: Andrew Gallatin > AuthorDate: 2023-01-24 01:27:17 +0000 > Commit: Andrew Gallatin > CommitDate: 2023-01-24 01:36:24 +0000 > > dtrace: conditionally load the systrace_linux klds when loading dtr= ace. > > When dtrace starts, it tries to detect if the dtrace klds are loade= d, > and if not, it loads them by loading the dtraceall kld. This module= > depends on most dtrace modules, including systrace for the native > freebsd and freebsd32 ABIs. However, it does not depend on the > systrace_linux klds, as they in turn depend on the linux ABI klds, = and > we don't want to load an ABI module that the user has not explicitl= y > requested. This can leave a naive user in a state where they think = all > syscall providers have been loaded, yet linux ABI syscalls are > "invisible" to dtrace. > > To fix this, check to see if the linux ABI modules are loaded. If t= hey > are, then load their systrace klds. > > Reviewed by: markj, (emaste & jhb, earlier versions) > Sponsored by: Netflix > Differential Revision: https://reviews.freebsd.org/D37986 > --- > cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c b/= cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c > index 867259b5d77c..e11cdc954683 100644 > --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c > +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c > @@ -1115,6 +1115,15 @@ dt_vopen(int version, int flags, int *errp, > */ > if (err =3D=3D ENOENT && modfind("dtraceall") < 0) { > kldload("dtraceall"); /* ignore the error */ > +#if __SIZEOF_LONG__ =3D=3D 8 > + if (modfind("linux64elf") >=3D 0) > + kldload("systrace_linux"); > + if (modfind("linuxelf") >=3D 0) > + kldload("systrace_linux32"); > +#else > + if (modfind("linuxelf") >=3D 0) { Trond spotted the extra brace here. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D269128 > + kldload("systrace_linux"); > +#endif > dtfd =3D open("/dev/dtrace/dtrace", O_RDWR | O_CLOEXEC); > err =3D errno; > } =E2=80=94 Kristof From nobody Tue Jan 24 08:36: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 4P1L1C0sVmz30tdJ; Tue, 24 Jan 2023 08:36: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 4P1L1C0L0Dz3MlM; Tue, 24 Jan 2023 08:36:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674549407; 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=vOFG99bGEPL9X/r32gSOUuV61HkIbVQBAJrf+znbC9c=; b=EcxDbClgfhfxwprxnO1HFo8kg6wwR/grZ5lL8sIhNwTzKOyJbBK/3kAdjZPFGOaTh4wXKO oKi2N2ocV5uN1muoSp4UL8OZPeWNiKM7Neg7vesdkYUQ+ZCHx0GyTg1EysR/26MCICOdzB 53mqfXNvuS+PdfIaiSCoH84KYMytraSWKoZIX1CosmwZ4K7kREnWNAEcH9XnV07fsJ65ig vDstUnrwjcgJMuRaIP586K99j9xtq9gkyswS4MirWr44cYF0ZlJla+u8DtRXvDvfVKTwFY Rhw+sQDvuJe+dEEwL0P61bXWgUlhF2O6HjVs+n0JQB2nWRCZ87KAY9TO7A+RAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674549407; 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=vOFG99bGEPL9X/r32gSOUuV61HkIbVQBAJrf+znbC9c=; b=hObfT+ey7uTKdTD3PE828vcBLLXCvHjPUVv87iSYYBkzB62sElYq+grMfNDizDHv1Jh6ZX RlteWw0++XbpW2Oo4xAKg59Rw4V23IvvWBU0h2VgO76Z4yJrXcwVUnZqjyDQzSBmQrBmyi iYOaf04Af3elhf91CdAfKTILxyBkdMVk62gf/wBtlPSyI+UwDgQmRUve1C0R3StcO2JteB bLhqWZiDZHFo6ziTMXycPaQJRxZ4gPz/Pu3BJCGP+RCFZqc7CDTF081lgPHriBEbWgGZ2r vzhmFvJkVzxWMPpY0SEmCnQVnNTK+LNa4oHb1WdJIX7sgLLDDaYfEBsFeiPkhw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674549407; a=rsa-sha256; cv=none; b=iTQe42bxMkjRPTmnqey5qqUqXLDUgoo2GVaX1+nFvQ33YDqWgZLnVpIUr1eK9EKqSrdH6P fahUntPB6IAXLaKVAXBnC3DDokix69X9y+M86F9GPWl0An+gbsnU+aaJaUDJpn0/u+15B1 5O3L1qTdSOUXaV0MbJCkwpeLr9ZLiI+r1Qi2sru8mwmdRDoNtQF42gL3Q8oC+dvI4N2ir5 FncrC7kmK+Ey26wEpJbdksmA0n2gXNuTW6iPZn3iR49bJ12fC5eMn+fAD0RIhRDVNR13wp bz2rGspJEwQ3v/QtJrtcNNk2Y0Volnj0JEW9OXfmDUa9c/xijKYyUeDl4BSQcA== 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 4P1L1B6Tvjz12wf; Tue, 24 Jan 2023 08:36:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30O8akhq007281; Tue, 24 Jan 2023 08:36:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30O8akxQ007280; Tue, 24 Jan 2023 08:36:46 GMT (envelope-from git) Date: Tue, 24 Jan 2023 08:36:46 GMT Message-Id: <202301240836.30O8akxQ007280@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: cd80c52cade3 - main - pfctl: rule.label is a two-dimensional array 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: cd80c52cade3e38d273eecec6f9b0a7cba23bcc8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=cd80c52cade3e38d273eecec6f9b0a7cba23bcc8 commit cd80c52cade3e38d273eecec6f9b0a7cba23bcc8 Author: Kristof Provost AuthorDate: 2023-01-24 06:46:46 +0000 Commit: Kristof Provost CommitDate: 2023-01-24 06:46:46 +0000 pfctl: rule.label is a two-dimensional array Fix checking for a non-empty first string. PR: 269075 MFC after: 1 week Reported by: nreilly@blackberry.com --- sbin/pfctl/pfctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/pfctl/pfctl.c b/sbin/pfctl/pfctl.c index 37c9625492b1..f60e3f67e082 100644 --- a/sbin/pfctl/pfctl.c +++ b/sbin/pfctl/pfctl.c @@ -1309,7 +1309,7 @@ pfctl_show_rules(int dev, char *path, int opts, enum pfctl_show format, case PFCTL_SHOW_LABELS: break; case PFCTL_SHOW_RULES: - if (rule.label[0] && (opts & PF_OPT_SHOWALL)) + if (rule.label[0][0] && (opts & PF_OPT_SHOWALL)) labels = 1; print_rule(&rule, anchor_call, rule_numbers, numeric); printf("\n"); @@ -1363,7 +1363,7 @@ pfctl_show_rules(int dev, char *path, int opts, enum pfctl_show format, break; } case PFCTL_SHOW_RULES: - if (rule.label[0] && (opts & PF_OPT_SHOWALL)) + if (rule.label[0][0] && (opts & PF_OPT_SHOWALL)) labels = 1; INDENT(depth, !(opts & PF_OPT_VERBOSE)); print_rule(&rule, anchor_call, rule_numbers, numeric); From nobody Tue Jan 24 08:36: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 4P1L1D22L4z30tYN; Tue, 24 Jan 2023 08:36: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 4P1L1D1V2Jz3Mtn; Tue, 24 Jan 2023 08:36:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674549408; 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=bkbeSCLfdFHDErqkhu00OCJF/n0TtXU2pxveMhRvPXI=; b=N6C8pqXFYIx1AdSDOxRxA3l7qC+NJZuPl1gwMyba3H6SG5V9yKbNEguLsufGOeLxx4/Q6E fKFUZEKvM6FyDXSeiTBRscCeDEDfgJ0akMmFPP+DkxxKqjT/1SIcDgnZAd2ufd35dDoXml ZyBNkGCYeaUJSmMKyFkRt9VmIY/R0EymuTWdbXq2zrkDO4xXnQtrHQEpo6jc5RysJldLwA 4Q0eY80Qd6A3YGeRpp7FAMwAJfyC1TzyrDCDIMaboy9I/4slcYAMTt0/3R9S3kzYjqZx57 SrCUBkfvbqFA4z2O+qJqziHSWWbRKzhLe8Y/2abadCbwWQflcSyBX1dakj+pow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674549408; 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=bkbeSCLfdFHDErqkhu00OCJF/n0TtXU2pxveMhRvPXI=; b=J4jfQ8ql/fy4sXRURnOnQOmEN50bNnYzuFXQaZwmFkHABBtnFBohlOtUpAXZmOHM2vX46A im4lXEjbg2wX0+/l2vsuP8IZbgB+sr7GMi8/ekGksghsspZlqbWha1+0r2ucXCS3z+wC0I RcnH2Jcdfs9Cdlb31heKLFL+A848+E3OJIz8DFvySy8A++H3RmP3/Rr0QRVjEeQik20zqA 6lyLHzW0Z0ez3cbhuCvTRmOcUkaYMv0zg/eesOcrzDomM1LNoL+hgOSDJsTwI+37JarK4w gcAlgBRYmv0FcNkf24e1lyWip/OH+WqFqfT217ZbFoRt/YCpXB8TJGzo3uG8iw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674549408; a=rsa-sha256; cv=none; b=dpB9stNTqupMJiJkJG5/lln2g9A3Y1QYFOw2DpDPlxTux3wSgh2jnhyfE8MKqH2Bv9bNwM 9gWDrIuWrMVb6/hwC1SOmMVb5xs3OpxA1cf2N+1uizVKY3bYiSzMJdo50faKrmuHSVnv5D gsK6bSP6Km3FuShAP0bk7XxFQ2P5lgkPD75Jywls35g6giHEtBVqpx6U8kHNAHE1aAhsXn KJyHYLP1VD9Qa/X77n2Nn4phZsjaHpZ4V3BWjSuoHqc/XuNM3eNDyZHuse28xSCnnZJF4F py4zxj1FPtxncLTOk0aFtMoeo2ffj78S2RQsWEeFMjoq3N/Gibojd2X2+FO1XQ== 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 4P1L1D0YQJz12wg; Tue, 24 Jan 2023 08:36:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30O8alig007305; Tue, 24 Jan 2023 08:36:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30O8al9x007304; Tue, 24 Jan 2023 08:36:47 GMT (envelope-from git) Date: Tue, 24 Jan 2023 08:36:47 GMT Message-Id: <202301240836.30O8al9x007304@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: ecdd0b48cbf4 - main - dtrace: 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: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ecdd0b48cbf4dd5acc3fc14625de6dc25cf354ce Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=ecdd0b48cbf4dd5acc3fc14625de6dc25cf354ce commit ecdd0b48cbf4dd5acc3fc14625de6dc25cf354ce Author: Kristof Provost AuthorDate: 2023-01-24 07:39:37 +0000 Commit: Kristof Provost CommitDate: 2023-01-24 07:39:37 +0000 dtrace: remove stray { Fixes: da81cc6035f8283b6adda1ef466977e8c1c5389e PR: 269128 --- cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c index e11cdc954683..fd770e180b47 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c @@ -1121,7 +1121,7 @@ dt_vopen(int version, int flags, int *errp, if (modfind("linuxelf") >= 0) kldload("systrace_linux32"); #else - if (modfind("linuxelf") >= 0) { + if (modfind("linuxelf") >= 0) kldload("systrace_linux"); #endif dtfd = open("/dev/dtrace/dtrace", O_RDWR | O_CLOEXEC); From nobody Tue Jan 24 08:53: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 4P1LP363ZTz30wpW; Tue, 24 Jan 2023 08:53: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 4P1LP347NZz3QyH; Tue, 24 Jan 2023 08:53:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674550439; 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=jGPvhXfCGS+RjK/PIiAbk0qrCXgirfZWUTy9h5LhsBA=; b=baCJvDt2pVORyvNkU2t28dcgYbwQRewaDFumpztqsm6U3Awn6aKjXSgoQEsmQBEi/OWIDF jJygvuJ48djnDLb7cqesWwm0OYYTzX3RCqx8aputtclczEAlz+vwDzob2PGlAHQh68FODO Oog10xb2C3OoTPuJ5VDD68CWn470RO16sAiqIMmUPUmfpQFNedSigYdQInmbemZ3Lhelcf Q/YHnqQy6WTpD7EyuG/KqXAiNzz30XVinikSm/IDtveayCp/yDw8q4e3YRIb3tyN87ug8Q 0WLVmIccAErtiDPyjeKC4C8I1cr0dG+GrA6WkvGbAMohr2Hqz/hAwY4sCq70rA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674550439; 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=jGPvhXfCGS+RjK/PIiAbk0qrCXgirfZWUTy9h5LhsBA=; b=RxmbzPDTJdwULUzaklssoChRywCxw7kGJQQ/rpLfl6cllv2YYCX8zdAIe+2furVLNwt9Di ZQcRbttYAhsoG3XT2EsdAwWpDv/IlHJ+hRRC40ViA/NBr4vzoWqLxjl8y7aQdcMCtFkYOZ xWqO6qsQXuANxoyy48TlufDVfjNjQ6HFgN8QPLMIV13Hy+udm1nQIMQtZIvHEb6m0DQHvO lWU/wtk8mjiEQm7ze5tTgw5XD91iLqL8dvXRKZaVn1Wyf6hbc3IqH92lH2TXA4IRBuWTYb ufk5JBbCQ2pWCBRgV9KPEbpqX5xaSQTSTPM48i3v5Rg2Yyy1Sxybi9weOg9PAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674550439; a=rsa-sha256; cv=none; b=Weo0h7a2Ho//EmyL2xY7lV0onRtof7MkMPyhCggUo69JuXKApXZhKScxtedmIu3474TV7L V7yTBmMjLQJ0MydtDx5DgN6do1POzvDGK5KBLYX6CoYb37m20APoIbOgmvgW0u14L3Iz0o 4hI3YklUYkp83rViKH+ZOEpU4zkt/yEdAxt6FN38ZlMkNfcD7m+jz/8erRXzQ+10l0pfaC KAfJh4omRzfkuzHI7JvSMYysC0w9TC0LbNZ4EDYbigcWesTFGapl2MqOW50Jtn45Rak7Ql vOMb7tXYWQEgu/X764g+n4+yDNnM2wo5U605HRCDDGzGWbUtPFH4DPbSQqwGAg== 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 4P1LP33Dz4z135g; Tue, 24 Jan 2023 08:53:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30O8rxLF035836; Tue, 24 Jan 2023 08:53:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30O8rxND035835; Tue, 24 Jan 2023 08:53:59 GMT (envelope-from git) Date: Tue, 24 Jan 2023 08:53:59 GMT Message-Id: <202301240853.30O8rxND035835@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: 14ebab25e123 - main - find: Logic nit in man page. 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: 14ebab25e1231decd80a64194e9028a9ada8d6e6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=14ebab25e1231decd80a64194e9028a9ada8d6e6 commit 14ebab25e1231decd80a64194e9028a9ada8d6e6 Author: Dag-Erling Smørgrav AuthorDate: 2023-01-24 08:53:35 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-24 08:53:35 +0000 find: Logic nit in man page. Arguments follow primaries, not the other way around. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D38173 --- usr.bin/find/find.1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.bin/find/find.1 b/usr.bin/find/find.1 index 482e48aa607d..2b9275d5aee3 100644 --- a/usr.bin/find/find.1 +++ b/usr.bin/find/find.1 @@ -31,7 +31,7 @@ .\" @(#)find.1 8.7 (Berkeley) 5/9/95 .\" $FreeBSD$ .\" -.Dd August 2, 2022 +.Dd January 23, 2023 .Dt FIND 1 .Os .Sh NAME @@ -67,7 +67,7 @@ of each file in the tree. The options are as follows: .Bl -tag -width indent .It Fl E -Interpret regular expressions followed by +Interpret regular expressions following the .Ic -regex and .Ic -iregex From nobody Tue Jan 24 13:32:09 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 4P1SZ96pnWz3bTSW; Tue, 24 Jan 2023 13:32:17 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.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 4P1SZ950Jcz4Fv2; Tue, 24 Jan 2023 13:32:17 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Authentication-Results: mx1.freebsd.org; none Received: from [192.168.1.2] (pool-173-53-116-41.rcmdva.fios.verizon.net [173.53.116.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: gallatin) by duke.cs.duke.edu (Postfix) with ESMTPSA id 96B12F4061C; Tue, 24 Jan 2023 08:32:10 -0500 (EST) DMARC-Filter: OpenDMARC Filter v1.3.2 duke.cs.duke.edu 96B12F4061C DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=cs.duke.edu; s=mail0816; t=1674567130; bh=dpboHIHW5ic0sZCDCo30MRArWgIGVKvuRmGBoxrNc1Q=; h=Date:Subject:To:From:From; b=mpk3H2dDtgLB/ZDn0YNffnVHLa3k34lm6rA7sesXpE7YXYXRO2onwX5iyZsQ7vzWg WcVsRlTJdcM0aeMOeMzwRr0CrB4v8uv4NqTdZG+/S3ns2wEt28/ghE8Sp/KW3FkwWA +2Sc11I46CbgxJiIkYiulZDtHKMCzSiOnMDISlWAcESKo4xezEALXjwFhJcLV7ef4g QPFZXJ2dJ0h/QrwNoQliQB+tZ68bTCKUH58qqtyUJVyvga4rtnVkvY4xzimyNrmwjS UhipJV28RwJxkzAQsByWbYIhNwv5J8wlh26pOShQ5HfPDHfZu7xcEBGd1ZWx9Rzvw1 LHm1Um7S8ZWYQ== Message-ID: Date: Tue, 24 Jan 2023 08:32:09 -0500 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/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Subject: Re: git: ecdd0b48cbf4 - main - dtrace: remove stray { To: Kristof Provost , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202301240836.30O8al9x007304@gitrepo.freebsd.org> Content-Language: en-US From: Andrew Gallatin In-Reply-To: <202301240836.30O8al9x007304@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4P1SZ950Jcz4Fv2 X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:13371, ipnet:152.3.128.0/17, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On 1/24/23 03:36, Kristof Provost wrote: > The branch main has been updated by kp: > > URL: https://urldefense.com/v3/__https://cgit.FreeBSD.org/src/commit/?id=ecdd0b48cbf4dd5acc3fc14625de6dc25cf354ce__;!!OToaGQ!sSG7SsMzMdduiDQHrFvUgnJx_Vqw_UVXcGnUYdnForAGClss0veTm_Y0BxHqtle2SRvY0H7NmxQvAA$ > > commit ecdd0b48cbf4dd5acc3fc14625de6dc25cf354ce > Author: Kristof Provost > AuthorDate: 2023-01-24 07:39:37 +0000 > Commit: Kristof Provost > CommitDate: 2023-01-24 07:39:37 +0000 > > dtrace: remove stray { > Thanks so much. I can't believe I did that! :( I had done several make universe's on the previous version, and thought I'd done one on this one as well. Obviously I was wrong. Drew From nobody Tue Jan 24 14:13: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 4P1TTS3vRsz3bYkd; Tue, 24 Jan 2023 14:13:16 +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 4P1TTS3GWhz4JSw; Tue, 24 Jan 2023 14:13:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674569596; 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=zV9oEjjN05w15/2M1oOrhcUt7rEFSOOWUc9iVZ224CQ=; b=H0WW1iuJlFEscgH7TpdsfdQSl9I+wsI5G/MBcGEJBzjq5FDdWflP0S1kDds7UuIC1URCVp 1FeAhA2MVuIJdWMHQgM+mN9x9zCaZ9+p67/G4OJRK6NhsvcBmRzlvvglAxVP40IvUDyrnT NqHIOx00hiK4GU0D3pvCJT4mgWjtykZYCmQgz3UJayToLjW1TRKKwYvmr2ta13C6YdaXag nqzeI+gbQHEqlLiyn93pBl4tK+/bbxXndGB4VpSoCQ2wI3YGLDpL9nwJpKlNHpsnuFJWKt M4VSW365mV5a4KlQgMdkmWX3yWOhcD3ciWbcnq0Po0anYVO8HJeB5LA4aQGobQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674569596; 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=zV9oEjjN05w15/2M1oOrhcUt7rEFSOOWUc9iVZ224CQ=; b=VH8KfOqpxEyJyjEbQkK+/79guSnAbByX/pp23dZNIDd6p3iDlBWfL5db9D9xug9ThZnQol pQ7uK72KUBnkYGZ00C6CI3ZSDXdXo5YAzqJkxv/Q8b3pjh+4oy1PZWKo6WxkqDSOWFhmIt VxlCSUUj7OYNHm00eGQ0E6lrzDpo2Ir712tC+yY9fAICgj9fhatBFp62tuKa4PMOsQDAaY L7IPCC8fsWoQ0IpoLYgAo4xEQEzw8ZPX0sblDfxJPRA0Uf7Y1MTwmyZV20La5nj23Dy97H LNNHQVzRhSHi32QD6SswecovFYliklV0pbzTrG3DP/cOCv4w/3fw4e5B781KFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674569596; a=rsa-sha256; cv=none; b=TAZ7lgfFVG6560kJtpxN9/utTtI/mhS8ISM05Wzd5YTR5PwTFUOfkp+SnVahseypwJ9G77 V+h9OPFEnFnAhYBa0cOMX0YPyqs0ubGR6iEpwyeTubnBQaujOnTv52MiKqIzvCS7y+CZnJ r9W2QY5JC334sXgk/NIseq6Q4X7S8+li2+kbHqtiyYB3bBWkQlWMavjY6Dbunh4hYGYoIr NLtvr/vQJQMaJDcAqVJpLPPSfm6ltCA6ODhzy9Y8XGv3P6yhRRzZac6QPiw5FF1OcjfqqO aPcpZNiUjnaydOr3+DWjo3VxTSjFaBaZJZ7lhfhFgw6OHQG5fv3N0hkwtkRYdg== 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 4P1TTS2JyFz1BNk; Tue, 24 Jan 2023 14:13:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OEDGBk094245; Tue, 24 Jan 2023 14:13:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OEDGKm094244; Tue, 24 Jan 2023 14:13:16 GMT (envelope-from git) Date: Tue, 24 Jan 2023 14:13:16 GMT Message-Id: <202301241413.30OEDGKm094244@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: 7c5bc69a1a33 - main - dtrace: Improve a verifier error message 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: 7c5bc69a1a33b3a544175ad89c0bba1429491218 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7c5bc69a1a33b3a544175ad89c0bba1429491218 commit 7c5bc69a1a33b3a544175ad89c0bba1429491218 Author: Domagoj Stolfa AuthorDate: 2023-01-24 14:09:27 +0000 Commit: Mark Johnston CommitDate: 2023-01-24 14:09:27 +0000 dtrace: Improve a verifier error message Using '%r0' in efunc causes it to parse %r as a 'r' specifier. This diff just adds a '%' in front of '%r0' in order to create the correct output. Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D38176 --- .../contrib/opensolaris/uts/common/dtrace/dtrace.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c b/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c index 44a85db65117..e6a273cfdeef 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c +++ b/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c @@ -9814,7 +9814,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_NOT: case DIF_OP_MOV: @@ -9826,7 +9826,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_LDSB: case DIF_OP_LDSH: @@ -9842,7 +9842,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); if (kcheckload) dp->dtdo_buf[pc] = DIF_INSTR_LOAD(op + DIF_OP_RLDSB - DIF_OP_LDSB, r1, rd); @@ -9861,7 +9861,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_ULDSB: case DIF_OP_ULDSH: @@ -9877,7 +9877,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_STB: case DIF_OP_STH: @@ -9947,7 +9947,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_SETS: if (DIF_INSTR_STRING(instr) >= dp->dtdo_strlen) { @@ -9957,7 +9957,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_LDGA: case DIF_OP_LDTA: @@ -9968,7 +9968,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_LDGS: case DIF_OP_LDTS: @@ -9980,7 +9980,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); break; case DIF_OP_STGS: case DIF_OP_STTS: @@ -9998,7 +9998,7 @@ dtrace_difo_validate(dtrace_difo_t *dp, dtrace_vstate_t *vstate, uint_t nregs, if (rd >= nregs) err += efunc(pc, "invalid register %u\n", rd); if (rd == 0) - err += efunc(pc, "cannot write to %r0\n"); + err += efunc(pc, "cannot write to %%r0\n"); if (subr == DIF_SUBR_COPYOUT || subr == DIF_SUBR_COPYOUTSTR) { From nobody Tue Jan 24 14:13:17 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 4P1TTT4jPJz3bYtQ; Tue, 24 Jan 2023 14:13:17 +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 4P1TTT49N5z4JTQ; Tue, 24 Jan 2023 14:13:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674569597; 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=lL4rUjDNJZAx4EKbSlPmKi4cin6x9DaObCO+CJEdmV8=; b=DXjW1mk0jDOZPGOU1f3xZuSEyUUmX8LqqZssgi0dKod97J/pX8Izp6tY6SKZ6pBM09EoRo EcM97ncd2U2rcAtvJdTAzLxfuEbZkiwfuKDN0DNvVzFranLttyZc/N5bgRdX+R7/rsg563 UDU8uwdqqge/dKsYa4yiF8NPO9dtlDm9cnC5GVHbU1MidgALJC1edrPewKcixM6vCtyx8s eYs4tQ/RmZZqDR54JOFQ9P9q09qvegA/ZYgEiSuHrL4O7+tg5QmMRSHNHaByYDOKrfcFwp XGhbrMUQ7RR1eoJBdSAr1yb2Y02cP7T6tCCI9sTa6s8dk065czk2rJhnfvR+VA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674569597; 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=lL4rUjDNJZAx4EKbSlPmKi4cin6x9DaObCO+CJEdmV8=; b=tDMCr/4eGnICkgjw8sy1w6RdK98jcs/kLxue+oiyBnqgb4/9CgYyep6Tux+SC27cgiPdbk 4TBqYDD9tH0c8GbmllQyUKQpBZQme1uxe/SbMPtGWUaHUTR0Ti43wnuffw1IRz6gQPKXkG SOC6vzeiy9dLCnArXVNhqMy8MaDknBovu1N9nnTOmJnXgJWq4j9HQKCiJVH7d9g12xpWeg mAcC7S5A6fXYmn1Eq79/yj4LBvsL0v4Rn5i0wqzge9YZNRYJffCNKk/e6mNRKaf9vMN9Sh Q8LOZn58VU/lcxevBmhrB3CwJvqYLu1ANAEH/qBDnZAZfbyzMDSq7h/vzNmPaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674569597; a=rsa-sha256; cv=none; b=Q2QmmwR5U2MVYYv0yW9xmax5ldDgI/VnnAcuU6dOcK0O+2hThu/b1sl4EsYXTAUbAzONP3 KSAPrZxZDKg0stml7vEzOQ80tjlLnbF7LS6YkfTjUI4Rsn2BdbjBq+zLtsMbI2kcuzBsAN H79DeYA7fQ8lvPx8/+zlZgK4oBaoifH1snvqDHTkBzevtiKCoJF7LnSxCpfZ+lVGtaqLLc 9FtWx2Efgd45M45jx+47nxbD0ZCv97C5YPGPwC5s8+MjbaiuuY1BI/3VCVSD3BYecSYm1s u0vloaqfzxuinmJvUWkax0GwLYaP1NDuhJcbpYp75KbPzY/UpdqY0xOYc/pH1A== 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 4P1TTT3DCmz1BSS; Tue, 24 Jan 2023 14:13:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OEDHle094271; Tue, 24 Jan 2023 14:13:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OEDHpx094270; Tue, 24 Jan 2023 14:13:17 GMT (envelope-from git) Date: Tue, 24 Jan 2023 14:13:17 GMT Message-Id: <202301241413.30OEDHpx094270@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: 2d3515d61e70 - main - mixer(3): Add HEADNAME to TAILQ_HEAD declarations in man page 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: 2d3515d61e70ee8e37e57c85d566f8c05717763f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2d3515d61e70ee8e37e57c85d566f8c05717763f commit 2d3515d61e70ee8e37e57c85d566f8c05717763f Author: Christos Margiolis AuthorDate: 2023-01-24 14:10:49 +0000 Commit: Mark Johnston CommitDate: 2023-01-24 14:10:49 +0000 mixer(3): Add HEADNAME to TAILQ_HEAD declarations in man page Forgot to modify the man page in commit 249526dace5d6f. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D38118 --- lib/libmixer/mixer.3 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/libmixer/mixer.3 b/lib/libmixer/mixer.3 index e1969dfd3a7c..c8b84aa7568d 100644 --- a/lib/libmixer/mixer.3 +++ b/lib/libmixer/mixer.3 @@ -22,7 +22,7 @@ .\" $FreeBSD$ .\" -.Dd March 19, 2022 +.Dd January 19, 2023 .Dt MIXER 3 .Os .Sh NAME @@ -108,7 +108,7 @@ a simple way. A mixer is described by the following structure: .Bd -literal struct mixer { - TAILQ_HEAD(, mix_dev) devs; /* device list */ + TAILQ_HEAD(mix_devhead, mix_dev) devs; /* device list */ struct mix_dev *dev; /* selected device */ oss_mixerinfo mi; /* mixer info */ oss_card_info ci; /* audio card info */ @@ -212,7 +212,7 @@ struct mix_dev { float right; /* right volume */ } vol; int nctl; /* number of controls */ - TAILQ_HEAD(, mix_ctl) ctls; /* control list */ + TAILQ_HEAD(mix_ctlhead, mix_ctl) ctls; /* control list */ TAILQ_ENTRY(mix_dev) devs; }; .Ed From nobody Tue Jan 24 15:37:17 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 4P1WLP6lgtz3bkxS; Tue, 24 Jan 2023 15:37:17 +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 4P1WLP6TD3z3D4N; Tue, 24 Jan 2023 15:37:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674574637; 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=cbcy5YCXoP/bMzRyP+MdJ+chsc7klTviWhl6QwaFv/A=; b=w/KnOIY4TmsqoYiVt4glrLYceBrWEkECITD+Nh0uydoXGIZNRefelVY2mJMI/ipAdewOqJ MmsQgJyHSRmIk+OkiWETuOFWQ7aYhqp/scC32bNG5TKrI8tD56D6q40su5UL6M58yODlR/ TeCyl+oHBh132+TEn+9bi7sxUYaUsdTpj0wvpR1MrqHZNmRLqlUApk13/lzldYmeBZgHMh 2ItdWgA2gpJ2NIURx0NQli6T3QhDxXTgSIU4zGkldjmt6/VjTCbIWHGywCX5gDzsfG+TTk hi9wbQA/3gUVUwZG1JEWr6Qmb3uwMaooHT3aSmr0lV5Iyk51p6qETDluCkCGPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674574637; 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=cbcy5YCXoP/bMzRyP+MdJ+chsc7klTviWhl6QwaFv/A=; b=cFdNSsqNvcKEch6LB0y+C0h/ss1EKrrRVnjPmsvn5TJEO27tRGeOaTbJEm1MvYe+CUjPL5 +/TTAksLVLre+EHt10+7zIteNTVpEYP6XN2UW2BSMaPN3TR8ZHzu+dX93TwAEYHO49PAUv 1YtPBGxaTTl54D1XUBc0+1N+IONL3xEk3jmgGSmeKh5LjIUpZjruUJ/Ylq5W7L5FiB+CxM 8SfrCVMc15JlsAaqCBd5X+j04AhfZC9c6u4mlt2vHOua+mAsWLI+kvCHIynFPl0nSSCYZH TvFq3BdCUQtv2rnwSq/lFFAei5h1qLuatPXSTIUrkW52XZrCQWkwipnT9bs7OQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674574637; a=rsa-sha256; cv=none; b=X17E89IZ1/kHGhXQ/GpncXc6h64QScyvU1P4THLRTNFEOIULNnKKb93hGUsQCzPPZA6nSn YV7YIXYFCY41Egd5vdxqCxgL/c7P4JEnKom7gIISQgcKqpuyZimCg9D0DEYrTjKLcuEO4a ptSq2OI9mmoqxWpGsh0DjmK2r6MeEPATcUZ+9t0awsFNmR9B4Dm2TblYGtOVdrMytjBNSX 3UFttuo0+wYheOZaujJhnR5/9LFNW2bXSqLe4G0GIzCL+jitObFgDwSeQkBf8QzqkqBiln QC7Qwrb6jXgtlB8VDZn5N7ulom9dOwRso07FMoqNjlQ+ppQlpcdk6+7qY2jNLA== 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 4P1WLP5WB9zDtc; Tue, 24 Jan 2023 15:37:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OFbH5Q009414; Tue, 24 Jan 2023 15:37:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OFbHR8009413; Tue, 24 Jan 2023 15:37:17 GMT (envelope-from git) Date: Tue, 24 Jan 2023 15:37:17 GMT Message-Id: <202301241537.30OFbHR8009413@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: a977168c48d4 - main - =?utf-8?Q?qat:=20Add=20Intel=C2=AE=204xxx=20Series=20platform=20support?= 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: a977168c48d45085cdf0c40f9b9bde3850b1f3ea Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=a977168c48d45085cdf0c40f9b9bde3850b1f3ea commit a977168c48d45085cdf0c40f9b9bde3850b1f3ea Author: Michal Gulbicki AuthorDate: 2023-01-24 14:31:38 +0000 Commit: Mark Johnston CommitDate: 2023-01-24 15:33:50 +0000 qat: Add Intel® 4xxx Series platform support Overview: Intel(R) QuickAssist Technology (Intel(R) QAT) provides hardware acceleration for offloading security, authentication and compression services from the CPU, thus significantly increasing the performance and efficiency of standard platform solutions. This commit introduces: - Intel® 4xxx Series platform support. - QuickAssist kernel API implementation update for Generation 4 device. Enabled services: symmetric cryptography and data compression. - Increased default number of crypto instances in static configuration for performance purposes. OCF backend changes: - changed GCM/CCM MAC validation policy to generate MAC by HW and validate by SW due to the QAT HW limitations. Patch co-authored by: Krzysztof Zdziarski Patch co-authored by: Michal Jaraczewski Patch co-authored by: Michal Gulbicki Patch co-authored by: Julian Grajkowski Patch co-authored by: Piotr Kasierski Patch co-authored by: Adam Czupryna Patch co-authored by: Konrad Zelazny Patch co-authored by: Katarzyna Rucinska Patch co-authored by: Lukasz Kolodzinski Patch co-authored by: Zbigniew Jedlinski Sponsored by: Intel Corporation Reviewed by: markj, jhb Differential Revision: https://reviews.freebsd.org/D36254 --- share/man/man4/qat.4 | 6 +- sys/contrib/dev/qat/qat_4xxx.bin | Bin 0 -> 532308 bytes sys/contrib/dev/qat/qat_4xxx_mmp.bin | Bin 0 -> 150084 bytes sys/dev/qat/include/adf_cfg_device.h | 2 +- sys/dev/qat/include/common/adf_accel_devices.h | 89 +- sys/dev/qat/include/common/adf_cfg.h | 10 + sys/dev/qat/include/common/adf_cfg_common.h | 6 +- sys/dev/qat/include/common/adf_cfg_strings.h | 4 + sys/dev/qat/include/common/adf_common_drv.h | 16 +- sys/dev/qat/include/common/adf_gen2_hw_data.h | 172 +++ sys/dev/qat/include/common/adf_gen4_hw_data.h | 132 ++ .../qat/include/common/icp_qat_fw_loader_handle.h | 1 + sys/dev/qat/include/common/icp_qat_hal.h | 79 +- sys/dev/qat/include/common/icp_qat_uclo.h | 48 +- sys/dev/qat/include/icp_qat_fw_init_admin.h | 4 - sys/dev/qat/include/qat_ocf_utils.h | 7 +- sys/dev/qat/qat/qat_ocf.c | 31 +- .../qat/qat_api/common/compression/dc_buffers.c | 64 +- .../qat/qat_api/common/compression/dc_datapath.c | 350 ++++- sys/dev/qat/qat_api/common/compression/dc_dp.c | 29 +- .../qat/qat_api/common/compression/dc_session.c | 387 ++++- .../common/compression/include/dc_datapath.h | 14 + .../common/compression/include/dc_session.h | 204 ++- .../common/crypto/sym/include/lac_session.h | 106 +- .../common/crypto/sym/include/lac_sym_cipher.h | 24 +- .../crypto/sym/include/lac_sym_cipher_defs.h | 26 +- .../common/crypto/sym/include/lac_sym_hash_defs.h | 61 +- .../common/crypto/sym/include/lac_sym_qat.h | 39 + .../common/crypto/sym/include/lac_sym_qat_cipher.h | 27 +- .../sym/include/lac_sym_qat_constants_table.h | 111 ++ .../common/crypto/sym/include/lac_sym_qat_hash.h | 5 + .../qat_api/common/crypto/sym/key/lac_sym_key.c | 11 +- .../qat_api/common/crypto/sym/lac_sym_alg_chain.c | 1505 +++++++++++++------- .../qat/qat_api/common/crypto/sym/lac_sym_api.c | 96 +- sys/dev/qat/qat_api/common/crypto/sym/lac_sym_cb.c | 130 +- .../qat/qat_api/common/crypto/sym/lac_sym_cipher.c | 302 ++-- sys/dev/qat/qat_api/common/crypto/sym/lac_sym_dp.c | 335 +++-- .../qat/qat_api/common/crypto/sym/lac_sym_hash.c | 155 +- .../qat/qat_api/common/crypto/sym/lac_sym_queue.c | 11 +- .../qat_api/common/crypto/sym/qat/lac_sym_qat.c | 129 +- .../common/crypto/sym/qat/lac_sym_qat_cipher.c | 869 ++++++----- .../crypto/sym/qat/lac_sym_qat_constants_table.c | 257 ++++ .../common/crypto/sym/qat/lac_sym_qat_hash.c | 126 +- .../crypto/sym/qat/lac_sym_qat_hash_defs_lookup.c | 510 +++---- sys/dev/qat/qat_api/common/ctrl/sal_compression.c | 69 +- .../qat/qat_api/common/ctrl/sal_create_services.c | 3 + sys/dev/qat/qat_api/common/ctrl/sal_crypto.c | 251 +++- .../qat/qat_api/common/ctrl/sal_ctrl_services.c | 38 +- sys/dev/qat/qat_api/common/include/lac_common.h | 3 - sys/dev/qat/qat_api/common/include/lac_sal.h | 3 +- sys/dev/qat/qat_api/common/include/lac_sal_types.h | 14 + .../qat_api/common/include/lac_sal_types_crypto.h | 12 + sys/dev/qat/qat_api/common/include/lac_sync.h | 2 +- sys/dev/qat/qat_api/common/include/sal_hw_gen.h | 88 ++ .../qat_api/common/include/sal_types_compression.h | 9 + sys/dev/qat/qat_api/firmware/include/icp_qat_fw.h | 116 +- .../qat/qat_api/firmware/include/icp_qat_fw_comp.h | 132 +- .../qat/qat_api/firmware/include/icp_qat_fw_la.h | 408 ++++-- sys/dev/qat/qat_api/firmware/include/icp_qat_hw.h | 201 ++- .../qat_api/firmware/include/icp_qat_hw_20_comp.h | 292 ++++ .../firmware/include/icp_qat_hw_20_comp_defs.h | 443 ++++++ sys/dev/qat/qat_api/include/icp_sal_user.h | 37 + sys/dev/qat/qat_api/include/icp_sal_versions.h | 4 +- .../qat_api/qat_direct/include/icp_accel_devices.h | 3 +- sys/dev/qat/qat_api/qat_kernel/src/qat_transport.c | 15 +- sys/dev/qat/qat_api/qat_utils/include/qat_utils.h | 21 + sys/dev/qat/qat_api/qat_utils/src/QatUtilsCrypto.c | 39 + sys/dev/qat/qat_common/adf_accel_engine.c | 32 +- sys/dev/qat/qat_common/adf_cfg_bundle.c | 49 +- sys/dev/qat/qat_common/adf_cfg_bundle.h | 24 +- sys/dev/qat/qat_common/adf_cfg_device.c | 33 +- sys/dev/qat/qat_common/adf_cfg_section.c | 29 +- sys/dev/qat/qat_common/adf_freebsd_admin.c | 9 +- .../qat/qat_common/adf_freebsd_transport_debug.c | 31 +- sys/dev/qat/qat_common/adf_gen2_hw_data.c | 132 ++ sys/dev/qat/qat_common/adf_gen4_hw_data.c | 176 +++ sys/dev/qat/qat_common/adf_heartbeat.c | 63 +- sys/dev/qat/qat_common/adf_hw_arbiter.c | 44 +- sys/dev/qat/qat_common/adf_init.c | 11 +- sys/dev/qat/qat_common/adf_isr.c | 8 +- sys/dev/qat/qat_common/adf_transport.c | 109 +- sys/dev/qat/qat_common/qat_hal.c | 168 ++- sys/dev/qat/qat_common/qat_uclo.c | 320 ++++- sys/dev/qat/qat_hw/qat_200xx/adf_200xx_hw_data.c | 4 + sys/dev/qat/qat_hw/qat_200xx/adf_drv.c | 1 + sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c | 973 +++++++++++++ sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h | 111 ++ sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c | 267 ++++ sys/dev/qat/qat_hw/qat_c3xxx/adf_c3xxx_hw_data.c | 4 + sys/dev/qat/qat_hw/qat_c3xxx/adf_drv.c | 1 + sys/dev/qat/qat_hw/qat_c4xxx/adf_c4xxx_hw_data.c | 76 +- sys/dev/qat/qat_hw/qat_c4xxx/adf_drv.c | 1 + sys/dev/qat/qat_hw/qat_c62x/adf_c62x_hw_data.c | 4 + sys/dev/qat/qat_hw/qat_c62x/adf_drv.c | 1 + .../qat/qat_hw/qat_dh895xcc/adf_dh895xcc_hw_data.c | 4 + sys/dev/qat/qat_hw/qat_dh895xcc/adf_drv.c | 1 + sys/modules/qat/qat_api/Makefile | 1 + sys/modules/qat/qat_common/Makefile | 2 + sys/modules/qat/qat_hw/Makefile | 1 + sys/modules/qatfw/Makefile | 3 +- sys/modules/qatfw/qat_4xxx/Makefile | 10 + 101 files changed, 8941 insertions(+), 2455 deletions(-) diff --git a/share/man/man4/qat.4 b/share/man/man4/qat.4 index c6082f873a44..e8a46a99e949 100644 --- a/share/man/man4/qat.4 +++ b/share/man/man4/qat.4 @@ -1,7 +1,7 @@ .\" SPDX-License-Identifier: BSD-3-Clause .\" Copyright(c) 2007-2022 Intel Corporation .\" $FreeBSD$ -.Dd June 30, 2022 +.Dd September 1, 2022 .Dt QAT 4 .Os .Sh NAME @@ -30,6 +30,8 @@ qat_c62x_fw_load="YES" .It qat_dh895xcc_fw_load="YES" .It +qat_4xxx_fw_load="YES" +.It qat_load="YES" .El .Sh DESCRIPTION @@ -53,6 +55,8 @@ Intel (R) QuickAssist Adapter 8960/Intel (R) QuickAssist Adapter 8970 Intel (R) Communications Chipset 8925 to 8955 Series .It Intel (R) Atom P5300 processor product family +.It +Intel (R) QAT 4xxx Series .El .Pp The diff --git a/sys/contrib/dev/qat/qat_4xxx.bin b/sys/contrib/dev/qat/qat_4xxx.bin new file mode 100644 index 000000000000..baec3ad9ca32 Binary files /dev/null and b/sys/contrib/dev/qat/qat_4xxx.bin differ diff --git a/sys/contrib/dev/qat/qat_4xxx_mmp.bin b/sys/contrib/dev/qat/qat_4xxx_mmp.bin new file mode 100644 index 000000000000..7b7c560b97d0 Binary files /dev/null and b/sys/contrib/dev/qat/qat_4xxx_mmp.bin differ diff --git a/sys/dev/qat/include/adf_cfg_device.h b/sys/dev/qat/include/adf_cfg_device.h index 40fb91119f03..9def937cc9db 100644 --- a/sys/dev/qat/include/adf_cfg_device.h +++ b/sys/dev/qat/include/adf_cfg_device.h @@ -28,7 +28,7 @@ #define ADF_CFG_STATIC_CONF_NUM_DC_ACCEL_UNITS 2 #define ADF_CFG_STATIC_CONF_NUM_INLINE_ACCEL_UNITS 0 #define ADF_CFG_STATIC_CONF_INST_NUM_DC 2 -#define ADF_CFG_STATIC_CONF_INST_NUM_CY_POLL 2 +#define ADF_CFG_STATIC_CONF_INST_NUM_CY_POLL 6 #define ADF_CFG_STATIC_CONF_INST_NUM_CY_IRQ 2 #define ADF_CFG_FW_STRING_TO_ID(str, acc, id) \ diff --git a/sys/dev/qat/include/common/adf_accel_devices.h b/sys/dev/qat/include/common/adf_accel_devices.h index ad0e74335259..9503069ac2a2 100644 --- a/sys/dev/qat/include/common/adf_accel_devices.h +++ b/sys/dev/qat/include/common/adf_accel_devices.h @@ -19,6 +19,7 @@ #define ADF_200XXVF_DEVICE_NAME "200xxvf" #define ADF_C4XXX_DEVICE_NAME "c4xxx" #define ADF_C4XXXVF_DEVICE_NAME "c4xxxvf" +#define ADF_4XXX_DEVICE_NAME "4xxx" #define ADF_DH895XCC_PCI_DEVICE_ID 0x435 #define ADF_DH895XCCIOV_PCI_DEVICE_ID 0x443 #define ADF_C62X_PCI_DEVICE_ID 0x37c8 @@ -31,8 +32,17 @@ #define ADF_D15XXIOV_PCI_DEVICE_ID 0x6f55 #define ADF_C4XXX_PCI_DEVICE_ID 0x18a0 #define ADF_C4XXXIOV_PCI_DEVICE_ID 0x18a1 +#define ADF_4XXX_PCI_DEVICE_ID 0x4940 +#define ADF_401XX_PCI_DEVICE_ID 0x4942 #define IS_QAT_GEN3(ID) ({ (ID == ADF_C4XXX_PCI_DEVICE_ID); }) +static inline bool +IS_QAT_GEN4(const unsigned int id) +{ + return (id == ADF_4XXX_PCI_DEVICE_ID || id == ADF_401XX_PCI_DEVICE_ID); +} + +#define IS_QAT_GEN3_OR_GEN4(ID) (IS_QAT_GEN3(ID) || IS_QAT_GEN4(ID)) #define ADF_VF2PF_SET_SIZE 32 #define ADF_MAX_VF2PF_SET 4 #define ADF_VF2PF_SET_OFFSET(set_nr) ((set_nr)*ADF_VF2PF_SET_SIZE) @@ -50,7 +60,7 @@ #define ADF_PCI_MAX_BARS 3 #define ADF_DEVICE_NAME_LENGTH 32 #define ADF_ETR_MAX_RINGS_PER_BANK 16 -#define ADF_MAX_MSIX_VECTOR_NAME 16 +#define ADF_MAX_MSIX_VECTOR_NAME 32 #define ADF_DEVICE_NAME_PREFIX "qat_" #define ADF_STOP_RETRY 50 #define ADF_NUM_THREADS_PER_AE (8) @@ -58,7 +68,6 @@ #define ADF_NUM_PKE_STRAND (2) #define ADF_AE_STRAND0_THREAD (8) #define ADF_AE_STRAND1_THREAD (9) -#define ADF_NUM_HB_CNT_PER_AE (ADF_NUM_THREADS_PER_AE + ADF_NUM_PKE_STRAND) #define ADF_CFG_NUM_SERVICES 4 #define ADF_SRV_TYPE_BIT_LEN 3 #define ADF_SRV_TYPE_MASK 0x7 @@ -75,6 +84,8 @@ #define GET_SRV_TYPE(ena_srv_mask, srv) \ (((ena_srv_mask) >> (ADF_SRV_TYPE_BIT_LEN * (srv))) & ADF_SRV_TYPE_MASK) +#define GET_CSR_OPS(accel_dev) (&(accel_dev)->hw_device->csr_info.csr_ops) + #define ADF_DEFAULT_RING_TO_SRV_MAP \ (CRYPTO | CRYPTO << ADF_CFG_SERV_RING_PAIR_1_SHIFT | \ NA << ADF_CFG_SERV_RING_PAIR_2_SHIFT | \ @@ -156,7 +167,9 @@ enum adf_accel_unit_services { ADF_ACCEL_SERVICE_NULL = 0, ADF_ACCEL_INLINE_CRYPTO = 1, ADF_ACCEL_CRYPTO = 2, - ADF_ACCEL_COMPRESSION = 4 + ADF_ACCEL_COMPRESSION = 4, + ADF_ACCEL_ASYM = 8, + ADF_ACCEL_ADMIN = 16 }; struct adf_ae_info { @@ -182,6 +195,7 @@ struct adf_accel_unit_info { u32 dc_ae_msk; u8 num_cy_au; u8 num_dc_au; + u8 num_asym_au; u8 num_inline_au; struct adf_accel_unit *au; const struct adf_ae_info *ae_info; @@ -231,6 +245,60 @@ struct admin_info { u32 mailbox_offset; } __packed; +struct adf_hw_csr_ops { + u64 (*build_csr_ring_base_addr)(bus_addr_t addr, u32 size); + u32 (*read_csr_ring_head)(struct resource *csr_base_addr, + u32 bank, + u32 ring); + void (*write_csr_ring_head)(struct resource *csr_base_addr, + u32 bank, + u32 ring, + u32 value); + u32 (*read_csr_ring_tail)(struct resource *csr_base_addr, + u32 bank, + u32 ring); + void (*write_csr_ring_tail)(struct resource *csr_base_addr, + u32 bank, + u32 ring, + u32 value); + u32 (*read_csr_e_stat)(struct resource *csr_base_addr, u32 bank); + void (*write_csr_ring_config)(struct resource *csr_base_addr, + u32 bank, + u32 ring, + u32 value); + void (*write_csr_ring_base)(struct resource *csr_base_addr, + u32 bank, + u32 ring, + bus_addr_t addr); + void (*write_csr_int_flag)(struct resource *csr_base_addr, + u32 bank, + u32 value); + void (*write_csr_int_srcsel)(struct resource *csr_base_addr, u32 bank); + void (*write_csr_int_col_en)(struct resource *csr_base_addr, + u32 bank, + u32 value); + void (*write_csr_int_col_ctl)(struct resource *csr_base_addr, + u32 bank, + u32 value); + void (*write_csr_int_flag_and_col)(struct resource *csr_base_addr, + u32 bank, + u32 value); + u32 (*read_csr_ring_srv_arb_en)(struct resource *csr_base_addr, + u32 bank); + void (*write_csr_ring_srv_arb_en)(struct resource *csr_base_addr, + u32 bank, + u32 value); +}; + +struct adf_hw_csr_info { + struct adf_hw_csr_ops csr_ops; + u32 csr_addr_offset; + u32 ring_bundle_size; + u32 bank_int_flag_clear_mask; + u32 num_rings_per_int_srcsel; + u32 arb_enable_mask; +}; + struct adf_cfg_device_data; struct adf_accel_dev; struct adf_etr_data; @@ -282,8 +350,10 @@ struct adf_hw_device_data { void (*exit_arb)(struct adf_accel_dev *accel_dev); void (*get_arb_mapping)(struct adf_accel_dev *accel_dev, const uint32_t **cfg); + int (*init_device)(struct adf_accel_dev *accel_dev); int (*get_heartbeat_status)(struct adf_accel_dev *accel_dev); uint32_t (*get_ae_clock)(struct adf_hw_device_data *self); + uint32_t (*get_hb_clock)(struct adf_hw_device_data *self); void (*disable_iov)(struct adf_accel_dev *accel_dev); void (*configure_iov_threads)(struct adf_accel_dev *accel_dev, bool enable); @@ -298,6 +368,8 @@ struct adf_hw_device_data { void (*restore_device)(struct adf_accel_dev *accel_dev); uint32_t (*get_obj_cfg_ae_mask)(struct adf_accel_dev *accel_dev, enum adf_accel_unit_services services); + enum adf_accel_unit_services ( + *get_service_type)(struct adf_accel_dev *accel_dev, s32 obj_num); int (*add_pke_stats)(struct adf_accel_dev *accel_dev); void (*remove_pke_stats)(struct adf_accel_dev *accel_dev); int (*add_misc_error)(struct adf_accel_dev *accel_dev); @@ -311,6 +383,14 @@ struct adf_hw_device_data { enum adf_accel_unit_services services); void (*pre_reset)(struct adf_accel_dev *accel_dev); void (*post_reset)(struct adf_accel_dev *accel_dev); + void (*set_msix_rttable)(struct adf_accel_dev *accel_dev); + void (*get_ring_svc_map_data)(int ring_pair_index, + u16 ring_to_svc_map, + u8 *serv_type, + int *ring_index, + int *num_rings_per_srv, + int bundle_num); + struct adf_hw_csr_info csr_info; const char *fw_name; const char *fw_mmp_name; bool reset_ack; @@ -320,7 +400,10 @@ struct adf_hw_device_data { uint16_t accel_mask; u32 aerucm_mask; u32 ae_mask; + u32 admin_ae_mask; u32 service_mask; + u32 service_to_load_mask; + u32 heartbeat_ctr_num; uint16_t tx_rings_mask; uint8_t tx_rx_gap; uint8_t num_banks; diff --git a/sys/dev/qat/include/common/adf_cfg.h b/sys/dev/qat/include/common/adf_cfg.h index edc4813cb69e..58502c8605b8 100644 --- a/sys/dev/qat/include/common/adf_cfg.h +++ b/sys/dev/qat/include/common/adf_cfg.h @@ -76,4 +76,14 @@ int adf_cfg_get_services_enabled(struct adf_accel_dev *accel_dev, int adf_cfg_restore_section(struct adf_accel_dev *accel_dev, struct adf_cfg_section *section); void adf_cfg_keyval_del_all(struct list_head *head); + +static inline int +adf_cy_inst_cross_banks(struct adf_accel_dev *accel_dev) +{ + if (accel_dev->hw_device->num_rings_per_bank == 2) + return 1; + else + return 0; +} + #endif diff --git a/sys/dev/qat/include/common/adf_cfg_common.h b/sys/dev/qat/include/common/adf_cfg_common.h index 68fb5e8a98b3..65fc60fc8c3d 100644 --- a/sys/dev/qat/include/common/adf_cfg_common.h +++ b/sys/dev/qat/include/common/adf_cfg_common.h @@ -27,7 +27,7 @@ #define ADF_MAX_ACCELENGINES 12 #define ADF_CFG_STORAGE_ENABLED 1 #define ADF_DEVS_ARRAY_SIZE BITS_TO_LONGS(ADF_MAX_DEVICES) -#define ADF_SSM_WDT_PKE_DEFAULT_VALUE 0x3000000 +#define ADF_GEN2_SSM_WDT_PKE_DEFAULT_VALUE 0x3000000 #define ADF_WDT_TIMER_SYM_COMP_MS 3 #define ADF_MIN_HB_TIMER_MS 100 #define ADF_CFG_MAX_NUM_OF_SECTIONS 16 @@ -87,7 +87,8 @@ enum adf_device_type { DEV_200XX, DEV_200XXVF, DEV_C4XXX, - DEV_C4XXXVF + DEV_C4XXXVF, + DEV_4XXX }; enum adf_cfg_fw_image_type { @@ -158,6 +159,7 @@ struct adf_cfg_bundle { /* contains all the info about rings */ struct adf_cfg_ring **rings; u16 in_use; + u16 max_cfg_svc_num; }; struct adf_cfg_instance { diff --git a/sys/dev/qat/include/common/adf_cfg_strings.h b/sys/dev/qat/include/common/adf_cfg_strings.h index 2f05dadadc45..933ffe0ba6ad 100644 --- a/sys/dev/qat/include/common/adf_cfg_strings.h +++ b/sys/dev/qat/include/common/adf_cfg_strings.h @@ -22,6 +22,8 @@ #define ADF_RING_DC_RX "RingRx" #define ADF_ETRMGR_BANK "Bank" #define ADF_RING_BANK_NUM "BankNumber" +#define ADF_RING_BANK_NUM_ASYM "BankNumberAsym" +#define ADF_RING_BANK_NUM_SYM "BankNumberSym" #define ADF_CY "Cy" #define ADF_DC "Dc" #define ADF_DC_EXTENDED_FEATURES "Device_DcExtendedFeatures" @@ -112,6 +114,8 @@ #define ADF_CY_CORE_AFFINITY_FORMAT ADF_CY "%d" ADF_ETRMGR_CORE_AFFINITY #define ADF_DC_CORE_AFFINITY_FORMAT ADF_DC "%d" ADF_ETRMGR_CORE_AFFINITY #define ADF_CY_BANK_NUM_FORMAT ADF_CY "%d" ADF_RING_BANK_NUM +#define ADF_CY_ASYM_BANK_NUM_FORMAT ADF_CY "%d" ADF_RING_BANK_NUM_ASYM +#define ADF_CY_SYM_BANK_NUM_FORMAT ADF_CY "%d" ADF_RING_BANK_NUM_SYM #define ADF_DC_BANK_NUM_FORMAT ADF_DC "%d" ADF_RING_BANK_NUM #define ADF_CY_ASYM_TX_FORMAT ADF_CY "%d" ADF_RING_ASYM_TX #define ADF_CY_SYM_TX_FORMAT ADF_CY "%d" ADF_RING_SYM_TX diff --git a/sys/dev/qat/include/common/adf_common_drv.h b/sys/dev/qat/include/common/adf_common_drv.h index 3bb35ed55da3..7ec380540336 100644 --- a/sys/dev/qat/include/common/adf_common_drv.h +++ b/sys/dev/qat/include/common/adf_common_drv.h @@ -203,10 +203,14 @@ int adf_init_gen2_arb(struct adf_accel_dev *accel_dev); void adf_exit_arb(struct adf_accel_dev *accel_dev); void adf_disable_arb(struct adf_accel_dev *accel_dev); void adf_update_ring_arb(struct adf_etr_ring_data *ring); -void -adf_enable_ring_arb(void *csr_addr, unsigned int bank_nr, unsigned int mask); -void -adf_disable_ring_arb(void *csr_addr, unsigned int bank_nr, unsigned int mask); +void adf_enable_ring_arb(struct adf_accel_dev *accel_dev, + void *csr_addr, + unsigned int bank_nr, + unsigned int mask); +void adf_disable_ring_arb(struct adf_accel_dev *accel_dev, + void *csr_addr, + unsigned int bank_nr, + unsigned int mask); int adf_set_ssm_wdtimer(struct adf_accel_dev *accel_dev); struct adf_accel_dev *adf_devmgr_get_dev_by_bdf(struct adf_pci_address *addr); struct adf_accel_dev *adf_devmgr_get_dev_by_pci_bus(u8 bus); @@ -238,9 +242,7 @@ void adf_vf_isr_resource_free(struct adf_accel_dev *accel_dev); int qat_hal_init(struct adf_accel_dev *accel_dev); void qat_hal_deinit(struct icp_qat_fw_loader_handle *handle); -void qat_hal_start(struct icp_qat_fw_loader_handle *handle, - unsigned char ae, - unsigned int ctx_mask); +int qat_hal_start(struct icp_qat_fw_loader_handle *handle); void qat_hal_stop(struct icp_qat_fw_loader_handle *handle, unsigned char ae, unsigned int ctx_mask); diff --git a/sys/dev/qat/include/common/adf_gen2_hw_data.h b/sys/dev/qat/include/common/adf_gen2_hw_data.h new file mode 100644 index 000000000000..395abec81b9f --- /dev/null +++ b/sys/dev/qat/include/common/adf_gen2_hw_data.h @@ -0,0 +1,172 @@ +/* SPDX-License-Identifier: BSD-3-Clause */ +/* Copyright(c) 2021 Intel Corporation */ +/* $FreeBSD$ */ +#ifndef ADF_GEN2_HW_DATA_H_ +#define ADF_GEN2_HW_DATA_H_ + +#include "adf_accel_devices.h" +#include "adf_cfg_common.h" + +/* Transport access */ +#define ADF_BANK_INT_SRC_SEL_MASK_0 0x4444444CUL +#define ADF_BANK_INT_SRC_SEL_MASK_X 0x44444444UL +#define ADF_RING_CSR_RING_CONFIG 0x000 +#define ADF_RING_CSR_RING_LBASE 0x040 +#define ADF_RING_CSR_RING_UBASE 0x080 +#define ADF_RING_CSR_RING_HEAD 0x0C0 +#define ADF_RING_CSR_RING_TAIL 0x100 +#define ADF_RING_CSR_E_STAT 0x14C +#define ADF_RING_CSR_INT_FLAG 0x170 +#define ADF_RING_CSR_INT_SRCSEL 0x174 +#define ADF_RING_CSR_INT_SRCSEL_2 0x178 +#define ADF_RING_CSR_INT_COL_EN 0x17C +#define ADF_RING_CSR_INT_COL_CTL 0x180 +#define ADF_RING_CSR_INT_FLAG_AND_COL 0x184 +#define ADF_RING_CSR_INT_COL_CTL_ENABLE 0x80000000 +#define ADF_RING_BUNDLE_SIZE 0x1000 +#define ADF_GEN2_RX_RINGS_OFFSET 8 +#define ADF_GEN2_TX_RINGS_MASK 0xFF + +#define BUILD_RING_BASE_ADDR(addr, size) \ + (((addr) >> 6) & (GENMASK_ULL(63, 0) << (size))) +#define READ_CSR_RING_HEAD(csr_base_addr, bank, ring) \ + ADF_CSR_RD(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_RING_HEAD + \ + ((ring) << 2)) +#define READ_CSR_RING_TAIL(csr_base_addr, bank, ring) \ + ADF_CSR_RD(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_RING_TAIL + \ + ((ring) << 2)) +#define READ_CSR_E_STAT(csr_base_addr, bank) \ + ADF_CSR_RD(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_E_STAT) +#define WRITE_CSR_RING_CONFIG(csr_base_addr, bank, ring, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + \ + ADF_RING_CSR_RING_CONFIG + ((ring) << 2), \ + value) +#define WRITE_CSR_RING_BASE(csr_base_addr, bank, ring, value) \ + do { \ + u32 l_base = 0, u_base = 0; \ + l_base = (u32)((value)&0xFFFFFFFF); \ + u_base = (u32)(((value)&0xFFFFFFFF00000000ULL) >> 32); \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + \ + ADF_RING_CSR_RING_LBASE + ((ring) << 2), \ + l_base); \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + \ + ADF_RING_CSR_RING_UBASE + ((ring) << 2), \ + u_base); \ + } while (0) + +#define WRITE_CSR_RING_HEAD(csr_base_addr, bank, ring, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_RING_HEAD + \ + ((ring) << 2), \ + value) +#define WRITE_CSR_RING_TAIL(csr_base_addr, bank, ring, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_RING_TAIL + \ + ((ring) << 2), \ + value) +#define WRITE_CSR_INT_FLAG(csr_base_addr, bank, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_INT_FLAG, \ + value) +#define WRITE_CSR_INT_SRCSEL(csr_base_addr, bank) \ + do { \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + \ + ADF_RING_CSR_INT_SRCSEL, \ + ADF_BANK_INT_SRC_SEL_MASK_0); \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + \ + ADF_RING_CSR_INT_SRCSEL_2, \ + ADF_BANK_INT_SRC_SEL_MASK_X); \ + } while (0) +#define WRITE_CSR_INT_COL_EN(csr_base_addr, bank, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_INT_COL_EN, \ + value) +#define WRITE_CSR_INT_COL_CTL(csr_base_addr, bank, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + ADF_RING_CSR_INT_COL_CTL, \ + ADF_RING_CSR_INT_COL_CTL_ENABLE | (value)) +#define WRITE_CSR_INT_FLAG_AND_COL(csr_base_addr, bank, value) \ + ADF_CSR_WR(csr_base_addr, \ + (ADF_RING_BUNDLE_SIZE * (bank)) + \ + ADF_RING_CSR_INT_FLAG_AND_COL, \ + value) + +/* AE to function map */ +#define AE2FUNCTION_MAP_A_OFFSET (0x3A400 + 0x190) +#define AE2FUNCTION_MAP_B_OFFSET (0x3A400 + 0x310) +#define AE2FUNCTION_MAP_REG_SIZE 4 +#define AE2FUNCTION_MAP_VALID BIT(7) + +#define READ_CSR_AE2FUNCTION_MAP_A(pmisc_bar_addr, index) \ + ADF_CSR_RD(pmisc_bar_addr, \ + AE2FUNCTION_MAP_A_OFFSET + \ + AE2FUNCTION_MAP_REG_SIZE * (index)) +#define WRITE_CSR_AE2FUNCTION_MAP_A(pmisc_bar_addr, index, value) \ + ADF_CSR_WR(pmisc_bar_addr, \ + AE2FUNCTION_MAP_A_OFFSET + \ + AE2FUNCTION_MAP_REG_SIZE * (index), \ + value) +#define READ_CSR_AE2FUNCTION_MAP_B(pmisc_bar_addr, index) \ + ADF_CSR_RD(pmisc_bar_addr, \ + AE2FUNCTION_MAP_B_OFFSET + \ + AE2FUNCTION_MAP_REG_SIZE * (index)) +#define WRITE_CSR_AE2FUNCTION_MAP_B(pmisc_bar_addr, index, value) \ + ADF_CSR_WR(pmisc_bar_addr, \ + AE2FUNCTION_MAP_B_OFFSET + \ + AE2FUNCTION_MAP_REG_SIZE * (index), \ + value) + +/* Admin Interface Offsets */ +#define ADF_ADMINMSGUR_OFFSET (0x3A000 + 0x574) +#define ADF_ADMINMSGLR_OFFSET (0x3A000 + 0x578) +#define ADF_MAILBOX_BASE_OFFSET 0x20970 + +/* Arbiter configuration */ +#define ADF_ARB_OFFSET 0x30000 +#define ADF_ARB_WRK_2_SER_MAP_OFFSET 0x180 +#define ADF_ARB_CONFIG (BIT(31) | BIT(6) | BIT(0)) +#define ADF_ARB_REG_SLOT 0x1000 +#define ADF_ARB_RINGSRVARBEN_OFFSET 0x19C + +#define READ_CSR_RING_SRV_ARB_EN(csr_addr, index) \ + ADF_CSR_RD(csr_addr, \ + ADF_ARB_RINGSRVARBEN_OFFSET + (ADF_ARB_REG_SLOT * (index))) + +#define WRITE_CSR_RING_SRV_ARB_EN(csr_addr, index, value) \ + ADF_CSR_WR(csr_addr, \ + ADF_ARB_RINGSRVARBEN_OFFSET + (ADF_ARB_REG_SLOT * (index)), \ + value) + +/* Power gating */ +#define ADF_POWERGATE_DC BIT(23) +#define ADF_POWERGATE_PKE BIT(24) + +/* Default ring mapping */ +#define ADF_GEN2_DEFAULT_RING_TO_SRV_MAP \ + (CRYPTO << ADF_CFG_SERV_RING_PAIR_0_SHIFT | \ + CRYPTO << ADF_CFG_SERV_RING_PAIR_1_SHIFT | \ + UNUSED << ADF_CFG_SERV_RING_PAIR_2_SHIFT | \ + COMP << ADF_CFG_SERV_RING_PAIR_3_SHIFT) + +/* Error detection and correction */ +#define ADF_GEN2_AE_CTX_ENABLES(i) ((i)*0x1000 + 0x20818) +#define ADF_GEN2_AE_MISC_CONTROL(i) ((i)*0x1000 + 0x20960) +#define ADF_GEN2_ENABLE_AE_ECC_ERR BIT(28) +#define ADF_GEN2_ENABLE_AE_ECC_PARITY_CORR (BIT(24) | BIT(12)) +#define ADF_GEN2_UERRSSMSH(i) ((i)*0x4000 + 0x18) +#define ADF_GEN2_CERRSSMSH(i) ((i)*0x4000 + 0x10) +#define ADF_GEN2_ERRSSMSH_EN BIT(3) + +#define ADF_NUM_HB_CNT_PER_AE (ADF_NUM_THREADS_PER_AE + ADF_NUM_PKE_STRAND) + +void adf_gen2_init_hw_csr_info(struct adf_hw_csr_info *csr_info); + +#endif diff --git a/sys/dev/qat/include/common/adf_gen4_hw_data.h b/sys/dev/qat/include/common/adf_gen4_hw_data.h new file mode 100644 index 000000000000..c0ef0c92772e --- /dev/null +++ b/sys/dev/qat/include/common/adf_gen4_hw_data.h @@ -0,0 +1,132 @@ +/* SPDX-License-Identifier: BSD-3-Clause */ +/* Copyright(c) 2021 Intel Corporation */ +/* $FreeBSD$ */ +#ifndef ADF_GEN4_HW_CSR_DATA_H_ +#define ADF_GEN4_HW_CSR_DATA_H_ + +#include "adf_accel_devices.h" + +/* Transport access */ +#define ADF_BANK_INT_SRC_SEL_MASK 0x44UL +#define ADF_RING_CSR_RING_CONFIG 0x1000 +#define ADF_RING_CSR_RING_LBASE 0x1040 +#define ADF_RING_CSR_RING_UBASE 0x1080 +#define ADF_RING_CSR_RING_HEAD 0x0C0 +#define ADF_RING_CSR_RING_TAIL 0x100 +#define ADF_RING_CSR_E_STAT 0x14C +#define ADF_RING_CSR_INT_FLAG 0x170 +#define ADF_RING_CSR_INT_SRCSEL 0x174 +#define ADF_RING_CSR_INT_COL_CTL 0x180 +#define ADF_RING_CSR_INT_FLAG_AND_COL 0x184 +#define ADF_RING_CSR_INT_COL_CTL_ENABLE 0x80000000 +#define ADF_RING_CSR_INT_COL_EN 0x17C +#define ADF_RING_CSR_ADDR_OFFSET 0x100000 +#define ADF_RING_BUNDLE_SIZE 0x2000 + +#define BUILD_RING_BASE_ADDR(addr, size) \ + ((((addr) >> 6) & (GENMASK_ULL(63, 0) << (size))) << 6) +#define READ_CSR_RING_HEAD(csr_base_addr, bank, ring) \ + ADF_CSR_RD((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_HEAD + ((ring) << 2)) +#define READ_CSR_RING_TAIL(csr_base_addr, bank, ring) \ + ADF_CSR_RD((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_TAIL + ((ring) << 2)) +#define READ_CSR_E_STAT(csr_base_addr, bank) \ + ADF_CSR_RD((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_E_STAT) +#define WRITE_CSR_RING_CONFIG(csr_base_addr, bank, ring, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_CONFIG + ((ring) << 2), \ + value) +#define WRITE_CSR_RING_BASE(csr_base_addr, bank, ring, value) \ + do { \ + struct resource *_csr_base_addr = csr_base_addr; \ + u32 _bank = bank; \ + u32 _ring = ring; \ + dma_addr_t _value = value; \ + u32 l_base = 0, u_base = 0; \ + l_base = lower_32_bits(_value); \ + u_base = upper_32_bits(_value); \ + ADF_CSR_WR((_csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + \ + ADF_RING_BUNDLE_SIZE * (_bank) + \ + ADF_RING_CSR_RING_LBASE + ((_ring) << 2), \ + l_base); \ + ADF_CSR_WR((_csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + \ + ADF_RING_BUNDLE_SIZE * (_bank) + \ + ADF_RING_CSR_RING_UBASE + ((_ring) << 2), \ + u_base); \ + } while (0) + +#define WRITE_CSR_RING_HEAD(csr_base_addr, bank, ring, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_HEAD + ((ring) << 2), \ + value) +#define WRITE_CSR_RING_TAIL(csr_base_addr, bank, ring, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_TAIL + ((ring) << 2), \ + value) +#define WRITE_CSR_INT_FLAG(csr_base_addr, bank, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_INT_FLAG, \ + (value)) +#define WRITE_CSR_INT_SRCSEL(csr_base_addr, bank) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_INT_SRCSEL, \ + ADF_BANK_INT_SRC_SEL_MASK) +#define WRITE_CSR_INT_COL_EN(csr_base_addr, bank, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_INT_COL_EN, \ + (value)) +#define WRITE_CSR_INT_COL_CTL(csr_base_addr, bank, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_INT_COL_CTL, \ + ADF_RING_CSR_INT_COL_CTL_ENABLE | (value)) +#define WRITE_CSR_INT_FLAG_AND_COL(csr_base_addr, bank, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_INT_FLAG_AND_COL, \ + (value)) + +/* Arbiter configuration */ +#define ADF_RING_CSR_RING_SRV_ARB_EN 0x19C + +#define READ_CSR_RING_SRV_ARB_EN(csr_base_addr, bank) \ + ADF_CSR_RD((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_SRV_ARB_EN) + +#define WRITE_CSR_RING_SRV_ARB_EN(csr_base_addr, bank, value) \ + ADF_CSR_WR((csr_base_addr), \ + ADF_RING_CSR_ADDR_OFFSET + ADF_RING_BUNDLE_SIZE * (bank) + \ + ADF_RING_CSR_RING_SRV_ARB_EN, \ + (value)) + +/* WDT timers + * + * Timeout is in cycles. Clock speed may vary across products but this + * value should be a few milli-seconds. + */ +#define ADF_SSM_WDT_DEFAULT_VALUE 0x7000000ULL +#define ADF_SSM_WDT_PKE_DEFAULT_VALUE 0x8000000 +#define ADF_SSMWDTL_OFFSET 0x54 +#define ADF_SSMWDTH_OFFSET 0x5C +#define ADF_SSMWDTPKEL_OFFSET 0x58 +#define ADF_SSMWDTPKEH_OFFSET 0x60 + +#define ADF_NUM_HB_CNT_PER_AE (ADF_NUM_THREADS_PER_AE) + +int adf_gen4_set_ssm_wdtimer(struct adf_accel_dev *accel_dev); +void adf_gen4_init_hw_csr_info(struct adf_hw_csr_info *csr_info); +#endif diff --git a/sys/dev/qat/include/common/icp_qat_fw_loader_handle.h b/sys/dev/qat/include/common/icp_qat_fw_loader_handle.h index a8afb5a4b377..7f6e80eeb431 100644 --- a/sys/dev/qat/include/common/icp_qat_fw_loader_handle.h +++ b/sys/dev/qat/include/common/icp_qat_fw_loader_handle.h @@ -16,6 +16,7 @@ struct icp_qat_fw_loader_ae_data { struct icp_qat_fw_loader_hal_handle { struct icp_qat_fw_loader_ae_data aes[ICP_QAT_UCLO_MAX_AE]; unsigned int ae_mask; + unsigned int admin_ae_mask; unsigned int slice_mask; unsigned int revision_id; unsigned int ae_max_num; diff --git a/sys/dev/qat/include/common/icp_qat_hal.h b/sys/dev/qat/include/common/icp_qat_hal.h index 3a7475f25333..68e12826a7e8 100644 --- a/sys/dev/qat/include/common/icp_qat_hal.h +++ b/sys/dev/qat/include/common/icp_qat_hal.h @@ -52,23 +52,32 @@ enum hal_ae_csr { }; enum fcu_csr { - FCU_CONTROL = 0x0, - FCU_STATUS = 0x4, - FCU_DRAM_ADDR_LO = 0xc, + FCU_CONTROL = 0x00, + FCU_STATUS = 0x04, + FCU_DRAM_ADDR_LO = 0x0c, FCU_DRAM_ADDR_HI = 0x10, FCU_RAMBASE_ADDR_HI = 0x14, FCU_RAMBASE_ADDR_LO = 0x18 }; enum fcu_csr_c4xxx { - FCU_CONTROL_C4XXX = 0x0, - FCU_STATUS_C4XXX = 0x4, - FCU_STATUS1_C4XXX = 0xc, + FCU_CONTROL_C4XXX = 0x00, + FCU_STATUS_C4XXX = 0x04, + FCU_STATUS1_C4XXX = 0x0c, FCU_AE_LOADED_C4XXX = 0x10, FCU_DRAM_ADDR_LO_C4XXX = 0x14, FCU_DRAM_ADDR_HI_C4XXX = 0x18, }; +enum fcu_csr_4xxx { + FCU_CONTROL_4XXX = 0x00, + FCU_STATUS_4XXX = 0x04, + FCU_ME_BROADCAST_MASK_TYPE = 0x08, + FCU_AE_LOADED_4XXX = 0x10, + FCU_DRAM_ADDR_LO_4XXX = 0x14, + FCU_DRAM_ADDR_HI_4XXX = 0x18, +}; + enum fcu_cmd { FCU_CTRL_CMD_NOOP = 0, FCU_CTRL_CMD_AUTH = 1, @@ -104,6 +113,7 @@ enum fcu_sts { #define LCS_STATUS (0x1) #define MMC_SHARE_CS_BITPOS 2 #define GLOBAL_CSR 0xA00 +#define FCU_CTRL_BROADCAST_POS 0x4 #define FCU_CTRL_AE_POS 0x8 #define FCU_AUTH_STS_MASK 0x7 #define FCU_STS_DONE_POS 0x9 @@ -111,20 +121,26 @@ enum fcu_sts { #define FCU_LOADED_AE_POS 0x16 #define FW_AUTH_WAIT_PERIOD 10 #define FW_AUTH_MAX_RETRY 300 +#define FW_BROADCAST_MAX_RETRY 300 #define FCU_OFFSET 0x8c0 #define FCU_OFFSET_C4XXX 0x1000 +#define FCU_OFFSET_4XXX 0x1000 #define MAX_CPP_NUM 2 #define AE_CPP_NUM 2 #define AES_PER_CPP 16 #define SLICES_PER_CPP 6 #define ICP_QAT_AE_OFFSET 0x20000 #define ICP_QAT_AE_OFFSET_C4XXX 0x40000 +#define ICP_QAT_AE_OFFSET_4XXX 0x600000 #define ICP_QAT_CAP_OFFSET (ICP_QAT_AE_OFFSET + 0x10000) #define ICP_QAT_CAP_OFFSET_C4XXX 0x70000 +#define ICP_QAT_CAP_OFFSET_4XXX 0x640000 #define LOCAL_TO_XFER_REG_OFFSET 0x800 #define ICP_QAT_EP_OFFSET 0x3a000 #define ICP_QAT_EP_OFFSET_C4XXX 0x60000 +#define ICP_QAT_EP_OFFSET_4XXX 0x200000 /* HI MMIO CSRs */ #define MEM_CFG_ERR_BIT 0x20 +#define AE_TG_NUM_CPM2X 4 #define CAP_CSR_ADDR(csr) (csr + handle->hal_cap_g_ctl_csr_addr_v) #define SET_CAP_CSR(handle, csr, val) \ @@ -133,20 +149,17 @@ enum fcu_sts { ADF_CSR_RD(handle->hal_misc_addr_v, CAP_CSR_ADDR(csr)) #define SET_GLB_CSR(handle, csr, val) \ ({ \ - typeof(handle) handle_ = (handle); \ - typeof(csr) csr_ = (csr); \ - typeof(val) val_ = (val); \ - (IS_QAT_GEN3(pci_get_device(GET_DEV(handle_->accel_dev)))) ? \ - SET_CAP_CSR(handle_, (csr_), (val_)) : \ - SET_CAP_CSR(handle_, csr_ + GLOBAL_CSR, val_); \ + u32 dev_id = pci_get_device(GET_DEV((handle)->accel_dev)); \ + (IS_QAT_GEN3_OR_GEN4(dev_id)) ? \ + SET_CAP_CSR((handle), (csr), (val)) : \ + SET_CAP_CSR((handle), (csr) + GLOBAL_CSR, val); \ }) #define GET_GLB_CSR(handle, csr) \ ({ \ - typeof(handle) handle_ = (handle); \ - typeof(csr) csr_ = (csr); \ - (IS_QAT_GEN3(pci_get_device(GET_DEV(handle_->accel_dev)))) ? \ - (GET_CAP_CSR(handle_, (csr_))) : \ - (GET_CAP_CSR(handle_, (GLOBAL_CSR + (csr_)))); \ + u32 dev_id = pci_get_device(GET_DEV((handle)->accel_dev)); \ + (IS_QAT_GEN3_OR_GEN4(dev_id)) ? \ + GET_CAP_CSR((handle), (csr)) : \ + GET_CAP_CSR((handle), (csr) + GLOBAL_CSR); \ }) #define SET_FCU_CSR(handle, csr, val) \ ({ \ @@ -157,7 +170,12 @@ enum fcu_sts { SET_CAP_CSR(handle_, \ ((csr_) + FCU_OFFSET_C4XXX), \ (val_)) : \ - SET_CAP_CSR(handle_, ((csr_) + FCU_OFFSET), (val_)); \ + ((IS_QAT_GEN4( \ + pci_get_device(GET_DEV(handle_->accel_dev)))) ? \ + SET_CAP_CSR(handle_, \ + ((csr_) + FCU_OFFSET_4XXX), \ + (val_)) : \ + SET_CAP_CSR(handle_, ((csr_) + FCU_OFFSET), (val_))); \ }) #define GET_FCU_CSR(handle, csr) \ ({ \ @@ -165,7 +183,10 @@ enum fcu_sts { typeof(csr) csr_ = (csr); \ (IS_QAT_GEN3(pci_get_device(GET_DEV(handle_->accel_dev)))) ? \ GET_CAP_CSR(handle_, (FCU_OFFSET_C4XXX + (csr_))) : \ - GET_CAP_CSR(handle_, (FCU_OFFSET + (csr_))); \ + ((IS_QAT_GEN4( \ + pci_get_device(GET_DEV(handle_->accel_dev)))) ? \ + GET_CAP_CSR(handle_, (FCU_OFFSET_4XXX + (csr_))) : \ + GET_CAP_CSR(handle_, (FCU_OFFSET + (csr_)))); \ }) #define AE_CSR(handle, ae) \ ((handle)->hal_cap_ae_local_csr_addr_v + ((ae) << 12)) @@ -184,13 +205,19 @@ enum fcu_sts { ADF_CSR_WR((handle)->hal_sram_addr_v, addr, val) #define GET_CSR_OFFSET(device_id, cap_offset_, ae_offset_, ep_offset_) \ ({ \ - int gen3 = IS_QAT_GEN3(device_id); \ - cap_offset_ = \ - (gen3 ? ICP_QAT_CAP_OFFSET_C4XXX : ICP_QAT_CAP_OFFSET); \ - ae_offset_ = \ - (gen3 ? ICP_QAT_AE_OFFSET_C4XXX : ICP_QAT_AE_OFFSET); \ - ep_offset_ = \ - (gen3 ? ICP_QAT_EP_OFFSET_C4XXX : ICP_QAT_EP_OFFSET); \ + if (IS_QAT_GEN3(device_id)) { \ + cap_offset_ = ICP_QAT_CAP_OFFSET_C4XXX; \ + ae_offset_ = ICP_QAT_AE_OFFSET_C4XXX; \ + ep_offset_ = ICP_QAT_EP_OFFSET_C4XXX; \ + } else if (IS_QAT_GEN4(device_id)) { \ + cap_offset_ = ICP_QAT_CAP_OFFSET_4XXX; \ + ae_offset_ = ICP_QAT_AE_OFFSET_4XXX; \ + ep_offset_ = ICP_QAT_EP_OFFSET_4XXX; \ + } else { \ + cap_offset_ = ICP_QAT_CAP_OFFSET; \ + ae_offset_ = ICP_QAT_AE_OFFSET; \ + ep_offset_ = ICP_QAT_EP_OFFSET; \ + } \ }) #endif diff --git a/sys/dev/qat/include/common/icp_qat_uclo.h b/sys/dev/qat/include/common/icp_qat_uclo.h index 21a1c2fc8ace..1bdddce1d85e 100644 --- a/sys/dev/qat/include/common/icp_qat_uclo.h +++ b/sys/dev/qat/include/common/icp_qat_uclo.h @@ -9,6 +9,7 @@ #define ICP_QAT_AC_C3XXX_DEV_TYPE 0x02000000 #define ICP_QAT_AC_200XX_DEV_TYPE 0x02000000 #define ICP_QAT_AC_C4XXX_DEV_TYPE 0x04000000 +#define ICP_QAT_AC_4XXX_A_DEV_TYPE 0x08000000 #define ICP_QAT_UCLO_MAX_AE 32 #define ICP_QAT_UCLO_MAX_CTX 8 #define ICP_QAT_UCLO_MAX_CPPNUM 2 *** 16121 LINES SKIPPED *** From nobody Tue Jan 24 17:22: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 4P1Yh56VRZz3b2K2; Tue, 24 Jan 2023 17:22:45 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) (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 4P1Yh50hnMz3Qsd; Tue, 24 Jan 2023 17:22:45 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of adrian.chadd@gmail.com designates 209.85.167.54 as permitted sender) smtp.mailfrom=adrian.chadd@gmail.com; dmarc=none Received: by mail-lf1-f54.google.com with SMTP id o20so24544237lfk.5; Tue, 24 Jan 2023 09:22:45 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=byKP/t4mVffmP5tzaaciNKJy71wZQLEcawzDzhGV8jU=; b=VV4x9FAAOehAKLRoTv4K8vsOU5bdByHkJWph5lVHiQEaIz7aKIiFZhYp1nOo61hJ/x 3RHNGc3PFMAy3vduHTxW/Z87PnBDpu9EM/zBiX18GE2M+gNVW4OfWphCiByBoWCW93lP XFPjAM9vMCVW44OlsYisSQuOs0nfDkvhon49YuSAlo0QGW0eevfWSfMSlLO9j8ePLvWq rkRha7YtrZGbZMINzPdYXjfHQXebtcAnnV61xB6jnV36DHL52URBiraBE5BBiXe+inTV JHEtIV6/Ynf4YVUH3mDXByiRy7PXfg+KjWhKdKAGaz4JkYtRqBf+V2MM/+wg2Hjab4v1 YkSg== X-Gm-Message-State: AFqh2koa4KDB9e+qfRLFL3klCvVorHaOp7NN9ilGUwZimOm6a+37TuD3 yqlltybgG7aBAIAxwHP5A8+iCddfEYL1H29kC6LZ1zv7 X-Google-Smtp-Source: AMrXdXt01Yi2mUiYg6i4p/OYt0yTi9+Zzj+L+W/5JPk1YaWC/aUPeBq/0Ukr1Q138zvJxt77ZtvyTmx0kkK/7wwPywc= X-Received: by 2002:a19:5502:0:b0:4a2:4b01:8466 with SMTP id n2-20020a195502000000b004a24b018466mr2115254lfe.34.1674580961920; Tue, 24 Jan 2023 09:22:41 -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: <202301210443.30L4hnw4015211@gitrepo.freebsd.org> In-Reply-To: From: Adrian Chadd Date: Tue, 24 Jan 2023 09:22:30 -0800 Message-ID: Subject: Re: git: ffc58e2ca365 - main - asmc: Add MacbookAir6,2 To: jrtc27@freebsd.org Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000620ac005f305c38e" X-Spamd-Result: default: False [-2.96 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.96)[-0.962]; FORGED_SENDER(0.30)[adrian@freebsd.org,adrianchadd@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; RCVD_IN_DNSWL_NONE(0.00)[209.85.167.54:from]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.167.54:from]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; R_DKIM_NA(0.00)[]; TO_DN_EQ_ADDR_SOME(0.00)[]; DMARC_NA(0.00)[freebsd.org]; FROM_NEQ_ENVFROM(0.00)[adrian@freebsd.org,adrianchadd@gmail.com]; ARC_NA(0.00)[]; TAGGED_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; RCVD_TLS_LAST(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-Rspamd-Queue-Id: 4P1Yh50hnMz3Qsd X-Spamd-Bar: -- X-ThisMailContainsUnwantedMimeParts: N --000000000000620ac005f305c38e Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable yeah i meant markj, but i was sick and tired and somehow my brain crossed streams. sorry! -a On Fri, 20 Jan 2023 at 21:55, Jessica Clarke wrote: > On 21 Jan 2023, at 04:43, Adrian Chadd wrote: > > > > The branch main has been updated by adrian: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3Dffc58e2ca36546d866bb6bd36a3aa8f= 762a01663 > > > > commit ffc58e2ca36546d866bb6bd36a3aa8f762a01663 > > Author: Adrian Chadd > > AuthorDate: 2023-01-21 04:34:31 +0000 > > Commit: Adrian Chadd > > CommitDate: 2023-01-21 04:34:31 +0000 > > > > asmc: Add MacbookAir6,2 > > > > Add in the zones for my MacbookAir6,2, a 2013 Macbook Air. > > > > Tested - said Macbook Air 2013. Thermal Zones and keyboard backligh= t > > control works fine. > > > > Differential Revision: https://reviews.freebsd.org/D38073 > > Approved by: jrtc27 > > Uh this is the first I=E2=80=99m hearing of this patch? > > Jess > > > --- > > sys/dev/asmc/asmc.c | 9 +++++++-- > > sys/dev/asmc/asmcvar.h | 25 +++++++++++++++++++++++++ > > 2 files changed, 32 insertions(+), 2 deletions(-) > > > > diff --git a/sys/dev/asmc/asmc.c b/sys/dev/asmc/asmc.c > > index bec0054e2dd7..337f641e4513 100644 > > --- a/sys/dev/asmc/asmc.c > > +++ b/sys/dev/asmc/asmc.c > > @@ -427,7 +427,13 @@ static const struct asmc_model asmc_models[] =3D { > > ASMC_LIGHT_FUNCS, > > ASMC_MBA5_TEMPS, ASMC_MBA5_TEMPNAMES, ASMC_MBA5_TEMPDESCS > > }, > > - > > + { > > + "MacBookAir6,2", "Apple SMC MacBook Air 13-inch (Early 2013)", > > + ASMC_SMS_FUNCS_DISABLED, > > + ASMC_FAN_FUNCS2, > > + ASMC_LIGHT_FUNCS, > > + ASMC_MBA6_TEMPS, ASMC_MBA6_TEMPNAMES, ASMC_MBA6_TEMPDESCS > > + }, > > { > > "MacBookAir7,1", "Apple SMC MacBook Air 11-inch (Early 2015)", > > ASMC_SMS_FUNCS_DISABLED, > > @@ -435,7 +441,6 @@ static const struct asmc_model asmc_models[] =3D { > > ASMC_LIGHT_FUNCS, > > ASMC_MBA7_TEMPS, ASMC_MBA7_TEMPNAMES, ASMC_MBA7_TEMPDESCS > > }, > > - > > { > > "MacBookAir7,2", "Apple SMC MacBook Air 13-inch (Early 2015)", > > ASMC_SMS_FUNCS_DISABLED, > > diff --git a/sys/dev/asmc/asmcvar.h b/sys/dev/asmc/asmcvar.h > > index a594710f1cbe..9db544a1450d 100644 > > --- a/sys/dev/asmc/asmcvar.h > > +++ b/sys/dev/asmc/asmcvar.h > > @@ -773,6 +773,31 @@ struct asmc_softc { > > "Ta0P", "Heatpipe", "Mainboard Proximit= y > 1", "Mainboard Proximity 2", \ > > "Palm Rest", "Memory Proximity" } > > > > +/* > > + * TODO: validate the temp zones for MBA 6.x ! > > + */ > > +#define ASMC_MBA6_TEMPS { "TB0T", "TB1T", "TB2T", \ > > + "TC0E", "TC0F", "TC0P", \ > > + "TC1C", "TC2C", "TCGC", "TCSA", \ > > + "TCXC", "THSP", "TM0P", "TPCD", \ > > + "Ta0P", "Th1H", "Tm0P", \ > > + "Ts0P", "Ts0S", NULL } > > + > > +#define ASMC_MBA6_TEMPNAMES { "enclosure1", "enclosure2", > "enclosure3", \ > > + "cputemp1", "cputemp2", "cpuproximity",= \ > > + "cpucore1", "cpucore2", "cpupeci", > "pecisa", \ > > + "TCXC", "THSP", "memorybank", "pchdie",= \ > > + "Ta0P", "heatpipe", > "mainboardproximity1", \ > > + "palmrest", "memoryproximity" } > > + > > +#define ASMC_MBA6_TEMPDESCS { "Enclosure Bottom 1", "Enclosur= e > Bottom 2", "Enclosure Bottom 3", \ > > + "CPU Temp 1", "CPU Temp 2", "CPU > Proximity", \ > > + "CPU Core 1", "CPU Core 2", "CPU Peci > Core", "PECI SA", \ > > + "TCXC", "THSP", "Memory Bank A", "PCH > Die", \ > > + "Ta0P", "Heatpipe", "Mainboard Proximit= y > 1", \ > > + "Palm Rest", "Memory Proximity" } > > + > > + > > #define ASMC_MBA7_TEMPS { "TB0T", "TB1T", "TB2T", \ > > "TC0E", "TC0F", "TC0P", \ > > "TC1C", "TC2C", \ > > --000000000000620ac005f305c38e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
yeah i meant markj, but i was sick and tired and somehow m= y brain crossed streams.

sorry!


-a


On Fri, 20 Jan 2023 at 21:55, Jessic= a Clarke <jrtc27@freebsd.org&g= t; wrote:
On 21 = Jan 2023, at 04:43, Adrian Chadd <adrian@FreeBSD.org> wrote:
>
> The branch main has been updated by adrian:
>
> URL: https://= cgit.FreeBSD.org/src/commit/?id=3Dffc58e2ca36546d866bb6bd36a3aa8f762a01663<= /a>
>
> commit ffc58e2ca36546d866bb6bd36a3aa8f762a01663
> Author:=C2=A0 =C2=A0 =C2=A0Adrian Chadd <adrian@FreeBSD.org>
> AuthorDate: 2023-01-21 04:34:31 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Adrian Chadd <adrian@FreeBSD.org>
> CommitDate: 2023-01-21 04:34:31 +0000
>
>=C2=A0 =C2=A0 asmc: Add MacbookAir6,2
>
>=C2=A0 =C2=A0 Add in the zones for my MacbookAir6,2, a 2013 Macbook Air= .
>
>=C2=A0 =C2=A0 Tested - said Macbook Air 2013.=C2=A0 Thermal Zones and k= eyboard backlight
>=C2=A0 =C2=A0 control works fine.
>
>=C2=A0 =C2=A0 Differential Revision:
https://reviews.freebsd.o= rg/D38073
>=C2=A0 =C2=A0 Approved by: jrtc27

Uh this is the first I=E2=80=99m hearing of this patch?

Jess

> ---
> sys/dev/asmc/asmc.c=C2=A0 =C2=A0 |=C2=A0 9 +++++++--
> sys/dev/asmc/asmcvar.h | 25 +++++++++++++++++++++++++
> 2 files changed, 32 insertions(+), 2 deletions(-)
>
> diff --git a/sys/dev/asmc/asmc.c b/sys/dev/asmc/asmc.c
> index bec0054e2dd7..337f641e4513 100644
> --- a/sys/dev/asmc/asmc.c
> +++ b/sys/dev/asmc/asmc.c
> @@ -427,7 +427,13 @@ static const struct asmc_model asmc_models[] =3D = {
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_LIGHT_FUNCS,
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_MBA5_TEMPS, ASMC_MBA5_TEMPNAMES,= ASMC_MBA5_TEMPDESCS
>=C2=A0 =C2=A0 =C2=A0 =C2=A0},
> -
> +=C2=A0 =C2=A0 =C2=A0{
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0"MacBookAir6,2", "Apple SMC= MacBook Air 13-inch (Early 2013)",
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_SMS_FUNCS_DISABLED,
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_FAN_FUNCS2,
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_LIGHT_FUNCS,
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_MBA6_TEMPS, ASMC_MBA6_TEMPNAMES, ASMC= _MBA6_TEMPDESCS
> +=C2=A0 =C2=A0 =C2=A0},
>=C2=A0 =C2=A0 =C2=A0 =C2=A0{
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"MacBookAir7,1", "Appl= e SMC MacBook Air 11-inch (Early 2015)",
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_SMS_FUNCS_DISABLED,
> @@ -435,7 +441,6 @@ static const struct asmc_model asmc_models[] =3D {=
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_LIGHT_FUNCS,
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_MBA7_TEMPS, ASMC_MBA7_TEMPNAMES,= ASMC_MBA7_TEMPDESCS
>=C2=A0 =C2=A0 =C2=A0 =C2=A0},
> -
>=C2=A0 =C2=A0 =C2=A0 =C2=A0{
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"MacBookAir7,2", "Appl= e SMC MacBook Air 13-inch (Early 2015)",
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_SMS_FUNCS_DISABLED,
> diff --git a/sys/dev/asmc/asmcvar.h b/sys/dev/asmc/asmcvar.h
> index a594710f1cbe..9db544a1450d 100644
> --- a/sys/dev/asmc/asmcvar.h
> +++ b/sys/dev/asmc/asmcvar.h
> @@ -773,6 +773,31 @@ struct asmc_softc {
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Ta0P", "Hea= tpipe", "Mainboard Proximity 1", "Mainboard Proximity 2= ", \
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Palm Rest", &quo= t;Memory Proximity" }
>
> +/*
> + * TODO: validate the temp zones for MBA 6.x !
> + */
> +#define=C2=A0 =C2=A0 =C2=A0 ASMC_MBA6_TEMPS=C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0{ "TB0T", "TB1T", "TB2T", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TC0E", "TC0F"= ;, "TC0P", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TC1C", "TC2C"= ;, "TCGC", "TCSA", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TCXC", "THSP"= ;, "TM0P", "TPCD", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Ta0P", "Th1H"= ;, "Tm0P", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Ts0P", "Ts0S"= ;, NULL }
> +
> +#define=C2=A0 =C2=A0 =C2=A0 ASMC_MBA6_TEMPNAMES=C2=A0 =C2=A0 =C2=A0{ = "enclosure1", "enclosure2", "enclosure3", \ > +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"cputemp1", "cpute= mp2", "cpuproximity", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"cpucore1", "cpuco= re2", "cpupeci", "pecisa", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TCXC", "THSP"= ;, "memorybank", "pchdie", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Ta0P", "heatpipe&= quot;, "mainboardproximity1", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"palmrest", "memor= yproximity" }
> +
> +#define=C2=A0 =C2=A0 =C2=A0 ASMC_MBA6_TEMPDESCS=C2=A0 =C2=A0 =C2=A0{ = "Enclosure Bottom 1", "Enclosure Bottom 2", "Enclo= sure Bottom 3", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"CPU Temp 1", "CPU= Temp 2", "CPU Proximity", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"CPU Core 1", "CPU= Core 2", "CPU Peci Core", "PECI SA", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TCXC", "THSP"= ;, "Memory Bank A", "PCH Die", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Ta0P", "Heatpipe&= quot;, "Mainboard Proximity 1", \
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"Palm Rest", "Memo= ry Proximity" }
> +
> +
> #define=C2=A0 =C2=A0 =C2=A0 =C2=A0ASMC_MBA7_TEMPS=C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0{ "TB0T", "TB1T", "TB2T", \
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TC0E", "TC0= F", "TC0P", \
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"TC1C", "TC2= C", \

--000000000000620ac005f305c38e-- From nobody Tue Jan 24 20:48: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 4P1fF911h6z3bSZH; Tue, 24 Jan 2023 20:48: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 4P1fF90MTMz41bq; Tue, 24 Jan 2023 20:48:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593293; 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=pmaT/2aTeaFaM5Boyi767qTiXFTnuATCPJwWVNlXuk4=; b=DActz2A+7amQyX0pajjrBie2YV3lUVjTeChXD3hY/uNsYpz0rHenLuR59/9nBpPZ158unO JYXCXGwtejNE8RG+ATgAG1niaVCaNgqdamse+osdvFAbCozRmnE6ivJx6qLX+rwNyYydE8 czxkblK4lCK0S0bxTl99LD+Q34oWO6p7NtY8QiV7p3/efTVLIKb4P3BEP6FdvAzZ414MyF XD8Un0q5GdzPPWNjmokTxXqeqCSCEBPHjhYvgUFCFl/MU9Cqn+9069qgod2VTQkEMfSvBl BM2HyGz/wzsnc5J+jSZkRgW24rZSaYNJuPr4RuiztYzF09n/Y37WWvzTH/8c6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593293; 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=pmaT/2aTeaFaM5Boyi767qTiXFTnuATCPJwWVNlXuk4=; b=M7Ua+JrK0Oe33qQY1b2i0ixHDf38MOduDVdlIvoJjSZ9IXChlwRgQAelZIRDBIZQVOix9I /W25Rbhr7njX5JSwdKgCAVim1oGW/gGmSnBEZrBu8pWn5xKIhKWDFTQ7TZqKsI67kD8VRO 8zWosGILCqL5mvaL8BiUWIRIJnv36NGGPXWP0rZKngAX/6yvEp0jOeK0swePNDXKZ0RJVw AgzB407H8HBycvy4MuOl4oQrhu715l/dUC2YVVP6bGNxibUYP5FpZMZHFCeHliav2uvUkS HdisP/yuv5356bqpt4GcBGUKgGsdfn844GReVVgfVxIBvrehKAg4IIw0pYLVZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593293; a=rsa-sha256; cv=none; b=u1LYT6lztjwnWyI8NWyWI47bBgT2pjkPqxDuGDhmMHWaJPx74/8G8Qo0RiCyKklDhpSdA/ kIR3MGhl9WPpv7H7i/hVdPRyEg3vsIl7Vowu7S/hQCknsc9/I1XeHSAHSUVmf056HKZ+5v UKIFHqdyUCVcPK1sJkGHwSL9tNMBAi9WWo81moMfWUYz5nPX87fSh8XIu20nZsVfidCwwy fwvru+/CgvmzjRdbRGkwAvdnJIjOeikkdElvYfn8o8bhCucszJyNzad1vUxZ0/2fvtYfPw odzNlDt8coGkA6fg+i1y9papOYS/1NxFSDBk7OV8V7m9oPJVTHWbx55E6AduGA== 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 4P1fF86RMczMln; Tue, 24 Jan 2023 20:48:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmC85053634; Tue, 24 Jan 2023 20:48:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmCBH053633; Tue, 24 Jan 2023 20:48:12 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:12 GMT Message-Id: <202301242048.30OKmCBH053633@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 759ad4dd8ab7 - main - Convert xl(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 759ad4dd8ab765e5bc7fcb7c1b6ca8eda912a824 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=759ad4dd8ab765e5bc7fcb7c1b6ca8eda912a824 commit 759ad4dd8ab765e5bc7fcb7c1b6ca8eda912a824 Author: Justin Hibbits AuthorDate: 2021-10-26 14:43:38 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:35:32 +0000 Convert xl(4) to IfAPI Reviewed by: melifaro Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37785 --- sys/dev/xl/if_xl.c | 247 +++++++++++++++++++++++++------------------------- sys/dev/xl/if_xlreg.h | 2 +- 2 files changed, 124 insertions(+), 125 deletions(-) diff --git a/sys/dev/xl/if_xl.c b/sys/dev/xl/if_xl.c index d96b20119f00..4b7739a384c1 100644 --- a/sys/dev/xl/if_xl.c +++ b/sys/dev/xl/if_xl.c @@ -240,10 +240,10 @@ static void xl_txeof(struct xl_softc *); static void xl_txeof_90xB(struct xl_softc *); static void xl_txeoc(struct xl_softc *); static void xl_intr(void *); -static void xl_start(struct ifnet *); -static void xl_start_locked(struct ifnet *); -static void xl_start_90xB_locked(struct ifnet *); -static int xl_ioctl(struct ifnet *, u_long, caddr_t); +static void xl_start(if_t); +static void xl_start_locked(if_t); +static void xl_start_90xB_locked(if_t); +static int xl_ioctl(if_t, u_long, caddr_t); static void xl_init(void *); static void xl_init_locked(struct xl_softc *); static void xl_stop(struct xl_softc *); @@ -254,12 +254,12 @@ static int xl_resume(device_t); static void xl_setwol(struct xl_softc *); #ifdef DEVICE_POLLING -static int xl_poll(struct ifnet *ifp, enum poll_cmd cmd, int count); -static int xl_poll_locked(struct ifnet *ifp, enum poll_cmd cmd, int count); +static int xl_poll(if_t ifp, enum poll_cmd cmd, int count); +static int xl_poll_locked(if_t ifp, enum poll_cmd cmd, int count); #endif -static int xl_ifmedia_upd(struct ifnet *); -static void xl_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int xl_ifmedia_upd(if_t); +static void xl_ifmedia_sts(if_t, struct ifmediareq *); static int xl_eeprom_wait(struct xl_softc *); static int xl_read_eeprom(struct xl_softc *, caddr_t, int, int, int); @@ -616,7 +616,7 @@ xl_check_maddr_90x(void *arg, struct sockaddr_dl *sdl, u_int cnt) static void xl_rxfilter_90x(struct xl_softc *sc) { - struct ifnet *ifp; + if_t ifp; u_int8_t rxfilt; XL_LOCK_ASSERT(sc); @@ -631,14 +631,14 @@ xl_rxfilter_90x(struct xl_softc *sc) /* Set the individual bit to receive frames for this host only. */ rxfilt |= XL_RXFILTER_INDIVIDUAL; /* Set capture broadcast bit to capture broadcast frames. */ - if (ifp->if_flags & IFF_BROADCAST) + if (if_getflags(ifp) & IFF_BROADCAST) rxfilt |= XL_RXFILTER_BROADCAST; /* If we want promiscuous mode, set the allframes bit. */ - if (ifp->if_flags & (IFF_PROMISC | IFF_ALLMULTI)) { - if (ifp->if_flags & IFF_PROMISC) + if (if_getflags(ifp) & (IFF_PROMISC | IFF_ALLMULTI)) { + if (if_getflags(ifp) & IFF_PROMISC) rxfilt |= XL_RXFILTER_ALLFRAMES; - if (ifp->if_flags & IFF_ALLMULTI) + if (if_getflags(ifp) & IFF_ALLMULTI) rxfilt |= XL_RXFILTER_ALLMULTI; } else if_foreach_llmaddr(sc->xl_ifp, xl_check_maddr_90x, &rxfilt); @@ -675,7 +675,7 @@ xl_check_maddr_90xB(void *arg, struct sockaddr_dl *sdl, u_int count) static void xl_rxfilter_90xB(struct xl_softc *sc) { - struct ifnet *ifp; + if_t ifp; int i; u_int8_t rxfilt; @@ -692,14 +692,14 @@ xl_rxfilter_90xB(struct xl_softc *sc) /* Set the individual bit to receive frames for this host only. */ rxfilt |= XL_RXFILTER_INDIVIDUAL; /* Set capture broadcast bit to capture broadcast frames. */ - if (ifp->if_flags & IFF_BROADCAST) + if (if_getflags(ifp) & IFF_BROADCAST) rxfilt |= XL_RXFILTER_BROADCAST; /* If we want promiscuous mode, set the allframes bit. */ - if (ifp->if_flags & (IFF_PROMISC | IFF_ALLMULTI)) { - if (ifp->if_flags & IFF_PROMISC) + if (if_getflags(ifp) & (IFF_PROMISC | IFF_ALLMULTI)) { + if (if_getflags(ifp) & IFF_PROMISC) rxfilt |= XL_RXFILTER_ALLFRAMES; - if (ifp->if_flags & IFF_ALLMULTI) + if (if_getflags(ifp) & IFF_ALLMULTI) rxfilt |= XL_RXFILTER_ALLMULTI; } else { /* First, zot all the existing hash bits. */ @@ -1064,7 +1064,7 @@ xl_attach(device_t dev) u_char eaddr[ETHER_ADDR_LEN]; u_int16_t sinfo2, xcvr[2]; struct xl_softc *sc; - struct ifnet *ifp; + if_t ifp; int media, pmcap; int error = 0, phy, rid, res; uint16_t did; @@ -1195,7 +1195,7 @@ xl_attach(device_t dev) error = ENOSPC; goto fail; } - ifp->if_softc = sc; + if_setsoftc(ifp, sc); if_initname(ifp, device_get_name(dev), device_get_unit(dev)); /* Reset the adapter. */ @@ -1335,28 +1335,27 @@ xl_attach(device_t dev) /* Set the TX start threshold for best performance. */ sc->xl_tx_thresh = XL_MIN_FRAMELEN; - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; - ifp->if_ioctl = xl_ioctl; - ifp->if_capabilities = IFCAP_VLAN_MTU; + if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST); + if_setioctlfn(ifp, xl_ioctl); + if_setcapabilities(ifp, IFCAP_VLAN_MTU); if (sc->xl_type == XL_TYPE_905B) { - ifp->if_hwassist = XL905B_CSUM_FEATURES; + if_sethwassist(ifp, XL905B_CSUM_FEATURES); #ifdef XL905B_TXCSUM_BROKEN - ifp->if_capabilities |= IFCAP_RXCSUM; + if_setcapabilitiesbit(ifp, IFCAP_RXCSUM, 0); #else - ifp->if_capabilities |= IFCAP_HWCSUM; + if_setcapabilitiesbit(ifp, IFCAP_HWCSUM, 0); #endif } if ((sc->xl_flags & XL_FLAG_WOL) != 0) - ifp->if_capabilities |= IFCAP_WOL_MAGIC; - ifp->if_capenable = ifp->if_capabilities; + if_setcapabilitiesbit(ifp, IFCAP_WOL_MAGIC, 0); + if_setcapenable(ifp, if_getcapabilities(ifp)); #ifdef DEVICE_POLLING - ifp->if_capabilities |= IFCAP_POLLING; + if_setcapabilitiesbit(ifp, IFCAP_POLLING, 0); #endif - ifp->if_start = xl_start; - ifp->if_init = xl_init; - IFQ_SET_MAXLEN(&ifp->if_snd, XL_TX_LIST_CNT - 1); - ifp->if_snd.ifq_drv_maxlen = XL_TX_LIST_CNT - 1; - IFQ_SET_READY(&ifp->if_snd); + if_setstartfn(ifp, xl_start); + if_setinitfn(ifp, xl_init); + if_setsendqlen(ifp, XL_TX_LIST_CNT - 1); + if_setsendqready(ifp); /* * Now we have to see what sort of media we have. @@ -1550,7 +1549,7 @@ static int xl_detach(device_t dev) { struct xl_softc *sc; - struct ifnet *ifp; + if_t ifp; int rid, res; sc = device_get_softc(dev); @@ -1559,7 +1558,7 @@ xl_detach(device_t dev) KASSERT(mtx_initialized(&sc->xl_mtx), ("xl mutex not initialized")); #ifdef DEVICE_POLLING - if (ifp && ifp->if_capenable & IFCAP_POLLING) + if (ifp && if_getcapenable(ifp) & IFCAP_POLLING) ether_poll_deregister(ifp); #endif @@ -1824,7 +1823,7 @@ static int xl_rxeof(struct xl_softc *sc) { struct mbuf *m; - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; struct xl_chain_onefrag *cur_rx; int total_len; int rx_npkts = 0; @@ -1836,7 +1835,7 @@ again: BUS_DMASYNC_POSTREAD); while ((rxstat = le32toh(sc->xl_cdata.xl_rx_head->xl_ptr->xl_status))) { #ifdef DEVICE_POLLING - if (ifp->if_capenable & IFCAP_POLLING) { + if (if_getcapenable(ifp) & IFCAP_POLLING) { if (sc->rxcycles <= 0) break; sc->rxcycles--; @@ -1911,7 +1910,7 @@ again: m->m_pkthdr.rcvif = ifp; m->m_pkthdr.len = m->m_len = total_len; - if (ifp->if_capenable & IFCAP_RXCSUM) { + if (if_getcapenable(ifp) & IFCAP_RXCSUM) { /* Do IP checksum checking. */ if (rxstat & XL_RXSTAT_IPCKOK) m->m_pkthdr.csum_flags |= CSUM_IP_CHECKED; @@ -1928,7 +1927,7 @@ again: } XL_UNLOCK(sc); - (*ifp->if_input)(ifp, m); + if_input(ifp, m); XL_LOCK(sc); /* @@ -1936,7 +1935,7 @@ again: * might have been stopped while we were passing the last * packet up the network stack. */ - if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) + if (!(if_getdrvflags(ifp) & IFF_DRV_RUNNING)) return (rx_npkts); } @@ -1973,7 +1972,7 @@ xl_rxeof_task(void *arg, int pending) struct xl_softc *sc = (struct xl_softc *)arg; XL_LOCK(sc); - if (sc->xl_ifp->if_drv_flags & IFF_DRV_RUNNING) + if (if_getdrvflags(sc->xl_ifp) & IFF_DRV_RUNNING) xl_rxeof(sc); XL_UNLOCK(sc); } @@ -1986,7 +1985,7 @@ static void xl_txeof(struct xl_softc *sc) { struct xl_chain *cur_tx; - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; XL_LOCK_ASSERT(sc); @@ -2012,7 +2011,7 @@ xl_txeof(struct xl_softc *sc) m_freem(cur_tx->xl_mbuf); cur_tx->xl_mbuf = NULL; if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1); - ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); cur_tx->xl_next = sc->xl_cdata.xl_tx_free; sc->xl_cdata.xl_tx_free = cur_tx; @@ -2035,7 +2034,7 @@ static void xl_txeof_90xB(struct xl_softc *sc) { struct xl_chain *cur_tx = NULL; - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; int idx; XL_LOCK_ASSERT(sc); @@ -2069,7 +2068,7 @@ xl_txeof_90xB(struct xl_softc *sc) sc->xl_cdata.xl_tx_cons = idx; if (cur_tx != NULL) - ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); } /* @@ -2146,13 +2145,13 @@ static void xl_intr(void *arg) { struct xl_softc *sc = arg; - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; u_int16_t status; XL_LOCK(sc); #ifdef DEVICE_POLLING - if (ifp->if_capenable & IFCAP_POLLING) { + if (if_getcapenable(ifp) & IFCAP_POLLING) { XL_UNLOCK(sc); return; } @@ -2164,7 +2163,7 @@ xl_intr(void *arg) break; CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_INTR_ACK|(status & XL_INTRS)); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) break; if (status & XL_STAT_UP_COMPLETE) { @@ -2187,7 +2186,7 @@ xl_intr(void *arg) } if (status & XL_STAT_ADFAIL) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); xl_init_locked(sc); break; } @@ -2196,8 +2195,8 @@ xl_intr(void *arg) xl_stats_update(sc); } - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd) && - ifp->if_drv_flags & IFF_DRV_RUNNING) { + if (!if_sendq_empty(ifp) && + if_getdrvflags(ifp) & IFF_DRV_RUNNING) { if (sc->xl_type == XL_TYPE_905B) xl_start_90xB_locked(ifp); else @@ -2209,22 +2208,22 @@ xl_intr(void *arg) #ifdef DEVICE_POLLING static int -xl_poll(struct ifnet *ifp, enum poll_cmd cmd, int count) +xl_poll(if_t ifp, enum poll_cmd cmd, int count) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); int rx_npkts = 0; XL_LOCK(sc); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) rx_npkts = xl_poll_locked(ifp, cmd, count); XL_UNLOCK(sc); return (rx_npkts); } static int -xl_poll_locked(struct ifnet *ifp, enum poll_cmd cmd, int count) +xl_poll_locked(if_t ifp, enum poll_cmd cmd, int count) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); int rx_npkts; XL_LOCK_ASSERT(sc); @@ -2236,7 +2235,7 @@ xl_poll_locked(struct ifnet *ifp, enum poll_cmd cmd, int count) else xl_txeof(sc); - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + if (!if_sendq_empty(ifp)) { if (sc->xl_type == XL_TYPE_905B) xl_start_90xB_locked(ifp); else @@ -2257,7 +2256,7 @@ xl_poll_locked(struct ifnet *ifp, enum poll_cmd cmd, int count) } if (status & XL_STAT_ADFAIL) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); xl_init_locked(sc); } @@ -2292,7 +2291,7 @@ xl_tick(void *xsc) static void xl_stats_update(struct xl_softc *sc) { - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; struct xl_stats xl_stats; u_int8_t *p; int i; @@ -2335,7 +2334,7 @@ static int xl_encap(struct xl_softc *sc, struct xl_chain *c, struct mbuf **m_head) { struct mbuf *m_new; - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; int error, i, nseg, total_len; u_int32_t status; @@ -2427,9 +2426,9 @@ xl_encap(struct xl_softc *sc, struct xl_chain *c, struct mbuf **m_head) */ static void -xl_start(struct ifnet *ifp) +xl_start(if_t ifp) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); XL_LOCK(sc); @@ -2442,9 +2441,9 @@ xl_start(struct ifnet *ifp) } static void -xl_start_locked(struct ifnet *ifp) +xl_start_locked(if_t ifp) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); struct mbuf *m_head; struct xl_chain *prev = NULL, *cur_tx = NULL, *start_tx; struct xl_chain *prev_tx; @@ -2452,7 +2451,7 @@ xl_start_locked(struct ifnet *ifp) XL_LOCK_ASSERT(sc); - if ((ifp->if_drv_flags & (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)) != + if ((if_getdrvflags(ifp) & (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)) != IFF_DRV_RUNNING) return; /* @@ -2463,16 +2462,16 @@ xl_start_locked(struct ifnet *ifp) xl_txeoc(sc); xl_txeof(sc); if (sc->xl_cdata.xl_tx_free == NULL) { - ifp->if_drv_flags |= IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); return; } } start_tx = sc->xl_cdata.xl_tx_free; - for (; !IFQ_DRV_IS_EMPTY(&ifp->if_snd) && + for (; !if_sendq_empty(ifp) && sc->xl_cdata.xl_tx_free != NULL;) { - IFQ_DRV_DEQUEUE(&ifp->if_snd, m_head); + m_head = if_dequeue(ifp); if (m_head == NULL) break; @@ -2486,8 +2485,8 @@ xl_start_locked(struct ifnet *ifp) cur_tx = prev_tx; if (m_head == NULL) break; - ifp->if_drv_flags |= IFF_DRV_OACTIVE; - IFQ_DRV_PREPEND(&ifp->if_snd, m_head); + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); + if_sendq_prepend(ifp, m_head); break; } @@ -2574,9 +2573,9 @@ xl_start_locked(struct ifnet *ifp) } static void -xl_start_90xB_locked(struct ifnet *ifp) +xl_start_90xB_locked(if_t ifp) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); struct mbuf *m_head; struct xl_chain *prev = NULL, *cur_tx = NULL, *start_tx; struct xl_chain *prev_tx; @@ -2584,21 +2583,21 @@ xl_start_90xB_locked(struct ifnet *ifp) XL_LOCK_ASSERT(sc); - if ((ifp->if_drv_flags & (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)) != + if ((if_getdrvflags(ifp) & (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)) != IFF_DRV_RUNNING) return; idx = sc->xl_cdata.xl_tx_prod; start_tx = &sc->xl_cdata.xl_tx_chain[idx]; - for (; !IFQ_DRV_IS_EMPTY(&ifp->if_snd) && + for (; !if_sendq_empty(ifp) && sc->xl_cdata.xl_tx_chain[idx].xl_mbuf == NULL;) { if ((XL_TX_LIST_CNT - sc->xl_cdata.xl_tx_cnt) < 3) { - ifp->if_drv_flags |= IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); break; } - IFQ_DRV_DEQUEUE(&ifp->if_snd, m_head); + m_head = if_dequeue(ifp); if (m_head == NULL) break; @@ -2611,8 +2610,8 @@ xl_start_90xB_locked(struct ifnet *ifp) cur_tx = prev_tx; if (m_head == NULL) break; - ifp->if_drv_flags |= IFF_DRV_OACTIVE; - IFQ_DRV_PREPEND(&ifp->if_snd, m_head); + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); + if_sendq_prepend(ifp, m_head); break; } @@ -2671,13 +2670,13 @@ xl_init(void *xsc) static void xl_init_locked(struct xl_softc *sc) { - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; int error, i; struct mii_data *mii = NULL; XL_LOCK_ASSERT(sc); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) return; /* * Cancel pending I/O and free all RX/TX buffers. @@ -2711,7 +2710,7 @@ xl_init_locked(struct xl_softc *sc) XL_SEL_WIN(2); for (i = 0; i < ETHER_ADDR_LEN; i++) { CSR_WRITE_1(sc, XL_W2_STATION_ADDR_LO + i, - IF_LLADDR(sc->xl_ifp)[i]); + if_getlladdr(sc->xl_ifp)[i]); } /* Clear the station mask. */ @@ -2841,7 +2840,7 @@ xl_init_locked(struct xl_softc *sc) CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_STAT_ENB|XL_INTRS); #ifdef DEVICE_POLLING /* Disable interrupts if we are polling. */ - if (ifp->if_capenable & IFCAP_POLLING) + if (if_getcapenable(ifp) & IFCAP_POLLING) CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_INTR_ENB|0); else #endif @@ -2866,8 +2865,8 @@ xl_init_locked(struct xl_softc *sc) /* Select window 7 for normal operations. */ XL_SEL_WIN(7); - ifp->if_drv_flags |= IFF_DRV_RUNNING; - ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); + if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); sc->xl_wdog_timer = 0; callout_reset(&sc->xl_tick_callout, hz, xl_tick, sc); @@ -2877,9 +2876,9 @@ xl_init_locked(struct xl_softc *sc) * Set media options. */ static int -xl_ifmedia_upd(struct ifnet *ifp) +xl_ifmedia_upd(if_t ifp) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); struct ifmedia *ifm = NULL; struct mii_data *mii = NULL; @@ -2905,7 +2904,7 @@ xl_ifmedia_upd(struct ifnet *ifp) if (sc->xl_media & XL_MEDIAOPT_MII || sc->xl_media & XL_MEDIAOPT_BTX || sc->xl_media & XL_MEDIAOPT_BT4) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); xl_init_locked(sc); } else { xl_setmode(sc, ifm->ifm_media); @@ -2920,9 +2919,9 @@ xl_ifmedia_upd(struct ifnet *ifp) * Report current media status. */ static void -xl_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +xl_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); u_int32_t icfg; u_int16_t status = 0; struct mii_data *mii = NULL; @@ -2992,9 +2991,9 @@ xl_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) } static int -xl_ioctl(struct ifnet *ifp, u_long command, caddr_t data) +xl_ioctl(if_t ifp, u_long command, caddr_t data) { - struct xl_softc *sc = ifp->if_softc; + struct xl_softc *sc = if_getsoftc(ifp); struct ifreq *ifr = (struct ifreq *) data; int error = 0, mask; struct mii_data *mii = NULL; @@ -3002,25 +3001,25 @@ xl_ioctl(struct ifnet *ifp, u_long command, caddr_t data) switch (command) { case SIOCSIFFLAGS: XL_LOCK(sc); - if (ifp->if_flags & IFF_UP) { - if (ifp->if_drv_flags & IFF_DRV_RUNNING && - (ifp->if_flags ^ sc->xl_if_flags) & + if (if_getflags(ifp) & IFF_UP) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING && + (if_getflags(ifp) ^ sc->xl_if_flags) & (IFF_PROMISC | IFF_ALLMULTI)) xl_rxfilter(sc); else xl_init_locked(sc); } else { - if (ifp->if_drv_flags & IFF_DRV_RUNNING) + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) xl_stop(sc); } - sc->xl_if_flags = ifp->if_flags; + sc->xl_if_flags = if_getflags(ifp); XL_UNLOCK(sc); break; case SIOCADDMULTI: case SIOCDELMULTI: /* XXX Downcall from if_addmulti() possibly with locks held. */ XL_LOCK(sc); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) xl_rxfilter(sc); XL_UNLOCK(sc); break; @@ -3036,19 +3035,19 @@ xl_ioctl(struct ifnet *ifp, u_long command, caddr_t data) &mii->mii_media, command); break; case SIOCSIFCAP: - mask = ifr->ifr_reqcap ^ ifp->if_capenable; + mask = ifr->ifr_reqcap ^ if_getcapenable(ifp); #ifdef DEVICE_POLLING if ((mask & IFCAP_POLLING) != 0 && - (ifp->if_capabilities & IFCAP_POLLING) != 0) { - ifp->if_capenable ^= IFCAP_POLLING; - if ((ifp->if_capenable & IFCAP_POLLING) != 0) { + (if_getcapabilities(ifp) & IFCAP_POLLING) != 0) { + if_togglecapenable(ifp, IFCAP_POLLING); + if ((if_getcapenable(ifp) & IFCAP_POLLING) != 0) { error = ether_poll_register(xl_poll, ifp); if (error) break; XL_LOCK(sc); /* Disable interrupts */ CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_INTR_ENB|0); - ifp->if_capenable |= IFCAP_POLLING; + if_setcapenablebit(ifp, IFCAP_POLLING, 0); XL_UNLOCK(sc); } else { error = ether_poll_deregister(ifp); @@ -3067,19 +3066,19 @@ xl_ioctl(struct ifnet *ifp, u_long command, caddr_t data) #endif /* DEVICE_POLLING */ XL_LOCK(sc); if ((mask & IFCAP_TXCSUM) != 0 && - (ifp->if_capabilities & IFCAP_TXCSUM) != 0) { - ifp->if_capenable ^= IFCAP_TXCSUM; - if ((ifp->if_capenable & IFCAP_TXCSUM) != 0) - ifp->if_hwassist |= XL905B_CSUM_FEATURES; + (if_getcapabilities(ifp) & IFCAP_TXCSUM) != 0) { + if_togglecapenable(ifp, IFCAP_TXCSUM); + if ((if_getcapenable(ifp) & IFCAP_TXCSUM) != 0) + if_sethwassistbits(ifp, XL905B_CSUM_FEATURES, 0); else - ifp->if_hwassist &= ~XL905B_CSUM_FEATURES; + if_sethwassistbits(ifp, 0, XL905B_CSUM_FEATURES); } if ((mask & IFCAP_RXCSUM) != 0 && - (ifp->if_capabilities & IFCAP_RXCSUM) != 0) - ifp->if_capenable ^= IFCAP_RXCSUM; + (if_getcapabilities(ifp) & IFCAP_RXCSUM) != 0) + if_togglecapenable(ifp, IFCAP_RXCSUM); if ((mask & IFCAP_WOL_MAGIC) != 0 && - (ifp->if_capabilities & IFCAP_WOL_MAGIC) != 0) - ifp->if_capenable ^= IFCAP_WOL_MAGIC; + (if_getcapabilities(ifp) & IFCAP_WOL_MAGIC) != 0) + if_togglecapenable(ifp, IFCAP_WOL_MAGIC); XL_UNLOCK(sc); break; default: @@ -3093,7 +3092,7 @@ xl_ioctl(struct ifnet *ifp, u_long command, caddr_t data) static int xl_watchdog(struct xl_softc *sc) { - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; u_int16_t status = 0; int misintr; @@ -3129,10 +3128,10 @@ xl_watchdog(struct xl_softc *sc) device_printf(sc->xl_dev, "no carrier - transceiver cable problem?\n"); - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); xl_init_locked(sc); - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + if (!if_sendq_empty(ifp)) { if (sc->xl_type == XL_TYPE_905B) xl_start_90xB_locked(ifp); else @@ -3150,7 +3149,7 @@ static void xl_stop(struct xl_softc *sc) { int i; - struct ifnet *ifp = sc->xl_ifp; + if_t ifp = sc->xl_ifp; XL_LOCK_ASSERT(sc); @@ -3212,7 +3211,7 @@ xl_stop(struct xl_softc *sc) if (sc->xl_ldata.xl_tx_list != NULL) bzero(sc->xl_ldata.xl_tx_list, XL_TX_LIST_SZ); - ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); + if_setdrvflagbits(ifp, 0, (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)); } /* @@ -3245,15 +3244,15 @@ static int xl_resume(device_t dev) { struct xl_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); ifp = sc->xl_ifp; XL_LOCK(sc); - if (ifp->if_flags & IFF_UP) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if (if_getflags(ifp) & IFF_UP) { + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); xl_init_locked(sc); } @@ -3265,7 +3264,7 @@ xl_resume(device_t dev) static void xl_setwol(struct xl_softc *sc) { - struct ifnet *ifp; + if_t ifp; u_int16_t cfg, pmstat; if ((sc->xl_flags & XL_FLAG_WOL) == 0) @@ -3276,16 +3275,16 @@ xl_setwol(struct xl_softc *sc) /* Clear any pending PME events. */ CSR_READ_2(sc, XL_W7_BM_PME); cfg = 0; - if ((ifp->if_capenable & IFCAP_WOL_MAGIC) != 0) + if ((if_getcapenable(ifp) & IFCAP_WOL_MAGIC) != 0) cfg |= XL_BM_PME_MAGIC; CSR_WRITE_2(sc, XL_W7_BM_PME, cfg); /* Enable RX. */ - if ((ifp->if_capenable & IFCAP_WOL_MAGIC) != 0) + if ((if_getcapenable(ifp) & IFCAP_WOL_MAGIC) != 0) CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_RX_ENABLE); /* Request PME. */ pmstat = pci_read_config(sc->xl_dev, sc->xl_pmcap + PCIR_POWER_STATUS, 2); - if ((ifp->if_capenable & IFCAP_WOL_MAGIC) != 0) + if ((if_getcapenable(ifp) & IFCAP_WOL_MAGIC) != 0) pmstat |= PCIM_PSTAT_PMEENABLE; else pmstat &= ~PCIM_PSTAT_PMEENABLE; diff --git a/sys/dev/xl/if_xlreg.h b/sys/dev/xl/if_xlreg.h index 56d073a6e2e8..3666903be021 100644 --- a/sys/dev/xl/if_xlreg.h +++ b/sys/dev/xl/if_xlreg.h @@ -588,7 +588,7 @@ struct xl_type { #define XL_NO_XCVR_PWR_MAGICBITS 0x0900 struct xl_softc { - struct ifnet *xl_ifp; /* interface info */ + if_t xl_ifp; /* interface info */ device_t xl_dev; /* device info */ struct ifmedia ifmedia; /* media info */ bus_space_handle_t xl_bhandle; From nobody Tue Jan 24 20:48: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 4P1fFB2JbJz3bSnq; Tue, 24 Jan 2023 20:48:14 +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 4P1fFB0yjtz41fT; Tue, 24 Jan 2023 20:48:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593294; 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=5ysJmqWKrMdbuzTU7oqbS8UEKFFHL0fnatOx5T3KDoA=; b=NMtFKv3UyNfY1XWYo4A2115uOUyYj7lzQI2sm68Muhbsezsorloxv+GjcK3CpU3woNmVwb zQFMyQZuV+fRli7Hehi9eynVGRHYO/AVsN/01NDI+QIGasB4lyUD+N97pZ3ufUDRmgM2yV rrA8BHpm1hbmatwHshx7xGD39dAhai+h94MCTEWTlhrtHZTHbg7S/8SEbX8ecWrZLEB1bp U2W1NVCykRhiLSKAEjCx6xtlylex98wByMWY6BgK2EzzbJEaHJsM/6K4UidIYOBKdmbYDh bHjHWzj73HRiG6dRg0llSIUcDXDAChBzYQMKplizrq6D6rbdgzJ06VVf7RxQbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593294; 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=5ysJmqWKrMdbuzTU7oqbS8UEKFFHL0fnatOx5T3KDoA=; b=OHfQezW1v07padCyNBSxd7mjX9PACTqDrA406JLf083zfFVO0noIBJ4k62TdxWQxIixUyK +0v7F4vL0PHN1tgINsaI47xp/qnJuxyeACwhpESJey9utQx0X1d9lvg/yr7KvcSHLE5Aif xlur8thkxyUysjskNCVl2YiCeQ5NjIWqn7WHftbi8mhgRwSNg6aOiEGm43+5DYa76X/5Pm OR3AneND7f+2KLCtGO10GQ8vfuyrAE/ycTTjTl0L3hRjldPY9+c7h2ItYBoHtMXdDaSm4d OLMFqhmi9JAWBH/AFlKNibmnhbYxdmG8N8cBMCysdWYU+diUIGydxvf7f9MRsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593294; a=rsa-sha256; cv=none; b=sJcJd6DCKheHtUKQ9J1G0rmrFQXFzdEk0zwWNb2R+k0IB7MsR71TZ0NG570Pbc70NQSpZq eRKqnWx8cPEfg1Zenh5eQYfXoF2CNqp3X6kQZGFOSVOEa2jeLjCxxmRzlzz6OnLOHxVRK8 nmzHZj0TrsHpB/Dj2jaDmQ03yd1jBKUWw/gVaeO1n2cK93bFUXbD1Qda2sWonXtZBi5ZYa SdqsPeUQ+WPigprpmAkb6a39O7gfDM5FIuIyW27H6EYyMT/J9K7sUdoBVUiItd7wVNHez3 ePhQ2BqvSGb9xHiYqhcCtZYcopAOsGm1o6ZOz37HfHoMLTRfXNoOj7yDwLInrw== 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 4P1fF971y2zN8C; Tue, 24 Jan 2023 20:48:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmDlm053658; Tue, 24 Jan 2023 20:48:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmDLZ053657; Tue, 24 Jan 2023 20:48:13 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:13 GMT Message-Id: <202301242048.30OKmDLZ053657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: c2a4666cd319 - main - Mechanically convert if_emac(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c2a4666cd3199e38e6c3afa60e2e983d810e4542 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=c2a4666cd3199e38e6c3afa60e2e983d810e4542 commit c2a4666cd3199e38e6c3afa60e2e983d810e4542 Author: Justin Hibbits AuthorDate: 2022-02-25 17:58:14 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:35:33 +0000 Mechanically convert if_emac(4) to IfAPI Reviewed by: manu Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37788 --- sys/arm/allwinner/if_emac.c | 126 ++++++++++++++++++++++---------------------- 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/sys/arm/allwinner/if_emac.c b/sys/arm/allwinner/if_emac.c index 8f2bd7222a6a..3db0c6e95bc0 100644 --- a/sys/arm/allwinner/if_emac.c +++ b/sys/arm/allwinner/if_emac.c @@ -89,7 +89,7 @@ __FBSDID("$FreeBSD$"); #include "a10_sramc.h" struct emac_softc { - struct ifnet *emac_ifp; + if_t emac_ifp; device_t emac_dev; device_t emac_miibus; bus_space_handle_t emac_handle; @@ -118,11 +118,11 @@ static int emac_sys_setup(struct emac_softc *); static void emac_reset(struct emac_softc *); static void emac_init_locked(struct emac_softc *); -static void emac_start_locked(struct ifnet *); +static void emac_start_locked(if_t); static void emac_init(void *); static void emac_stop_locked(struct emac_softc *); static void emac_intr(void *); -static int emac_ioctl(struct ifnet *, u_long, caddr_t); +static int emac_ioctl(if_t, u_long, caddr_t); static void emac_rxeof(struct emac_softc *, int); static void emac_txeof(struct emac_softc *, uint32_t); @@ -131,8 +131,8 @@ static int emac_miibus_readreg(device_t, int, int); static int emac_miibus_writereg(device_t, int, int, int); static void emac_miibus_statchg(device_t); -static int emac_ifmedia_upd(struct ifnet *); -static void emac_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int emac_ifmedia_upd(if_t); +static void emac_ifmedia_sts(if_t, struct ifmediareq *); static int sysctl_int_range(SYSCTL_HANDLER_ARGS, int, int); static int sysctl_hw_emac_proc_limit(SYSCTL_HANDLER_ARGS); @@ -232,7 +232,7 @@ emac_hash_maddr(void *arg, struct sockaddr_dl *sdl, u_int cnt) static void emac_set_rx_mode(struct emac_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint32_t hashes[2]; uint32_t rcr = 0; @@ -248,7 +248,7 @@ emac_set_rx_mode(struct emac_softc *sc) hashes[0] = 0; hashes[1] = 0; - if (ifp->if_flags & IFF_ALLMULTI) { + if (if_getflags(ifp) & IFF_ALLMULTI) { hashes[0] = 0xffffffff; hashes[1] = 0xffffffff; } else @@ -258,12 +258,12 @@ emac_set_rx_mode(struct emac_softc *sc) EMAC_WRITE_REG(sc, EMAC_RX_HASH0, hashes[0]); EMAC_WRITE_REG(sc, EMAC_RX_HASH1, hashes[1]); - if (ifp->if_flags & IFF_BROADCAST) { + if (if_getflags(ifp) & IFF_BROADCAST) { rcr |= EMAC_RX_BCO; rcr |= EMAC_RX_MCO; } - if (ifp->if_flags & IFF_PROMISC) + if (if_getflags(ifp) & IFF_PROMISC) rcr |= EMAC_RX_PA; else rcr |= EMAC_RX_UCAD; @@ -292,7 +292,7 @@ emac_drain_rxfifo(struct emac_softc *sc) static void emac_txeof(struct emac_softc *sc, uint32_t status) { - struct ifnet *ifp; + if_t ifp; EMAC_ASSERT_LOCKED(sc); @@ -303,7 +303,7 @@ emac_txeof(struct emac_softc *sc, uint32_t status) if_inc_counter(ifp, IFCOUNTER_OPACKETS, 2); else if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1); - ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); /* Unarm watchdog timer if no TX */ sc->emac_watchdog_timer = 0; @@ -312,7 +312,7 @@ emac_txeof(struct emac_softc *sc, uint32_t status) static void emac_rxeof(struct emac_softc *sc, int count) { - struct ifnet *ifp; + if_t ifp; struct mbuf *m, *m0; uint32_t reg_val, rxcount; int16_t len; @@ -321,7 +321,7 @@ emac_rxeof(struct emac_softc *sc, int count) ifp = sc->emac_ifp; for (; count > 0 && - (ifp->if_drv_flags & IFF_DRV_RUNNING) != 0; count--) { + (if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0; count--) { /* * Race warning: The first packet might arrive with * the interrupts disabled, but the second will fix @@ -443,7 +443,7 @@ emac_rxeof(struct emac_softc *sc, int count) } if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); EMAC_UNLOCK(sc); - (*ifp->if_input)(ifp, m); + if_input(ifp, m); EMAC_LOCK(sc); } } @@ -451,7 +451,7 @@ emac_rxeof(struct emac_softc *sc, int count) static void emac_watchdog(struct emac_softc *sc) { - struct ifnet *ifp; + if_t ifp; EMAC_ASSERT_LOCKED(sc); @@ -468,9 +468,9 @@ emac_watchdog(struct emac_softc *sc) if_printf(sc->emac_ifp, "watchdog timeout -- resetting\n"); if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); emac_init_locked(sc); - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!if_sendq_empty(ifp)) emac_start_locked(ifp); } @@ -502,7 +502,7 @@ emac_init(void *xcs) static void emac_init_locked(struct emac_softc *sc) { - struct ifnet *ifp; + if_t ifp; struct mii_data *mii; uint32_t reg_val; uint8_t *eaddr; @@ -510,7 +510,7 @@ emac_init_locked(struct emac_softc *sc) EMAC_ASSERT_LOCKED(sc); ifp = sc->emac_ifp; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) return; /* Flush RX FIFO */ @@ -575,7 +575,7 @@ emac_init_locked(struct emac_softc *sc) EMAC_WRITE_REG(sc, EMAC_MAC_MAXF, EMAC_MAC_MFL); /* Setup ethernet address */ - eaddr = IF_LLADDR(ifp); + eaddr = if_getlladdr(ifp); EMAC_WRITE_REG(sc, EMAC_MAC_A1, eaddr[0] << 16 | eaddr[1] << 8 | eaddr[2]); EMAC_WRITE_REG(sc, EMAC_MAC_A0, eaddr[3] << 16 | @@ -589,8 +589,8 @@ emac_init_locked(struct emac_softc *sc) reg_val |= EMAC_INT_EN; EMAC_WRITE_REG(sc, EMAC_INT_CTL, reg_val); - ifp->if_drv_flags |= IFF_DRV_RUNNING; - ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); + if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); sc->emac_link = 0; @@ -602,31 +602,31 @@ emac_init_locked(struct emac_softc *sc) } static void -emac_start(struct ifnet *ifp) +emac_start(if_t ifp) { struct emac_softc *sc; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); EMAC_LOCK(sc); emac_start_locked(ifp); EMAC_UNLOCK(sc); } static void -emac_start_locked(struct ifnet *ifp) +emac_start_locked(if_t ifp) { struct emac_softc *sc; struct mbuf *m, *m0; uint32_t fifo, reg; - sc = ifp->if_softc; - if (ifp->if_drv_flags & IFF_DRV_OACTIVE) + sc = if_getsoftc(ifp); + if (if_getdrvflags(ifp) & IFF_DRV_OACTIVE) return; if (sc->emac_fifo_mask == (EMAC_TX_FIFO0 | EMAC_TX_FIFO1)) return; if (sc->emac_link == 0) return; - IFQ_DRV_DEQUEUE(&ifp->if_snd, m); + m = if_dequeue(ifp); if (m == NULL) return; @@ -637,7 +637,7 @@ emac_start_locked(struct ifnet *ifp) fifo = 0; sc->emac_fifo_mask |= (1 << fifo); if (sc->emac_fifo_mask == (EMAC_TX_FIFO0 | EMAC_TX_FIFO1)) - ifp->if_drv_flags |= IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); EMAC_WRITE_REG(sc, EMAC_TX_INS, fifo); /* @@ -677,13 +677,13 @@ emac_start_locked(struct ifnet *ifp) static void emac_stop_locked(struct emac_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint32_t reg_val; EMAC_ASSERT_LOCKED(sc); ifp = sc->emac_ifp; - ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); + if_setdrvflagbits(ifp, 0, (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)); sc->emac_link = 0; /* Disable all interrupt and clear interrupt status */ @@ -703,7 +703,7 @@ static void emac_intr(void *arg) { struct emac_softc *sc; - struct ifnet *ifp; + if_t ifp; uint32_t reg_val; sc = (struct emac_softc *)arg; @@ -724,7 +724,7 @@ emac_intr(void *arg) if (reg_val & EMAC_INT_STA_TX) { emac_txeof(sc, reg_val); ifp = sc->emac_ifp; - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!if_sendq_empty(ifp)) emac_start_locked(ifp); } @@ -736,37 +736,37 @@ emac_intr(void *arg) } static int -emac_ioctl(struct ifnet *ifp, u_long command, caddr_t data) +emac_ioctl(if_t ifp, u_long command, caddr_t data) { struct emac_softc *sc; struct mii_data *mii; struct ifreq *ifr; int error = 0; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); ifr = (struct ifreq *)data; switch (command) { case SIOCSIFFLAGS: EMAC_LOCK(sc); - if (ifp->if_flags & IFF_UP) { - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { - if ((ifp->if_flags ^ sc->emac_if_flags) & + if (if_getflags(ifp) & IFF_UP) { + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) { + if ((if_getflags(ifp) ^ sc->emac_if_flags) & (IFF_PROMISC | IFF_ALLMULTI)) emac_set_rx_mode(sc); } else emac_init_locked(sc); } else { - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) emac_stop_locked(sc); } - sc->emac_if_flags = ifp->if_flags; + sc->emac_if_flags = if_getflags(ifp); EMAC_UNLOCK(sc); break; case SIOCADDMULTI: case SIOCDELMULTI: EMAC_LOCK(sc); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { emac_set_rx_mode(sc); } EMAC_UNLOCK(sc); @@ -803,7 +803,7 @@ emac_detach(device_t dev) struct emac_softc *sc; sc = device_get_softc(dev); - sc->emac_ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(sc->emac_ifp, 0, IFF_DRV_RUNNING); if (device_is_attached(dev)) { ether_ifdetach(sc->emac_ifp); EMAC_LOCK(sc); @@ -850,13 +850,13 @@ static int emac_suspend(device_t dev) { struct emac_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); EMAC_LOCK(sc); ifp = sc->emac_ifp; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) emac_stop_locked(sc); EMAC_UNLOCK(sc); @@ -867,14 +867,14 @@ static int emac_resume(device_t dev) { struct emac_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); EMAC_LOCK(sc); ifp = sc->emac_ifp; - if ((ifp->if_flags & IFF_UP) != 0) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if ((if_getflags(ifp) & IFF_UP) != 0) { + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); emac_init_locked(sc); } EMAC_UNLOCK(sc); @@ -886,7 +886,7 @@ static int emac_attach(device_t dev) { struct emac_softc *sc; - struct ifnet *ifp; + if_t ifp; int error, rid; uint8_t eaddr[ETHER_ADDR_LEN]; @@ -950,7 +950,7 @@ emac_attach(device_t dev) error = ENOSPC; goto fail; } - ifp->if_softc = sc; + if_setsoftc(ifp, sc); /* Setup MII */ error = mii_attach(dev, &sc->emac_miibus, ifp, emac_ifmedia_upd, @@ -961,21 +961,21 @@ emac_attach(device_t dev) } if_initname(ifp, device_get_name(dev), device_get_unit(dev)); - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; - ifp->if_start = emac_start; - ifp->if_ioctl = emac_ioctl; - ifp->if_init = emac_init; - IFQ_SET_MAXLEN(&ifp->if_snd, IFQ_MAXLEN); + if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST); + if_setstartfn(ifp, emac_start); + if_setioctlfn(ifp, emac_ioctl); + if_setinitfn(ifp, emac_init); + if_setsendqlen(ifp, IFQ_MAXLEN); /* Get MAC address */ emac_get_hwaddr(sc, eaddr); ether_ifattach(ifp, eaddr); /* VLAN capability setup. */ - ifp->if_capabilities |= IFCAP_VLAN_MTU; - ifp->if_capenable = ifp->if_capabilities; + if_setcapabilitiesbit(ifp, IFCAP_VLAN_MTU, 0); + if_setcapenable(ifp, if_getcapabilities(ifp)); /* Tell the upper layer we support VLAN over-sized frames. */ - ifp->if_hdrlen = sizeof(struct ether_vlan_header); + if_setifheaderlen(ifp, sizeof(struct ether_vlan_header)); error = bus_setup_intr(dev, sc->emac_irq, INTR_TYPE_NET | INTR_MPSAFE, NULL, emac_intr, sc, &sc->emac_intrhand); @@ -1060,7 +1060,7 @@ emac_miibus_statchg(device_t dev) { struct emac_softc *sc; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; uint32_t reg_val; sc = device_get_softc(dev); @@ -1068,7 +1068,7 @@ emac_miibus_statchg(device_t dev) mii = device_get_softc(sc->emac_miibus); ifp = sc->emac_ifp; if (mii == NULL || ifp == NULL || - (ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + (if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) return; sc->emac_link = 0; @@ -1107,14 +1107,14 @@ emac_miibus_statchg(device_t dev) } static int -emac_ifmedia_upd(struct ifnet *ifp) +emac_ifmedia_upd(if_t ifp) { struct emac_softc *sc; struct mii_data *mii; struct mii_softc *miisc; int error; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); mii = device_get_softc(sc->emac_miibus); EMAC_LOCK(sc); LIST_FOREACH(miisc, &mii->mii_phys, mii_list) @@ -1126,12 +1126,12 @@ emac_ifmedia_upd(struct ifnet *ifp) } static void -emac_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +emac_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct emac_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); mii = device_get_softc(sc->emac_miibus); EMAC_LOCK(sc); From nobody Tue Jan 24 20:48: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 4P1fFC2cFvz3bSlg; Tue, 24 Jan 2023 20:48: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 4P1fFC26bbz41lC; Tue, 24 Jan 2023 20:48:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593295; 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=bWauhd2oDAGdyfT3SQCg+sC+lo+FNn3MgHsaiECllmQ=; b=jORGJuKZ1T1k4JnihLsBheo0F1hfzzdRPaIgPpN/UpMdUxM5PEgOEL1xlCM42N95GGesYb D/+xVr2sSbmzRU2W2Y9VgETMnOYul8V175EC9V0L6+ZwB8A6tXPl+ugmUfN7PHoha7NlOg w3O3GAHi1+lOe3snBLCgfMQcC/wnlKDhKVqtJsQUJhkP1UiiaAFOuXUJRrhSgkPCLxF4oF XfFbxc8mMR+QQ2GxCzFjzQBGXVhDYQPcccWz23WzgVmoxAhthKYUjdAax10QTj3Y9eGx5J dmv/u9h0Nw749kmrfKHi0/0jtgRBsvgdEMDBsT8pUmePqxhudNr5GO2cPgHpFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593295; 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=bWauhd2oDAGdyfT3SQCg+sC+lo+FNn3MgHsaiECllmQ=; b=CyufMeYm5Nfk8UgBNARbjiyf3aieCh6ADMjY2te3Zk2OuexR5p08G22FcYKPZcB99+TD7u WbzBQyftNnpBd2ZnMH5zhE549lbPe6ZW6TPF30V1hDAHvbroeb0MBK5k92UmXu87sk2sND 1alPfn9GDf0HOXrHIpZw6M+zqLB5a5gg4kU7Nzw0jrxksei/Ru6zkmLog+2SpJddjPvF3b v+xlfdjPB+3STOn45niSq4wB6IelhcbHHHBbux+PPhEAvIdD47PA5lxhwQ69XN/85acDKY oSHwoavqup6iP9rfzDtE/7FU7ckCNzDi0aWzKkrIf4fjCEG2gvDECEap/wjrqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593295; a=rsa-sha256; cv=none; b=Ou1F1zFARvlK6C/JT6mezIds2xYbjz2Q+FtrRh6YtCApx4i6jNONvI9yKG3OAvuG93jtY4 NDXLbCg9ey9rmbUvutaNE9LCkMY9XMDDDdjxN+j7bLwkXltNHN9zjdFOYYSSJ1LVcJTwKf ljG9qJMlcE3KJVhN3HYkhi1wEMjPTIPQdmVkrprxiAe7YkO0K0Ke9H1+RUxt2CtFgXEaef mAP+pgBAVyD4yeFSHRMjngLeWOylHxZ+wCkX4H7p6rogehbwebDHJ5EQ+rw9V4dMtPD6yP GaO/YOwP5+bqNfkxHqu7CiiK3EZfJKD2ty8ON5nSY/+5kbgwcB65bUJnFsgL0Q== 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 4P1fFC0sWkzN6L; Tue, 24 Jan 2023 20:48:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmFs7053682; Tue, 24 Jan 2023 20:48:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmF69053681; Tue, 24 Jan 2023 20:48:15 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:15 GMT Message-Id: <202301242048.30OKmF69053681@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 4ee967921a51 - main - Mechanically convert if_vtnet(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4ee967921a516ea3736e31a5500c51aee440eaa5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=4ee967921a516ea3736e31a5500c51aee440eaa5 commit 4ee967921a516ea3736e31a5500c51aee440eaa5 Author: Justin Hibbits AuthorDate: 2022-03-01 17:02:48 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:28 +0000 Mechanically convert if_vtnet(4) to IfAPI Reviewed By: bryanv Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37799 --- sys/dev/virtio/network/if_vtnet.c | 334 +++++++++++++++++------------------ sys/dev/virtio/network/if_vtnetvar.h | 2 +- 2 files changed, 167 insertions(+), 169 deletions(-) diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 264b185ba030..505a62b01b4e 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -118,8 +118,8 @@ static int vtnet_ioctl_mtu(struct vtnet_softc *, u_int); static int vtnet_ioctl_ifflags(struct vtnet_softc *); static int vtnet_ioctl_multi(struct vtnet_softc *); static int vtnet_ioctl_ifcap(struct vtnet_softc *, struct ifreq *); -static int vtnet_ioctl(struct ifnet *, u_long, caddr_t); -static uint64_t vtnet_get_counter(struct ifnet *, ift_counter); +static int vtnet_ioctl(if_t, u_long, caddr_t); +static uint64_t vtnet_get_counter(if_t, ift_counter); static int vtnet_rxq_populate(struct vtnet_rxq *); static void vtnet_rxq_free_mbufs(struct vtnet_rxq *); @@ -161,11 +161,11 @@ static int vtnet_txq_enqueue_buf(struct vtnet_txq *, struct mbuf **, struct vtnet_tx_header *); static int vtnet_txq_encap(struct vtnet_txq *, struct mbuf **, int); #ifdef VTNET_LEGACY_TX -static void vtnet_start_locked(struct vtnet_txq *, struct ifnet *); -static void vtnet_start(struct ifnet *); +static void vtnet_start_locked(struct vtnet_txq *, if_t); +static void vtnet_start(if_t); #else static int vtnet_txq_mq_start_locked(struct vtnet_txq *, struct mbuf *); -static int vtnet_txq_mq_start(struct ifnet *, struct mbuf *); +static int vtnet_txq_mq_start(if_t, struct mbuf *); static void vtnet_txq_tq_deferred(void *, int); #endif static void vtnet_txq_start(struct vtnet_txq *); @@ -175,7 +175,7 @@ static void vtnet_tx_vq_intr(void *); static void vtnet_tx_start_all(struct vtnet_softc *); #ifndef VTNET_LEGACY_TX -static void vtnet_qflush(struct ifnet *); +static void vtnet_qflush(if_t); #endif static int vtnet_watchdog(struct vtnet_txq *); @@ -215,14 +215,14 @@ static void vtnet_rx_filter_mac(struct vtnet_softc *); static int vtnet_exec_vlan_filter(struct vtnet_softc *, int, uint16_t); static void vtnet_rx_filter_vlan(struct vtnet_softc *); static void vtnet_update_vlan_filter(struct vtnet_softc *, int, uint16_t); -static void vtnet_register_vlan(void *, struct ifnet *, uint16_t); -static void vtnet_unregister_vlan(void *, struct ifnet *, uint16_t); +static void vtnet_register_vlan(void *, if_t, uint16_t); +static void vtnet_unregister_vlan(void *, if_t, uint16_t); static void vtnet_update_speed_duplex(struct vtnet_softc *); static int vtnet_is_link_up(struct vtnet_softc *); static void vtnet_update_link_status(struct vtnet_softc *); -static int vtnet_ifmedia_upd(struct ifnet *); -static void vtnet_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int vtnet_ifmedia_upd(if_t); +static void vtnet_ifmedia_sts(if_t, struct ifmediareq *); static void vtnet_get_macaddr(struct vtnet_softc *); static void vtnet_set_macaddr(struct vtnet_softc *); static void vtnet_attached_set_macaddr(struct vtnet_softc *); @@ -495,7 +495,7 @@ static int vtnet_detach(device_t dev) { struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); ifp = sc->vtnet_ifp; @@ -568,13 +568,13 @@ static int vtnet_resume(device_t dev) { struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); ifp = sc->vtnet_ifp; VTNET_CORE_LOCK(sc); - if (ifp->if_flags & IFF_UP) + if (if_getflags(ifp) & IFF_UP) vtnet_init_locked(sc, 0); sc->vtnet_flags &= ~VTNET_FLAG_SUSPENDED; VTNET_CORE_UNLOCK(sc); @@ -1078,7 +1078,7 @@ static int vtnet_alloc_interface(struct vtnet_softc *sc) { device_t dev; - struct ifnet *ifp; + if_t ifp; dev = sc->vtnet_dev; @@ -1087,7 +1087,7 @@ vtnet_alloc_interface(struct vtnet_softc *sc) return (ENOMEM); sc->vtnet_ifp = ifp; - ifp->if_softc = sc; + if_setsoftc(ifp, sc); if_initname(ifp, device_get_name(dev), device_get_unit(dev)); return (0); @@ -1098,32 +1098,31 @@ vtnet_setup_interface(struct vtnet_softc *sc) { device_t dev; struct pfil_head_args pa; - struct ifnet *ifp; + if_t ifp; dev = sc->vtnet_dev; ifp = sc->vtnet_ifp; - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | - IFF_KNOWSEPOCH; - ifp->if_baudrate = IF_Gbps(10); - ifp->if_init = vtnet_init; - ifp->if_ioctl = vtnet_ioctl; - ifp->if_get_counter = vtnet_get_counter; + if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | + IFF_KNOWSEPOCH); + if_setbaudrate(ifp, IF_Gbps(10)); + if_setinitfn(ifp, vtnet_init); + if_setioctlfn(ifp, vtnet_ioctl); + if_setgetcounterfn(ifp, vtnet_get_counter); #ifndef VTNET_LEGACY_TX - ifp->if_transmit = vtnet_txq_mq_start; - ifp->if_qflush = vtnet_qflush; + if_settransmitfn(ifp, vtnet_txq_mq_start); + if_setqflushfn(ifp, vtnet_qflush); #else struct virtqueue *vq = sc->vtnet_txqs[0].vtntx_vq; - ifp->if_start = vtnet_start; - IFQ_SET_MAXLEN(&ifp->if_snd, virtqueue_size(vq) - 1); - ifp->if_snd.ifq_drv_maxlen = virtqueue_size(vq) - 1; - IFQ_SET_READY(&ifp->if_snd); + if_setstartfn(ifp, vtnet_start); + if_setsendqlen(ifp, virtqueue_size(vq) - 1); + if_setsendqready(ifp); #endif vtnet_get_macaddr(sc); if (virtio_with_feature(dev, VIRTIO_NET_F_STATUS)) - ifp->if_capabilities |= IFCAP_LINKSTATE; + if_setcapabilitiesbit(ifp, IFCAP_LINKSTATE, 0); ifmedia_init(&sc->vtnet_media, 0, vtnet_ifmedia_upd, vtnet_ifmedia_sts); ifmedia_add(&sc->vtnet_media, IFM_ETHER | IFM_AUTO, 0, NULL); @@ -1132,35 +1131,35 @@ vtnet_setup_interface(struct vtnet_softc *sc) if (virtio_with_feature(dev, VIRTIO_NET_F_CSUM)) { int gso; - ifp->if_capabilities |= IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6; + if_setcapabilitiesbit(ifp, IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6, 0); gso = virtio_with_feature(dev, VIRTIO_NET_F_GSO); if (gso || virtio_with_feature(dev, VIRTIO_NET_F_HOST_TSO4)) - ifp->if_capabilities |= IFCAP_TSO4; + if_setcapabilitiesbit(ifp, IFCAP_TSO4, 0); if (gso || virtio_with_feature(dev, VIRTIO_NET_F_HOST_TSO6)) - ifp->if_capabilities |= IFCAP_TSO6; + if_setcapabilitiesbit(ifp, IFCAP_TSO6, 0); if (gso || virtio_with_feature(dev, VIRTIO_NET_F_HOST_ECN)) sc->vtnet_flags |= VTNET_FLAG_TSO_ECN; - if (ifp->if_capabilities & (IFCAP_TSO4 | IFCAP_TSO6)) { + if (if_getcapabilities(ifp) & (IFCAP_TSO4 | IFCAP_TSO6)) { int tso_maxlen; - ifp->if_capabilities |= IFCAP_VLAN_HWTSO; + if_setcapabilitiesbit(ifp, IFCAP_VLAN_HWTSO, 0); tso_maxlen = vtnet_tunable_int(sc, "tso_maxlen", vtnet_tso_maxlen); - ifp->if_hw_tsomax = tso_maxlen - - (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN); - ifp->if_hw_tsomaxsegcount = sc->vtnet_tx_nsegs - 1; - ifp->if_hw_tsomaxsegsize = PAGE_SIZE; + if_sethwtsomax(ifp, tso_maxlen - + (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN)); + if_sethwtsomaxsegcount(ifp, sc->vtnet_tx_nsegs - 1); + if_sethwtsomaxsegsize(ifp, PAGE_SIZE); } } if (virtio_with_feature(dev, VIRTIO_NET_F_GUEST_CSUM)) { - ifp->if_capabilities |= IFCAP_RXCSUM; + if_setcapabilitiesbit(ifp, IFCAP_RXCSUM, 0); #ifdef notyet /* BMV: Rx checksums not distinguished between IPv4 and IPv6. */ - ifp->if_capabilities |= IFCAP_RXCSUM_IPV6; + if_setcapabilitiesbit(ifp, IFCAP_RXCSUM_IPV6, 0); #endif if (vtnet_tunable_int(sc, "fixup_needs_csum", @@ -1168,31 +1167,30 @@ vtnet_setup_interface(struct vtnet_softc *sc) sc->vtnet_flags |= VTNET_FLAG_FIXUP_NEEDS_CSUM; /* Support either "hardware" or software LRO. */ - ifp->if_capabilities |= IFCAP_LRO; + if_setcapabilitiesbit(ifp, IFCAP_LRO, 0); } - if (ifp->if_capabilities & (IFCAP_HWCSUM | IFCAP_HWCSUM_IPV6)) { + if (if_getcapabilities(ifp) & (IFCAP_HWCSUM | IFCAP_HWCSUM_IPV6)) { /* * VirtIO does not support VLAN tagging, but we can fake * it by inserting and removing the 802.1Q header during * transmit and receive. We are then able to do checksum * offloading of VLAN frames. */ - ifp->if_capabilities |= - IFCAP_VLAN_HWTAGGING | IFCAP_VLAN_HWCSUM; + if_setcapabilitiesbit(ifp, IFCAP_VLAN_HWTAGGING | IFCAP_VLAN_HWCSUM, 0); } if (sc->vtnet_max_mtu >= ETHERMTU_JUMBO) - ifp->if_capabilities |= IFCAP_JUMBO_MTU; - ifp->if_capabilities |= IFCAP_VLAN_MTU; + if_setcapabilitiesbit(ifp, IFCAP_JUMBO_MTU, 0); + if_setcapabilitiesbit(ifp, IFCAP_VLAN_MTU, 0); /* * Capabilities after here are not enabled by default. */ - ifp->if_capenable = ifp->if_capabilities; + if_setcapenable(ifp, if_getcapabilities(ifp)); if (sc->vtnet_flags & VTNET_FLAG_VLAN_FILTER) { - ifp->if_capabilities |= IFCAP_VLAN_HWFILTER; + if_setcapabilitiesbit(ifp, IFCAP_VLAN_HWFILTER, 0); sc->vtnet_vlan_attach = EVENTHANDLER_REGISTER(vlan_config, vtnet_register_vlan, sc, EVENTHANDLER_PRI_FIRST); @@ -1203,14 +1201,14 @@ vtnet_setup_interface(struct vtnet_softc *sc) ether_ifattach(ifp, sc->vtnet_hwaddr); /* Tell the upper layer(s) we support long frames. */ - ifp->if_hdrlen = sizeof(struct ether_vlan_header); + if_setifheaderlen(ifp, sizeof(struct ether_vlan_header)); DEBUGNET_SET(ifp, vtnet); pa.pa_version = PFIL_VERSION; pa.pa_flags = PFIL_IN; pa.pa_type = PFIL_TYPE_ETHERNET; - pa.pa_headname = ifp->if_xname; + pa.pa_headname = if_name(ifp); sc->vtnet_pfil = pfil_head_register(&pa); return (0); @@ -1252,23 +1250,23 @@ vtnet_rx_cluster_size(struct vtnet_softc *sc, int mtu) static int vtnet_ioctl_mtu(struct vtnet_softc *sc, u_int mtu) { - struct ifnet *ifp; + if_t ifp; int clustersz; ifp = sc->vtnet_ifp; VTNET_CORE_LOCK_ASSERT(sc); - if (ifp->if_mtu == mtu) + if (if_getmtu(ifp) == mtu) return (0); else if (mtu < ETHERMIN || mtu > sc->vtnet_max_mtu) return (EINVAL); - ifp->if_mtu = mtu; + if_setmtu(ifp, mtu); clustersz = vtnet_rx_cluster_size(sc, mtu); if (clustersz != sc->vtnet_rx_clustersz && - ifp->if_drv_flags & IFF_DRV_RUNNING) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_getdrvflags(ifp) & IFF_DRV_RUNNING) { + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); vtnet_init_locked(sc, 0); } @@ -1278,15 +1276,15 @@ vtnet_ioctl_mtu(struct vtnet_softc *sc, u_int mtu) static int vtnet_ioctl_ifflags(struct vtnet_softc *sc) { - struct ifnet *ifp; + if_t ifp; int drv_running; ifp = sc->vtnet_ifp; - drv_running = (ifp->if_drv_flags & IFF_DRV_RUNNING) != 0; + drv_running = (if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0; VTNET_CORE_LOCK_ASSERT(sc); - if ((ifp->if_flags & IFF_UP) == 0) { + if ((if_getflags(ifp) & IFF_UP) == 0) { if (drv_running) vtnet_stop(sc); goto out; @@ -1297,33 +1295,33 @@ vtnet_ioctl_ifflags(struct vtnet_softc *sc) goto out; } - if ((ifp->if_flags ^ sc->vtnet_if_flags) & + if ((if_getflags(ifp) ^ sc->vtnet_if_flags) & (IFF_PROMISC | IFF_ALLMULTI)) { if (sc->vtnet_flags & VTNET_FLAG_CTRL_RX) vtnet_rx_filter(sc); else { - if ((ifp->if_flags ^ sc->vtnet_if_flags) & IFF_ALLMULTI) + if ((if_getflags(ifp) ^ sc->vtnet_if_flags) & IFF_ALLMULTI) return (ENOTSUP); - ifp->if_flags |= IFF_PROMISC; + if_setflagbits(ifp, IFF_PROMISC, 0); } } out: - sc->vtnet_if_flags = ifp->if_flags; + sc->vtnet_if_flags = if_getflags(ifp); return (0); } static int vtnet_ioctl_multi(struct vtnet_softc *sc) { - struct ifnet *ifp; + if_t ifp; ifp = sc->vtnet_ifp; VTNET_CORE_LOCK_ASSERT(sc); if (sc->vtnet_flags & VTNET_FLAG_CTRL_RX && - ifp->if_drv_flags & IFF_DRV_RUNNING) + if_getdrvflags(ifp) & IFF_DRV_RUNNING) vtnet_rx_filter_mac(sc); return (0); @@ -1332,23 +1330,23 @@ vtnet_ioctl_multi(struct vtnet_softc *sc) static int vtnet_ioctl_ifcap(struct vtnet_softc *sc, struct ifreq *ifr) { - struct ifnet *ifp; + if_t ifp; int mask, reinit, update; ifp = sc->vtnet_ifp; - mask = (ifr->ifr_reqcap & ifp->if_capabilities) ^ ifp->if_capenable; + mask = (ifr->ifr_reqcap & if_getcapabilities(ifp)) ^ if_getcapenable(ifp); reinit = update = 0; VTNET_CORE_LOCK_ASSERT(sc); if (mask & IFCAP_TXCSUM) - ifp->if_capenable ^= IFCAP_TXCSUM; + if_togglecapenable(ifp, IFCAP_TXCSUM); if (mask & IFCAP_TXCSUM_IPV6) - ifp->if_capenable ^= IFCAP_TXCSUM_IPV6; + if_togglecapenable(ifp, IFCAP_TXCSUM_IPV6); if (mask & IFCAP_TSO4) - ifp->if_capenable ^= IFCAP_TSO4; + if_togglecapenable(ifp, IFCAP_TSO4); if (mask & IFCAP_TSO6) - ifp->if_capenable ^= IFCAP_TSO6; + if_togglecapenable(ifp, IFCAP_TSO6); if (mask & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6 | IFCAP_LRO)) { /* @@ -1366,25 +1364,25 @@ vtnet_ioctl_ifcap(struct vtnet_softc *sc, struct ifreq *ifr) reinit = update = 0; if (mask & IFCAP_RXCSUM) - ifp->if_capenable ^= IFCAP_RXCSUM; + if_togglecapenable(ifp, IFCAP_RXCSUM); if (mask & IFCAP_RXCSUM_IPV6) - ifp->if_capenable ^= IFCAP_RXCSUM_IPV6; + if_togglecapenable(ifp, IFCAP_RXCSUM_IPV6); if (mask & IFCAP_LRO) - ifp->if_capenable ^= IFCAP_LRO; + if_togglecapenable(ifp, IFCAP_LRO); /* * VirtIO does not distinguish between IPv4 and IPv6 checksums * so treat them as a pair. Guest TSO (LRO) requires receive * checksums. */ - if (ifp->if_capenable & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) { - ifp->if_capenable |= IFCAP_RXCSUM; + if (if_getcapenable(ifp) & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) { + if_setcapenablebit(ifp, IFCAP_RXCSUM, 0); #ifdef notyet - ifp->if_capenable |= IFCAP_RXCSUM_IPV6; + if_setcapenablebit(ifp, IFCAP_RXCSUM_IPV6, 0); #endif } else - ifp->if_capenable &= - ~(IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6 | IFCAP_LRO); + if_setcapenablebit(ifp, 0, + (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6 | IFCAP_LRO)); } if (mask & IFCAP_VLAN_HWFILTER) { @@ -1392,17 +1390,17 @@ vtnet_ioctl_ifcap(struct vtnet_softc *sc, struct ifreq *ifr) reinit = 1; if (mask & IFCAP_VLAN_HWFILTER) - ifp->if_capenable ^= IFCAP_VLAN_HWFILTER; + if_togglecapenable(ifp, IFCAP_VLAN_HWFILTER); } if (mask & IFCAP_VLAN_HWTSO) - ifp->if_capenable ^= IFCAP_VLAN_HWTSO; + if_togglecapenable(ifp, IFCAP_VLAN_HWTSO); if (mask & IFCAP_VLAN_HWTAGGING) - ifp->if_capenable ^= IFCAP_VLAN_HWTAGGING; + if_togglecapenable(ifp, IFCAP_VLAN_HWTAGGING); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { if (reinit) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); vtnet_init_locked(sc, 0); } else if (update) vtnet_update_rx_offloads(sc); @@ -1412,13 +1410,13 @@ vtnet_ioctl_ifcap(struct vtnet_softc *sc, struct ifreq *ifr) } static int -vtnet_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) +vtnet_ioctl(if_t ifp, u_long cmd, caddr_t data) { struct vtnet_softc *sc; struct ifreq *ifr; int error; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); ifr = (struct ifreq *) data; error = 0; @@ -1997,12 +1995,12 @@ vtnet_rxq_input(struct vtnet_rxq *rxq, struct mbuf *m, struct virtio_net_hdr *hdr) { struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = rxq->vtnrx_sc; ifp = sc->vtnet_ifp; - if (ifp->if_capenable & IFCAP_VLAN_HWTAGGING) { + if (if_getcapenable(ifp) & IFCAP_VLAN_HWTAGGING) { struct ether_header *eh = mtod(m, struct ether_header *); if (eh->ether_type == htons(ETHERTYPE_VLAN)) { vtnet_vlan_tag_remove(m); @@ -2041,13 +2039,13 @@ vtnet_rxq_input(struct vtnet_rxq *rxq, struct mbuf *m, rxq->vtnrx_stats.vrxs_ibytes += m->m_pkthdr.len; #if defined(INET) || defined(INET6) - if (vtnet_software_lro(sc) && ifp->if_capenable & IFCAP_LRO) { + if (vtnet_software_lro(sc) && if_getcapenable(ifp) & IFCAP_LRO) { if (vtnet_lro_rx(rxq, m) == 0) return; } #endif - (*ifp->if_input)(ifp, m); + if_input(ifp, m); } static int @@ -2055,7 +2053,7 @@ vtnet_rxq_eof(struct vtnet_rxq *rxq) { struct virtio_net_hdr lhdr, *hdr; struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; struct virtqueue *vq; int deq, count; @@ -2172,7 +2170,7 @@ static void vtnet_rx_vq_process(struct vtnet_rxq *rxq, int tries) { struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; u_int more; #ifdef DEV_NETMAP int nmirq; @@ -2214,7 +2212,7 @@ vtnet_rx_vq_process(struct vtnet_rxq *rxq, int tries) #endif /* DEV_NETMAP */ again: - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) { VTNET_RXQ_UNLOCK(rxq); return; } @@ -2610,7 +2608,7 @@ fail: #ifdef VTNET_LEGACY_TX static void -vtnet_start_locked(struct vtnet_txq *txq, struct ifnet *ifp) +vtnet_start_locked(struct vtnet_txq *txq, if_t ifp) { struct vtnet_softc *sc; struct virtqueue *vq; @@ -2623,7 +2621,7 @@ vtnet_start_locked(struct vtnet_txq *txq, struct ifnet *ifp) VTNET_TXQ_LOCK_ASSERT(txq); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0 || + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0 || sc->vtnet_link_active == 0) return; @@ -2632,17 +2630,17 @@ vtnet_start_locked(struct vtnet_txq *txq, struct ifnet *ifp) again: enq = 0; - while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + while (!if_sendq_empty(ifp)) { if (virtqueue_full(vq)) break; - IFQ_DRV_DEQUEUE(&ifp->if_snd, m0); + m0 = if_dequeue(ifp); if (m0 == NULL) break; if (vtnet_txq_encap(txq, &m0, M_NOWAIT) != 0) { if (m0 != NULL) - IFQ_DRV_PREPEND(&ifp->if_snd, m0); + if_sendq_prepend(ifp, m0); break; } @@ -2660,12 +2658,12 @@ again: } static void -vtnet_start(struct ifnet *ifp) +vtnet_start(if_t ifp) { struct vtnet_softc *sc; struct vtnet_txq *txq; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); txq = &sc->vtnet_txqs[0]; VTNET_TXQ_LOCK(txq); @@ -2681,7 +2679,7 @@ vtnet_txq_mq_start_locked(struct vtnet_txq *txq, struct mbuf *m) struct vtnet_softc *sc; struct virtqueue *vq; struct buf_ring *br; - struct ifnet *ifp; + if_t ifp; int enq, tries, error; sc = txq->vtntx_sc; @@ -2693,7 +2691,7 @@ vtnet_txq_mq_start_locked(struct vtnet_txq *txq, struct mbuf *m) VTNET_TXQ_LOCK_ASSERT(txq); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0 || + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0 || sc->vtnet_link_active == 0) { if (m != NULL) error = drbr_enqueue(ifp, br, m); @@ -2742,13 +2740,13 @@ again: } static int -vtnet_txq_mq_start(struct ifnet *ifp, struct mbuf *m) +vtnet_txq_mq_start(if_t ifp, struct mbuf *m) { struct vtnet_softc *sc; struct vtnet_txq *txq; int i, npairs, error; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); npairs = sc->vtnet_act_vq_pairs; if (M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) @@ -2790,13 +2788,13 @@ static void vtnet_txq_start(struct vtnet_txq *txq) { struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; sc = txq->vtntx_sc; ifp = sc->vtnet_ifp; #ifdef VTNET_LEGACY_TX - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!if_sendq_empty(ifp)) vtnet_start_locked(txq, ifp); #else if (!drbr_empty(ifp, txq->vtntx_br)) @@ -2809,7 +2807,7 @@ vtnet_txq_tq_intr(void *xtxq, int pending __unused) { struct vtnet_softc *sc; struct vtnet_txq *txq; - struct ifnet *ifp; + if_t ifp; txq = xtxq; sc = txq->vtntx_sc; @@ -2817,7 +2815,7 @@ vtnet_txq_tq_intr(void *xtxq, int pending __unused) VTNET_TXQ_LOCK(txq); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) { VTNET_TXQ_UNLOCK(txq); return; } @@ -2864,7 +2862,7 @@ vtnet_tx_vq_intr(void *xtxq) { struct vtnet_softc *sc; struct vtnet_txq *txq; - struct ifnet *ifp; + if_t ifp; txq = xtxq; sc = txq->vtntx_sc; @@ -2888,7 +2886,7 @@ vtnet_tx_vq_intr(void *xtxq) VTNET_TXQ_LOCK(txq); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) { VTNET_TXQ_UNLOCK(txq); return; } @@ -2918,14 +2916,14 @@ vtnet_tx_start_all(struct vtnet_softc *sc) #ifndef VTNET_LEGACY_TX static void -vtnet_qflush(struct ifnet *ifp) +vtnet_qflush(if_t ifp) { struct vtnet_softc *sc; struct vtnet_txq *txq; struct mbuf *m; int i; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); for (i = 0; i < sc->vtnet_act_vq_pairs; i++) { txq = &sc->vtnet_txqs[i]; @@ -2943,7 +2941,7 @@ vtnet_qflush(struct ifnet *ifp) static int vtnet_watchdog(struct vtnet_txq *txq) { - struct ifnet *ifp; + if_t ifp; ifp = txq->vtntx_sc->vtnet_ifp; @@ -3034,7 +3032,7 @@ static void vtnet_tick(void *xsc) { struct vtnet_softc *sc; - struct ifnet *ifp; + if_t ifp; int i, timedout; sc = xsc; @@ -3047,7 +3045,7 @@ vtnet_tick(void *xsc) timedout |= vtnet_watchdog(&sc->vtnet_txqs[i]); if (timedout != 0) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); vtnet_init_locked(sc, 0); } else callout_schedule(&sc->vtnet_tick_ch, hz); @@ -3181,14 +3179,14 @@ static void vtnet_stop(struct vtnet_softc *sc) { device_t dev; - struct ifnet *ifp; + if_t ifp; dev = sc->vtnet_dev; ifp = sc->vtnet_ifp; VTNET_CORE_LOCK_ASSERT(sc); - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); sc->vtnet_link_active = 0; callout_stop(&sc->vtnet_tick_ch); @@ -3216,7 +3214,7 @@ static int vtnet_virtio_reinit(struct vtnet_softc *sc) { device_t dev; - struct ifnet *ifp; + if_t ifp; uint64_t features; int error; @@ -3230,13 +3228,13 @@ vtnet_virtio_reinit(struct vtnet_softc *sc) * via if_capenable and if_hwassist. */ - if ((ifp->if_capenable & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) == 0) + if ((if_getcapenable(ifp) & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) == 0) features &= ~(VIRTIO_NET_F_GUEST_CSUM | VTNET_LRO_FEATURES); - if ((ifp->if_capenable & IFCAP_LRO) == 0) + if ((if_getcapenable(ifp) & IFCAP_LRO) == 0) features &= ~VTNET_LRO_FEATURES; - if ((ifp->if_capenable & IFCAP_VLAN_HWFILTER) == 0) + if ((if_getcapenable(ifp) & IFCAP_VLAN_HWFILTER) == 0) features &= ~VIRTIO_NET_F_CTRL_VLAN; error = virtio_reinit(dev, features); @@ -3254,7 +3252,7 @@ vtnet_virtio_reinit(struct vtnet_softc *sc) static void vtnet_init_rx_filters(struct vtnet_softc *sc) { - struct ifnet *ifp; + if_t ifp; ifp = sc->vtnet_ifp; @@ -3263,7 +3261,7 @@ vtnet_init_rx_filters(struct vtnet_softc *sc) vtnet_rx_filter_mac(sc); } - if (ifp->if_capenable & IFCAP_VLAN_HWFILTER) + if (if_getcapenable(ifp) & IFCAP_VLAN_HWFILTER) vtnet_rx_filter_vlan(sc); } @@ -3271,14 +3269,14 @@ static int vtnet_init_rx_queues(struct vtnet_softc *sc) { device_t dev; - struct ifnet *ifp; + if_t ifp; struct vtnet_rxq *rxq; int i, clustersz, error; dev = sc->vtnet_dev; ifp = sc->vtnet_ifp; - clustersz = vtnet_rx_cluster_size(sc, ifp->if_mtu); + clustersz = vtnet_rx_cluster_size(sc, if_getmtu(ifp)); sc->vtnet_rx_clustersz = clustersz; if (sc->vtnet_flags & VTNET_FLAG_LRO_NOMRG) { @@ -3368,7 +3366,7 @@ vtnet_set_active_vq_pairs(struct vtnet_softc *sc) static void vtnet_update_rx_offloads(struct vtnet_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint64_t features; int error; @@ -3377,15 +3375,15 @@ vtnet_update_rx_offloads(struct vtnet_softc *sc) VTNET_CORE_LOCK_ASSERT(sc); - if (ifp->if_capabilities & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) { - if (ifp->if_capenable & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) + if (if_getcapabilities(ifp) & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) { + if (if_getcapenable(ifp) & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) features |= VIRTIO_NET_F_GUEST_CSUM; else features &= ~VIRTIO_NET_F_GUEST_CSUM; } - if (ifp->if_capabilities & IFCAP_LRO && !vtnet_software_lro(sc)) { - if (ifp->if_capenable & IFCAP_LRO) + if (if_getcapabilities(ifp) & IFCAP_LRO && !vtnet_software_lro(sc)) { + if (if_getcapenable(ifp) & IFCAP_LRO) features |= VTNET_LRO_FEATURES; else features &= ~VTNET_LRO_FEATURES; @@ -3398,8 +3396,8 @@ vtnet_update_rx_offloads(struct vtnet_softc *sc) if (error) { device_printf(sc->vtnet_dev, "%s: cannot update Rx features\n", __func__); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); vtnet_init_locked(sc, 0); } } else @@ -3409,12 +3407,12 @@ vtnet_update_rx_offloads(struct vtnet_softc *sc) static int vtnet_reinit(struct vtnet_softc *sc) { - struct ifnet *ifp; + if_t ifp; int error; ifp = sc->vtnet_ifp; - bcopy(IF_LLADDR(ifp), sc->vtnet_hwaddr, ETHER_ADDR_LEN); + bcopy(if_getlladdr(ifp), sc->vtnet_hwaddr, ETHER_ADDR_LEN); error = vtnet_virtio_reinit(sc); if (error) @@ -3426,15 +3424,15 @@ vtnet_reinit(struct vtnet_softc *sc) if (sc->vtnet_flags & VTNET_FLAG_CTRL_VQ) vtnet_init_rx_filters(sc); - ifp->if_hwassist = 0; - if (ifp->if_capenable & IFCAP_TXCSUM) - ifp->if_hwassist |= VTNET_CSUM_OFFLOAD; - if (ifp->if_capenable & IFCAP_TXCSUM_IPV6) - ifp->if_hwassist |= VTNET_CSUM_OFFLOAD_IPV6; - if (ifp->if_capenable & IFCAP_TSO4) - ifp->if_hwassist |= CSUM_IP_TSO; - if (ifp->if_capenable & IFCAP_TSO6) - ifp->if_hwassist |= CSUM_IP6_TSO; + if_sethwassist(ifp, 0); + if (if_getcapenable(ifp) & IFCAP_TXCSUM) + if_sethwassistbits(ifp, VTNET_CSUM_OFFLOAD, 0); + if (if_getcapenable(ifp) & IFCAP_TXCSUM_IPV6) + if_sethwassistbits(ifp, VTNET_CSUM_OFFLOAD_IPV6, 0); + if (if_getcapenable(ifp) & IFCAP_TSO4) + if_sethwassistbits(ifp, CSUM_IP_TSO, 0); + if (if_getcapenable(ifp) & IFCAP_TSO6) + if_sethwassistbits(ifp, CSUM_IP6_TSO, 0); error = vtnet_init_rxtx_queues(sc); if (error) @@ -3446,13 +3444,13 @@ vtnet_reinit(struct vtnet_softc *sc) static void vtnet_init_locked(struct vtnet_softc *sc, int init_mode) { - struct ifnet *ifp; + if_t ifp; ifp = sc->vtnet_ifp; VTNET_CORE_LOCK_ASSERT(sc); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) return; vtnet_stop(sc); @@ -3474,7 +3472,7 @@ vtnet_init_locked(struct vtnet_softc *sc, int init_mode) return; } - ifp->if_drv_flags |= IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); vtnet_update_link_status(sc); vtnet_enable_interrupts(sc); callout_reset(&sc->vtnet_tick_ch, hz, vtnet_tick, sc); @@ -3685,21 +3683,21 @@ static void vtnet_rx_filter(struct vtnet_softc *sc) { device_t dev; - struct ifnet *ifp; + if_t ifp; dev = sc->vtnet_dev; ifp = sc->vtnet_ifp; VTNET_CORE_LOCK_ASSERT(sc); - if (vtnet_set_promisc(sc, ifp->if_flags & IFF_PROMISC) != 0) { + if (vtnet_set_promisc(sc, if_getflags(ifp) & IFF_PROMISC) != 0) { device_printf(dev, "cannot %s promiscuous mode\n", - ifp->if_flags & IFF_PROMISC ? "enable" : "disable"); + if_getflags(ifp) & IFF_PROMISC ? "enable" : "disable"); } - if (vtnet_set_allmulti(sc, ifp->if_flags & IFF_ALLMULTI) != 0) { + if (vtnet_set_allmulti(sc, if_getflags(ifp) & IFF_ALLMULTI) != 0) { device_printf(dev, "cannot %s all-multicast mode\n", - ifp->if_flags & IFF_ALLMULTI ? "enable" : "disable"); + if_getflags(ifp) & IFF_ALLMULTI ? "enable" : "disable"); } } @@ -3738,7 +3736,7 @@ vtnet_rx_filter_mac(struct vtnet_softc *sc) struct vtnet_mac_filter *filter; struct sglist_seg segs[4]; struct sglist sg; - struct ifnet *ifp; + if_t ifp; bool promisc, allmulti; u_int ucnt, mcnt; int error; @@ -3867,7 +3865,7 @@ vtnet_rx_filter_vlan(struct vtnet_softc *sc) static void vtnet_update_vlan_filter(struct vtnet_softc *sc, int add, uint16_t tag) { - struct ifnet *ifp; + if_t ifp; int idx, bit; ifp = sc->vtnet_ifp; @@ -3884,8 +3882,8 @@ vtnet_update_vlan_filter(struct vtnet_softc *sc, int add, uint16_t tag) else sc->vtnet_vlan_filter[idx] &= ~(1 << bit); - if (ifp->if_capenable & IFCAP_VLAN_HWFILTER && - ifp->if_drv_flags & IFF_DRV_RUNNING && + if (if_getcapenable(ifp) & IFCAP_VLAN_HWFILTER && + if_getdrvflags(ifp) & IFF_DRV_RUNNING && vtnet_exec_vlan_filter(sc, add, tag) != 0) { device_printf(sc->vtnet_dev, "cannot %s VLAN %d %s the host filter table\n", @@ -3896,20 +3894,20 @@ vtnet_update_vlan_filter(struct vtnet_softc *sc, int add, uint16_t tag) } static void -vtnet_register_vlan(void *arg, struct ifnet *ifp, uint16_t tag) +vtnet_register_vlan(void *arg, if_t ifp, uint16_t tag) { - if (ifp->if_softc != arg) + if (if_getsoftc(ifp) != arg) return; vtnet_update_vlan_filter(arg, 1, tag); } static void -vtnet_unregister_vlan(void *arg, struct ifnet *ifp, uint16_t tag) +vtnet_unregister_vlan(void *arg, if_t ifp, uint16_t tag) { - if (ifp->if_softc != arg) + if (if_getsoftc(ifp) != arg) return; vtnet_update_vlan_filter(arg, 0, tag); @@ -3918,7 +3916,7 @@ vtnet_unregister_vlan(void *arg, struct ifnet *ifp, uint16_t tag) static void vtnet_update_speed_duplex(struct vtnet_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint32_t speed; ifp = sc->vtnet_ifp; @@ -3930,7 +3928,7 @@ vtnet_update_speed_duplex(struct vtnet_softc *sc) speed = virtio_read_dev_config_4(sc->vtnet_dev, offsetof(struct virtio_net_config, speed)); if (speed != UINT32_MAX) - ifp->if_baudrate = IF_Mbps(speed); + if_setbaudrate(ifp, IF_Mbps(speed)); } static int @@ -3950,7 +3948,7 @@ vtnet_is_link_up(struct vtnet_softc *sc) static void *** 77 LINES SKIPPED *** From nobody Tue Jan 24 20:48: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 4P1fFD3MxRz3bSnt; Tue, 24 Jan 2023 20:48:16 +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 4P1fFD2n5qz41wn; Tue, 24 Jan 2023 20:48:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593296; 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=ftmc7G29QG7ojx6igubN3d/dwRv7qX/dCQ0Q/oxNWgE=; b=iosWWWDCayHiIoSDZuyrCXTvKR66/37pOGBB3XMj9dsr1M6oKDRuWz+dQInZmIKFKRMNWn 30Kl0hNP1Ootew9QUnxbKs8O68SbmSvoGrYqL6Skj7M5X2TnMOpHHApibPpzR2E/d9gQFT dacKZhKj0c2fnvZYY2oR7kHSkCuXSUmzUGwkqw7/sMJspQC5oRr7sQtnpHv2CEy3ISOQSm FvbjXRrxq1o3ChUTAuXeek7ZSaxmx1Z5io8l8BJGArDZcxqPC84KAayrmUAkhfWbp18GYh DqMBI0tgm6j3uA8FLTgUdYcolEjyZSgpY8LopDdDCOYYmJpuBrCprq9YxHydwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593296; 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=ftmc7G29QG7ojx6igubN3d/dwRv7qX/dCQ0Q/oxNWgE=; b=y04JyIYGGdDO+uSGecGj9U4/y+rxOE2jN6HRCQhgGbmNNXtiyZk/YV9KR0XHehUm5zgJnR azrirLukb2pXX75aBiQdZUpueRG67rAhgJ6fcuhNADbNYHFb9yMauY7cFsIfwc7EiTq3pH Ucs4I0DvwJqXNY6Ss9XqEFFVvHbAUAVw/JbyDwRDWWmdXuhjdp4wculeN90aEjmfzHaobc di+K2kNKomH/q+G9Nma/CmUaDOKle1rMtOeL3nZRJkVtro55MfKj/txafNACFZBz6wE+xu od3YXOjaJDlXQ+yqAF1von9ffjLKpx/EGCx7ctpW3tsSDpBXLkX3QMcIMTFaug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593296; a=rsa-sha256; cv=none; b=ql0F0IDwkezLh2jm+9zp/BnaRnCEm5FPZgbMQzwJ/1o33r0zGLytN8Vl/eHGPuKSuWmGaM 9GzZ2WOFchvcAgJ441QigDKjs8VyzGPnsV/iIAZaiZYTFo5Q7IDf3qyyfRwXjmQwpICl1s LfWBkwOvCN3W4O/JglQ0PCUwrOJtduE+Iwv8RpeUj3r8LNwj9cKT9lqDya+Q5SNFKWToLe 4Pc1xTa5aD5siBLlQQZYHMVmTjmEk2nku1v7lyl2BbkL+CClJaACmRWJRPdF3pBCPMlvom CrA9hGMEgfApTpfpVsUkjwSefDRDhwumpg4kotoSwtB4QGqJZTsF0WBiafzPZg== 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 4P1fFD1qhSzN6M; Tue, 24 Jan 2023 20:48:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmGpg053707; Tue, 24 Jan 2023 20:48:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmGNc053706; Tue, 24 Jan 2023 20:48:16 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:16 GMT Message-Id: <202301242048.30OKmGNc053706@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 2c7bc0f55192 - main - Mechanically convert if_cpsw(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2c7bc0f5519262f6ab2d5643d974c7f2f47fc9b2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=2c7bc0f5519262f6ab2d5643d974c7f2f47fc9b2 commit 2c7bc0f5519262f6ab2d5643d974c7f2f47fc9b2 Author: Justin Hibbits AuthorDate: 2022-02-25 18:00:25 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:28 +0000 Mechanically convert if_cpsw(4) to IfAPI Reviewed By: manu Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37789 --- sys/arm/ti/cpsw/if_cpsw.c | 105 +++++++++++++++++++++---------------------- sys/arm/ti/cpsw/if_cpswvar.h | 4 +- 2 files changed, 54 insertions(+), 55 deletions(-) diff --git a/sys/arm/ti/cpsw/if_cpsw.c b/sys/arm/ti/cpsw/if_cpsw.c index 1dbd53b72004..6f1bcc345f47 100644 --- a/sys/arm/ti/cpsw/if_cpsw.c +++ b/sys/arm/ti/cpsw/if_cpsw.c @@ -117,7 +117,7 @@ static int cpsw_suspend(device_t); static int cpsw_resume(device_t); /* Ioctl. */ -static int cpswp_ioctl(struct ifnet *, u_long command, caddr_t data); +static int cpswp_ioctl(if_t, u_long command, caddr_t data); static int cpswp_miibus_readreg(device_t, int phy, int reg); static int cpswp_miibus_writereg(device_t, int phy, int reg, int value); @@ -127,7 +127,7 @@ static void cpswp_miibus_statchg(device_t); static void cpsw_intr_rx(void *arg); static struct mbuf *cpsw_rx_dequeue(struct cpsw_softc *); static void cpsw_rx_enqueue(struct cpsw_softc *); -static void cpswp_start(struct ifnet *); +static void cpswp_start(if_t); static void cpsw_intr_tx(void *); static void cpswp_tx_enqueue(struct cpswp_softc *); static int cpsw_tx_dequeue(struct cpsw_softc *); @@ -136,8 +136,8 @@ static int cpsw_tx_dequeue(struct cpsw_softc *); static void cpsw_intr_rx_thresh(void *); static void cpsw_intr_misc(void *); static void cpswp_tick(void *); -static void cpswp_ifmedia_sts(struct ifnet *, struct ifmediareq *); -static int cpswp_ifmedia_upd(struct ifnet *); +static void cpswp_ifmedia_sts(if_t, struct ifmediareq *); +static int cpswp_ifmedia_upd(if_t); static void cpsw_tx_watchdog(void *); /* ALE support */ @@ -997,7 +997,7 @@ static int cpswp_attach(device_t dev) { int error; - struct ifnet *ifp; + if_t ifp; struct cpswp_softc *sc; uint32_t reg; uint8_t mac_addr[ETHER_ADDR_LEN]; @@ -1033,18 +1033,17 @@ cpswp_attach(device_t dev) } if_initname(ifp, device_get_name(sc->dev), sc->unit); - ifp->if_softc = sc; - ifp->if_flags = IFF_SIMPLEX | IFF_MULTICAST | IFF_BROADCAST; - ifp->if_capabilities = IFCAP_VLAN_MTU | IFCAP_HWCSUM; //FIXME VLAN? - ifp->if_capenable = ifp->if_capabilities; + if_setsoftc(ifp, sc); + if_setflags(ifp, IFF_SIMPLEX | IFF_MULTICAST | IFF_BROADCAST); - ifp->if_init = cpswp_init; - ifp->if_start = cpswp_start; - ifp->if_ioctl = cpswp_ioctl; + if_setcapenable(ifp, if_getcapabilities(ifp)); - ifp->if_snd.ifq_drv_maxlen = sc->swsc->tx.queue_slots; - IFQ_SET_MAXLEN(&ifp->if_snd, ifp->if_snd.ifq_drv_maxlen); - IFQ_SET_READY(&ifp->if_snd); + if_setinitfn(ifp, cpswp_init); + if_setstartfn(ifp, cpswp_start); + if_setioctlfn(ifp, cpswp_ioctl); + + if_setsendqlen(ifp, sc->swsc->tx.queue_slots); + if_setsendqready(ifp); /* FIXME: For now; Go and kidnap syscon from opp-table */ /* ti,cpsw actually have an optional syscon reference but only for am33xx?? */ @@ -1129,7 +1128,7 @@ static int cpsw_ports_down(struct cpsw_softc *sc) { struct cpswp_softc *psc; - struct ifnet *ifp1, *ifp2; + if_t ifp1, ifp2; if (!sc->dualemac) return (1); @@ -1161,13 +1160,13 @@ cpswp_init_locked(void *arg) int i; #endif struct cpswp_softc *sc = arg; - struct ifnet *ifp; + if_t ifp; uint32_t reg; CPSW_DEBUGF(sc->swsc, ("")); CPSW_PORT_LOCK_ASSERT(sc); ifp = sc->ifp; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) return; getbinuptime(&sc->init_uptime); @@ -1215,8 +1214,8 @@ cpswp_init_locked(void *arg) mii_mediachg(sc->mii); callout_reset(&sc->mii_callout, hz, cpswp_tick, sc); - ifp->if_drv_flags |= IFF_DRV_RUNNING; - ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); + if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); } static int @@ -1292,19 +1291,19 @@ cpsw_tx_teardown(struct cpsw_softc *sc) static void cpswp_stop_locked(struct cpswp_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint32_t reg; ifp = sc->ifp; CPSW_DEBUGF(sc->swsc, ("")); CPSW_PORT_LOCK_ASSERT(sc); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) return; /* Disable interface */ - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; - ifp->if_drv_flags |= IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); /* Stop ticker */ callout_stop(&sc->mii_callout); @@ -1399,7 +1398,7 @@ cpsw_set_allmulti(struct cpswp_softc *sc, int set) } static int -cpswp_ioctl(struct ifnet *ifp, u_long command, caddr_t data) +cpswp_ioctl(if_t ifp, u_long command, caddr_t data) { struct cpswp_softc *sc; struct ifreq *ifr; @@ -1407,45 +1406,45 @@ cpswp_ioctl(struct ifnet *ifp, u_long command, caddr_t data) uint32_t changed; error = 0; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); ifr = (struct ifreq *)data; switch (command) { case SIOCSIFCAP: - changed = ifp->if_capenable ^ ifr->ifr_reqcap; + changed = if_getcapenable(ifp) ^ ifr->ifr_reqcap; if (changed & IFCAP_HWCSUM) { if ((ifr->ifr_reqcap & changed) & IFCAP_HWCSUM) - ifp->if_capenable |= IFCAP_HWCSUM; + if_setcapenablebit(ifp, IFCAP_HWCSUM, 0); else - ifp->if_capenable &= ~IFCAP_HWCSUM; + if_setcapenablebit(ifp, 0, IFCAP_HWCSUM); } error = 0; break; case SIOCSIFFLAGS: CPSW_PORT_LOCK(sc); - if (ifp->if_flags & IFF_UP) { - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - changed = ifp->if_flags ^ sc->if_flags; + if (if_getflags(ifp) & IFF_UP) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { + changed = if_getflags(ifp) ^ sc->if_flags; CPSW_DEBUGF(sc->swsc, ("SIOCSIFFLAGS: UP & RUNNING (changed=0x%x)", changed)); if (changed & IFF_PROMISC) cpsw_set_promisc(sc, - ifp->if_flags & IFF_PROMISC); + if_getflags(ifp) & IFF_PROMISC); if (changed & IFF_ALLMULTI) cpsw_set_allmulti(sc, - ifp->if_flags & IFF_ALLMULTI); + if_getflags(ifp) & IFF_ALLMULTI); } else { CPSW_DEBUGF(sc->swsc, ("SIOCSIFFLAGS: starting up")); cpswp_init_locked(sc); } - } else if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + } else if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { CPSW_DEBUGF(sc->swsc, ("SIOCSIFFLAGS: shutting down")); cpswp_stop_locked(sc); } - sc->if_flags = ifp->if_flags; + sc->if_flags = if_getflags(ifp); CPSW_PORT_UNLOCK(sc); break; case SIOCADDMULTI: @@ -1582,7 +1581,7 @@ static void cpsw_intr_rx(void *arg) { struct cpsw_softc *sc; - struct ifnet *ifp; + if_t ifp; struct mbuf *received, *next; sc = (struct cpsw_softc *)arg; @@ -1601,7 +1600,7 @@ cpsw_intr_rx(void *arg) next = received->m_nextpkt; received->m_nextpkt = NULL; ifp = received->m_pkthdr.rcvif; - (*ifp->if_input)(ifp, received); + if_input(ifp, received); if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); received = next; } @@ -1684,7 +1683,7 @@ cpsw_rx_dequeue(struct cpsw_softc *sc) nsegs = 0; } - if ((psc->ifp->if_capenable & IFCAP_RXCSUM) != 0) { + if ((if_getcapenable(psc->ifp) & IFCAP_RXCSUM) != 0) { /* check for valid CRC by looking into pkt_err[5:4] */ if ((bd.flags & (CPDMA_BD_SOP | CPDMA_BD_PKT_ERR_MASK)) == @@ -1712,7 +1711,7 @@ cpsw_rx_dequeue(struct cpsw_softc *sc) if (bootverbose) printf( "%s: %s: discanding fragment packet w/o header\n", - __func__, psc->ifp->if_xname); + __func__, if_name(psc->ifp)); m_freem(m); continue; } else { @@ -1816,12 +1815,12 @@ cpsw_rx_enqueue(struct cpsw_softc *sc) } static void -cpswp_start(struct ifnet *ifp) +cpswp_start(if_t ifp) { struct cpswp_softc *sc; - sc = ifp->if_softc; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0 || + sc = if_getsoftc(ifp); + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0 || sc->swsc->tx.running == 0) { return; } @@ -1859,7 +1858,7 @@ cpswp_tx_enqueue(struct cpswp_softc *sc) first_new_slot = NULL; last_old_slot = STAILQ_LAST(&sc->swsc->tx.active, cpsw_slot, next); while ((slot = STAILQ_FIRST(&sc->swsc->tx.avail)) != NULL) { - IF_DEQUEUE(&sc->ifp->if_snd, m0); + m0 = if_dequeue(sc->ifp); if (m0 == NULL) break; @@ -1885,7 +1884,7 @@ cpswp_tx_enqueue(struct cpswp_softc *sc) } else { CPSW_DEBUGF(sc->swsc, ("Requeueing defragmented packet")); - IF_PREPEND(&sc->ifp->if_snd, m0); + if_sendq_prepend(sc->ifp, m0); } slot->mbuf = NULL; continue; @@ -2075,7 +2074,7 @@ static void cpsw_intr_rx_thresh(void *arg) { struct cpsw_softc *sc; - struct ifnet *ifp; + if_t ifp; struct mbuf *received, *next; sc = (struct cpsw_softc *)arg; @@ -2089,7 +2088,7 @@ cpsw_intr_rx_thresh(void *arg) next = received->m_nextpkt; received->m_nextpkt = NULL; ifp = received->m_pkthdr.rcvif; - (*ifp->if_input)(ifp, received); + if_input(ifp, received); if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); received = next; } @@ -2224,12 +2223,12 @@ cpswp_tick(void *msc) } static void -cpswp_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +cpswp_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct cpswp_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); CPSW_DEBUGF(sc->swsc, ("")); CPSW_PORT_LOCK(sc); @@ -2242,11 +2241,11 @@ cpswp_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) } static int -cpswp_ifmedia_upd(struct ifnet *ifp) +cpswp_ifmedia_upd(if_t ifp) { struct cpswp_softc *sc; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); CPSW_DEBUGF(sc->swsc, ("")); CPSW_PORT_LOCK(sc); mii_mediachg(sc->mii); @@ -2478,7 +2477,7 @@ cpswp_ale_update_addresses(struct cpswp_softc *sc, int purge) * For simplicity, keep this entry at table index 0 for port 1 and * at index 2 for port 2 in the ALE. */ - mac = LLADDR((struct sockaddr_dl *)sc->ifp->if_addr->ifa_addr); + mac = LLADDR((struct sockaddr_dl *)if_getifaddr(sc->ifp)->ifa_addr); ale_entry[0] = mac[2] << 24 | mac[3] << 16 | mac[4] << 8 | mac[5]; ale_entry[1] = ale_type | mac[0] << 8 | mac[1]; /* addr entry + mac */ ale_entry[2] = 0; /* port = 0 */ @@ -2668,7 +2667,7 @@ cpsw_stat_uptime(SYSCTL_HANDLER_ARGS) swsc = arg1; sc = device_get_softc(swsc->port[arg2].dev); - if (sc->ifp->if_drv_flags & IFF_DRV_RUNNING) { + if (if_getdrvflags(sc->ifp) & IFF_DRV_RUNNING) { getbinuptime(&t); bintime_sub(&t, &sc->init_uptime); result = t.sec; diff --git a/sys/arm/ti/cpsw/if_cpswvar.h b/sys/arm/ti/cpsw/if_cpswvar.h index 9c51b76b9db4..36f6ac18ef43 100644 --- a/sys/arm/ti/cpsw/if_cpswvar.h +++ b/sys/arm/ti/cpsw/if_cpswvar.h @@ -55,7 +55,7 @@ struct cpsw_vlangroups { struct cpsw_slot { uint32_t bd_offset; /* Offset of corresponding BD within CPPI RAM. */ bus_dmamap_t dmamap; - struct ifnet *ifp; + if_t ifp; struct mbuf *mbuf; STAILQ_ENTRY(cpsw_slot) next; }; @@ -139,7 +139,7 @@ struct cpswp_softc { struct bintime init_uptime; /* system uptime when init happened. */ struct callout mii_callout; struct cpsw_softc *swsc; - struct ifnet *ifp; + if_t ifp; struct mii_data *mii; struct mtx lock; uint32_t if_flags; From nobody Tue Jan 24 20:48:17 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 4P1fFF53Jkz3bSkJ; Tue, 24 Jan 2023 20:48:17 +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 4P1fFF3K9Rz41wy; Tue, 24 Jan 2023 20:48:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593297; 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=bStUfN0uwj28Zv+RkeJWMhgRp0/Z4iYjwgsYI1/q7dI=; b=Y4XP4QAoqyBoy0QKDl9qB/ISgKMMWVYbcUlc0+JnRljxUIYg0Fivttq5zyaBB/DpGwIxMp 7M2JxCYkOrqjk0Dc9BvMU9MEkEvxKod907jiTQK3EUmXVzcQaUAfY6hnIn+U7BIvCgC5W+ TLPZtdmHvv32Rs3zNXvhY/mAFjz9EFfG2e4n4v7eozp9KjvQ+UV6dKqAcoEMYpKFStKZjI 9asuWi0DKublGMfxAGzUVix/JM1IzGzc76ceBU4EMU7YO5PeJSSWJzYnhonQzCCBAfb3Ox rkYeWyW/xeHDy7lCd74Mh9cF1KQYx5m2rd2tzGQb2sdr4mnLCQV4ugUeKbV1wQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593297; 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=bStUfN0uwj28Zv+RkeJWMhgRp0/Z4iYjwgsYI1/q7dI=; b=ofa8JHv8Fl75nki+bG2UI3RqV8QZVLwTEg4QGKoxepa3q0LW2Vem8pdm0l2v2w8He//GQh MwR0pTxb8PUW6Y7bxfcpLphVfLlrPjvGytaPwMNGavc6cgrDlQQpICPZI22zlw9hjKeCF0 v6LsSgtRj8QT2K6Cb98j/yJXfkg9ii9puDd6ucKcW0iiolT573o1jvzCXTiIyDi3BR5CKX oX/trchKFzcVCbg4ej6VU4aAHXfIJSbUdoUMPA2cuRMSsd/plLQrWMv/6wk1WP1Q6tCze0 WI65Iq2t5yW9q3xJWHaUOnHEQn6PSb2Z05NWqdQ3I1rLt7mCtg/blmm1CNPzQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593297; a=rsa-sha256; cv=none; b=NYfDkOpg2jNBhbM8Q0oDwOKoKQxAUV37fFdCjVk3gAGcoOmSnF3/wd8DCZ7rZXcph8vUfs +1R5hU0H4kn4vaD4W5NRoPAvcnSAVo8Xyr2EAFLfbywpIHcU9KwKeoEP6P5/UGHy9htzio IroMFOzuQbOpasDwF4gFln6DH0L8npU2Oo/1y36xsjKCJoAQ9NHd3UwDBPAZ1DxN9rnbnb Fm//YYoDqKy4EOP5qediAflAWHthHHBuGz1YQC4uC+eQW68ADTnisGg1yuoGHeKmG/4hlR wnT7nAuaFaKYi3dI0wvK3I7BnKfKpC1tHneJNtVfpfy1r3Pmd7FkQcTFVY5jdA== 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 4P1fFF2G1BzN6N; Tue, 24 Jan 2023 20:48:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmHtx053745; Tue, 24 Jan 2023 20:48:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmH2B053744; Tue, 24 Jan 2023 20:48:17 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:17 GMT Message-Id: <202301242048.30OKmH2B053744@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 992fa62b2320 - main - Mechanically convert neta(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 992fa62b2320308a83836bea9cbf5d61d69e0e90 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=992fa62b2320308a83836bea9cbf5d61d69e0e90 commit 992fa62b2320308a83836bea9cbf5d61d69e0e90 Author: Justin Hibbits AuthorDate: 2022-08-17 20:34:32 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:28 +0000 Mechanically convert neta(4) to IfAPI Reviewed by: mw Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37825 --- sys/dev/neta/if_mvneta.c | 265 ++++++++++++++++++++++---------------------- sys/dev/neta/if_mvnetavar.h | 4 +- 2 files changed, 134 insertions(+), 135 deletions(-) diff --git a/sys/dev/neta/if_mvneta.c b/sys/dev/neta/if_mvneta.c index 3e3b07259d4e..10ab59732b1d 100644 --- a/sys/dev/neta/if_mvneta.c +++ b/sys/dev/neta/if_mvneta.c @@ -96,7 +96,7 @@ __FBSDID("$FreeBSD$"); #define A3700_TCLK_250MHZ 250000000 /* Device Register Initialization */ -STATIC int mvneta_initreg(struct ifnet *); +STATIC int mvneta_initreg(if_t); /* Descriptor Ring Control for each of queues */ STATIC int mvneta_ring_alloc_rx_queue(struct mvneta_softc *, int); @@ -111,10 +111,10 @@ STATIC void mvneta_dmamap_cb(void *, bus_dma_segment_t *, int, int); STATIC int mvneta_dma_create(struct mvneta_softc *); /* Rx/Tx Queue Control */ -STATIC int mvneta_rx_queue_init(struct ifnet *, int); -STATIC int mvneta_tx_queue_init(struct ifnet *, int); -STATIC int mvneta_rx_queue_enable(struct ifnet *, int); -STATIC int mvneta_tx_queue_enable(struct ifnet *, int); +STATIC int mvneta_rx_queue_init(if_t, int); +STATIC int mvneta_tx_queue_init(if_t, int); +STATIC int mvneta_rx_queue_enable(if_t, int); +STATIC int mvneta_tx_queue_enable(if_t, int); STATIC void mvneta_rx_lockq(struct mvneta_softc *, int); STATIC void mvneta_rx_unlockq(struct mvneta_softc *, int); STATIC void mvneta_tx_lockq(struct mvneta_softc *, int); @@ -130,19 +130,19 @@ STATIC void mvneta_tick(void *); STATIC int mvneta_xmitfast_locked(struct mvneta_softc *, int, struct mbuf **); STATIC int mvneta_xmit_locked(struct mvneta_softc *, int); #ifdef MVNETA_MULTIQUEUE -STATIC int mvneta_transmit(struct ifnet *, struct mbuf *); +STATIC int mvneta_transmit(if_t, struct mbuf *); #else /* !MVNETA_MULTIQUEUE */ -STATIC void mvneta_start(struct ifnet *); +STATIC void mvneta_start(if_t); #endif -STATIC void mvneta_qflush(struct ifnet *); +STATIC void mvneta_qflush(if_t); STATIC void mvneta_tx_task(void *, int); -STATIC int mvneta_ioctl(struct ifnet *, u_long, caddr_t); +STATIC int mvneta_ioctl(if_t, u_long, caddr_t); STATIC void mvneta_init(void *); STATIC void mvneta_init_locked(void *); STATIC void mvneta_stop(struct mvneta_softc *); STATIC void mvneta_stop_locked(struct mvneta_softc *); -STATIC int mvneta_mediachange(struct ifnet *); -STATIC void mvneta_mediastatus(struct ifnet *, struct ifmediareq *); +STATIC int mvneta_mediachange(if_t); +STATIC void mvneta_mediastatus(if_t, struct ifmediareq *); STATIC void mvneta_portup(struct mvneta_softc *); STATIC void mvneta_portdown(struct mvneta_softc *); @@ -160,7 +160,7 @@ STATIC void mvneta_linkreset(struct mvneta_softc *); /* Tx Subroutines */ STATIC int mvneta_tx_queue(struct mvneta_softc *, struct mbuf **, int); -STATIC void mvneta_tx_set_csumflag(struct ifnet *, +STATIC void mvneta_tx_set_csumflag(if_t, struct mvneta_tx_desc *, struct mbuf *); STATIC void mvneta_tx_queue_complete(struct mvneta_softc *, int); STATIC void mvneta_tx_drain(struct mvneta_softc *); @@ -169,7 +169,7 @@ STATIC void mvneta_tx_drain(struct mvneta_softc *); STATIC int mvneta_rx(struct mvneta_softc *, int, int); STATIC void mvneta_rx_queue(struct mvneta_softc *, int, int); STATIC void mvneta_rx_queue_refill(struct mvneta_softc *, int); -STATIC void mvneta_rx_set_csumflag(struct ifnet *, +STATIC void mvneta_rx_set_csumflag(if_t, struct mvneta_rx_desc *, struct mbuf *); STATIC void mvneta_rx_buf_free(struct mvneta_softc *, struct mvneta_buf *); @@ -523,7 +523,7 @@ int mvneta_attach(device_t self) { struct mvneta_softc *sc; - struct ifnet *ifp; + if_t ifp; device_t child; int ifm_target; int q, error; @@ -625,47 +625,46 @@ mvneta_attach(device_t self) * We can support 802.1Q VLAN-sized frames and jumbo * Ethernet frames. */ - ifp->if_capabilities |= IFCAP_VLAN_MTU | IFCAP_JUMBO_MTU; + if_setcapabilitiesbit(ifp, IFCAP_VLAN_MTU | IFCAP_JUMBO_MTU, 0); - ifp->if_softc = sc; - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; + if_setsoftc(ifp, sc); + if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST); #ifdef MVNETA_MULTIQUEUE - ifp->if_transmit = mvneta_transmit; - ifp->if_qflush = mvneta_qflush; + if_settransmitfn(ifp, mvneta_transmit); + if_setqflushfn(ifp, mvneta_qflush); #else /* !MVNETA_MULTIQUEUE */ - ifp->if_start = mvneta_start; - ifp->if_snd.ifq_drv_maxlen = MVNETA_TX_RING_CNT - 1; - IFQ_SET_MAXLEN(&ifp->if_snd, ifp->if_snd.ifq_drv_maxlen); - IFQ_SET_READY(&ifp->if_snd); + if_setstartfn(ifp, mvneta_start); + if_setsendqlen(ifp, MVNETA_TX_RING_CNT - 1); + if_setsendqready(ifp); #endif - ifp->if_init = mvneta_init; - ifp->if_ioctl = mvneta_ioctl; + if_setinitfn(ifp, mvneta_init); + if_setioctlfn(ifp, mvneta_ioctl); /* * We can do IPv4/TCPv4/UDPv4/TCPv6/UDPv6 checksums in hardware. */ - ifp->if_capabilities |= IFCAP_HWCSUM; + if_setcapabilitiesbit(ifp, IFCAP_HWCSUM, 0); /* * As VLAN hardware tagging is not supported * but is necessary to perform VLAN hardware checksums, * it is done in the driver */ - ifp->if_capabilities |= IFCAP_VLAN_HWTAGGING | IFCAP_VLAN_HWCSUM; + if_setcapabilitiesbit(ifp, IFCAP_VLAN_HWTAGGING | IFCAP_VLAN_HWCSUM, 0); /* * Currently IPv6 HW checksum is broken, so make sure it is disabled. */ - ifp->if_capabilities &= ~IFCAP_HWCSUM_IPV6; - ifp->if_capenable = ifp->if_capabilities; + if_setcapabilitiesbit(ifp, 0, IFCAP_HWCSUM_IPV6); + if_setcapenable(ifp, if_getcapabilities(ifp)); /* * Disabled option(s): * - Support for Large Receive Offload */ - ifp->if_capabilities |= IFCAP_LRO; + if_setcapabilitiesbit(ifp, IFCAP_LRO, 0); - ifp->if_hwassist = CSUM_IP | CSUM_TCP | CSUM_UDP; + if_sethwassist(ifp, CSUM_IP | CSUM_TCP | CSUM_UDP); sc->rx_frame_size = MCLBYTES; /* ether_ifattach() always sets normal mtu */ @@ -883,7 +882,7 @@ STATIC int mvneta_miibus_readreg(device_t dev, int phy, int reg) { struct mvneta_softc *sc; - struct ifnet *ifp; + if_t ifp; uint32_t smi, val; int i; @@ -934,14 +933,14 @@ mvneta_miibus_readreg(device_t dev, int phy, int reg) mtx_unlock(&mii_mutex); #ifdef MVNETA_KTR - CTR3(KTR_SPARE2, "%s i=%d, timeout=%d\n", ifp->if_xname, i, + CTR3(KTR_SPARE2, "%s i=%d, timeout=%d\n", if_getname(ifp), i, MVNETA_PHY_TIMEOUT); #endif val = smi & MVNETA_SMI_DATA_MASK; #ifdef MVNETA_KTR - CTR4(KTR_SPARE2, "%s phy=%d, reg=%#x, val=%#x\n", ifp->if_xname, phy, + CTR4(KTR_SPARE2, "%s phy=%d, reg=%#x, val=%#x\n", if_getname(ifp), phy, reg, val); #endif return (val); @@ -951,14 +950,14 @@ STATIC int mvneta_miibus_writereg(device_t dev, int phy, int reg, int val) { struct mvneta_softc *sc; - struct ifnet *ifp; + if_t ifp; uint32_t smi; int i; sc = device_get_softc(dev); ifp = sc->ifp; #ifdef MVNETA_KTR - CTR4(KTR_SPARE2, "%s phy=%d, reg=%#x, val=%#x\n", ifp->if_xname, + CTR4(KTR_SPARE2, "%s phy=%d, reg=%#x, val=%#x\n", if_name(ifp), phy, reg, val); #endif @@ -1092,15 +1091,15 @@ mvneta_portdown(struct mvneta_softc *sc) * the device is not enabled here. */ STATIC int -mvneta_initreg(struct ifnet *ifp) +mvneta_initreg(if_t ifp) { struct mvneta_softc *sc; int q; uint32_t reg; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); #ifdef MVNETA_KTR - CTR1(KTR_SPARE2, "%s initializing device register", ifp->if_xname); + CTR1(KTR_SPARE2, "%s initializing device register", if_name(ifp)); #endif /* Disable Legacy WRR, Disable EJP, Release from reset. */ @@ -1153,7 +1152,7 @@ mvneta_initreg(struct ifnet *ifp) /* Port MAC Control set 0 */ reg = MVNETA_PMACC0_MUSTSET; /* must write 0x1 */ reg &= ~MVNETA_PMACC0_PORTEN; /* port is still disabled */ - reg |= MVNETA_PMACC0_FRAMESIZELIMIT(ifp->if_mtu + MVNETA_ETHER_SIZE); + reg |= MVNETA_PMACC0_FRAMESIZELIMIT(if_getmtu(ifp) + MVNETA_ETHER_SIZE); MVNETA_WRITE(sc, MVNETA_PMACC0, reg); /* Port MAC Control set 2 */ @@ -1393,7 +1392,7 @@ mvneta_ring_init_rx_queue(struct mvneta_softc *sc, int q) /* Initialize LRO */ rx->lro_enabled = FALSE; - if ((sc->ifp->if_capenable & IFCAP_LRO) != 0) { + if ((if_getcapenable(sc->ifp) & IFCAP_LRO) != 0) { lro = &rx->lro; error = tcp_lro_init(lro); if (error != 0) @@ -1494,13 +1493,13 @@ mvneta_ring_flush_rx_queue(struct mvneta_softc *sc, int q) * Rx/Tx Queue Control */ STATIC int -mvneta_rx_queue_init(struct ifnet *ifp, int q) +mvneta_rx_queue_init(if_t ifp, int q) { struct mvneta_softc *sc; struct mvneta_rx_ring *rx; uint32_t reg; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); KASSERT_RX_MTX(sc, q); rx = MVNETA_RX_RING(sc, q); DASSERT(rx->desc_pa != 0); @@ -1513,14 +1512,14 @@ mvneta_rx_queue_init(struct ifnet *ifp, int q) reg |= MVNETA_PRXDQS_DESCRIPTORSQUEUESIZE(MVNETA_RX_RING_CNT); MVNETA_WRITE(sc, MVNETA_PRXDQS(q), reg); #ifdef MVNETA_KTR - CTR3(KTR_SPARE2, "%s PRXDQS(%d): %#x", ifp->if_xname, q, + CTR3(KTR_SPARE2, "%s PRXDQS(%d): %#x", if_name(ifp), q, MVNETA_READ(sc, MVNETA_PRXDQS(q))); #endif /* Rx packet offset address */ reg = MVNETA_PRXC_PACKETOFFSET(MVNETA_PACKET_OFFSET >> 3); MVNETA_WRITE(sc, MVNETA_PRXC(q), reg); #ifdef MVNETA_KTR - CTR3(KTR_SPARE2, "%s PRXC(%d): %#x", ifp->if_xname, q, + CTR3(KTR_SPARE2, "%s PRXC(%d): %#x", if_name(ifp), q, MVNETA_READ(sc, MVNETA_PRXC(q))); #endif @@ -1530,13 +1529,13 @@ mvneta_rx_queue_init(struct ifnet *ifp, int q) } STATIC int -mvneta_tx_queue_init(struct ifnet *ifp, int q) +mvneta_tx_queue_init(if_t ifp, int q) { struct mvneta_softc *sc; struct mvneta_tx_ring *tx; uint32_t reg; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); KASSERT_TX_MTX(sc, q); tx = MVNETA_TX_RING(sc, q); DASSERT(tx->desc_pa != 0); @@ -1554,13 +1553,13 @@ mvneta_tx_queue_init(struct ifnet *ifp, int q) } STATIC int -mvneta_rx_queue_enable(struct ifnet *ifp, int q) +mvneta_rx_queue_enable(if_t ifp, int q) { struct mvneta_softc *sc; struct mvneta_rx_ring *rx; uint32_t reg; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); rx = MVNETA_RX_RING(sc, q); KASSERT_RX_MTX(sc, q); @@ -1586,12 +1585,12 @@ mvneta_rx_queue_enable(struct ifnet *ifp, int q) } STATIC int -mvneta_tx_queue_enable(struct ifnet *ifp, int q) +mvneta_tx_queue_enable(if_t ifp, int q) { struct mvneta_softc *sc; struct mvneta_tx_ring *tx; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); tx = MVNETA_TX_RING(sc, q); KASSERT_TX_MTX(sc, q); @@ -1693,13 +1692,13 @@ STATIC void mvneta_rxtxth_intr(void *arg) { struct mvneta_softc *sc; - struct ifnet *ifp; + if_t ifp; uint32_t ic, queues; sc = arg; ifp = sc->ifp; #ifdef MVNETA_KTR - CTR1(KTR_SPARE2, "%s got RXTX_TH_Intr", ifp->if_xname); + CTR1(KTR_SPARE2, "%s got RXTX_TH_Intr", if_name(ifp)); #endif ic = MVNETA_READ(sc, MVNETA_PRXTXTIC); if (ic == 0) @@ -1713,13 +1712,13 @@ mvneta_rxtxth_intr(void *arg) mvneta_misc_intr(sc); mvneta_sc_unlock(sc); } - if (__predict_false(!(ifp->if_drv_flags & IFF_DRV_RUNNING))) + if (__predict_false(!(if_getdrvflags(ifp) & IFF_DRV_RUNNING))) return; /* RxTxTH interrupt */ queues = MVNETA_PRXTXTI_GET_RBICTAPQ(ic); if (__predict_true(queues)) { #ifdef MVNETA_KTR - CTR1(KTR_SPARE2, "%s got PRXTXTIC: +RXEOF", ifp->if_xname); + CTR1(KTR_SPARE2, "%s got PRXTXTIC: +RXEOF", if_name(ifp)); #endif /* At the moment the driver support only one RX queue. */ DASSERT(MVNETA_IS_QUEUE_SET(queues, 0)); @@ -1734,7 +1733,7 @@ mvneta_misc_intr(struct mvneta_softc *sc) int claimed = 0; #ifdef MVNETA_KTR - CTR1(KTR_SPARE2, "%s got MISC_INTR", sc->ifp->if_xname); + CTR1(KTR_SPARE2, "%s got MISC_INTR", if_name(sc->ifp)); #endif KASSERT_SC_MTX(sc); @@ -1778,7 +1777,7 @@ mvneta_tick(void *arg) fc_curr = sc->sysctl_mib[MVNETA_MIB_FC_GOOD_IDX].counter; - if (sc->phy_attached && sc->ifp->if_flags & IFF_UP) { + if (sc->phy_attached && if_getflags(sc->ifp) & IFF_UP) { mvneta_sc_lock(sc); mii_tick(sc->mii); @@ -1834,7 +1833,7 @@ timeout: } STATIC void -mvneta_qflush(struct ifnet *ifp) +mvneta_qflush(if_t ifp) { #ifdef MVNETA_MULTIQUEUE struct mvneta_softc *sc; @@ -1842,7 +1841,7 @@ mvneta_qflush(struct ifnet *ifp) struct mbuf *m; size_t q; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); for (q = 0; q < MVNETA_TX_QNUM_MAX; q++) { tx = MVNETA_TX_RING(sc, q); @@ -1860,12 +1859,12 @@ mvneta_tx_task(void *arg, int pending) { struct mvneta_softc *sc; struct mvneta_tx_ring *tx; - struct ifnet *ifp; + if_t ifp; int error; tx = arg; ifp = tx->ifp; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); mvneta_tx_lockq(sc, tx->qidx); error = mvneta_xmit_locked(sc, tx->qidx); @@ -1882,7 +1881,7 @@ STATIC int mvneta_xmitfast_locked(struct mvneta_softc *sc, int q, struct mbuf **m) { struct mvneta_tx_ring *tx; - struct ifnet *ifp; + if_t ifp; int error; KASSERT_TX_MTX(sc, q); @@ -1923,14 +1922,14 @@ mvneta_xmitfast_locked(struct mvneta_softc *sc, int q, struct mbuf **m) #ifdef MVNETA_MULTIQUEUE STATIC int -mvneta_transmit(struct ifnet *ifp, struct mbuf *m) +mvneta_transmit(if_t ifp, struct mbuf *m) { struct mvneta_softc *sc; struct mvneta_tx_ring *tx; int error; int q; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); /* Use default queue if there is no flow id as thread can migrate. */ if (__predict_true(M_HASHTYPE_GET(m) != M_HASHTYPE_NONE)) @@ -1974,7 +1973,7 @@ mvneta_transmit(struct ifnet *ifp, struct mbuf *m) STATIC int mvneta_xmit_locked(struct mvneta_softc *sc, int q) { - struct ifnet *ifp; + if_t ifp; struct mvneta_tx_ring *tx; struct mbuf *m; int error; @@ -2000,13 +1999,13 @@ mvneta_xmit_locked(struct mvneta_softc *sc, int q) } #else /* !MVNETA_MULTIQUEUE */ STATIC void -mvneta_start(struct ifnet *ifp) +mvneta_start(if_t ifp) { struct mvneta_softc *sc; struct mvneta_tx_ring *tx; int error; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); tx = MVNETA_TX_RING(sc, 0); mvneta_tx_lockq(sc, 0); @@ -2020,7 +2019,7 @@ mvneta_start(struct ifnet *ifp) STATIC int mvneta_xmit_locked(struct mvneta_softc *sc, int q) { - struct ifnet *ifp; + if_t ifp; struct mbuf *m; int error; @@ -2028,15 +2027,15 @@ mvneta_xmit_locked(struct mvneta_softc *sc, int q) ifp = sc->ifp; error = 0; - while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { - IFQ_DRV_DEQUEUE(&ifp->if_snd, m); + while (!if_sendq_empty(ifp)) { + m = if_dequeue(ifp); if (m == NULL) break; error = mvneta_xmitfast_locked(sc, q, &m); if (__predict_false(error != 0)) { if (m != NULL) - IFQ_DRV_PREPEND(&ifp->if_snd, m); + if_sendq_prepend(ifp, m); break; } } @@ -2046,7 +2045,7 @@ mvneta_xmit_locked(struct mvneta_softc *sc, int q) #endif STATIC int -mvneta_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) +mvneta_ioctl(if_t ifp, u_long cmd, caddr_t data) { struct mvneta_softc *sc; struct mvneta_rx_ring *rx; @@ -2058,52 +2057,52 @@ mvneta_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) error = 0; reinit = false; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); ifr = (struct ifreq *)data; switch (cmd) { case SIOCSIFFLAGS: mvneta_sc_lock(sc); - if (ifp->if_flags & IFF_UP) { - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - flags = ifp->if_flags ^ sc->mvneta_if_flags; + if (if_getflags(ifp) & IFF_UP) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { + flags = if_getflags(ifp) ^ sc->mvneta_if_flags; if (flags != 0) - sc->mvneta_if_flags = ifp->if_flags; + sc->mvneta_if_flags = if_getflags(ifp); if ((flags & IFF_PROMISC) != 0) mvneta_filter_setup(sc); } else { mvneta_init_locked(sc); - sc->mvneta_if_flags = ifp->if_flags; + sc->mvneta_if_flags = if_getflags(ifp); if (sc->phy_attached) mii_mediachg(sc->mii); mvneta_sc_unlock(sc); break; } - } else if (ifp->if_drv_flags & IFF_DRV_RUNNING) + } else if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) mvneta_stop_locked(sc); - sc->mvneta_if_flags = ifp->if_flags; + sc->mvneta_if_flags = if_getflags(ifp); mvneta_sc_unlock(sc); break; case SIOCSIFCAP: - if (ifp->if_mtu > sc->tx_csum_limit && + if (if_getmtu(ifp) > sc->tx_csum_limit && ifr->ifr_reqcap & IFCAP_TXCSUM) ifr->ifr_reqcap &= ~IFCAP_TXCSUM; - mask = ifp->if_capenable ^ ifr->ifr_reqcap; + mask = if_getcapenable(ifp) ^ ifr->ifr_reqcap; if (mask & IFCAP_HWCSUM) { - ifp->if_capenable &= ~IFCAP_HWCSUM; - ifp->if_capenable |= IFCAP_HWCSUM & ifr->ifr_reqcap; - if (ifp->if_capenable & IFCAP_TXCSUM) - ifp->if_hwassist = CSUM_IP | CSUM_TCP | - CSUM_UDP; + if_setcapenablebit(ifp, IFCAP_HWCSUM & ifr->ifr_reqcap, + IFCAP_HWCSUM); + if (if_getcapenable(ifp) & IFCAP_TXCSUM) + if_sethwassist(ifp, CSUM_IP | CSUM_TCP | + CSUM_UDP); else - ifp->if_hwassist = 0; + if_sethwassist(ifp, 0); } if (mask & IFCAP_LRO) { mvneta_sc_lock(sc); - ifp->if_capenable ^= IFCAP_LRO; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + if_togglecapenable(ifp, IFCAP_LRO); + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) { for (q = 0; q < MVNETA_RX_QNUM_MAX; q++) { rx = MVNETA_RX_RING(sc, q); rx->lro_enabled = !rx->lro_enabled; @@ -2139,26 +2138,26 @@ mvneta_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) MVNETA_ETHER_SIZE) { error = EINVAL; } else { - ifp->if_mtu = ifr->ifr_mtu; + if_setmtu(ifp, ifr->ifr_mtu); mvneta_sc_lock(sc); - if (ifp->if_mtu + MVNETA_ETHER_SIZE <= MCLBYTES) { + if (if_getmtu(ifp) + MVNETA_ETHER_SIZE <= MCLBYTES) { sc->rx_frame_size = MCLBYTES; } else { sc->rx_frame_size = MJUM9BYTES; } - if (ifp->if_mtu > sc->tx_csum_limit) { - ifp->if_capenable &= ~IFCAP_TXCSUM; - ifp->if_hwassist = 0; + if (if_getmtu(ifp) > sc->tx_csum_limit) { + if_setcapenablebit(ifp, 0, IFCAP_TXCSUM); + if_sethwassist(ifp, 0); } else { - ifp->if_capenable |= IFCAP_TXCSUM; - ifp->if_hwassist = CSUM_IP | CSUM_TCP | - CSUM_UDP; + if_setcapenablebit(ifp, IFCAP_TXCSUM, 0); + if_sethwassist(ifp, CSUM_IP | CSUM_TCP | + CSUM_UDP); } /* * Reinitialize RX queues. * We need to update RX descriptor size. */ - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { reinit = true; mvneta_stop_locked(sc); } @@ -2194,7 +2193,7 @@ STATIC void mvneta_init_locked(void *arg) { struct mvneta_softc *sc; - struct ifnet *ifp; + if_t ifp; uint32_t reg; int q, cpu; @@ -2202,14 +2201,14 @@ mvneta_init_locked(void *arg) ifp = sc->ifp; if (!device_is_attached(sc->dev) || - (ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + (if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) return; mvneta_disable_intr(sc); callout_stop(&sc->tick_ch); /* Get the latest mac address */ - bcopy(IF_LLADDR(ifp), sc->enaddr, ETHER_ADDR_LEN); + bcopy(if_getlladdr(ifp), sc->enaddr, ETHER_ADDR_LEN); mvneta_set_mac_address(sc, sc->enaddr); mvneta_filter_setup(sc); @@ -2222,7 +2221,7 @@ mvneta_init_locked(void *arg) reg = MVNETA_READ(sc, MVNETA_PMACC0); reg |= MVNETA_PMACC0_PORTEN; reg &= ~MVNETA_PMACC0_FRAMESIZELIMIT_MASK; - reg |= MVNETA_PMACC0_FRAMESIZELIMIT(ifp->if_mtu + MVNETA_ETHER_SIZE); + reg |= MVNETA_PMACC0_FRAMESIZELIMIT(if_getmtu(ifp) + MVNETA_ETHER_SIZE); MVNETA_WRITE(sc, MVNETA_PMACC0, reg); /* Allow access to each TXQ/RXQ from both CPU's */ @@ -2245,7 +2244,7 @@ mvneta_init_locked(void *arg) /* Set Counter */ callout_schedule(&sc->tick_ch, hz); - ifp->if_drv_flags |= IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); } STATIC void @@ -2265,19 +2264,19 @@ mvneta_init(void *arg) STATIC void mvneta_stop_locked(struct mvneta_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint32_t reg; int q; ifp = sc->ifp; - if (ifp == NULL || (ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + if (ifp == NULL || (if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) return; mvneta_disable_intr(sc); callout_stop(&sc->tick_ch); - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); /* Link down */ if (sc->linkup == TRUE) @@ -2319,11 +2318,11 @@ mvneta_stop(struct mvneta_softc *sc) } STATIC int -mvneta_mediachange(struct ifnet *ifp) +mvneta_mediachange(if_t ifp) { struct mvneta_softc *sc; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); if (!sc->phy_attached && !sc->use_inband_status) { /* We shouldn't be here */ @@ -2372,12 +2371,12 @@ mvneta_get_media(struct mvneta_softc *sc, struct ifmediareq *ifmr) } STATIC void -mvneta_mediastatus(struct ifnet *ifp, struct ifmediareq *ifmr) +mvneta_mediastatus(if_t ifp, struct ifmediareq *ifmr) { struct mvneta_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); if (!sc->phy_attached && !sc->use_inband_status) { ifmr->ifm_status = IFM_AVALID | IFM_ACTIVE; @@ -2453,7 +2452,7 @@ mvneta_update_media(struct mvneta_softc *sc, int media) mvneta_linkreset(sc); - running = (sc->ifp->if_drv_flags & IFF_DRV_RUNNING) != 0; + running = (if_getdrvflags(sc->ifp) & IFF_DRV_RUNNING) != 0; if (running) mvneta_stop_locked(sc); @@ -2557,7 +2556,7 @@ mvneta_link_isr(struct mvneta_softc *sc) #ifdef DEBUG device_printf(sc->dev, - "%s: link %s\n", sc->ifp->if_xname, linkup ? "up" : "down"); + "%s: link %s\n", if_name(sc->ifp), linkup ? "up" : "down"); #endif } @@ -2574,7 +2573,7 @@ mvneta_linkupdate(struct mvneta_softc *sc, boolean_t linkup) #ifdef DEBUG device_printf(sc->dev, - "%s: link %s\n", sc->ifp->if_xname, linkup ? "up" : "down"); + "%s: link %s\n", if_name(sc->ifp), linkup ? "up" : "down"); #endif } @@ -2674,7 +2673,7 @@ mvneta_linkreset(struct mvneta_softc *sc) STATIC int mvneta_tx_queue(struct mvneta_softc *sc, struct mbuf **mbufp, int q) { - struct ifnet *ifp; + if_t ifp; bus_dma_segment_t txsegs[MVNETA_TX_SEGLIMIT]; struct mbuf *mtmp, *mbuf; struct mvneta_tx_ring *tx; @@ -2723,7 +2722,7 @@ mvneta_tx_queue(struct mvneta_softc *sc, struct mbuf **mbufp, int q) BUS_DMA_NOWAIT); if (__predict_false(error != 0)) { #ifdef MVNETA_KTR - CTR3(KTR_SPARE2, "%s:%u bus_dmamap_load_mbuf_sg error=%d", ifp->if_xname, q, error); + CTR3(KTR_SPARE2, "%s:%u bus_dmamap_load_mbuf_sg error=%d", if_name(ifp), q, error); #endif /* This is the only recoverable error (except EFBIG). */ if (error != ENOMEM) { @@ -2740,7 +2739,7 @@ mvneta_tx_queue(struct mvneta_softc *sc, struct mbuf **mbufp, int q) /* we have no enough descriptors or mbuf is broken */ #ifdef MVNETA_KTR CTR3(KTR_SPARE2, "%s:%u not enough descriptors txnsegs=%d", - ifp->if_xname, q, txnsegs); + if_name(ifp), q, txnsegs); #endif bus_dmamap_unload(sc->txmbuf_dtag, txbuf->dmap); return (ENOBUFS); @@ -2792,7 +2791,7 @@ mvneta_tx_queue(struct mvneta_softc *sc, struct mbuf **mbufp, int q) } STATIC void -mvneta_tx_set_csumflag(struct ifnet *ifp, +mvneta_tx_set_csumflag(if_t ifp, struct mvneta_tx_desc *t, struct mbuf *m) { struct ether_header *eh; @@ -2802,7 +2801,7 @@ mvneta_tx_set_csumflag(struct ifnet *ifp, struct ip *ip; iphl = ipoff = 0; - csum_flags = ifp->if_hwassist & m->m_pkthdr.csum_flags; + csum_flags = if_gethwassist(ifp) & m->m_pkthdr.csum_flags; eh = mtod(m, struct ether_header *); switch (ntohs(eh->ether_type)) { @@ -2878,7 +2877,7 @@ mvneta_tx_queue_complete(struct mvneta_softc *sc, int q) #ifdef MVNETA_KTR CTR3(KTR_SPARE2, "%s:%u tx_complete begin ndesc=%u", - sc->ifp->if_xname, q, ndesc); + if_name(sc->ifp), q, ndesc); #endif bus_dmamap_sync(sc->tx_dtag, tx->desc_map, @@ -2889,7 +2888,7 @@ mvneta_tx_queue_complete(struct mvneta_softc *sc, int q) #ifdef MVNETA_KTR if (t->flags & MVNETA_TX_F_ES) CTR3(KTR_SPARE2, "%s tx error queue %d desc %d", - sc->ifp->if_xname, q, tx->dma); + if_name(sc->ifp), q, tx->dma); #endif txbuf = &tx->txbuf[tx->dma]; if (__predict_true(txbuf->m != NULL)) { @@ -2916,7 +2915,7 @@ mvneta_tx_queue_complete(struct mvneta_softc *sc, int q) } #ifdef MVNETA_KTR CTR5(KTR_SPARE2, "%s:%u tx_complete tx_cpu=%d tx_dma=%d tx_used=%d", - sc->ifp->if_xname, q, tx->cpu, tx->dma, tx->used); + if_name(sc->ifp), q, tx->cpu, tx->dma, tx->used); #endif tx->watchdog_time = ticks; @@ -3003,7 +3002,7 @@ mvneta_prefetch(void *p) STATIC void mvneta_rx_queue(struct mvneta_softc *sc, int q, int npkt) { - struct ifnet *ifp; + if_t ifp; struct mvneta_rx_ring *rx; struct mvneta_rx_desc *r; struct mvneta_buf *rxbuf; @@ -3085,7 +3084,7 @@ mvneta_rx_queue(struct mvneta_softc *sc, int q, int npkt) } mvneta_rx_unlockq(sc, q); - (*ifp->if_input)(ifp, m); + if_input(ifp, m); mvneta_rx_lockq(sc, q); /* * Check whether this queue has been disabled in the @@ -3112,7 +3111,7 @@ rx_error: } } #ifdef MVNETA_KTR - CTR3(KTR_SPARE2, "%s:%u %u packets received", ifp->if_xname, q, npkt); + CTR3(KTR_SPARE2, "%s:%u %u packets received", if_name(ifp), q, npkt); #endif /* DMA status update */ mvneta_prxsu_update(sc, q, processed); @@ -3157,7 +3156,7 @@ mvneta_rx_queue_refill(struct mvneta_softc *sc, int q) ndesc = MVNETA_PRXS_GET_NODC(prxs) + MVNETA_PRXS_GET_ODC(prxs); refill = MVNETA_RX_RING_CNT - ndesc; #ifdef MVNETA_KTR - CTR3(KTR_SPARE2, "%s:%u refill %u packets", sc->ifp->if_xname, q, + CTR3(KTR_SPARE2, "%s:%u refill %u packets", if_name(sc->ifp), q, refill); #endif if (__predict_false(refill <= 0)) @@ -3209,7 +3208,7 @@ mvneta_rx_queue_refill(struct mvneta_softc *sc, int q) } STATIC __inline void -mvneta_rx_set_csumflag(struct ifnet *ifp, +mvneta_rx_set_csumflag(if_t ifp, struct mvneta_rx_desc *r, struct mbuf *m) { uint32_t csum_flags; @@ -3251,7 +3250,7 @@ mvneta_rx_set_csumflag(struct ifnet *ifp, STATIC void mvneta_filter_setup(struct mvneta_softc *sc) { - struct ifnet *ifp; + if_t ifp; uint32_t dfut[MVNETA_NDFUT], dfsmt[MVNETA_NDFSMT], dfomt[MVNETA_NDFOMT]; uint32_t pxc; int i; @@ -3263,8 +3262,8 @@ mvneta_filter_setup(struct mvneta_softc *sc) memset(dfomt, 0, sizeof(dfomt)); ifp = sc->ifp; - ifp->if_flags |= IFF_ALLMULTI; - if (ifp->if_flags & (IFF_ALLMULTI|IFF_PROMISC)) { + if_setflagbits(ifp, IFF_ALLMULTI, 0); + if (if_getflags(ifp) & (IFF_ALLMULTI | IFF_PROMISC)) { for (i = 0; i < MVNETA_NDFSMT; i++) { dfsmt[i] = dfomt[i] = MVNETA_DF(0, MVNETA_DF_QUEUE(0) | MVNETA_DF_PASS) | @@ -3283,16 +3282,16 @@ mvneta_filter_setup(struct mvneta_softc *sc) pxc |= MVNETA_PXC_UDPQ(MVNETA_RX_QNUM_MAX-1); pxc |= MVNETA_PXC_BPDUQ(MVNETA_RX_QNUM_MAX-1); pxc |= MVNETA_PXC_RB | MVNETA_PXC_RBIP | MVNETA_PXC_RBARP; - if (ifp->if_flags & IFF_BROADCAST) { + if (if_getflags(ifp) & IFF_BROADCAST) { pxc &= ~(MVNETA_PXC_RB | MVNETA_PXC_RBIP | MVNETA_PXC_RBARP); } - if (ifp->if_flags & IFF_PROMISC) { + if (if_getflags(ifp) & IFF_PROMISC) { pxc |= MVNETA_PXC_UPM; } MVNETA_WRITE(sc, MVNETA_PXC, pxc); /* Set Destination Address Filter Unicast Table */ - if (ifp->if_flags & IFF_PROMISC) { + if (if_getflags(ifp) & IFF_PROMISC) { /* pass all unicast addresses */ for (i = 0; i < MVNETA_NDFUT; i++) { dfut[i] = diff --git a/sys/dev/neta/if_mvnetavar.h b/sys/dev/neta/if_mvnetavar.h index 72de56d46113..9dc54b6abf35 100644 --- a/sys/dev/neta/if_mvnetavar.h +++ b/sys/dev/neta/if_mvnetavar.h @@ -140,7 +140,7 @@ struct mvneta_tx_ring { /* Index of this queue */ int qidx; /* IFNET pointer */ - struct ifnet *ifp; + if_t ifp; /* Ring buffer for IFNET */ struct buf_ring *br; /* Real descriptors array. shared by TxDMA */ @@ -261,7 +261,7 @@ struct mvneta_softc { uint64_t clk_freq; - struct ifnet *ifp; + if_t ifp; uint32_t mvneta_if_flags; uint32_t mvneta_media; uint32_t tx_csum_limit; From nobody Tue Jan 24 20:48: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 4P1fFG6L0Wz3bSkK; Tue, 24 Jan 2023 20:48: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 4P1fFG4cLQz41xH; Tue, 24 Jan 2023 20:48:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593298; 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=YSQzP5/8DIm+HUmWdwqsPR+2KY0DYdMb2sMDp+pgU/M=; b=npCOVHen3W2TgRlBf7LRFjrtZ6M/BaiXIeLSzGcu5t1RqJotBPb0ShrIHZSKJGfUQJFcbf l0tcukMwR0znssEDLYz16VgjMeZYZd/p7vLr/GA2g/WSh0XFYoSB2/HghphxJbpk2y8OAP p7ksZqgZv5xqWIfgJuvKvIz7IbZhH6SsyM4XiBovJaPGU9ZpabEzaYTJrCcBQjYpe1t8sn K2V1nbVbuEpfkouGrBaBOxDkCcj7GepQW13M+yb75W72WlDxUb4gUtlzqMxnOXBo0ltnuz x9KeAP3ChWz3wkuiPBibNDCOlMQ0KMsVvCmPPmnwzWUAXlbZQAJh5vNQ4RKv7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593298; 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=YSQzP5/8DIm+HUmWdwqsPR+2KY0DYdMb2sMDp+pgU/M=; b=FfA54ZqnfKDQvpNL7PHcXy7annEnZbfT7OB7efvjg3ee4j/mXZBikdZNZKpfRD2FejGQja aSOkPxt55azy7hwmV9fGlJhsRXdvSRabCN9O3KdIhzbdv4/XZpaDO/AvzRF+xUZD/uK7AY qkTtNy2tdttD9FUuMifM9Rx63wYdWUutdggE+26cad3KUJQ88i7hnzLdSrS9zWSQaTVGxk ZCFMYLsEENX5CXf6U90KcQ/jhhUsTqs+l9dN8KkyRjKIgNL5ulBDn5TqvhR7HjAI+CNw3Q hNVr4+9d6LGggpDgRPC3h5fL7/0Kq5xDtbJsem//AHdQhYO7I2h9onONCrCnkA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593298; a=rsa-sha256; cv=none; b=WZOKTWfDUll3rrz9W1klE7IC0G8cUziqRGmrOrKCMZD+aCEAks8HTbgvbM/YN0Wx9JVT+C 8xo2epFj6/ZtgRjQJbeIA2fr/9LABAkPb9jeoTtt9uzcU+ZsswDHvI24HTGiNwdH3t6hxQ J/kykLBgvW+oCIggfjR6cyw0FYHi/Ygg47akjvIy7aQguQ7P15EJKPmbT7lnTPt7okf1f/ wAr7isJADdPzaeMYh6wf20hU+J0TsJ1YRVzSJ8mYLJ4UXPpBiwm5YuQw9sA070C4G5+IFj XK9IKRy+99W7SSiIe8V3+Rq4+7H63HFi9byooXxQwirvAGq3z4lBPMeng0vAnw== 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 4P1fFG3BPxzN8D; Tue, 24 Jan 2023 20:48:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmIXQ053769; Tue, 24 Jan 2023 20:48:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmIBs053768; Tue, 24 Jan 2023 20:48:18 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:18 GMT Message-Id: <202301242048.30OKmIBs053768@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 8680326022e5 - main - Mechanically convert ixl(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8680326022e5127c797b6d670d6cd63a7688a693 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=8680326022e5127c797b6d670d6cd63a7688a693 commit 8680326022e5127c797b6d670d6cd63a7688a693 Author: Justin Hibbits AuthorDate: 2022-08-19 15:54:42 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:29 +0000 Mechanically convert ixl(4) to IfAPI Reviewed by: erj Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37857 --- sys/dev/ixl/ixl_iw.h | 2 +- sys/dev/ixl/ixl_pf.h | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/dev/ixl/ixl_iw.h b/sys/dev/ixl/ixl_iw.h index 2ef7198a6020..f0abb281b12d 100644 --- a/sys/dev/ixl/ixl_iw.h +++ b/sys/dev/ixl/ixl_iw.h @@ -52,7 +52,7 @@ struct ixl_iw_msix { struct ixl_iw_pf { void *handle; - struct ifnet *ifp; + if_t ifp; device_t dev; struct resource *pci_mem; u8 pf_id; diff --git a/sys/dev/ixl/ixl_pf.h b/sys/dev/ixl/ixl_pf.h index 888949245133..0b95cdd1bd4b 100644 --- a/sys/dev/ixl/ixl_pf.h +++ b/sys/dev/ixl/ixl_pf.h @@ -290,8 +290,8 @@ void ixl_print_nvm_cmd(device_t, struct i40e_nvm_access *); void ixl_handle_que(void *context, int pending); void ixl_init(void *); -void ixl_register_vlan(void *, struct ifnet *, u16); -void ixl_unregister_vlan(void *, struct ifnet *, u16); +void ixl_register_vlan(void *, if_t, u16); +void ixl_unregister_vlan(void *, if_t, u16); int ixl_intr(void *); int ixl_msix_que(void *); int ixl_msix_adminq(void *); @@ -302,9 +302,9 @@ const char * ixl_switch_res_type_string(u8); void ixl_add_sysctls_mac_stats(struct sysctl_ctx_list *, struct sysctl_oid_list *, struct i40e_hw_port_stats *); -void ixl_media_status(struct ifnet *, struct ifmediareq *); -int ixl_media_change(struct ifnet *); -int ixl_ioctl(struct ifnet *, u_long, caddr_t); +void ixl_media_status(if_t, struct ifmediareq *); +int ixl_media_change(if_t); +int ixl_ioctl(if_t, u_long, caddr_t); void ixl_enable_queue(struct i40e_hw *, int); void ixl_disable_queue(struct i40e_hw *, int); @@ -388,7 +388,7 @@ int ixl_enable_rx_ring(struct ixl_pf *, struct ixl_pf_qtag *, u16); int ixl_enable_ring(struct ixl_pf *pf, struct ixl_pf_qtag *, u16); void ixl_update_eth_stats(struct ixl_vsi *); -void ixl_cap_txcsum_tso(struct ixl_vsi *, struct ifnet *, int); +void ixl_cap_txcsum_tso(struct ixl_vsi *, if_t, int); int ixl_initialize_vsi(struct ixl_vsi *); void ixl_add_ifmedia(struct ifmedia *, u64); int ixl_setup_queue_msix(struct ixl_vsi *); From nobody Tue Jan 24 20:48: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 4P1fFH5S4bz3bSnv; Tue, 24 Jan 2023 20:48: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 4P1fFH4vymz41k3; Tue, 24 Jan 2023 20:48:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593299; 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=vGNnCIqn8ZBXPUayVGpESaER/LMJe4qtpDYbmLJlcWI=; b=Ot+pZ5Z74GEuAASLvX/c/37BZpBZAVckd01GsCYU5d8LT3IhRKev1KgvKZDESeJ71gAWkg 9spaEoCCg7SkOppzSiXGUeZGuC/svXa4/2jEzl0NyD4pl73q27J4v1aqXVb47kERxZwwed YVb1mGOKPTwHZdINOdL5yTI1bPtPqJw3tKxS7w/FBN+Oq5feLXw04e6m51Py6FplwXFvL5 9IbJq4EzJiJLpFqLuxeQViO+N3i14v5lapuZjDKi3PyWsDBzN/1+k4cUfUiUUzM50teLLs AZzOVdb4/FG0uCuB9GVup0FwRjftlxCNMCoO3b/1riF2jqX/YK3KdCQad8PZ9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593299; 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=vGNnCIqn8ZBXPUayVGpESaER/LMJe4qtpDYbmLJlcWI=; b=G+tAmuIh/ghDo1NFWdQwP+rSfVVBCMTRVccPb2HQFjadsAapnRQMWaSKj4DAaoc9ghcaGU Bi/iqToekqePshiD/+Xfest5KOFlz1DxmNeeimK558ro9lk/1Zw7BhABSTY5unL9E84SMv TTA0zT7LZ+j9VSl7on3Oz3RmaMX48eyppyeZXyhRmTG3LgvRrO2u6p/v4D6kEFsewFlLeY ZLUKct9W9vydCTY9wcPOH7yn6Fmyxak3M+4zOttbhBzWbjdP+UBI1FRHx4a8hLhpHB2RrF pITMXuSYFi/rh9szSm6XLgCDI3fOkWUNkDYn7Tlsl1720+qLkjehwH17gG8w8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593299; a=rsa-sha256; cv=none; b=waNO8ZKlwlUu0Te8yTWqiVax6KDYVaa6cJTT/HH6A+KqGlN9DQmM30XXxqfjpJctLsB7e0 yAKgfG1NevdvY3SVMIvY+QU1n5WTNYaRFIkwR/SslfPUwADuH4o7R4gteScpxF0qyzLaSy 6OZ9QE2DmPBtE+K4zntiuJGYuoorO4k4hS7kyc1WAnFTKOU+248D/5Rl++usn0ZXK1PgX1 Zx4QeKDciN2iRiuqZNWThkrsFPAFDgcg1RulvDzqxQWGjB317wUgbQ8dSvnyUm4dqTziwY f+x7xkn0Q4b3ovS9U55LYK0esr76Dov26leuOV+TuEHElB9wHarGh2RqXxZBBA== 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 4P1fFH3zKSzN6P; Tue, 24 Jan 2023 20:48:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmJOB053796; Tue, 24 Jan 2023 20:48:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmJ0w053795; Tue, 24 Jan 2023 20:48:19 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:19 GMT Message-Id: <202301242048.30OKmJ0w053795@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: d8096b2df282 - main - Mechanically convert iavf(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d8096b2df282d7a50e56eddba523bcdda1676106 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=d8096b2df282d7a50e56eddba523bcdda1676106 commit d8096b2df282d7a50e56eddba523bcdda1676106 Author: Justin Hibbits AuthorDate: 2022-08-19 15:55:36 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:29 +0000 Mechanically convert iavf(4) to IfAPI Reviewed by: erj Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37858 --- sys/dev/iavf/iavf_iflib.h | 2 +- sys/dev/iavf/iavf_lib.c | 6 +++--- sys/dev/iavf/iavf_lib.h | 4 ++-- sys/dev/iavf/if_iavf_iflib.c | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/dev/iavf/iavf_iflib.h b/sys/dev/iavf/iavf_iflib.h index 33d5243496c8..f670cb901ba4 100644 --- a/sys/dev/iavf/iavf_iflib.h +++ b/sys/dev/iavf/iavf_iflib.h @@ -238,7 +238,7 @@ struct iavf_rx_queue { struct iavf_vsi { if_ctx_t ctx; if_softc_ctx_t shared; - struct ifnet *ifp; + if_t ifp; struct iavf_sc *back; device_t dev; struct iavf_hw *hw; diff --git a/sys/dev/iavf/iavf_lib.c b/sys/dev/iavf/iavf_lib.c index 9b4ec425f1a9..61de2a438c12 100644 --- a/sys/dev/iavf/iavf_lib.c +++ b/sys/dev/iavf/iavf_lib.c @@ -968,7 +968,7 @@ iavf_media_status_common(struct iavf_sc *sc, struct ifmediareq *ifmr) * @returns ENODEV because changing the media and speed is not supported. */ int -iavf_media_change_common(struct ifnet *ifp) +iavf_media_change_common(if_t ifp) { if_printf(ifp, "Changing speed is not supported\n"); @@ -984,7 +984,7 @@ iavf_media_change_common(struct ifnet *ifp) * reports speed to us over the virtchnl interface. */ void -iavf_set_initial_baudrate(struct ifnet *ifp) +iavf_set_initial_baudrate(if_t ifp) { #if __FreeBSD_version >= 1100000 if_setbaudrate(ifp, IF_Gbps(40)); @@ -1210,7 +1210,7 @@ iavf_config_rss(struct iavf_sc *sc) int iavf_config_promisc(struct iavf_sc *sc, int flags) { - struct ifnet *ifp = sc->vsi.ifp; + if_t ifp = sc->vsi.ifp; sc->promisc_flags = 0; diff --git a/sys/dev/iavf/iavf_lib.h b/sys/dev/iavf/iavf_lib.h index b57299a4eaa6..d0e1d6e53c2d 100644 --- a/sys/dev/iavf/iavf_lib.h +++ b/sys/dev/iavf/iavf_lib.h @@ -487,8 +487,8 @@ void iavf_add_sysctls_eth_stats(struct sysctl_ctx_list *ctx, struct sysctl_oid_list *child, struct iavf_eth_stats *eth_stats); void iavf_media_status_common(struct iavf_sc *sc, struct ifmediareq *ifmr); -int iavf_media_change_common(struct ifnet *ifp); -void iavf_set_initial_baudrate(struct ifnet *ifp); +int iavf_media_change_common(if_t ifp); +void iavf_set_initial_baudrate(if_t ifp); u64 iavf_max_vc_speed_to_value(u8 link_speeds); void iavf_config_rss_reg(struct iavf_sc *sc); void iavf_config_rss_pf(struct iavf_sc *sc); diff --git a/sys/dev/iavf/if_iavf_iflib.c b/sys/dev/iavf/if_iavf_iflib.c index 848ad682ef0b..71d14ca7b701 100644 --- a/sys/dev/iavf/if_iavf_iflib.c +++ b/sys/dev/iavf/if_iavf_iflib.c @@ -761,7 +761,7 @@ iavf_if_init(if_ctx_t ctx) /* Make sure queues are disabled */ iavf_disable_queues_with_retries(sc); - bcopy(IF_LLADDR(ifp), tmpaddr, ETHER_ADDR_LEN); + bcopy(if_getlladdr(ifp), tmpaddr, ETHER_ADDR_LEN); if (!cmp_etheraddr(hw->mac.addr, tmpaddr) && (iavf_validate_mac_addr(tmpaddr) == IAVF_SUCCESS)) { error = iavf_del_mac_filter(sc, hw->mac.addr); @@ -1540,12 +1540,12 @@ iavf_setup_interface(struct iavf_sc *sc) { struct iavf_vsi *vsi = &sc->vsi; if_ctx_t ctx = vsi->ctx; - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); iavf_dbg_init(sc, "begin\n"); vsi->shared->isc_max_frame_size = - ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN + if_getmtu(ifp) + ETHER_HDR_LEN + ETHER_CRC_LEN + ETHER_VLAN_ENCAP_LEN; iavf_set_initial_baudrate(ifp); From nobody Tue Jan 24 20:48: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 4P1fFJ6c0bz3bSkV; Tue, 24 Jan 2023 20:48: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 4P1fFJ6592z427f; Tue, 24 Jan 2023 20:48:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593300; 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=plTPEJdZzuY5Ygfg2xLZMmF6V9CF+pGZq/KDgHzy4uU=; b=eQZ/JoB+oFPjugtfxSCbWdnGUvFUQhS0xh32O0iA5UP2EH3I5ztcxPMzLQnLi7kXNj1UrG RAyasmLmML8QBP70+eqVE4vOIOh0WYwQ1aAMPe4YIYfMdF5viFkdgB7NeN4L+eadqIH4y8 xL1hKMfQmFuEdGEnFRKbia+C36rf+vbphv+onvhCmM9be8g1gk4c3qeo7yT9k7fF/3Id6u 9YqfkdI5c/LUoHPGmOXfXMczQIpWKKUCZTUim0hUjs/w7sSRtYgVXgKC8UzfiD6LUYd/xW YOgs+IRlkkmCw1Fnb0AESGclMNL5oz2ZZSZTzYuni0RLVTnM0vVuxvwgnzaVaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593300; 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=plTPEJdZzuY5Ygfg2xLZMmF6V9CF+pGZq/KDgHzy4uU=; b=KBbSde3bno9qXYHYLrMawdg22nfGUlPB0bDCOqoiAQWmSZV+gXO15be5htS7droXDyrjkt Z2goUkf9P1n8yUSW0Z2g8YqbNW9Q/ehHBL5IYpSB0SmQhJHWaWQO3u4+HebESHOTYyeyBQ m+D41RMr9x0NvxPd5XvoIFGOe5sNWmC2JVlaPsDcKVMVsuXfxfVzdWUUFR/hr8Z99to6As l7ZsmA/yq7DPIv+VzLm2UrDwOus0q+ZB4/dexui2iOWCgbDaWcLahzZ2H0+CbLsTF6379L 07wRtG3AMta2vq7m6Gnsv5/o1v91rWlO1KARP2Fq1dOxxayMJs3DtETuYNuDyA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593300; a=rsa-sha256; cv=none; b=GmnI8ywtvJ2gHtc5llmzcnBbrShDaj4TZFR8VG4MAdDMqv636FKPBi1elshE7Wx0wZUiee R4TXQ3AruWANEuP6m6Y8paXKV/KczME/YfzvwmN68kAMshY6hHfG9vv3XHOhSlN708NSSx kB3lLwC3uuhNYRsRNgg3gmvz29kubHJ/JhuNLvXTWBL5aWGGNAHB+YaXNd9Tlxx6dS/WK0 e0UUm0xSM/NmxLZSyLirDbkpz/5fQDUP5e1UULYE4NSpNCNZsTQgyvmZe6Uk8ROumVbZ5/ jOyP+Wvmc7PaoMcyEbE1CtyBKXA9fc3sozIzgxMAZyPxMbJRy/O1poNAVAOIwg== 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 4P1fFJ4t9SzMfp; Tue, 24 Jan 2023 20:48:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmKmR053820; Tue, 24 Jan 2023 20:48:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmKXu053819; Tue, 24 Jan 2023 20:48:20 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:20 GMT Message-Id: <202301242048.30OKmKXu053819@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 2e6a8c1ae3ce - main - Mechanically convert etherswitch drivers to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2e6a8c1ae3ce1efe5510eef495829b2b5c47f16f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=2e6a8c1ae3ce1efe5510eef495829b2b5c47f16f commit 2e6a8c1ae3ce1efe5510eef495829b2b5c47f16f Author: Justin Hibbits AuthorDate: 2022-05-30 19:40:45 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:29 +0000 Mechanically convert etherswitch drivers to IfAPI Reviewed by: kd Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37813 --- sys/dev/etherswitch/ar40xx/ar40xx_main.c | 2 +- sys/dev/etherswitch/ar40xx/ar40xx_phy.c | 18 ++++++++-------- sys/dev/etherswitch/ar40xx/ar40xx_phy.h | 2 +- sys/dev/etherswitch/ar40xx/ar40xx_var.h | 2 +- sys/dev/etherswitch/arswitch/arswitch.c | 26 +++++++++++----------- sys/dev/etherswitch/arswitch/arswitchvar.h | 2 +- sys/dev/etherswitch/e6000sw/e6000sw.c | 24 ++++++++++----------- sys/dev/etherswitch/e6000sw/e6060sw.c | 24 ++++++++++----------- sys/dev/etherswitch/felix/felix.c | 22 +++++++++---------- sys/dev/etherswitch/felix/felix_var.h | 2 +- sys/dev/etherswitch/infineon/adm6996fc.c | 24 ++++++++++----------- sys/dev/etherswitch/ip17x/ip17x.c | 30 +++++++++++++------------- sys/dev/etherswitch/ip17x/ip17x_var.h | 2 +- sys/dev/etherswitch/micrel/ksz8995ma.c | 24 ++++++++++----------- sys/dev/etherswitch/mtkswitch/mtkswitch.c | 20 ++++++++--------- sys/dev/etherswitch/mtkswitch/mtkswitchvar.h | 2 +- sys/dev/etherswitch/rtl8366/rtl8366rb.c | 24 ++++++++++----------- sys/dev/etherswitch/ukswitch/ukswitch.c | 32 ++++++++++++++-------------- 18 files changed, 141 insertions(+), 141 deletions(-) diff --git a/sys/dev/etherswitch/ar40xx/ar40xx_main.c b/sys/dev/etherswitch/ar40xx/ar40xx_main.c index 0d5fbf65fa79..cebb24bf07cd 100644 --- a/sys/dev/etherswitch/ar40xx/ar40xx_main.c +++ b/sys/dev/etherswitch/ar40xx/ar40xx_main.c @@ -627,7 +627,7 @@ ar40xx_setport(device_t dev, etherswitch_port_t *p) struct ar40xx_softc *sc = device_get_softc(dev); struct ifmedia *ifm; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; int ret; if (p->es_port < 0 || p->es_port > sc->sc_info.es_nports) diff --git a/sys/dev/etherswitch/ar40xx/ar40xx_phy.c b/sys/dev/etherswitch/ar40xx/ar40xx_phy.c index 9c9b7e9e5733..581eead59bfd 100644 --- a/sys/dev/etherswitch/ar40xx/ar40xx_phy.c +++ b/sys/dev/etherswitch/ar40xx/ar40xx_phy.c @@ -147,7 +147,7 @@ ar40xx_phy_miiforport(struct ar40xx_softc *sc, int port) return (device_get_softc(sc->sc_phys.miibus[phy])); } -struct ifnet * +if_t ar40xx_phy_ifpforport(struct ar40xx_softc *sc, int port) { int phy; @@ -159,13 +159,13 @@ ar40xx_phy_ifpforport(struct ar40xx_softc *sc, int port) } static int -ar40xx_ifmedia_upd(struct ifnet *ifp) +ar40xx_ifmedia_upd(if_t ifp) { - struct ar40xx_softc *sc = ifp->if_softc; - struct mii_data *mii = ar40xx_phy_miiforport(sc, ifp->if_dunit); + struct ar40xx_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = ar40xx_phy_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ AR40XX_DPRINTF(sc, AR40XX_DBG_PORT_STATUS, "%s: called, PHY %d\n", - __func__, ifp->if_dunit); + __func__, ifp->if_dunit); /* XXX - DRVAPI */ if (mii == NULL) return (ENXIO); @@ -174,13 +174,13 @@ ar40xx_ifmedia_upd(struct ifnet *ifp) } static void -ar40xx_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +ar40xx_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { - struct ar40xx_softc *sc = ifp->if_softc; - struct mii_data *mii = ar40xx_phy_miiforport(sc, ifp->if_dunit); + struct ar40xx_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = ar40xx_phy_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ AR40XX_DPRINTF(sc, AR40XX_DBG_PORT_STATUS, "%s: called, PHY %d\n", - __func__, ifp->if_dunit); + __func__, ifp->if_dunit); /* XXX - DRVAPI */ if (mii == NULL) return; diff --git a/sys/dev/etherswitch/ar40xx/ar40xx_phy.h b/sys/dev/etherswitch/ar40xx/ar40xx_phy.h index cb42ed7c1ed5..257f90a9d37e 100644 --- a/sys/dev/etherswitch/ar40xx/ar40xx_phy.h +++ b/sys/dev/etherswitch/ar40xx/ar40xx_phy.h @@ -32,7 +32,7 @@ extern int ar40xx_attach_phys(struct ar40xx_softc *sc); extern int ar40xx_hw_phy_get_ids(struct ar40xx_softc *sc); extern struct mii_data * ar40xx_phy_miiforport(struct ar40xx_softc *sc, int port); -extern struct ifnet * ar40xx_phy_ifpforport(struct ar40xx_softc *sc, +extern if_t ar40xx_phy_ifpforport(struct ar40xx_softc *sc, int port); #endif /* __AR40XX_PHY_H__ */ diff --git a/sys/dev/etherswitch/ar40xx/ar40xx_var.h b/sys/dev/etherswitch/ar40xx/ar40xx_var.h index 2befe41b5952..93db9f417a2a 100644 --- a/sys/dev/etherswitch/ar40xx/ar40xx_var.h +++ b/sys/dev/etherswitch/ar40xx/ar40xx_var.h @@ -120,7 +120,7 @@ struct ar40xx_softc { struct { char *ifname[AR40XX_NUM_PHYS]; device_t miibus[AR40XX_NUM_PHYS]; - struct ifnet *ifp[AR40XX_NUM_PHYS]; + if_t ifp[AR40XX_NUM_PHYS]; } sc_phys; /* ATU (address table unit) support */ diff --git a/sys/dev/etherswitch/arswitch/arswitch.c b/sys/dev/etherswitch/arswitch/arswitch.c index 04d1d9143075..1f3d05611f0f 100644 --- a/sys/dev/etherswitch/arswitch/arswitch.c +++ b/sys/dev/etherswitch/arswitch/arswitch.c @@ -85,8 +85,8 @@ static int led_pattern_table[] = { static inline int arswitch_portforphy(int phy); static void arswitch_tick(void *arg); -static int arswitch_ifmedia_upd(struct ifnet *); -static void arswitch_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int arswitch_ifmedia_upd(if_t ); +static void arswitch_ifmedia_sts(if_t , struct ifmediareq *); static int ar8xxx_port_vlan_setup(struct arswitch_softc *sc, etherswitch_port_t *p); static int ar8xxx_port_vlan_get(struct arswitch_softc *sc, @@ -183,9 +183,9 @@ arswitch_attach_phys(struct arswitch_softc *sc) break; } - sc->ifp[phy]->if_softc = sc; - sc->ifp[phy]->if_flags |= IFF_UP | IFF_BROADCAST | - IFF_DRV_RUNNING | IFF_SIMPLEX; + if_setsoftc(sc->ifp[phy], sc); + if_setflagbits(sc->ifp[phy], IFF_UP | IFF_BROADCAST | + IFF_DRV_RUNNING | IFF_SIMPLEX, 0); sc->ifname[phy] = malloc(strlen(name)+1, M_DEVBUF, M_WAITOK); bcopy(name, sc->ifname[phy], strlen(name)+1); if_initname(sc->ifp[phy], sc->ifname[phy], @@ -748,7 +748,7 @@ arswitch_miiforport(struct arswitch_softc *sc, int port) return (device_get_softc(sc->miibus[phy])); } -static inline struct ifnet * +static inline if_t arswitch_ifpforport(struct arswitch_softc *sc, int port) { int phy = port-1; @@ -1052,7 +1052,7 @@ arswitch_setport(device_t dev, etherswitch_port_t *p) struct arswitch_softc *sc; struct ifmedia *ifm; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); if (p->es_port < 0 || p->es_port > sc->info.es_nports) @@ -1122,10 +1122,10 @@ arswitch_statchg(device_t dev) } static int -arswitch_ifmedia_upd(struct ifnet *ifp) +arswitch_ifmedia_upd(if_t ifp) { - struct arswitch_softc *sc = ifp->if_softc; - struct mii_data *mii = arswitch_miiforport(sc, ifp->if_dunit); + struct arswitch_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = arswitch_miiforport(sc, if_getdunit(ifp)); if (mii == NULL) return (ENXIO); @@ -1134,10 +1134,10 @@ arswitch_ifmedia_upd(struct ifnet *ifp) } static void -arswitch_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +arswitch_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { - struct arswitch_softc *sc = ifp->if_softc; - struct mii_data *mii = arswitch_miiforport(sc, ifp->if_dunit); + struct arswitch_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = arswitch_miiforport(sc, if_getdunit(ifp)); DPRINTF(sc, ARSWITCH_DBG_POLL, "%s\n", __func__); diff --git a/sys/dev/etherswitch/arswitch/arswitchvar.h b/sys/dev/etherswitch/arswitch/arswitchvar.h index ff92536358ac..5e628e9243ff 100644 --- a/sys/dev/etherswitch/arswitch/arswitchvar.h +++ b/sys/dev/etherswitch/arswitch/arswitchvar.h @@ -76,7 +76,7 @@ struct arswitch_softc { /* should be the max of both pre-AR8327 and AR8327 ports */ char *ifname[ARSWITCH_NUM_PHYS]; device_t miibus[ARSWITCH_NUM_PHYS]; - struct ifnet *ifp[ARSWITCH_NUM_PHYS]; + if_t ifp[ARSWITCH_NUM_PHYS]; struct arswitch_dev_led dev_led[ARSWITCH_NUM_PHYS][ARSWITCH_NUM_LEDS]; struct callout callout_tick; etherswitch_info_t info; diff --git a/sys/dev/etherswitch/e6000sw/e6000sw.c b/sys/dev/etherswitch/e6000sw/e6000sw.c index 72ed8f8471d9..812c004a37c3 100644 --- a/sys/dev/etherswitch/e6000sw/e6000sw.c +++ b/sys/dev/etherswitch/e6000sw/e6000sw.c @@ -77,7 +77,7 @@ typedef struct e6000sw_softc { phandle_t node; struct sx sx; - struct ifnet *ifp[E6000SW_MAX_PORTS]; + if_t ifp[E6000SW_MAX_PORTS]; char *ifname[E6000SW_MAX_PORTS]; device_t miibus[E6000SW_MAX_PORTS]; struct taskqueue *sc_tq; @@ -136,8 +136,8 @@ static int e6000sw_vtu_flush(e6000sw_softc_t *); static int e6000sw_vtu_update(e6000sw_softc_t *, int, int, int, int, int); static __inline void e6000sw_writereg(e6000sw_softc_t *, int, int, int); static __inline uint32_t e6000sw_readreg(e6000sw_softc_t *, int, int); -static int e6000sw_ifmedia_upd(struct ifnet *); -static void e6000sw_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int e6000sw_ifmedia_upd(if_t ); +static void e6000sw_ifmedia_sts(if_t , struct ifmediareq *); static int e6000sw_atu_mac_table(device_t, e6000sw_softc_t *, struct atu_opt *, int); static int e6000sw_get_pvid(e6000sw_softc_t *, int, int *); @@ -368,9 +368,9 @@ e6000sw_init_interface(e6000sw_softc_t *sc, int port) sc->ifp[port] = if_alloc(IFT_ETHER); if (sc->ifp[port] == NULL) return (ENOMEM); - sc->ifp[port]->if_softc = sc; - sc->ifp[port]->if_flags |= IFF_UP | IFF_BROADCAST | - IFF_DRV_RUNNING | IFF_SIMPLEX; + if_setsoftc(sc->ifp[port], sc); + if_setflagbits(sc->ifp[port], IFF_UP | IFF_BROADCAST | + IFF_DRV_RUNNING | IFF_SIMPLEX, 0); sc->ifname[port] = malloc(strlen(name) + 1, M_E6000SW, M_NOWAIT); if (sc->ifname[port] == NULL) { if_free(sc->ifp[port]); @@ -1280,13 +1280,13 @@ e6000sw_miiforphy(e6000sw_softc_t *sc, unsigned int phy) } static int -e6000sw_ifmedia_upd(struct ifnet *ifp) +e6000sw_ifmedia_upd(if_t ifp) { e6000sw_softc_t *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = e6000sw_miiforphy(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = e6000sw_miiforphy(sc, if_getdunit(ifp)); if (mii == NULL) return (ENXIO); mii_mediachg(mii); @@ -1295,13 +1295,13 @@ e6000sw_ifmedia_upd(struct ifnet *ifp) } static void -e6000sw_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +e6000sw_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { e6000sw_softc_t *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = e6000sw_miiforphy(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = e6000sw_miiforphy(sc, if_getdunit(ifp)); if (mii == NULL) return; diff --git a/sys/dev/etherswitch/e6000sw/e6060sw.c b/sys/dev/etherswitch/e6000sw/e6060sw.c index a61de3d2b418..f53cca80c0a0 100644 --- a/sys/dev/etherswitch/e6000sw/e6060sw.c +++ b/sys/dev/etherswitch/e6000sw/e6060sw.c @@ -120,7 +120,7 @@ struct e6060sw_softc { int *portphy; char **ifname; device_t **miibus; - struct ifnet **ifp; + if_t *ifp; struct callout callout_tick; etherswitch_info_t info; int smi_offset; @@ -150,8 +150,8 @@ struct e6060sw_softc { static inline int e6060sw_portforphy(struct e6060sw_softc *, int); static void e6060sw_tick(void *); -static int e6060sw_ifmedia_upd(struct ifnet *); -static void e6060sw_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int e6060sw_ifmedia_upd(if_t ); +static void e6060sw_ifmedia_sts(if_t , struct ifmediareq *); static void e6060sw_setup(device_t dev); static int e6060sw_read_vtu(device_t dev, int num, int *data1, int *data2); @@ -300,7 +300,7 @@ e6060sw_attach(device_t dev) e6060sw_setup(dev); - sc->ifp = malloc(sizeof(struct ifnet *) * sc->numports, M_E6060SW, + sc->ifp = malloc(sizeof(if_t ) * sc->numports, M_E6060SW, M_WAITOK | M_ZERO); sc->ifname = malloc(sizeof(char *) * sc->numports, M_E6060SW, M_WAITOK | M_ZERO); @@ -383,7 +383,7 @@ e6060sw_miiforport(struct e6060sw_softc *sc, int port) return (device_get_softc(*sc->miibus[port])); } -static inline struct ifnet * +static inline if_t e6060sw_ifpforport(struct e6060sw_softc *sc, int port) { @@ -516,7 +516,7 @@ e6060sw_setport(device_t dev, etherswitch_port_t *p) struct e6060sw_softc *sc; struct ifmedia *ifm; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; int err; int data; @@ -883,13 +883,13 @@ e6060sw_statchg(device_t dev) } static int -e6060sw_ifmedia_upd(struct ifnet *ifp) +e6060sw_ifmedia_upd(if_t ifp) { struct e6060sw_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = e6060sw_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = e6060sw_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); if (mii == NULL) @@ -899,13 +899,13 @@ e6060sw_ifmedia_upd(struct ifnet *ifp) } static void -e6060sw_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +e6060sw_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct e6060sw_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = e6060sw_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = e6060sw_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); diff --git a/sys/dev/etherswitch/felix/felix.c b/sys/dev/etherswitch/felix/felix.c index 466d26f247d7..fc846da32aa2 100644 --- a/sys/dev/etherswitch/felix/felix.c +++ b/sys/dev/etherswitch/felix/felix.c @@ -88,8 +88,8 @@ static int felix_setup(felix_softc_t); static void felix_setup_port(felix_softc_t, int); static void felix_tick(void *); -static int felix_ifmedia_upd(struct ifnet *); -static void felix_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int felix_ifmedia_upd(if_t ); +static void felix_ifmedia_sts(if_t , struct ifmediareq *); static void felix_get_port_cfg(felix_softc_t, etherswitch_port_t *); static void felix_set_port_cfg(felix_softc_t, etherswitch_port_t *); @@ -246,9 +246,9 @@ felix_init_interface(felix_softc_t sc, int port) if (sc->ports[port].ifp == NULL) return (ENOMEM); - sc->ports[port].ifp->if_softc = sc; - sc->ports[port].ifp->if_flags = IFF_UP | IFF_BROADCAST | IFF_MULTICAST | - IFF_DRV_RUNNING | IFF_SIMPLEX; + if_setsoftc(sc->ports[port].ifp, sc); + if_setflags(sc->ports[port].ifp, IFF_UP | IFF_BROADCAST | IFF_MULTICAST | + IFF_DRV_RUNNING | IFF_SIMPLEX); sc->ports[port].ifname = malloc(strlen(name) + 1, M_FELIX, M_NOWAIT); if (sc->ports[port].ifname == NULL) { if_free(sc->ports[port].ifp); @@ -964,13 +964,13 @@ felix_tick(void *arg) } static int -felix_ifmedia_upd(struct ifnet *ifp) +felix_ifmedia_upd(if_t ifp) { struct mii_data *mii; felix_softc_t sc; - sc = ifp->if_softc; - mii = felix_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = felix_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ if (mii == NULL) return (ENXIO); @@ -979,13 +979,13 @@ felix_ifmedia_upd(struct ifnet *ifp) } static void -felix_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +felix_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { felix_softc_t sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = felix_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = felix_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ if (mii == NULL) return; diff --git a/sys/dev/etherswitch/felix/felix_var.h b/sys/dev/etherswitch/felix/felix_var.h index 15f43ec6a3d2..10b29802cd43 100644 --- a/sys/dev/etherswitch/felix/felix_var.h +++ b/sys/dev/etherswitch/felix/felix_var.h @@ -79,7 +79,7 @@ struct felix_pci_id { }; struct felix_port { - struct ifnet *ifp; + if_t ifp; device_t miibus; char *ifname; diff --git a/sys/dev/etherswitch/infineon/adm6996fc.c b/sys/dev/etherswitch/infineon/adm6996fc.c index 0199b53736b3..ec6f7c98b015 100644 --- a/sys/dev/etherswitch/infineon/adm6996fc.c +++ b/sys/dev/etherswitch/infineon/adm6996fc.c @@ -100,7 +100,7 @@ struct adm6996fc_softc { int *portphy; char **ifname; device_t **miibus; - struct ifnet **ifp; + if_t *ifp; struct callout callout_tick; etherswitch_info_t info; }; @@ -122,8 +122,8 @@ struct adm6996fc_softc { static inline int adm6996fc_portforphy(struct adm6996fc_softc *, int); static void adm6996fc_tick(void *); -static int adm6996fc_ifmedia_upd(struct ifnet *); -static void adm6996fc_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int adm6996fc_ifmedia_upd(if_t ); +static void adm6996fc_ifmedia_sts(if_t , struct ifmediareq *); #define ADM6996FC_READREG(dev, x) \ MDIO_READREG(dev, ((x) >> 5), ((x) & 0x1f)); @@ -254,7 +254,7 @@ adm6996fc_attach(device_t dev) sc->info.es_nvlangroups = 16; sc->info.es_vlan_caps = ETHERSWITCH_VLAN_PORT | ETHERSWITCH_VLAN_DOT1Q; - sc->ifp = malloc(sizeof(struct ifnet *) * sc->numports, M_ADM6996FC, + sc->ifp = malloc(sizeof(if_t ) * sc->numports, M_ADM6996FC, M_WAITOK | M_ZERO); sc->ifname = malloc(sizeof(char *) * sc->numports, M_ADM6996FC, M_WAITOK | M_ZERO); @@ -355,7 +355,7 @@ adm6996fc_miiforport(struct adm6996fc_softc *sc, int port) return (device_get_softc(*sc->miibus[port])); } -static inline struct ifnet * +static inline if_t adm6996fc_ifpforport(struct adm6996fc_softc *sc, int port) { @@ -504,7 +504,7 @@ adm6996fc_setport(device_t dev, etherswitch_port_t *p) struct adm6996fc_softc *sc; struct ifmedia *ifm; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; device_t parent; int err; int data; @@ -721,13 +721,13 @@ adm6996fc_statchg(device_t dev) } static int -adm6996fc_ifmedia_upd(struct ifnet *ifp) +adm6996fc_ifmedia_upd(if_t ifp) { struct adm6996fc_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = adm6996fc_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = adm6996fc_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); if (mii == NULL) @@ -737,13 +737,13 @@ adm6996fc_ifmedia_upd(struct ifnet *ifp) } static void -adm6996fc_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +adm6996fc_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct adm6996fc_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = adm6996fc_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = adm6996fc_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); diff --git a/sys/dev/etherswitch/ip17x/ip17x.c b/sys/dev/etherswitch/ip17x/ip17x.c index d900eef9bd37..7c6d253e7964 100644 --- a/sys/dev/etherswitch/ip17x/ip17x.c +++ b/sys/dev/etherswitch/ip17x/ip17x.c @@ -79,8 +79,8 @@ MALLOC_DECLARE(M_IP17X); MALLOC_DEFINE(M_IP17X, "ip17x", "ip17x data structures"); static void ip17x_tick(void *); -static int ip17x_ifmedia_upd(struct ifnet *); -static void ip17x_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int ip17x_ifmedia_upd(if_t ); +static void ip17x_ifmedia_sts(if_t , struct ifmediareq *); static void ip17x_identify(driver_t *driver, device_t parent) @@ -180,9 +180,9 @@ ip17x_attach_phys(struct ip17x_softc *sc) break; } - sc->ifp[port]->if_softc = sc; - sc->ifp[port]->if_flags |= IFF_UP | IFF_BROADCAST | - IFF_DRV_RUNNING | IFF_SIMPLEX; + if_setsoftc(sc->ifp[port], sc); + if_setflags(sc->ifp[port], IFF_UP | IFF_BROADCAST | + IFF_DRV_RUNNING | IFF_SIMPLEX); if_initname(sc->ifp[port], name, port); sc->miibus[port] = malloc(sizeof(device_t), M_IP17X, M_WAITOK | M_ZERO); @@ -191,7 +191,7 @@ ip17x_attach_phys(struct ip17x_softc *sc) BMSR_DEFCAPMASK, phy, MII_OFFSET_ANY, 0); DPRINTF(sc->sc_dev, "%s attached to pseudo interface %s\n", device_get_nameunit(*sc->miibus[port]), - sc->ifp[port]->if_xname); + if_name(sc->ifp[port])); if (err != 0) { device_printf(sc->sc_dev, "attaching PHY %d failed\n", @@ -240,7 +240,7 @@ ip17x_attach(device_t dev) /* Always attach the cpu port. */ sc->phymask |= (1 << sc->cpuport); - sc->ifp = malloc(sizeof(struct ifnet *) * sc->numports, M_IP17X, + sc->ifp = malloc(sizeof(if_t ) * sc->numports, M_IP17X, M_WAITOK | M_ZERO); sc->pvid = malloc(sizeof(uint32_t) * sc->numports, M_IP17X, M_WAITOK | M_ZERO); @@ -324,7 +324,7 @@ ip17x_miiforport(struct ip17x_softc *sc, int port) return (device_get_softc(*sc->miibus[port])); } -static inline struct ifnet * +static inline if_t ip17x_ifpforport(struct ip17x_softc *sc, int port) { @@ -459,7 +459,7 @@ ip17x_setport(device_t dev, etherswitch_port_t *p) { struct ip17x_softc *sc; struct ifmedia *ifm; - struct ifnet *ifp; + if_t ifp; struct mii_data *mii; int phy; @@ -524,14 +524,14 @@ ip17x_statchg(device_t dev) } static int -ip17x_ifmedia_upd(struct ifnet *ifp) +ip17x_ifmedia_upd(if_t ifp) { struct ip17x_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); DPRINTF(sc->sc_dev, "%s\n", __func__); - mii = ip17x_miiforport(sc, ifp->if_dunit); + mii = ip17x_miiforport(sc, if_getdunit(ifp)); if (mii == NULL) return (ENXIO); mii_mediachg(mii); @@ -540,14 +540,14 @@ ip17x_ifmedia_upd(struct ifnet *ifp) } static void -ip17x_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +ip17x_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct ip17x_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); DPRINTF(sc->sc_dev, "%s\n", __func__); - mii = ip17x_miiforport(sc, ifp->if_dunit); + mii = ip17x_miiforport(sc, if_getdunit(ifp)); if (mii == NULL) return; mii_pollstat(mii); diff --git a/sys/dev/etherswitch/ip17x/ip17x_var.h b/sys/dev/etherswitch/ip17x/ip17x_var.h index 9573a18a1875..8664c3e0f63f 100644 --- a/sys/dev/etherswitch/ip17x/ip17x_var.h +++ b/sys/dev/etherswitch/ip17x/ip17x_var.h @@ -59,7 +59,7 @@ struct ip17x_softc { etherswitch_info_t info; ip17x_switch_type sc_switchtype; struct callout callout_tick; - struct ifnet **ifp; + if_t *ifp; struct mtx sc_mtx; /* serialize access to softc */ struct ip17x_vlan vlan[IP17X_MAX_VLANS]; diff --git a/sys/dev/etherswitch/micrel/ksz8995ma.c b/sys/dev/etherswitch/micrel/ksz8995ma.c index 386bd9ebd436..c7d3806fb558 100644 --- a/sys/dev/etherswitch/micrel/ksz8995ma.c +++ b/sys/dev/etherswitch/micrel/ksz8995ma.c @@ -151,7 +151,7 @@ struct ksz8995ma_softc { int *portphy; char **ifname; device_t **miibus; - struct ifnet **ifp; + if_t *ifp; struct callout callout_tick; etherswitch_info_t info; }; @@ -173,8 +173,8 @@ struct ksz8995ma_softc { static inline int ksz8995ma_portforphy(struct ksz8995ma_softc *, int); static void ksz8995ma_tick(void *); -static int ksz8995ma_ifmedia_upd(struct ifnet *); -static void ksz8995ma_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int ksz8995ma_ifmedia_upd(if_t ); +static void ksz8995ma_ifmedia_sts(if_t , struct ifmediareq *); static int ksz8995ma_readreg(device_t dev, int addr); static int ksz8995ma_writereg(device_t dev, int addr, int value); static void ksz8995ma_portvlanreset(device_t dev); @@ -304,7 +304,7 @@ ksz8995ma_attach(device_t dev) sc->info.es_nvlangroups = 16; sc->info.es_vlan_caps = ETHERSWITCH_VLAN_PORT | ETHERSWITCH_VLAN_DOT1Q; - sc->ifp = malloc(sizeof(struct ifnet *) * sc->numports, M_KSZ8995MA, + sc->ifp = malloc(sizeof(if_t ) * sc->numports, M_KSZ8995MA, M_WAITOK | M_ZERO); sc->ifname = malloc(sizeof(char *) * sc->numports, M_KSZ8995MA, M_WAITOK | M_ZERO); @@ -413,7 +413,7 @@ ksz8995ma_miiforport(struct ksz8995ma_softc *sc, int port) return (device_get_softc(*sc->miibus[port])); } -static inline struct ifnet * +static inline if_t ksz8995ma_ifpforport(struct ksz8995ma_softc *sc, int port) { @@ -565,7 +565,7 @@ ksz8995ma_setport(device_t dev, etherswitch_port_t *p) struct ksz8995ma_softc *sc; struct mii_data *mii; struct ifmedia *ifm; - struct ifnet *ifp; + if_t ifp; int phy, err; int portreg; @@ -771,13 +771,13 @@ ksz8995ma_statchg(device_t dev) } static int -ksz8995ma_ifmedia_upd(struct ifnet *ifp) +ksz8995ma_ifmedia_upd(if_t ifp) { struct ksz8995ma_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = ksz8995ma_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = ksz8995ma_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); if (mii == NULL) @@ -787,13 +787,13 @@ ksz8995ma_ifmedia_upd(struct ifnet *ifp) } static void -ksz8995ma_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +ksz8995ma_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct ksz8995ma_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = ksz8995ma_miiforport(sc, ifp->if_dunit); + sc = if_getsoftc(ifp); + mii = ksz8995ma_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); diff --git a/sys/dev/etherswitch/mtkswitch/mtkswitch.c b/sys/dev/etherswitch/mtkswitch/mtkswitch.c index fc496ba63ce5..c10c34c4c21c 100644 --- a/sys/dev/etherswitch/mtkswitch/mtkswitch.c +++ b/sys/dev/etherswitch/mtkswitch/mtkswitch.c @@ -69,8 +69,8 @@ static SYSCTL_NODE(_debug, OID_AUTO, mtkswitch, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, #endif static inline int mtkswitch_portforphy(int phy); -static int mtkswitch_ifmedia_upd(struct ifnet *ifp); -static void mtkswitch_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr); +static int mtkswitch_ifmedia_upd(if_t ifp); +static void mtkswitch_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr); static void mtkswitch_tick(void *arg); static const struct ofw_compat_data compat_data[] = { @@ -303,7 +303,7 @@ mtkswitch_miiforport(struct mtkswitch_softc *sc, int port) return (device_get_softc(sc->miibus[phy])); } -static inline struct ifnet * +static inline if_t mtkswitch_ifpforport(struct mtkswitch_softc *sc, int port) { int phy = mtkswitch_phyforport(port); @@ -484,7 +484,7 @@ mtkswitch_setport(device_t dev, etherswitch_port_t *p) struct mtkswitch_softc *sc; struct ifmedia *ifm; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); if (p->es_port < 0 || p->es_port > sc->info.es_nports) @@ -519,10 +519,10 @@ mtkswitch_statchg(device_t dev) } static int -mtkswitch_ifmedia_upd(struct ifnet *ifp) +mtkswitch_ifmedia_upd(if_t ifp) { - struct mtkswitch_softc *sc = ifp->if_softc; - struct mii_data *mii = mtkswitch_miiforport(sc, ifp->if_dunit); + struct mtkswitch_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = mtkswitch_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ if (mii == NULL) return (ENXIO); @@ -531,10 +531,10 @@ mtkswitch_ifmedia_upd(struct ifnet *ifp) } static void -mtkswitch_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +mtkswitch_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { - struct mtkswitch_softc *sc = ifp->if_softc; - struct mii_data *mii = mtkswitch_miiforport(sc, ifp->if_dunit); + struct mtkswitch_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = mtkswitch_miiforport(sc, ifp->if_dunit); /* XXX - DRVAPI */ DPRINTF(sc->sc_dev, "%s\n", __func__); diff --git a/sys/dev/etherswitch/mtkswitch/mtkswitchvar.h b/sys/dev/etherswitch/mtkswitch/mtkswitchvar.h index b13e35b7bede..c37affd0bb85 100644 --- a/sys/dev/etherswitch/mtkswitch/mtkswitchvar.h +++ b/sys/dev/etherswitch/mtkswitch/mtkswitchvar.h @@ -68,7 +68,7 @@ struct mtkswitch_softc { mtk_switch_type sc_switchtype; char *ifname[MTKSWITCH_MAX_PHYS]; device_t miibus[MTKSWITCH_MAX_PHYS]; - struct ifnet *ifp[MTKSWITCH_MAX_PHYS]; + if_t ifp[MTKSWITCH_MAX_PHYS]; struct callout callout_tick; etherswitch_info_t info; diff --git a/sys/dev/etherswitch/rtl8366/rtl8366rb.c b/sys/dev/etherswitch/rtl8366/rtl8366rb.c index 2ea34f4292a3..f171bbe25e31 100644 --- a/sys/dev/etherswitch/rtl8366/rtl8366rb.c +++ b/sys/dev/etherswitch/rtl8366/rtl8366rb.c @@ -75,7 +75,7 @@ struct rtl8366rb_softc { int vid[RTL8366_NUM_VLANS]; char *ifname[RTL8366_NUM_PHYS]; device_t miibus[RTL8366_NUM_PHYS]; - struct ifnet *ifp[RTL8366_NUM_PHYS]; + if_t ifp[RTL8366_NUM_PHYS]; struct callout callout_tick; etherswitch_info_t info; int chip_type; @@ -126,8 +126,8 @@ static int smi_read(device_t dev, uint16_t addr, uint16_t *data, int sleep); static int smi_write(device_t dev, uint16_t addr, uint16_t data, int sleep); static int smi_rmw(device_t dev, uint16_t addr, uint16_t mask, uint16_t data, int sleep); static void rtl8366rb_tick(void *arg); -static int rtl8366rb_ifmedia_upd(struct ifnet *); -static void rtl8366rb_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int rtl8366rb_ifmedia_upd(if_t ); +static void rtl8366rb_ifmedia_sts(if_t , struct ifmediareq *); static void rtl8366rb_identify(driver_t *driver, device_t parent) @@ -246,9 +246,9 @@ rtl8366rb_attach(device_t dev) break; } - sc->ifp[i]->if_softc = sc; - sc->ifp[i]->if_flags |= IFF_UP | IFF_BROADCAST | IFF_DRV_RUNNING - | IFF_SIMPLEX; + if_setsoftc(sc->ifp[i], sc); + if_setflagbits(sc->ifp[i], IFF_UP | IFF_BROADCAST | IFF_DRV_RUNNING + | IFF_SIMPLEX, 0); snprintf(name, IFNAMSIZ, "%sport", device_get_nameunit(dev)); sc->ifname[i] = malloc(strlen(name)+1, M_DEVBUF, M_WAITOK); bcopy(name, sc->ifname[i], strlen(name)+1); @@ -895,26 +895,26 @@ rtl_writephy(device_t dev, int phy, int reg, int data) } static int -rtl8366rb_ifmedia_upd(struct ifnet *ifp) +rtl8366rb_ifmedia_upd(if_t ifp) { struct rtl8366rb_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = device_get_softc(sc->miibus[ifp->if_dunit]); + sc = if_getsoftc(ifp); + mii = device_get_softc(sc->miibus[if_getdunit(ifp)]); mii_mediachg(mii); return (0); } static void -rtl8366rb_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +rtl8366rb_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { struct rtl8366rb_softc *sc; struct mii_data *mii; - sc = ifp->if_softc; - mii = device_get_softc(sc->miibus[ifp->if_dunit]); + sc = if_getsoftc(ifp); + mii = device_get_softc(sc->miibus[if_getdunit(ifp)]); mii_pollstat(mii); ifmr->ifm_active = mii->mii_media_active; diff --git a/sys/dev/etherswitch/ukswitch/ukswitch.c b/sys/dev/etherswitch/ukswitch/ukswitch.c index ee9415e0584b..5ec3a0db0d1e 100644 --- a/sys/dev/etherswitch/ukswitch/ukswitch.c +++ b/sys/dev/etherswitch/ukswitch/ukswitch.c @@ -75,7 +75,7 @@ struct ukswitch_softc { int *portphy; char **ifname; device_t **miibus; - struct ifnet **ifp; + if_t *ifp; struct callout callout_tick; etherswitch_info_t info; }; @@ -97,8 +97,8 @@ struct ukswitch_softc { static inline int ukswitch_portforphy(struct ukswitch_softc *, int); static void ukswitch_tick(void *); -static int ukswitch_ifmedia_upd(struct ifnet *); -static void ukswitch_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static int ukswitch_ifmedia_upd(if_t ); +static void ukswitch_ifmedia_sts(if_t , struct ifmediareq *); static int ukswitch_probe(device_t dev) @@ -132,9 +132,9 @@ ukswitch_attach_phys(struct ukswitch_softc *sc) break; } - sc->ifp[port]->if_softc = sc; - sc->ifp[port]->if_flags |= IFF_UP | IFF_BROADCAST | - IFF_DRV_RUNNING | IFF_SIMPLEX; + if_setsoftc(sc->ifp[port], sc); + if_setflags(sc->ifp[port], IFF_UP | IFF_BROADCAST | + IFF_DRV_RUNNING | IFF_SIMPLEX); sc->ifname[port] = malloc(strlen(name)+1, M_UKSWITCH, M_WAITOK); bcopy(name, sc->ifname[port], strlen(name)+1); if_initname(sc->ifp[port], sc->ifname[port], port); @@ -145,7 +145,7 @@ ukswitch_attach_phys(struct ukswitch_softc *sc) BMSR_DEFCAPMASK, phy + sc->phyoffset, MII_OFFSET_ANY, 0); DPRINTF(sc->sc_dev, "%s attached to pseudo interface %s\n", device_get_nameunit(*sc->miibus[port]), - sc->ifp[port]->if_xname); + if_name(sc->ifp[port])); if (err != 0) { device_printf(sc->sc_dev, "attaching PHY %d failed\n", @@ -201,7 +201,7 @@ ukswitch_attach(device_t dev) /* We do not support any vlan groups. */ sc->info.es_nvlangroups = 0; - sc->ifp = malloc(sizeof(struct ifnet *) * sc->numports, M_UKSWITCH, + sc->ifp = malloc(sizeof(if_t ) * sc->numports, M_UKSWITCH, M_WAITOK | M_ZERO); sc->ifname = malloc(sizeof(char *) * sc->numports, M_UKSWITCH, M_WAITOK | M_ZERO); @@ -280,7 +280,7 @@ ukswitch_miiforport(struct ukswitch_softc *sc, int port) return (device_get_softc(*sc->miibus[port])); } -static inline struct ifnet * +static inline if_t ukswitch_ifpforport(struct ukswitch_softc *sc, int port) { @@ -396,7 +396,7 @@ ukswitch_setport(device_t dev, etherswitch_port_t *p) struct ukswitch_softc *sc = device_get_softc(dev); struct ifmedia *ifm; struct mii_data *mii; - struct ifnet *ifp; + if_t ifp; int err; if (p->es_port < 0 || p->es_port >= sc->numports) @@ -444,10 +444,10 @@ ukswitch_statchg(device_t dev) } static int -ukswitch_ifmedia_upd(struct ifnet *ifp) +ukswitch_ifmedia_upd(if_t ifp) { - struct ukswitch_softc *sc = ifp->if_softc; - struct mii_data *mii = ukswitch_miiforport(sc, ifp->if_dunit); + struct ukswitch_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = ukswitch_miiforport(sc, if_getdunit(ifp)); DPRINTF(sc->sc_dev, "%s\n", __func__); if (mii == NULL) @@ -457,10 +457,10 @@ ukswitch_ifmedia_upd(struct ifnet *ifp) } static void -ukswitch_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +ukswitch_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { - struct ukswitch_softc *sc = ifp->if_softc; - struct mii_data *mii = ukswitch_miiforport(sc, ifp->if_dunit); + struct ukswitch_softc *sc = if_getsoftc(ifp); + struct mii_data *mii = ukswitch_miiforport(sc, if_getdunit(ifp)); DPRINTF(sc->sc_dev, "%s\n", __func__); From nobody Tue Jan 24 20:48: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 4P1fFL3jChz3bSZg; Tue, 24 Jan 2023 20:48: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 4P1fFL1639z42Dr; Tue, 24 Jan 2023 20:48:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593302; 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=qE5Sd3cKB6O6Ce/dwn0LGjblf4rE3b4ML2QL1Bi5zzo=; b=ZTvairdpqb+Hv8kHabkKRCxvV6/wDiPqLi1ojB5bc8z+W9pGVCBeasVxFcSIBRXCsp53k5 GgbZ26IQ///kC4xUHBi3LvVQJQabpKHfG9baDQRjiYaSl40qGtdvhnkGoAL49unprO0mFV NGEkFTdiWY4jtmZSqeYQuTKBQUDWboIAZTstDoehEmJQTzOZWIZLZOAQR5b/mqtejH5t1e ZwGT6tK9XuMOH+JxOtC4DDOnD63xPNO6uy6F4tIXG8tgwW/G00WD6nd5gClVMhSiOGnve/ xRUv6Q5dymk4ZC6rMWZj8fIwIQspBcYNH8EMOgS7lZFOzd68WH+x71N8owkoCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593302; 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=qE5Sd3cKB6O6Ce/dwn0LGjblf4rE3b4ML2QL1Bi5zzo=; b=RpIYPn7xVbeWdTyOQ7ixt5ok9PJhrsggXWjFwpQJfuaRe7N6By/yDaidMrNbvm/GZo/qlM 9p55hAWkeHu6yahiBiyCfHcFW5rqKy5DjK2O83Ee+sDtu6+KXjGV5iA6HodXe0ziPwjJ6c VMD7rLc+yvCXliN9pVXXOkG/WAZJ6JZ5KV6vTFMduAw8ehDpXwG8dh6/FNvS0wlDwVGfFB nI21FcRxEPq4wAChkcVNJk7CS7RZA7QkmZtpR/xzJ8TnIFwHPVXjSDR3cXpDqUOtVEX+dq Xgz4OmEUi6J63KAiICqndtKvsSUbfV15WQcLvgJ0z2gI6uTM9Rc6rz2jR75BrA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593302; a=rsa-sha256; cv=none; b=HuECI/vnD3+OAY5Drg3u2kTXmkwxKG8KaPkMhJuZJCea+GOZFTKJp+/W+zzApbT8yf7mx6 hz4qMfB1culFai7LsjWx+oJ3ljbSh1A6plfnSnOTm16NPIa8S1dqZlf2olLDPRNWBYECbi JxjoBkAQGKQF5t96yEGVd3pp0zK153xXQ0bMNQFOgs9ikUnslayYurQJCR2kyTwEFC+miu X8L+OMJT8CrtInnb/X5nJHFIkXmuqbSrKEVA3Ob2B5n/yIEdGCgpDp4W6p2Zp/n/zBmaTR jUVMCAUTU7vHE01EQz3H3phkfDQcYIQdyqWNMBp1UwprL58h8jhJcuNQcBABQw== 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 4P1fFK5qztzN8F; Tue, 24 Jan 2023 20:48:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmLgT053844; Tue, 24 Jan 2023 20:48:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmLA5053843; Tue, 24 Jan 2023 20:48:21 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:21 GMT Message-Id: <202301242048.30OKmLA5053843@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: fa25dbfd98ff - main - ifnet API: Change if_init() to take context argument 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fa25dbfd98ff58556d707a94a8355626b681c65f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=fa25dbfd98ff58556d707a94a8355626b681c65f commit fa25dbfd98ff58556d707a94a8355626b681c65f Author: Justin Hibbits AuthorDate: 2023-01-12 18:33:30 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:30 +0000 ifnet API: Change if_init() to take context argument Some drivers, like iflib drivers, take a 'context' argument instead of a ifnet argument, as a single interface may have multiple contexts. Follow this scheme by passing the context argument down. Most drivers will likely pass 'ifp' as the context. Reviewed by: glebius Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D38102 --- sys/net/if.c | 4 ++-- sys/net/if_var.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/net/if.c b/sys/net/if.c index c7b7d1f6d9d4..c7a6cf18d4b7 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -4622,9 +4622,9 @@ if_vlantrunkinuse(if_t ifp) } int -if_init(if_t ifp) +if_init(if_t ifp, void *ctx) { - (*((struct ifnet *)ifp)->if_init)((struct ifnet *)ifp); + (*((struct ifnet *)ifp)->if_init)(ctx); return (0); } diff --git a/sys/net/if_var.h b/sys/net/if_var.h index 2712ac74a09d..afb58578e96b 100644 --- a/sys/net/if_var.h +++ b/sys/net/if_var.h @@ -784,7 +784,7 @@ void if_bpfmtap(if_t ifp, struct mbuf *m); void if_etherbpfmtap(if_t ifp, struct mbuf *m); void if_vlancap(if_t ifp); int if_transmit(if_t ifp, struct mbuf *m); -int if_init(if_t ifp); +int if_init(if_t ifp, void *ctx); /* * Traversing through interface address lists. From nobody Tue Jan 24 20:48: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 4P1fFM0TL1z3bStq; Tue, 24 Jan 2023 20:48:23 +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 4P1fFM07pYz42F2; Tue, 24 Jan 2023 20:48:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593303; 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=u+DXv+/BtxIuKj/RiwpTxjG5b7atv0foinG3Fm9NFN0=; b=TTlwjNB0Yh3sIT6JRvqa3DpmHVIGJFYmw1+eKWw1JEOOuUm35Yr8GhMdjfzR5l5+den7x0 6TLkgxMFi0RtKCN+V6tKGZ7txhx6Dym3RDmU30A0txxtLVn3i8StlOTAVddplSyNZX0QbX eVhldSAFH3ZcX+Vd2uc3cdvoWEKeqIUOuWlNGbHMeH+XFzsGtj2D7D0ib9u+Z32z5UlYuX ARRxd5e5Kp0cCtYi0JYUQp0/Wem6OFm0AmOTxMyZ/gCAxu00pN3eMPO3+HrJeDhbrNvFyE rPs2lx8X24GlIFk9nA9YfAlmhk1jINtwJV00/CETS+4EkG5h3/hak9CAaXKVwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593303; 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=u+DXv+/BtxIuKj/RiwpTxjG5b7atv0foinG3Fm9NFN0=; b=rhiXKcTNxLGjFwju5dztdC9WagHofXmtP4SeX5eDish2YK/D7OzpM3cgRIWlkk7MEZlvDN Hj7A6FFpvRXXbecnONzUw4Q4IjftalA9A9kDHya2qAtaapr1lCo7XyenorhSntfdgSGBH0 ag5DEEp1DcxMBD39nk5JjXMWDOtWA9Im777LxVNPXQd9pP3u8TUtXYUlwC85oIskfeFDk6 xQoErgqdZuVHWn5/veCf89vvAjm/RSwZRs2u2oyd0NPcRdzGfbQuoLRbTH8X1ArTlYhAjs NKOxhRDRClW1ayuAmeL5mDQoKpIEUIxxMmXbu/NtIfjZgpmmoPpy54mNcNYrCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593303; a=rsa-sha256; cv=none; b=pm848BeSiXPHvXpYBLYcTaGLvMFziyq2uajt6d0uwSM0xc5k4QumVBxdQu8A2c/Oba2EnY 66l1eeLqmCcXub+HFnBq+JWkulsS8xToLQV/zSxi4Kip/LYNYR6fy10vcUrq3WAlkoc60y 3OByLBTt71VJjgNZJ74tRXL3Q3r5Snbup4KMTyBeik3qEcyHRDq6WONnfUD+UFZJbgGbEN NFMTUGCHvqenUkwIrnLExGVv8t7QFg05kqPfLtbdzPDI5sBzCMwdKzAev7t/ppOqH+QwL0 5yNXN1DhWl8eqJjzLW/0m1JPkCIEDOBtMfdPO5yDuh8LL3VmStL0VYnR7OC9KA== 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 4P1fFL6M5QzN6Q; Tue, 24 Jan 2023 20:48:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmM06053872; Tue, 24 Jan 2023 20:48:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmMsv053871; Tue, 24 Jan 2023 20:48:22 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:22 GMT Message-Id: <202301242048.30OKmMsv053871@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 2c2b37ad251d - main - ifnet/API: Move struct ifnet definition to a 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2c2b37ad251d25fb81d6254e29130684fed774ab Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=2c2b37ad251d25fb81d6254e29130684fed774ab commit 2c2b37ad251d25fb81d6254e29130684fed774ab Author: Justin Hibbits AuthorDate: 2023-01-13 15:43:51 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 19:36:30 +0000 ifnet/API: Move struct ifnet definition to a Hide the ifnet structure definition, no user serviceable parts inside, it's a netstack implementation detail. Include it temporarily in until all drivers are updated to use the accessors exclusively. Reviewed by: glebius Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D38046 --- sys/net/altq/altq_cbq.c | 1 + sys/net/altq/altq_codel.c | 1 + sys/net/altq/altq_fairq.c | 1 + sys/net/altq/altq_hfsc.c | 1 + sys/net/altq/altq_priq.c | 1 + sys/net/altq/altq_rmclass.c | 1 + sys/net/altq/altq_subr.c | 1 + sys/net/bpf.c | 1 + sys/net/bridgestp.c | 1 + sys/net/debugnet.c | 1 + sys/net/debugnet_inet.c | 1 + sys/net/ieee8023ad_lacp.c | 1 + sys/net/if.c | 1 + sys/net/if_bridge.c | 1 + sys/net/if_clone.c | 1 + sys/net/if_dead.c | 1 + sys/net/if_disc.c | 1 + sys/net/if_edsc.c | 2 +- sys/net/if_enc.c | 1 + sys/net/if_epair.c | 1 + sys/net/if_ethersubr.c | 1 + sys/net/if_fwsubr.c | 1 + sys/net/if_gif.c | 1 + sys/net/if_gre.c | 1 + sys/net/if_infiniband.c | 1 + sys/net/if_ipsec.c | 1 + sys/net/if_lagg.c | 1 + sys/net/if_llatbl.c | 1 + sys/net/if_loop.c | 1 + sys/net/if_me.c | 1 + sys/net/if_media.c | 1 + sys/net/if_mib.c | 1 + sys/net/if_ovpn.c | 1 + sys/net/if_private.h | 198 ++++++++++++++++++++++++++++++++++++++++++ sys/net/if_stf.c | 1 + sys/net/if_tuntap.c | 1 + sys/net/if_var.h | 160 +--------------------------------- sys/net/if_vlan.c | 1 + sys/net/if_vxlan.c | 1 + sys/net/iflib.c | 1 + sys/net/iflib_clone.c | 1 + sys/net/netisr.c | 1 + sys/net/route.c | 1 + sys/net/route/nhgrp_ctl.c | 1 + sys/net/route/nhop_ctl.c | 1 + sys/net/route/route_ctl.c | 1 + sys/net/route/route_ddb.c | 1 + sys/net/route/route_ifaddrs.c | 1 + sys/net/route/route_rtentry.c | 1 - sys/net/rtsock.c | 1 + 50 files changed, 246 insertions(+), 161 deletions(-) diff --git a/sys/net/altq/altq_cbq.c b/sys/net/altq/altq_cbq.c index 0e267fcb49e2..86102ebcd537 100644 --- a/sys/net/altq/altq_cbq.c +++ b/sys/net/altq/altq_cbq.c @@ -47,6 +47,7 @@ #include #include +#include #include #include diff --git a/sys/net/altq/altq_codel.c b/sys/net/altq/altq_codel.c index b9950ed94d2b..be16a5aef3e5 100644 --- a/sys/net/altq/altq_codel.c +++ b/sys/net/altq/altq_codel.c @@ -53,6 +53,7 @@ #include #include +#include #include #include diff --git a/sys/net/altq/altq_fairq.c b/sys/net/altq/altq_fairq.c index b4eeb1ddf9b4..b33543548235 100644 --- a/sys/net/altq/altq_fairq.c +++ b/sys/net/altq/altq_fairq.c @@ -104,6 +104,7 @@ #include #include +#include #include #include diff --git a/sys/net/altq/altq_hfsc.c b/sys/net/altq/altq_hfsc.c index 5551ad1313e4..16b25d215feb 100644 --- a/sys/net/altq/altq_hfsc.c +++ b/sys/net/altq/altq_hfsc.c @@ -63,6 +63,7 @@ #include #include +#include #include #include diff --git a/sys/net/altq/altq_priq.c b/sys/net/altq/altq_priq.c index f0627e2611a7..bb679baa236d 100644 --- a/sys/net/altq/altq_priq.c +++ b/sys/net/altq/altq_priq.c @@ -49,6 +49,7 @@ #include #include +#include #include #include diff --git a/sys/net/altq/altq_rmclass.c b/sys/net/altq/altq_rmclass.c index a9af314cd48a..6e64a0a6f80e 100644 --- a/sys/net/altq/altq_rmclass.c +++ b/sys/net/altq/altq_rmclass.c @@ -52,6 +52,7 @@ #include #include +#include #include #include diff --git a/sys/net/altq/altq_subr.c b/sys/net/altq/altq_subr.c index deadf4ecc9a9..04ea1bc91e28 100644 --- a/sys/net/altq/altq_subr.c +++ b/sys/net/altq/altq_subr.c @@ -46,6 +46,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/bpf.c b/sys/net/bpf.c index 1885f1fd3733..ab733f1d68ec 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -78,6 +78,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/bridgestp.c b/sys/net/bridgestp.c index cf182d2efe7b..23c035b282f9 100644 --- a/sys/net/bridgestp.c +++ b/sys/net/bridgestp.c @@ -55,6 +55,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/debugnet.c b/sys/net/debugnet.c index b41d93eca7fe..372801d3d970 100644 --- a/sys/net/debugnet.c +++ b/sys/net/debugnet.c @@ -56,6 +56,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/debugnet_inet.c b/sys/net/debugnet_inet.c index e7449113ba10..bd5195ab86d5 100644 --- a/sys/net/debugnet_inet.c +++ b/sys/net/debugnet_inet.c @@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include diff --git a/sys/net/ieee8023ad_lacp.c b/sys/net/ieee8023ad_lacp.c index 65b3a337eedc..78345aae68e5 100644 --- a/sys/net/ieee8023ad_lacp.c +++ b/sys/net/ieee8023ad_lacp.c @@ -53,6 +53,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/if.c b/sys/net/if.c index c7a6cf18d4b7..a18e4f1d8f56 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -86,6 +86,7 @@ #include #include #include +#include #include #include #include diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 5c3ce137931c..67d031a65052 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -110,6 +110,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include diff --git a/sys/net/if_clone.c b/sys/net/if_clone.c index 8360fb4d1d27..7dcb3c271e42 100644 --- a/sys/net/if_clone.c +++ b/sys/net/if_clone.c @@ -46,6 +46,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/if_dead.c b/sys/net/if_dead.c index 5721e9490776..8d645c29817b 100644 --- a/sys/net/if_dead.c +++ b/sys/net/if_dead.c @@ -42,6 +42,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include static int ifdead_output(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *sa, diff --git a/sys/net/if_disc.c b/sys/net/if_disc.c index 14d544dfd86a..62313415de91 100644 --- a/sys/net/if_disc.c +++ b/sys/net/if_disc.c @@ -48,6 +48,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/if_edsc.c b/sys/net/if_edsc.c index 85a8e8cca2d3..8de583713410 100644 --- a/sys/net/if_edsc.c +++ b/sys/net/if_edsc.c @@ -50,9 +50,9 @@ #include /* Ethernet related constants and types */ #include #include /* basic part of ifnet(9) */ +#include #include /* network interface cloning */ #include /* IFT_ETHER and friends */ -#include /* kernel-only part of ifnet(9) */ #include static const char edscname[] = "edsc"; diff --git a/sys/net/if_enc.c b/sys/net/if_enc.c index af1d16f11a18..da6ce7a1a815 100644 --- a/sys/net/if_enc.c +++ b/sys/net/if_enc.c @@ -50,6 +50,7 @@ #include #include #include +#include #include #include #include diff --git a/sys/net/if_epair.c b/sys/net/if_epair.c index cbe75de52c0f..81538c0cb157 100644 --- a/sys/net/if_epair.c +++ b/sys/net/if_epair.c @@ -71,6 +71,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #ifdef RSS diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index a42e15dda97a..b3fc71006a35 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include diff --git a/sys/net/if_fwsubr.c b/sys/net/if_fwsubr.c index 321721737d36..5e5fc7a181e5 100644 --- a/sys/net/if_fwsubr.c +++ b/sys/net/if_fwsubr.c @@ -46,6 +46,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/if_gif.c b/sys/net/if_gif.c index ea4b80690e50..18160c21411e 100644 --- a/sys/net/if_gif.c +++ b/sys/net/if_gif.c @@ -60,6 +60,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/if_gre.c b/sys/net/if_gre.c index 5ad452ac38e0..2349a359e12e 100644 --- a/sys/net/if_gre.c +++ b/sys/net/if_gre.c @@ -60,6 +60,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/if_infiniband.c b/sys/net/if_infiniband.c index c673b7d30a79..e5830d977e80 100644 --- a/sys/net/if_infiniband.c +++ b/sys/net/if_infiniband.c @@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/if_ipsec.c b/sys/net/if_ipsec.c index a2f690b4cffb..2e0b956f5f99 100644 --- a/sys/net/if_ipsec.c +++ b/sys/net/if_ipsec.c @@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 58157e0dff3f..c649a2c3372e 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/if_llatbl.c b/sys/net/if_llatbl.c index 68a5ab931ec9..86bf9a0d47db 100644 --- a/sys/net/if_llatbl.c +++ b/sys/net/if_llatbl.c @@ -57,6 +57,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/if_loop.c b/sys/net/if_loop.c index f4d34c46f9f0..a483aea8860b 100644 --- a/sys/net/if_loop.c +++ b/sys/net/if_loop.c @@ -53,6 +53,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/if_me.c b/sys/net/if_me.c index 0f8336067116..2bbb6b15217d 100644 --- a/sys/net/if_me.c +++ b/sys/net/if_me.c @@ -47,6 +47,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/if_media.c b/sys/net/if_media.c index 4100aaab9521..441c7258a473 100644 --- a/sys/net/if_media.c +++ b/sys/net/if_media.c @@ -75,6 +75,7 @@ static struct ifmedia_entry *ifmedia_match(struct ifmedia *ifm, #ifdef IFMEDIA_DEBUG #include +#include int ifmedia_debug = 0; SYSCTL_INT(_debug, OID_AUTO, ifmedia, CTLFLAG_RW, &ifmedia_debug, 0, "if_media debugging msgs"); diff --git a/sys/net/if_mib.c b/sys/net/if_mib.c index abf983a02c79..603ee72c10a4 100644 --- a/sys/net/if_mib.c +++ b/sys/net/if_mib.c @@ -38,6 +38,7 @@ #include #include +#include #include #include diff --git a/sys/net/if_ovpn.c b/sys/net/if_ovpn.c index fa69e5277f75..169a17ec6083 100644 --- a/sys/net/if_ovpn.c +++ b/sys/net/if_ovpn.c @@ -57,6 +57,7 @@ #include #include #include +#include #include #include diff --git a/sys/net/if_private.h b/sys/net/if_private.h new file mode 100644 index 000000000000..70212e79d077 --- /dev/null +++ b/sys/net/if_private.h @@ -0,0 +1,198 @@ +/*- + * SPDX-License-Identifier: BSD-3-Clause + * + * Copyright (c) 1982, 1986, 1989, 1993 + * The Regents of the University of California. 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 University 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 BY THE REGENTS 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 REGENTS 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. + * + * From: @(#)if.h 8.1 (Berkeley) 6/10/93 + */ + +#ifndef _NET_IF_PRIVATE_H_ +#define _NET_IF_PRIVATE_H_ + +#ifdef _KERNEL +/* + * Structure defining a network interface. + */ +struct ifnet { + /* General book keeping of interface lists. */ + CK_STAILQ_ENTRY(ifnet) if_link; /* all struct ifnets are chained (CK_) */ + LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */ + CK_STAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if (CK_) */ + /* protected by if_addr_lock */ + u_char if_alloctype; /* if_type at time of allocation */ + uint8_t if_numa_domain; /* NUMA domain of device */ + /* Driver and protocol specific information that remains stable. */ + void *if_softc; /* pointer to driver state */ + void *if_llsoftc; /* link layer softc */ + void *if_l2com; /* pointer to protocol bits */ + const char *if_dname; /* driver name */ + int if_dunit; /* unit or IF_DUNIT_NONE */ + u_short if_index; /* numeric abbreviation for this if */ + u_short if_idxgen; /* ... and its generation count */ + char if_xname[IFNAMSIZ]; /* external name (name + unit) */ + char *if_description; /* interface description */ + + /* Variable fields that are touched by the stack and drivers. */ + int if_flags; /* up/down, broadcast, etc. */ + int if_drv_flags; /* driver-managed status flags */ + int if_capabilities; /* interface features & capabilities */ + int if_capabilities2; /* part 2 */ + int if_capenable; /* enabled features & capabilities */ + int if_capenable2; /* part 2 */ + void *if_linkmib; /* link-type-specific MIB data */ + size_t if_linkmiblen; /* length of above data */ + u_int if_refcount; /* reference count */ + + /* These fields are shared with struct if_data. */ + uint8_t if_type; /* ethernet, tokenring, etc */ + uint8_t if_addrlen; /* media address length */ + uint8_t if_hdrlen; /* media header length */ + uint8_t if_link_state; /* current link state */ + uint32_t if_mtu; /* maximum transmission unit */ + uint32_t if_metric; /* routing metric (external only) */ + uint64_t if_baudrate; /* linespeed */ + uint64_t if_hwassist; /* HW offload capabilities, see IFCAP */ + time_t if_epoch; /* uptime at attach or stat reset */ + struct timeval if_lastchange; /* time of last administrative change */ + + struct ifaltq if_snd; /* output queue (includes altq) */ + struct task if_linktask; /* task for link change events */ + struct task if_addmultitask; /* task for SIOCADDMULTI */ + + /* Addresses of different protocol families assigned to this if. */ + struct mtx if_addr_lock; /* lock to protect address lists */ + /* + * if_addrhead is the list of all addresses associated to + * an interface. + * Some code in the kernel assumes that first element + * of the list has type AF_LINK, and contains sockaddr_dl + * addresses which store the link-level address and the name + * of the interface. + * However, access to the AF_LINK address through this + * field is deprecated. Use if_addr instead. + */ + struct ifaddrhead if_addrhead; /* linked list of addresses per if */ + struct ifmultihead if_multiaddrs; /* multicast addresses configured */ + int if_amcount; /* number of all-multicast requests */ + struct ifaddr *if_addr; /* pointer to link-level address */ + void *if_hw_addr; /* hardware link-level address */ + const u_int8_t *if_broadcastaddr; /* linklevel broadcast bytestring */ + struct mtx if_afdata_lock; + void *if_afdata[AF_MAX]; + int if_afdata_initialized; + + /* Additional features hung off the interface. */ + u_int if_fib; /* interface FIB */ + struct vnet *if_vnet; /* pointer to network stack instance */ + struct vnet *if_home_vnet; /* where this ifnet originates from */ + struct ifvlantrunk *if_vlantrunk; /* pointer to 802.1q data */ + struct bpf_if *if_bpf; /* packet filter structure */ + int if_pcount; /* number of promiscuous listeners */ + void *if_bridge; /* bridge glue */ + void *if_lagg; /* lagg glue */ + void *if_pf_kif; /* pf glue */ + struct carp_if *if_carp; /* carp interface structure */ + struct label *if_label; /* interface MAC label */ + struct netmap_adapter *if_netmap; /* netmap(4) softc */ + + /* Various procedures of the layer2 encapsulation and drivers. */ + if_output_fn_t if_output; /* output routine (enqueue) */ + if_input_fn_t if_input; /* input routine (from h/w driver) */ + struct mbuf *(*if_bridge_input)(struct ifnet *, struct mbuf *); + int (*if_bridge_output)(struct ifnet *, struct mbuf *, struct sockaddr *, + struct rtentry *); + void (*if_bridge_linkstate)(struct ifnet *ifp); + if_start_fn_t if_start; /* initiate output routine */ + if_ioctl_fn_t if_ioctl; /* ioctl routine */ + if_init_fn_t if_init; /* Init routine */ + int (*if_resolvemulti) /* validate/resolve multicast */ + (struct ifnet *, struct sockaddr **, struct sockaddr *); + if_qflush_fn_t if_qflush; /* flush any queue */ + if_transmit_fn_t if_transmit; /* initiate output routine */ + + void (*if_reassign) /* reassign to vnet routine */ + (struct ifnet *, struct vnet *, char *); + if_get_counter_t if_get_counter; /* get counter values */ + int (*if_requestencap) /* make link header from request */ + (struct ifnet *, struct if_encap_req *); + + /* Statistics. */ + counter_u64_t if_counters[IFCOUNTERS]; + + /* Stuff that's only temporary and doesn't belong here. */ + + /* + * Network adapter TSO limits: + * =========================== + * + * If the "if_hw_tsomax" field is zero the maximum segment + * length limit does not apply. If the "if_hw_tsomaxsegcount" + * or the "if_hw_tsomaxsegsize" field is zero the TSO segment + * count limit does not apply. If all three fields are zero, + * there is no TSO limit. + * + * NOTE: The TSO limits should reflect the values used in the + * BUSDMA tag a network adapter is using to load a mbuf chain + * for transmission. The TCP/IP network stack will subtract + * space for all linklevel and protocol level headers and + * ensure that the full mbuf chain passed to the network + * adapter fits within the given limits. + */ + u_int if_hw_tsomax; /* TSO maximum size in bytes */ + u_int if_hw_tsomaxsegcount; /* TSO maximum segment count */ + u_int if_hw_tsomaxsegsize; /* TSO maximum segment size in bytes */ + + /* + * Network adapter send tag support: + */ + if_snd_tag_alloc_t *if_snd_tag_alloc; + + /* Ratelimit (packet pacing) */ + if_ratelimit_query_t *if_ratelimit_query; + if_ratelimit_setup_t *if_ratelimit_setup; + + /* Ethernet PCP */ + uint8_t if_pcp; + + /* + * Debugnet (Netdump) hooks to be called while in db/panic. + */ + struct debugnet_methods *if_debugnet_methods; + struct epoch_context if_epoch_ctx; + + /* + * Spare fields to be added before branching a stable branch, so + * that structure can be enhanced without changing the kernel + * binary interface. + */ + int if_ispare[4]; /* general use */ +}; + +#endif /* _KERNEL */ + +#endif /* _NET_IF_PRIVATE_H_ */ diff --git a/sys/net/if_stf.c b/sys/net/if_stf.c index 9a469a82c34c..afc7b446fca7 100644 --- a/sys/net/if_stf.c +++ b/sys/net/if_stf.c @@ -100,6 +100,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/if_tuntap.c b/sys/net/if_tuntap.c index 8328f9f94442..7e4f47746e23 100644 --- a/sys/net/if_tuntap.c +++ b/sys/net/if_tuntap.c @@ -83,6 +83,7 @@ #include #include #include +#include #include #include #include diff --git a/sys/net/if_var.h b/sys/net/if_var.h index afb58578e96b..831c609b3e2c 100644 --- a/sys/net/if_var.h +++ b/sys/net/if_var.h @@ -316,165 +316,6 @@ struct if_ratelimit_query_results { typedef void (if_ratelimit_query_t)(struct ifnet *, struct if_ratelimit_query_results *); typedef int (if_ratelimit_setup_t)(struct ifnet *, uint64_t, uint32_t); - -/* - * Structure defining a network interface. - */ -struct ifnet { - /* General book keeping of interface lists. */ - CK_STAILQ_ENTRY(ifnet) if_link; /* all struct ifnets are chained (CK_) */ - LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */ - CK_STAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if (CK_) */ - /* protected by if_addr_lock */ - u_char if_alloctype; /* if_type at time of allocation */ - uint8_t if_numa_domain; /* NUMA domain of device */ - /* Driver and protocol specific information that remains stable. */ - void *if_softc; /* pointer to driver state */ - void *if_llsoftc; /* link layer softc */ - void *if_l2com; /* pointer to protocol bits */ - const char *if_dname; /* driver name */ - int if_dunit; /* unit or IF_DUNIT_NONE */ - u_short if_index; /* numeric abbreviation for this if */ - u_short if_idxgen; /* ... and its generation count */ - char if_xname[IFNAMSIZ]; /* external name (name + unit) */ - char *if_description; /* interface description */ - - /* Variable fields that are touched by the stack and drivers. */ - int if_flags; /* up/down, broadcast, etc. */ - int if_drv_flags; /* driver-managed status flags */ - int if_capabilities; /* interface features & capabilities */ - int if_capabilities2; /* part 2 */ - int if_capenable; /* enabled features & capabilities */ - int if_capenable2; /* part 2 */ - void *if_linkmib; /* link-type-specific MIB data */ - size_t if_linkmiblen; /* length of above data */ - u_int if_refcount; /* reference count */ - - /* These fields are shared with struct if_data. */ - uint8_t if_type; /* ethernet, tokenring, etc */ - uint8_t if_addrlen; /* media address length */ - uint8_t if_hdrlen; /* media header length */ - uint8_t if_link_state; /* current link state */ - uint32_t if_mtu; /* maximum transmission unit */ - uint32_t if_metric; /* routing metric (external only) */ - uint64_t if_baudrate; /* linespeed */ - uint64_t if_hwassist; /* HW offload capabilities, see IFCAP */ - time_t if_epoch; /* uptime at attach or stat reset */ - struct timeval if_lastchange; /* time of last administrative change */ - - struct ifaltq if_snd; /* output queue (includes altq) */ - struct task if_linktask; /* task for link change events */ - struct task if_addmultitask; /* task for SIOCADDMULTI */ - - /* Addresses of different protocol families assigned to this if. */ - struct mtx if_addr_lock; /* lock to protect address lists */ - /* - * if_addrhead is the list of all addresses associated to - * an interface. - * Some code in the kernel assumes that first element - * of the list has type AF_LINK, and contains sockaddr_dl - * addresses which store the link-level address and the name - * of the interface. - * However, access to the AF_LINK address through this - * field is deprecated. Use if_addr instead. - */ - struct ifaddrhead if_addrhead; /* linked list of addresses per if */ - struct ifmultihead if_multiaddrs; /* multicast addresses configured */ - int if_amcount; /* number of all-multicast requests */ - struct ifaddr *if_addr; /* pointer to link-level address */ - void *if_hw_addr; /* hardware link-level address */ - const u_int8_t *if_broadcastaddr; /* linklevel broadcast bytestring */ - struct mtx if_afdata_lock; - void *if_afdata[AF_MAX]; - int if_afdata_initialized; - - /* Additional features hung off the interface. */ - u_int if_fib; /* interface FIB */ - struct vnet *if_vnet; /* pointer to network stack instance */ - struct vnet *if_home_vnet; /* where this ifnet originates from */ - struct ifvlantrunk *if_vlantrunk; /* pointer to 802.1q data */ - struct bpf_if *if_bpf; /* packet filter structure */ - int if_pcount; /* number of promiscuous listeners */ - void *if_bridge; /* bridge glue */ - void *if_lagg; /* lagg glue */ - void *if_pf_kif; /* pf glue */ - struct carp_if *if_carp; /* carp interface structure */ - struct label *if_label; /* interface MAC label */ - struct netmap_adapter *if_netmap; /* netmap(4) softc */ - - /* Various procedures of the layer2 encapsulation and drivers. */ - if_output_fn_t if_output; /* output routine (enqueue) */ - if_input_fn_t if_input; /* input routine (from h/w driver) */ - struct mbuf *(*if_bridge_input)(struct ifnet *, struct mbuf *); - int (*if_bridge_output)(struct ifnet *, struct mbuf *, struct sockaddr *, - struct rtentry *); - void (*if_bridge_linkstate)(struct ifnet *ifp); - if_start_fn_t if_start; /* initiate output routine */ - if_ioctl_fn_t if_ioctl; /* ioctl routine */ - if_init_fn_t if_init; /* Init routine */ - int (*if_resolvemulti) /* validate/resolve multicast */ - (struct ifnet *, struct sockaddr **, struct sockaddr *); - if_qflush_fn_t if_qflush; /* flush any queue */ - if_transmit_fn_t if_transmit; /* initiate output routine */ - - void (*if_reassign) /* reassign to vnet routine */ - (struct ifnet *, struct vnet *, char *); - if_get_counter_t if_get_counter; /* get counter values */ - int (*if_requestencap) /* make link header from request */ - (struct ifnet *, struct if_encap_req *); - - /* Statistics. */ - counter_u64_t if_counters[IFCOUNTERS]; - - /* Stuff that's only temporary and doesn't belong here. */ - - /* - * Network adapter TSO limits: - * =========================== - * - * If the "if_hw_tsomax" field is zero the maximum segment - * length limit does not apply. If the "if_hw_tsomaxsegcount" - * or the "if_hw_tsomaxsegsize" field is zero the TSO segment - * count limit does not apply. If all three fields are zero, - * there is no TSO limit. - * - * NOTE: The TSO limits should reflect the values used in the - * BUSDMA tag a network adapter is using to load a mbuf chain - * for transmission. The TCP/IP network stack will subtract - * space for all linklevel and protocol level headers and - * ensure that the full mbuf chain passed to the network - * adapter fits within the given limits. - */ - u_int if_hw_tsomax; /* TSO maximum size in bytes */ - u_int if_hw_tsomaxsegcount; /* TSO maximum segment count */ - u_int if_hw_tsomaxsegsize; /* TSO maximum segment size in bytes */ - - /* - * Network adapter send tag support: - */ - if_snd_tag_alloc_t *if_snd_tag_alloc; - - /* Ratelimit (packet pacing) */ - if_ratelimit_query_t *if_ratelimit_query; - if_ratelimit_setup_t *if_ratelimit_setup; - - /* Ethernet PCP */ - uint8_t if_pcp; - - /* - * Debugnet (Netdump) hooks to be called while in db/panic. - */ - struct debugnet_methods *if_debugnet_methods; - struct epoch_context if_epoch_ctx; - - /* - * Spare fields to be added before branching a stable branch, so - * that structure can be enhanced without changing the kernel - * binary interface. - */ - int if_ispare[4]; /* general use */ -}; - #define IF_NODOM 255 /* * Locks for address lists on the network interface. @@ -834,6 +675,7 @@ int ether_poll_deregister(if_t ifp); #endif /* _KERNEL */ +#include /* XXX: temporary until drivers converted. */ #include /* XXXAO: temporary unconditional include */ #endif /* !_NET_IF_VAR_H_ */ diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c index 6a2d1bfb3fd1..d908d97b6e6d 100644 --- a/sys/net/if_vlan.c +++ b/sys/net/if_vlan.c @@ -72,6 +72,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/if_vxlan.c b/sys/net/if_vxlan.c index 27ad2ec08335..45a24f2b75eb 100644 --- a/sys/net/if_vxlan.c +++ b/sys/net/if_vxlan.c @@ -55,6 +55,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 3b743caa34e0..5f202b120005 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -54,6 +54,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/iflib_clone.c b/sys/net/iflib_clone.c index 89d37a586f8d..32ec0119d33b 100644 --- a/sys/net/iflib_clone.c +++ b/sys/net/iflib_clone.c @@ -60,6 +60,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/netisr.c b/sys/net/netisr.c index 9898e0b18caf..e5ec57a7263d 100644 --- a/sys/net/netisr.c +++ b/sys/net/netisr.c @@ -93,6 +93,7 @@ __FBSDID("$FreeBSD$"); #define _WANT_NETISR_INTERNAL /* Enable definitions from netisr_internal.h */ #include #include +#include #include #include #include diff --git a/sys/net/route.c b/sys/net/route.c index 0d6227a515f7..1373b0986876 100644 --- a/sys/net/route.c +++ b/sys/net/route.c @@ -59,6 +59,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/route/nhgrp_ctl.c b/sys/net/route/nhgrp_ctl.c index b829b1125597..1aba9d6bea28 100644 --- a/sys/net/route/nhgrp_ctl.c +++ b/sys/net/route/nhgrp_ctl.c @@ -44,6 +44,7 @@ #include #include +#include #include #include #include diff --git a/sys/net/route/nhop_ctl.c b/sys/net/route/nhop_ctl.c index d042d9519f6b..15d4ec394187 100644 --- a/sys/net/route/nhop_ctl.c +++ b/sys/net/route/nhop_ctl.c @@ -43,6 +43,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/route/route_ctl.c b/sys/net/route/route_ctl.c index eaabe901b3cb..fd374b468b7c 100644 --- a/sys/net/route/route_ctl.c +++ b/sys/net/route/route_ctl.c @@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include diff --git a/sys/net/route/route_ddb.c b/sys/net/route/route_ddb.c *** 47 LINES SKIPPED *** From nobody Tue Jan 24 20:48: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 4P1fFN2cWgz3bSlx; Tue, 24 Jan 2023 20:48: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 4P1fFN1Gnxz422L; Tue, 24 Jan 2023 20:48:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593304; 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=DgTFnY3VjrbNXVGT3rN7xMjE3F6gkHpFa+WDNutFGd8=; b=lUzgazFaCGM1BIPQZqOguv7CYLTjHxWzb5eWIcKASFv1NPT6q+b1lxBZMVuN5CILHZKuSu g0onFaKCGa7iSkPzgVoaec1fTZh0oc4B7WPoKFjzleTk1aWgN9ty/pV/2pvedGh+QczN1o Dxw+QAFx94vEESl7XVWM7xoKIJCG+latRyyEASNI0y/opcIa1Xod0fJQ4QY156pueewOQC LiE1V3Dt7yEO/1i6wvbnd28lPweapMZPiKfympROY65Lu//gypjPYgn8k1l2QwO8TEQaCK yL/YyTH5HL5/9kIzkndXNY85pGtoJMhDu0WgDVY+gNIc4plTadjYYx9ETct7/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593304; 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=DgTFnY3VjrbNXVGT3rN7xMjE3F6gkHpFa+WDNutFGd8=; b=swhrknHcTsmjzJ6zBiLUqJfxPTbd7KptuqqE21p77ru1TIGmPoMR8UjCcg6y4ov+u8xBPb 3dXkNlGA40KHZFoY79blPGcq+/UIFJ6TBCyB4BubniQTJ2aDJn+y7RGYXipQx3USCV5e/L QaxluCrG7sXi3ZR87Z2gHfxncXorSr2TY3+oIRNt1LdbBPAt5Fih0bpejG7pb1JFYYVcY2 rnE5RZE8oI/bIgJGJWSLKzIRu2TJzD2b/SwrZAZm9SnNva/QEVGtyJbUIq0OaxnppaRy7P HqmdyBtmDf4zG+wGU6tOnFZP5PH25KbBrg2tOX4lOoj1aER4UM7yIwHjaHfM8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593304; a=rsa-sha256; cv=none; b=Fz4Hkw23COFdMcvOj50i5VWBe6yS54jZ8e4eA70oGoyX0FzJo7SL5B2eBaZq9gg4+Bwkgx wmS69ic5i9x5EVTw5d1/HqKobl+wflbCFyfeTQpi6g3ozgfWHW70dPLE03jxcB2wx4PlnQ hqfDU4fcbjzDN92uLjLwwm3FxvzeWbizBUYfyrc6bTTWVisyKyH1SYMAu3jK7Zb9x7eRwW 0B7Gx5uquA3U55qN0bpMb/2YEpR5nAGcLJYShhJ+16xN5ktm7ZnKfsB2JEsPXM21XfygYz qyIY0eq1+b8fqcQP9sn1xwiOlVCfV9kt6nIAN0x3Gxtafx6riYOxPWK5kH7k+Q== 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 4P1fFN017QzN6R; Tue, 24 Jan 2023 20:48:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmN3T053900; Tue, 24 Jan 2023 20:48:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmNNC053899; Tue, 24 Jan 2023 20:48:23 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:23 GMT Message-Id: <202301242048.30OKmNNC053899@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 053a24d12cc7 - main - debugnet: Add ifnet accessor to set debugnet 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 053a24d12cc7bc4fee4340f2e2b11f8d167909ed Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=053a24d12cc7bc4fee4340f2e2b11f8d167909ed commit 053a24d12cc7bc4fee4340f2e2b11f8d167909ed Author: Justin Hibbits AuthorDate: 2023-01-13 16:30:58 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 20:03:35 +0000 debugnet: Add ifnet accessor to set debugnet methods As part of the effort to hide the internals of the ifnet struct, convert the DEBUGNET_SET() macro to use an accessor instead of directly touching the methods member. Reviewed by: glebius (older version) Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D38105 --- sys/net/debugnet.h | 2 +- sys/net/if.c | 6 ++++++ sys/net/if_var.h | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/net/debugnet.h b/sys/net/debugnet.h index ce7cba52fcb0..68dabba175de 100644 --- a/sys/net/debugnet.h +++ b/sys/net/debugnet.h @@ -263,7 +263,7 @@ extern int debugnet_arp_nretries; #define DEBUGNET_NOTIFY_MTU(ifp) debugnet_any_ifnet_update(ifp) #define DEBUGNET_SET(ifp, driver) \ - (ifp)->if_debugnet_methods = &driver##_debugnet_methods + if_setdebugnet_methods((ifp), &driver##_debugnet_methods) #else /* !DEBUGNET || !INET */ diff --git a/sys/net/if.c b/sys/net/if.c index a18e4f1d8f56..ff505e1a1fe8 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -4803,6 +4803,12 @@ if_setgetcounterfn(if_t ifp, if_get_counter_t fn) ifp->if_get_counter = fn; } +void +if_setdebugnet_methods(if_t ifp, struct debugnet_methods *m) +{ + ifp->if_debugnet_methods = m; +} + #ifdef DDB static void if_show_ifnet(struct ifnet *ifp) diff --git a/sys/net/if_var.h b/sys/net/if_var.h index 831c609b3e2c..e794811e090e 100644 --- a/sys/net/if_var.h +++ b/sys/net/if_var.h @@ -653,6 +653,7 @@ void if_settransmitfn(if_t ifp, if_transmit_fn_t); void if_setqflushfn(if_t ifp, if_qflush_fn_t); void if_setgetcounterfn(if_t ifp, if_get_counter_t); void if_setsndtagallocfn(if_t ifp, if_snd_tag_alloc_t); +void if_setdebugnet_methods(struct ifnet *, struct debugnet_methods *); /* TSO */ void if_hw_tsomax_common(if_t ifp, struct ifnet_hw_tsomax *); From nobody Tue Jan 24 20:48: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 4P1fFP3Vv8z3bSrW; Tue, 24 Jan 2023 20:48: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 4P1fFP2Fy4z42Hw; Tue, 24 Jan 2023 20:48:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593305; 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=Yef1jkUU1tiBNR8cDZ9DalXRSOadmD968LMH+oJ8a10=; b=yZtSc6tHEe0xz2V9I9zjUZnpcOm+oxVbpUJecqdIDG5g5ztr1r9vNmildJvPht+Z2oOY3w CvnQ8+QiG60gxKhwlTHGm9R5stiQiJzlJNaL/ZdFLm1y/qGzMgNRY896tZOhpMcQPg7uhX lfKPRKW9QUl2+7O6kBm8s0I6TPb01VHZVGO8TxGcLsvXotJxtJGDZ5YgVYYl1FW37oW8UJ eW9P5BSK1kkMYuIQ4zHIUyg3hwyUcOIWOq9EHPmjSChdqczZcY1ln/1HjRY57goOaqeLBt NRO7NzbK3rwK0nUgA5CjjAKCVHGKuMqqM/rCwwD62sLKX/W00KsVasqCPHguTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593305; 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=Yef1jkUU1tiBNR8cDZ9DalXRSOadmD968LMH+oJ8a10=; b=wc4xOKXi/iaaLfTpSyMsZR1ZXJFuog/hDlwAzo0f/M/QD77a0P0MewDRH6VF+1dfYEV1As FmXzZ9CCJ4AENEGIdNH3soFBg4rwc8aQ8rPlP+nndAd9YKh7zrRX+6UK0HmFe8AHMZpCxN 7FCVyNzROSMEwY/pb1umJNjuza8S3QdWGzvPJVL9DuE/AcI4d6j9LQeMh+PAuxgt72d5Cw UbFQUYfh3sc+qvEBRHVajr2fo1BUrIJfaaH+wANcBL6MG3MhzwlztAU9wD79djQ/YkmkL4 Pxvq+2bVehDIBwQf2FRiUR4rjeo7vVZBiqxyUY3oUbD5qsCbr7h//N/I6VjA4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593305; a=rsa-sha256; cv=none; b=IlGEPlHrHq78StJ7CuK4/3PZ2t8FBwz4Ujg2BcGAETJ4cwkcU5NdJofwag5P1113PwOoU9 1N2A2V5uj+IpEcoFsNbFCAieLtltt9nTzVnzQ9XDigtPioaizbqoj+D3ef8nnp/UeyK+1e cY0cYq2dc/iaJyTlCMd3DgKYcqLTy3Xh9WIUF1Ez3TZl1cqkFRm6M7B7IgNBVqpiPVbqfO AsmTi3Wu1m6pPOa1YORmPyY4a9gpPye/aX2OWct8nBcGcOzUyOkljafOaVbm5TqivC5mNU Ft+M0JTBcvRnSr4TWwyW29K0H31/MN+zwXkNUL10ZxYU+7qq7uSyA1u17yFQGw== 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 4P1fFP0jkfzMv0; Tue, 24 Jan 2023 20:48:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmPmO053926; Tue, 24 Jan 2023 20:48:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmPvA053925; Tue, 24 Jan 2023 20:48:25 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:25 GMT Message-Id: <202301242048.30OKmPvA053925@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 0083fc5c7693 - main - Mechanically convert dtsec(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0083fc5c76939efc6ded5415d781105aef8ed55f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=0083fc5c76939efc6ded5415d781105aef8ed55f commit 0083fc5c76939efc6ded5415d781105aef8ed55f Author: Justin Hibbits AuthorDate: 2022-08-17 20:13:23 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 20:05:28 +0000 Mechanically convert dtsec(4) to IfAPI Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37815 --- sys/dev/dpaa/if_dtsec.c | 47 +++++++++++++++++++++++------------------------ sys/dev/dpaa/if_dtsec.h | 2 +- 2 files changed, 24 insertions(+), 25 deletions(-) diff --git a/sys/dev/dpaa/if_dtsec.c b/sys/dev/dpaa/if_dtsec.c index 2c6291b07e34..cc34c2cbb416 100644 --- a/sys/dev/dpaa/if_dtsec.c +++ b/sys/dev/dpaa/if_dtsec.c @@ -392,13 +392,13 @@ dtsec_if_disable_locked(struct dtsec_softc *sc) } static int -dtsec_if_ioctl(struct ifnet *ifp, u_long command, caddr_t data) +dtsec_if_ioctl(if_t ifp, u_long command, caddr_t data) { struct dtsec_softc *sc; struct ifreq *ifr; int error; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); ifr = (struct ifreq *)data; error = 0; @@ -407,7 +407,7 @@ dtsec_if_ioctl(struct ifnet *ifp, u_long command, caddr_t data) case SIOCSIFMTU: DTSEC_LOCK(sc); if (dtsec_set_mtu(sc, ifr->ifr_mtu)) - ifp->if_mtu = ifr->ifr_mtu; + if_setmtu(ifp, ifr->ifr_mtu); else error = EINVAL; DTSEC_UNLOCK(sc); @@ -472,7 +472,7 @@ dtsec_if_init_locked(struct dtsec_softc *sc) /* Set MAC address */ error = FM_MAC_ModifyMacAddr(sc->sc_mach, - (t_EnetAddr *)IF_LLADDR(sc->sc_ifnet)); + (t_EnetAddr *)if_getlladdr(sc->sc_ifnet)); if (error != E_OK) { device_printf(sc->sc_dev, "couldn't set MAC address.\n"); goto err; @@ -513,18 +513,18 @@ dtsec_if_init(void *data) } static void -dtsec_if_start(struct ifnet *ifp) +dtsec_if_start(if_t ifp) { struct dtsec_softc *sc; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); DTSEC_LOCK(sc); sc->sc_start_locked(sc); DTSEC_UNLOCK(sc); } static void -dtsec_if_watchdog(struct ifnet *ifp) +dtsec_if_watchdog(if_t ifp) { /* TODO */ } @@ -536,9 +536,9 @@ dtsec_if_watchdog(struct ifnet *ifp) * @{ */ static int -dtsec_ifmedia_upd(struct ifnet *ifp) +dtsec_ifmedia_upd(if_t ifp) { - struct dtsec_softc *sc = ifp->if_softc; + struct dtsec_softc *sc = if_getsoftc(ifp); DTSEC_LOCK(sc); mii_mediachg(sc->sc_mii); @@ -548,9 +548,9 @@ dtsec_ifmedia_upd(struct ifnet *ifp) } static void -dtsec_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) +dtsec_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) { - struct dtsec_softc *sc = ifp->if_softc; + struct dtsec_softc *sc = if_getsoftc(ifp); DTSEC_LOCK(sc); @@ -599,7 +599,7 @@ dtsec_attach(device_t dev) struct dtsec_softc *sc; device_t parent; int error; - struct ifnet *ifp; + if_t ifp; sc = device_get_softc(dev); @@ -686,13 +686,13 @@ dtsec_attach(device_t dev) return (ENOMEM); } - ifp->if_softc = sc; - ifp->if_mtu = ETHERMTU; /* TODO: Configure */ - ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST; - ifp->if_init = dtsec_if_init; - ifp->if_start = dtsec_if_start; - ifp->if_ioctl = dtsec_if_ioctl; - ifp->if_snd.ifq_maxlen = IFQ_MAXLEN; + if_setsoftc(ifp, sc); + + if_setflags(ifp, IFF_SIMPLEX | IFF_BROADCAST); + if_setinitfn(ifp, dtsec_if_init); + if_setstartfn(ifp, dtsec_if_start); + if_setioctlfn(ifp, dtsec_if_ioctl); + if_setsendqlen(ifp, IFQ_MAXLEN); if (sc->sc_phy_addr >= 0) if_initname(ifp, device_get_name(sc->sc_dev), @@ -702,12 +702,11 @@ dtsec_attach(device_t dev) /* TODO */ #if 0 - IFQ_SET_MAXLEN(&ifp->if_snd, TSEC_TX_NUM_DESC - 1); - ifp->if_snd.ifq_drv_maxlen = TSEC_TX_NUM_DESC - 1; - IFQ_SET_READY(&ifp->if_snd); + if_setsendqlen(ifp, TSEC_TX_NUM_DESC - 1); + if_setsendqready(ifp); #endif - ifp->if_capabilities = IFCAP_JUMBO_MTU; /* TODO: HWCSUM */ - ifp->if_capenable = ifp->if_capabilities; + + if_setcapenable(ifp, if_getcapabilities(ifp)); /* Attach PHY(s) */ error = mii_attach(sc->sc_dev, &sc->sc_mii_dev, ifp, dtsec_ifmedia_upd, diff --git a/sys/dev/dpaa/if_dtsec.h b/sys/dev/dpaa/if_dtsec.h index 609111274c0e..f9f80f141284 100644 --- a/sys/dev/dpaa/if_dtsec.h +++ b/sys/dev/dpaa/if_dtsec.h @@ -49,7 +49,7 @@ enum eth_dev_type { struct dtsec_softc { /* XXX MII bus requires that struct ifnet is first!!! */ - struct ifnet *sc_ifnet; + if_t sc_ifnet; device_t sc_dev; struct resource *sc_mem; From nobody Tue Jan 24 20: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 4P1fFQ2mYCz3bSp2; Tue, 24 Jan 2023 20:48: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 4P1fFQ2L5Zz42D7; Tue, 24 Jan 2023 20:48:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593306; 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=o/d265YrM9+7ZcL6ZmN4lJrSdU0E2GNxbAlnCyw8f7g=; b=ykBVYxahoJVNP7rSCJAQyiZBkp7CZq9cCg+byPtfpfK4VlB+XcquKa1FLRvHAkWk3SMMIx fKXSxI3rFaFfWrq99CCLPejJgYPjlgMXvN93WWg9fgdrqamkbZaJPH994GTc1lpDtYMELX g8ujZNYrcEzxdo50obnFIhMSB24t3jYIm0rCLru6KA42lf5HLpZxKPgI38QEHIQOuFvWza fs2RpSKKJlJ+Pt2Yx1B8u2p+R1Vkqt440BCy6X4DfuBGeYHYPWpRmWyd2MoKXE+rgqlq+w XQXLKHTklaI2vw6hNo+CONNo4NjvqLLXq39zA/kNLTAfIe1ohM267sHTPqwLlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674593306; 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=o/d265YrM9+7ZcL6ZmN4lJrSdU0E2GNxbAlnCyw8f7g=; b=YQC40KXzjkIcfYEbSwnJxrodfBU7p89feWGDqHFMnPcHoOjmf7/STd2/k7MW/gbor7luJB 9jSJFXU08p0A5E2wpK5TTfG7Bdb0Oe/ACUSCT6aU4KD3q2ih8tbhuyvqD5QaXxlUWK87TP kAyhSOGjzdWB90KH2n3Yi0O+rZBdEJbcFkSOUu94fbF12uKk/EQZnXhawSd78eGDkHawhJ UFnrF2KgnvpYNQDqBN0Av9op7kmVe1TfGh3GraaE662+FT/NwIBnlBGs5seXlVqfWnVEUd IZEthwbUTAHimPB/5ExikO9bfb6FurFVxRpswdlqJO6pTJi5+XLVy1u4Cahv6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674593306; a=rsa-sha256; cv=none; b=IIsqdSNKB88+2fvqAqvXwTqYcxk/BzaHWKKAyF/DNVmk/s8edFbHSqQ0YrsJADmOLHHiVP IHbpq9VX/yMpDXC4YQIPmWFS5J3+AsybR7cXuXrQaHKPt15teGGpaY6szwVBXH+ecn7p5l FgfcguoBAclcYlqzRvQBiEqkZGJBiLk1jPEGLlkqAkjMUuwBTXl4/5IzTyPktLdsuF3DNG XtBh2hKRFiaT+nnnD+Sko2mqGRbZScyM/TFqfQtfglt03ky2g3RBg/i/9dO76UXhf8GK67 NbXJ0LlhE3Ee4v/pjUqHgnQkQOCroDRLnu/tZOtCiotWMfa1DAgPOSgji7OESw== 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 4P1fFQ1RfLzNBK; Tue, 24 Jan 2023 20:48:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OKmQRJ053950; Tue, 24 Jan 2023 20:48:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OKmQ5h053949; Tue, 24 Jan 2023 20:48:26 GMT (envelope-from git) Date: Tue, 24 Jan 2023 20:48:26 GMT Message-Id: <202301242048.30OKmQ5h053949@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: ff06a8dbb677 - main - Mechanically convert ixgbe(4) to IfAPI 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: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ff06a8dbb6777a0475ae961faacd776225cb8791 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=ff06a8dbb6777a0475ae961faacd776225cb8791 commit ff06a8dbb6777a0475ae961faacd776225cb8791 Author: Justin Hibbits AuthorDate: 2022-08-20 02:02:03 +0000 Commit: Justin Hibbits CommitDate: 2023-01-24 20:05:28 +0000 Mechanically convert ixgbe(4) to IfAPI Reviewed by: erj Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37845 --- sys/dev/ixgbe/if_fdir.c | 4 ++-- sys/dev/ixgbe/if_ix.c | 58 ++++++++++++++++++++++++------------------------ sys/dev/ixgbe/if_ixv.c | 49 ++++++++++++++++++++-------------------- sys/dev/ixgbe/if_sriov.c | 4 ++-- 4 files changed, 58 insertions(+), 57 deletions(-) diff --git a/sys/dev/ixgbe/if_fdir.c b/sys/dev/ixgbe/if_fdir.c index 22b71f2bdf09..dd84cfe0a447 100644 --- a/sys/dev/ixgbe/if_fdir.c +++ b/sys/dev/ixgbe/if_fdir.c @@ -54,7 +54,7 @@ ixgbe_reinit_fdir(void *context) { if_ctx_t ctx = context; struct ixgbe_softc *sc = iflib_get_softc(ctx); - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); if (!(sc->feat_en & IXGBE_FEATURE_FDIR)) return; @@ -65,7 +65,7 @@ ixgbe_reinit_fdir(void *context) /* re-enable flow director interrupts */ IXGBE_WRITE_REG(&sc->hw, IXGBE_EIMS, IXGBE_EIMS_FLOW_DIR); /* Restart the interface */ - ifp->if_drv_flags |= IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); } /* ixgbe_reinit_fdir */ /************************************************************************ diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 1d472d7df628..4f6faeec4296 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -666,7 +666,7 @@ ixgbe_initialize_receive_units(if_ctx_t ctx) struct ixgbe_softc *sc = iflib_get_softc(ctx); if_softc_ctx_t scctx = sc->shared; struct ixgbe_hw *hw = &sc->hw; - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); struct ix_rx_queue *que; int i, j; u32 bufsz, fctrl, srrctl, rxcsum; @@ -689,7 +689,7 @@ ixgbe_initialize_receive_units(if_ctx_t ctx) /* Set for Jumbo Frames? */ hlreg = IXGBE_READ_REG(hw, IXGBE_HLREG0); - if (ifp->if_mtu > ETHERMTU) + if (if_getmtu(ifp) > ETHERMTU) hlreg |= IXGBE_HLREG0_JUMBOEN; else hlreg &= ~IXGBE_HLREG0_JUMBOEN; @@ -759,7 +759,7 @@ ixgbe_initialize_receive_units(if_ctx_t ctx) rxcsum |= IXGBE_RXCSUM_PCSD; } - if (ifp->if_capenable & IFCAP_RXCSUM) + if (if_getcapenable(ifp) & IFCAP_RXCSUM) rxcsum |= IXGBE_RXCSUM_PCSD; /* This is useful for calculating UDP/IP fragment checksums */ @@ -1170,14 +1170,14 @@ ixgbe_check_wol_support(struct ixgbe_softc *sc) static int ixgbe_setup_interface(if_ctx_t ctx) { - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); struct ixgbe_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("ixgbe_setup_interface: begin"); if_setbaudrate(ifp, IF_Gbps(10)); - sc->max_frame_size = ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN; + sc->max_frame_size = if_getmtu(ifp) + ETHER_HDR_LEN + ETHER_CRC_LEN; sc->phy_layer = ixgbe_get_supported_physical_layer(&sc->hw); @@ -1915,7 +1915,7 @@ ixgbe_if_vlan_unregister(if_ctx_t ctx, u16 vtag) static void ixgbe_setup_vlan_hw_support(if_ctx_t ctx) { - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); struct ixgbe_softc *sc = iflib_get_softc(ctx); struct ixgbe_hw *hw = &sc->hw; struct rx_ring *rxr; @@ -1929,7 +1929,7 @@ ixgbe_setup_vlan_hw_support(if_ctx_t ctx) * the VFTA and other state, so if there * have been no vlan's registered do nothing. */ - if (sc->num_vlans == 0 || (ifp->if_capenable & IFCAP_VLAN_HWTAGGING) == 0) { + if (sc->num_vlans == 0 || (if_getcapenable(ifp) & IFCAP_VLAN_HWTAGGING) == 0) { /* Clear the vlan hw flag */ for (i = 0; i < sc->num_rx_queues; i++) { rxr = &sc->rx_queues[i].rxr; @@ -1952,7 +1952,7 @@ ixgbe_setup_vlan_hw_support(if_ctx_t ctx) } /* Setup the queues for vlans */ - if (ifp->if_capenable & IFCAP_VLAN_HWTAGGING) { + if (if_getcapenable(ifp) & IFCAP_VLAN_HWTAGGING) { for (i = 0; i < sc->num_rx_queues; i++) { rxr = &sc->rx_queues[i].rxr; /* On 82599 the VLAN enable is per/queue in RXDCTL */ @@ -1965,7 +1965,7 @@ ixgbe_setup_vlan_hw_support(if_ctx_t ctx) } } - if ((ifp->if_capenable & IFCAP_VLAN_HWFILTER) == 0) + if ((if_getcapenable(ifp) & IFCAP_VLAN_HWFILTER) == 0) return; /* * A soft reset zero's out the VFTA, so @@ -1978,7 +1978,7 @@ ixgbe_setup_vlan_hw_support(if_ctx_t ctx) ctrl = IXGBE_READ_REG(hw, IXGBE_VLNCTRL); /* Enable the Filter Table if enabled */ - if (ifp->if_capenable & IFCAP_VLAN_HWFILTER) { + if (if_getcapenable(ifp) & IFCAP_VLAN_HWFILTER) { ctrl &= ~IXGBE_VLNCTRL_CFIEN; ctrl |= IXGBE_VLNCTRL_VFE; } @@ -2208,10 +2208,10 @@ ixgbe_msix_que(void *arg) { struct ix_rx_queue *que = arg; struct ixgbe_softc *sc = que->sc; - struct ifnet *ifp = iflib_get_ifp(que->sc->ctx); + if_t ifp = iflib_get_ifp(que->sc->ctx); /* Protect against spurious interrupts */ - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) return (FILTER_HANDLED); ixgbe_disable_queue(sc, que->msix); @@ -2493,13 +2493,13 @@ static int ixgbe_if_promisc_set(if_ctx_t ctx, int flags) { struct ixgbe_softc *sc = iflib_get_softc(ctx); - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); u32 rctl; int mcnt = 0; rctl = IXGBE_READ_REG(&sc->hw, IXGBE_FCTRL); rctl &= (~IXGBE_FCTRL_UPE); - if (ifp->if_flags & IFF_ALLMULTI) + if (if_getflags(ifp) & IFF_ALLMULTI) mcnt = MAX_NUM_MULTICAST_ADDRESSES; else { mcnt = min(if_llmaddr_count(ifp), MAX_NUM_MULTICAST_ADDRESSES); @@ -2508,10 +2508,10 @@ ixgbe_if_promisc_set(if_ctx_t ctx, int flags) rctl &= (~IXGBE_FCTRL_MPE); IXGBE_WRITE_REG(&sc->hw, IXGBE_FCTRL, rctl); - if (ifp->if_flags & IFF_PROMISC) { + if (if_getflags(ifp) & IFF_PROMISC) { rctl |= (IXGBE_FCTRL_UPE | IXGBE_FCTRL_MPE); IXGBE_WRITE_REG(&sc->hw, IXGBE_FCTRL, rctl); - } else if (ifp->if_flags & IFF_ALLMULTI) { + } else if (if_getflags(ifp) & IFF_ALLMULTI) { rctl |= IXGBE_FCTRL_MPE; rctl &= ~IXGBE_FCTRL_UPE; IXGBE_WRITE_REG(&sc->hw, IXGBE_FCTRL, rctl); @@ -2926,7 +2926,7 @@ ixgbe_if_resume(if_ctx_t ctx) { struct ixgbe_softc *sc = iflib_get_softc(ctx); device_t dev = iflib_get_dev(ctx); - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); struct ixgbe_hw *hw = &sc->hw; u32 wus; @@ -2945,7 +2945,7 @@ ixgbe_if_resume(if_ctx_t ctx) * Required after D3->D0 transition; * will re-advertise all previous advertised speeds */ - if (ifp->if_flags & IFF_UP) + if (if_getflags(ifp) & IFF_UP) ixgbe_if_init(ctx); return (0); @@ -3033,7 +3033,7 @@ void ixgbe_if_init(if_ctx_t ctx) { struct ixgbe_softc *sc = iflib_get_softc(ctx); - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); device_t dev = iflib_get_dev(ctx); struct ixgbe_hw *hw = &sc->hw; struct ix_rx_queue *rx_que; @@ -3053,7 +3053,7 @@ ixgbe_if_init(if_ctx_t ctx) ixgbe_set_rar(hw, 0, hw->mac.addr, sc->pool, IXGBE_RAH_AV); /* Get the latest mac address, User can use a LAA */ - bcopy(IF_LLADDR(ifp), hw->mac.addr, IXGBE_ETH_LENGTH_OF_ADDRESS); + bcopy(if_getlladdr(ifp), hw->mac.addr, IXGBE_ETH_LENGTH_OF_ADDRESS); ixgbe_set_rar(hw, 0, hw->mac.addr, sc->pool, 1); hw->addr_ctrl.rar_used_count = 1; @@ -3082,7 +3082,7 @@ ixgbe_if_init(if_ctx_t ctx) ixgbe_config_gpie(sc); /* Set MTU size */ - if (ifp->if_mtu > ETHERMTU) { + if (if_getmtu(ifp) > ETHERMTU) { /* aka IXGBE_MAXFRS on 82599 and newer */ mhadd = IXGBE_READ_REG(hw, IXGBE_MHADD); mhadd &= ~IXGBE_MHADD_MFS_MASK; @@ -3412,7 +3412,7 @@ ixgbe_if_multi_set(if_ctx_t ctx) { struct ixgbe_softc *sc = iflib_get_softc(ctx); struct ixgbe_mc_addr *mta; - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); u8 *update_ptr; u32 fctrl; u_int mcnt; @@ -3432,10 +3432,10 @@ ixgbe_if_multi_set(if_ctx_t ctx) fctrl = IXGBE_READ_REG(&sc->hw, IXGBE_FCTRL); - if (ifp->if_flags & IFF_PROMISC) + if (if_getflags(ifp) & IFF_PROMISC) fctrl |= (IXGBE_FCTRL_UPE | IXGBE_FCTRL_MPE); else if (mcnt >= MAX_NUM_MULTICAST_ADDRESSES || - ifp->if_flags & IFF_ALLMULTI) { + if_getflags(ifp) & IFF_ALLMULTI) { fctrl |= IXGBE_FCTRL_MPE; fctrl &= ~IXGBE_FCTRL_UPE; } else @@ -4316,7 +4316,7 @@ static int ixgbe_sysctl_dmac(SYSCTL_HANDLER_ARGS) { struct ixgbe_softc *sc = (struct ixgbe_softc *)arg1; - struct ifnet *ifp = iflib_get_ifp(sc->ctx); + if_t ifp = iflib_get_ifp(sc->ctx); int error; u16 newval; @@ -4351,8 +4351,8 @@ ixgbe_sysctl_dmac(SYSCTL_HANDLER_ARGS) } /* Re-initialize hardware if it's already running */ - if (ifp->if_drv_flags & IFF_DRV_RUNNING) - ifp->if_init(ifp); + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) + if_init(ifp, ifp); return (0); } /* ixgbe_sysctl_dmac */ @@ -4606,7 +4606,7 @@ ixgbe_sysctl_eee_state(SYSCTL_HANDLER_ARGS) { struct ixgbe_softc *sc = (struct ixgbe_softc *)arg1; device_t dev = sc->dev; - struct ifnet *ifp = iflib_get_ifp(sc->ctx); + if_t ifp = iflib_get_ifp(sc->ctx); int curr_eee, new_eee, error = 0; s32 retval; @@ -4635,7 +4635,7 @@ ixgbe_sysctl_eee_state(SYSCTL_HANDLER_ARGS) } /* Restart auto-neg */ - ifp->if_init(ifp); + if_init(ifp, ifp); device_printf(dev, "New EEE state: %d\n", new_eee); diff --git a/sys/dev/ixgbe/if_ixv.c b/sys/dev/ixgbe/if_ixv.c index d4c8067e2a0c..848c15fe3b99 100644 --- a/sys/dev/ixgbe/if_ixv.c +++ b/sys/dev/ixgbe/if_ixv.c @@ -574,15 +574,15 @@ static int ixv_if_mtu_set(if_ctx_t ctx, uint32_t mtu) { struct ixgbe_softc *sc = iflib_get_softc(ctx); - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); int error = 0; IOCTL_DEBUGOUT("ioctl: SIOCSIFMTU (Set Interface MTU)"); if (mtu > IXGBE_MAX_FRAME_SIZE - IXGBE_MTU_HDR) { error = EINVAL; } else { - ifp->if_mtu = mtu; - sc->max_frame_size = ifp->if_mtu + IXGBE_MTU_HDR; + if_setmtu(ifp, mtu); + sc->max_frame_size = if_getmtu(ifp) + IXGBE_MTU_HDR; } return error; @@ -602,7 +602,7 @@ static void ixv_if_init(if_ctx_t ctx) { struct ixgbe_softc *sc = iflib_get_softc(ctx); - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); device_t dev = iflib_get_dev(ctx); struct ixgbe_hw *hw = &sc->hw; int error = 0; @@ -615,7 +615,7 @@ ixv_if_init(if_ctx_t ctx) hw->mac.ops.set_rar(hw, 0, hw->mac.addr, 0, IXGBE_RAH_AV); /* Get the latest mac address, User can use a LAA */ - bcopy(IF_LLADDR(ifp), hw->mac.addr, IXGBE_ETH_LENGTH_OF_ADDRESS); + bcopy(if_getlladdr(ifp), hw->mac.addr, IXGBE_ETH_LENGTH_OF_ADDRESS); hw->mac.ops.set_rar(hw, 0, hw->mac.addr, 0, 1); /* Reset VF and renegotiate mailbox API version */ @@ -834,6 +834,15 @@ ixv_negotiate_api(struct ixgbe_softc *sc) } /* ixv_negotiate_api */ +static u_int +ixv_if_multi_set_cb(void *cb_arg, struct sockaddr_dl *addr, u_int cnt) +{ + bcopy(LLADDR(addr), &((u8 *)cb_arg)[cnt * IXGBE_ETH_LENGTH_OF_ADDRESS], + IXGBE_ETH_LENGTH_OF_ADDRESS); + + return (++cnt); +} + /************************************************************************ * ixv_if_multi_set - Multicast Update * @@ -845,20 +854,12 @@ ixv_if_multi_set(if_ctx_t ctx) u8 mta[MAX_NUM_MULTICAST_ADDRESSES * IXGBE_ETH_LENGTH_OF_ADDRESS]; struct ixgbe_softc *sc = iflib_get_softc(ctx); u8 *update_ptr; - struct ifmultiaddr *ifma; if_t ifp = iflib_get_ifp(ctx); int mcnt = 0; IOCTL_DEBUGOUT("ixv_if_multi_set: begin"); - CK_STAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { - if (ifma->ifma_addr->sa_family != AF_LINK) - continue; - bcopy(LLADDR((struct sockaddr_dl *)ifma->ifma_addr), - &mta[mcnt * IXGBE_ETH_LENGTH_OF_ADDRESS], - IXGBE_ETH_LENGTH_OF_ADDRESS); - mcnt++; - } + mcnt = if_foreach_llmaddr(ifp, ixv_if_multi_set_cb, mta); update_ptr = mta; @@ -925,7 +926,7 @@ ixv_if_update_admin_status(if_ctx_t ctx) if (status != IXGBE_SUCCESS && sc->hw.adapter_stopped == false) { /* Mailbox's Clear To Send status is lost or timeout occurred. * We need reinitialization. */ - iflib_get_ifp(ctx)->if_init(ctx); + if_init(iflib_get_ifp(ctx), ctx); } if (sc->link_up && sc->link_enabled) { @@ -1159,15 +1160,15 @@ ixv_setup_interface(if_ctx_t ctx) { struct ixgbe_softc *sc = iflib_get_softc(ctx); if_softc_ctx_t scctx = sc->shared; - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); INIT_DEBUGOUT("ixv_setup_interface: begin"); if_setbaudrate(ifp, IF_Gbps(10)); - ifp->if_snd.ifq_maxlen = scctx->isc_ntxd[0] - 2; + if_setsendqlen(ifp, scctx->isc_ntxd[0] - 2); - sc->max_frame_size = ifp->if_mtu + IXGBE_MTU_HDR; + sc->max_frame_size = if_getmtu(ifp) + IXGBE_MTU_HDR; ifmedia_add(sc->media, IFM_ETHER | IFM_AUTO, 0, NULL); ifmedia_set(sc->media, IFM_ETHER | IFM_AUTO); @@ -1379,11 +1380,11 @@ ixv_initialize_receive_units(if_ctx_t ctx) struct ixgbe_softc *sc = iflib_get_softc(ctx); if_softc_ctx_t scctx; struct ixgbe_hw *hw = &sc->hw; - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); struct ix_rx_queue *que = sc->rx_queues; u32 bufsz, psrtype; - if (ifp->if_mtu > ETHERMTU) + if (if_getmtu(ifp) > ETHERMTU) bufsz = 4096 >> IXGBE_SRRCTL_BSIZEPKT_SHIFT; else bufsz = 2048 >> IXGBE_SRRCTL_BSIZEPKT_SHIFT; @@ -1474,7 +1475,7 @@ ixv_initialize_receive_units(if_ctx_t ctx) * RDT points to the last slot available for reception (?), * so RDT = num_rx_desc - 1 means the whole ring is available. */ - if (ifp->if_capenable & IFCAP_NETMAP) { + if (if_getcapenable(ifp) & IFCAP_NETMAP) { struct netmap_adapter *na = NA(ifp); struct netmap_kring *kring = na->rx_rings[j]; int t = na->num_rx_desc - 1 - nm_kr_rxspace(kring); @@ -1500,7 +1501,7 @@ ixv_initialize_receive_units(if_ctx_t ctx) static void ixv_setup_vlan_support(if_ctx_t ctx) { - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); struct ixgbe_softc *sc = iflib_get_softc(ctx); struct ixgbe_hw *hw = &sc->hw; u32 ctrl, vid, vfta, retry; @@ -1514,7 +1515,7 @@ ixv_setup_vlan_support(if_ctx_t ctx) if (sc->num_vlans == 0) return; - if (ifp->if_capenable & IFCAP_VLAN_HWTAGGING) { + if (if_getcapenable(ifp) & IFCAP_VLAN_HWTAGGING) { /* Enable the queues */ for (int i = 0; i < sc->num_rx_queues; i++) { ctrl = IXGBE_READ_REG(hw, IXGBE_VFRXDCTL(i)); @@ -1532,7 +1533,7 @@ ixv_setup_vlan_support(if_ctx_t ctx) * If filtering VLAN tags is disabled, * there is no need to fill VLAN Filter Table Array (VFTA). */ - if ((ifp->if_capenable & IFCAP_VLAN_HWFILTER) == 0) + if ((if_getcapenable(ifp) & IFCAP_VLAN_HWFILTER) == 0) return; /* diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index 5462aac56acc..6711c281c35e 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -575,7 +575,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) { struct ixgbe_softc *sc = iflib_get_softc(ctx); #ifdef KTR - struct ifnet *ifp = iflib_get_ifp(ctx); + if_t ifp = iflib_get_ifp(ctx); #endif struct ixgbe_hw *hw; uint32_t msg[IXGBE_VFMAILBOX_SIZE]; @@ -588,7 +588,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) if (error != 0) return; - CTR3(KTR_MALLOC, "%s: received msg %x from %d", ifp->if_xname, + CTR3(KTR_MALLOC, "%s: received msg %x from %d", if_name(ifp), msg[0], vf->pool); if (msg[0] == IXGBE_VF_RESET) { ixgbe_vf_reset_msg(sc, vf, msg); From nobody Tue Jan 24 22:21: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 4P1hJf0cSSz3bhrX; Tue, 24 Jan 2023 22:21: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 4P1hJd71Xsz49WZ; Tue, 24 Jan 2023 22:21:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674598882; 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=4ogJ2p1ua+aC7VQ5P0Dmftq3qnHQBFS9EY1I359qj3M=; b=UInrLm28NRYuzVR+Cf1WvOhkKZRRJkyqhavFxkvR3z+N2FD1s53B8ASI3skTagYz3g0eVu ZbC8jQGYVlzHLW/Stkca37W2oqnfMtCLVUdEWlNykInTdw7tOrG77GjUwuLyeSFrRBVCn2 pUdt4Ix8CjtmwFbAAZ6lru29Kg/Eh60LkWHgvbinBrpt90mnPDGNlJM/Y4oM8nCy75BHIG 6r54KU20RyrhxA/AdpZR+bxBZN5CBMfdt5VI7jYyMueY9QMUTp0WGwnEHEvDYEs8dsHnb9 62H5EaFdYN74y75tn1VmL9juu/OlZOuuljleATmamyZdNhK52ncD/eyJOn5/UQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674598882; 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=4ogJ2p1ua+aC7VQ5P0Dmftq3qnHQBFS9EY1I359qj3M=; b=QrbuJjTatPWUwrUr+BKBoSNXCVg8sALSWea2FnYqXKhPcTfuOpp9VsV6tB6O6Y8TzYmCXy ymq3wvvQQlQVy0x9nzl3FUpHBVt0ldoXB018OO9NnfyGl8L0KQ0kNu5H35f5TZGCyVbQ0U JL86gLgLCEke1UycpeN6ubjdU9HKwxshnNqOv9y58UvvMeHTrVgBtcRLdLXlEsU65d/801 tXl9ibAGklLJTm3OUtjVzbSgc2kZjo2hNt7x5VJGNTWTIE51zvB7eAkS/rEDYPsKPM0vxu Ge7mdK0oauS3Yj/6bJpJVC1lnUBYbKvAGEaCGiDuz2nDUy0RT5L9I9/K3VuPWQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674598882; a=rsa-sha256; cv=none; b=depSn/jiaWbGY2YxUhsd2bHFaE+TMbCGq5TjSpE069IjM7sVrzz0OvK95f/gMSmAmembdT G7LbTtRWMCPiB3acpqci10dHg6UPS0XSQv6ZSX9URc4MVgk8n8yS/MmHuAnLIW0ob1M9KY xoBDmmLfSSx4kAn9KTtXHRN522UXiq3oSR3nZcnSTzi2BES5id67qz8ORxq9uKK7cJpkdU ymWQBxCY654LbOrn4nKWCrQJCwS1av0f3uNJ+ojshVHt+ZZbcHLQAl15BIP1OUB90b8/o0 kPx9YG5k941LQ89HQ3is9kliexl3COJNqxlUsUx1DNMlq1bGvWm2OvYgFL3OKw== 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 4P1hJd65hrzQtJ; Tue, 24 Jan 2023 22:21:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30OMLLo7001491; Tue, 24 Jan 2023 22:21:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30OMLLfZ001490; Tue, 24 Jan 2023 22:21:21 GMT (envelope-from git) Date: Tue, 24 Jan 2023 22:21:21 GMT Message-Id: <202301242221.30OMLLfZ001490@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Eric Joyner Subject: git: 2508da22cd6f - main - ice_ddp: Update package to 1.3.30.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=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: erj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2508da22cd6f0904fe55d2d5f6cab7c6011f918c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by erj: URL: https://cgit.FreeBSD.org/src/commit/?id=2508da22cd6f0904fe55d2d5f6cab7c6011f918c commit 2508da22cd6f0904fe55d2d5f6cab7c6011f918c Author: Eric Joyner AuthorDate: 2023-01-24 22:01:57 +0000 Commit: Eric Joyner CommitDate: 2023-01-24 22:19:54 +0000 ice_ddp: Update package to 1.3.30.0 This updated DDP is intended to be used with the forthcoming ice(4) driver update to 1.37.7-k. (But it will still work with the current version.) Co-authored-by: Piotr Kubaj Signed-off-by: Eric Joyner MFC after: 1 week Sponsored by: Intel Corporation --- sys/conf/files.amd64 | 6 +- sys/conf/files.arm64 | 6 +- sys/conf/files.powerpc | 12 +- sys/contrib/dev/ice/README | 168 ++++++++++++++++----- .../dev/ice/{ice-1.3.27.0.pkg => ice-1.3.30.0.pkg} | Bin 676216 -> 692660 bytes sys/modules/ice_ddp/Makefile | 2 +- 6 files changed, 142 insertions(+), 52 deletions(-) diff --git a/sys/conf/files.amd64 b/sys/conf/files.amd64 index 9d601ba5eee2..f0fba5a88869 100644 --- a/sys/conf/files.amd64 +++ b/sys/conf/files.amd64 @@ -180,7 +180,7 @@ dev/ice/irdma_if.m optional ice pci \ dev/ice/irdma_di_if.m optional ice pci \ compile-with "${NORMAL_M} -I$S/dev/ice" ice_ddp.c optional ice_ddp \ - compile-with "${AWK} -f $S/tools/fw_stub.awk ice_ddp.fw:ice_ddp:0x01031b00 -mice_ddp -c${.TARGET}" \ + compile-with "${AWK} -f $S/tools/fw_stub.awk ice_ddp.fw:ice_ddp:0x01031e00 -mice_ddp -c${.TARGET}" \ no-ctfconvert no-implicit-rule before-depend local \ clean "ice_ddp.c" ice_ddp.fwo optional ice_ddp \ @@ -189,8 +189,8 @@ ice_ddp.fwo optional ice_ddp \ no-implicit-rule \ clean "ice_ddp.fwo" ice_ddp.fw optional ice_ddp \ - dependency "$S/contrib/dev/ice/ice-1.3.27.0.pkg" \ - compile-with "${CP} $S/contrib/dev/ice/ice-1.3.27.0.pkg ice_ddp.fw" \ + dependency "$S/contrib/dev/ice/ice-1.3.30.0.pkg" \ + compile-with "${CP} $S/contrib/dev/ice/ice-1.3.30.0.pkg ice_ddp.fw" \ no-obj no-implicit-rule \ clean "ice_ddp.fw" dev/ioat/ioat.c optional ioat pci diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index 6c42812fcc42..058f4bfc2c21 100644 --- a/sys/conf/files.arm64 +++ b/sys/conf/files.arm64 @@ -295,7 +295,7 @@ dev/ice/irdma_if.m optional ice pci \ dev/ice/irdma_di_if.m optional ice pci \ compile-with "${NORMAL_M} -I$S/dev/ice" ice_ddp.c optional ice_ddp \ - compile-with "${AWK} -f $S/tools/fw_stub.awk ice_ddp.fw:ice_ddp:0x01031b00 -mice_ddp -c${.TARGET}" \ + compile-with "${AWK} -f $S/tools/fw_stub.awk ice_ddp.fw:ice_ddp:0x01031e00 -mice_ddp -c${.TARGET}" \ no-ctfconvert no-implicit-rule before-depend local \ clean "ice_ddp.c" ice_ddp.fwo optional ice_ddp \ @@ -304,8 +304,8 @@ ice_ddp.fwo optional ice_ddp \ no-implicit-rule \ clean "ice_ddp.fwo" ice_ddp.fw optional ice_ddp \ - dependency "$S/contrib/dev/ice/ice-1.3.27.0.pkg" \ - compile-with "${CP} $S/contrib/dev/ice/ice-1.3.27.0.pkg ice_ddp.fw" \ + dependency "$S/contrib/dev/ice/ice-1.3.30.0.pkg" \ + compile-with "${CP} $S/contrib/dev/ice/ice-1.3.30.0.pkg ice_ddp.fw" \ no-obj no-implicit-rule \ clean "ice_ddp.fw" diff --git a/sys/conf/files.powerpc b/sys/conf/files.powerpc index 2277468c3c9e..70f4abed8122 100644 --- a/sys/conf/files.powerpc +++ b/sys/conf/files.powerpc @@ -84,18 +84,18 @@ dev/ice/irdma_if.m optional ice pci powerpc64 \ compile-with "${NORMAL_M} -I$S/dev/ice" dev/ice/irdma_di_if.m optional ice pci powerpc64 \ compile-with "${NORMAL_M} -I$S/dev/ice" -ice_ddp.c optional ice_ddp powerpc64 \ - compile-with "${AWK} -f $S/tools/fw_stub.awk ice_ddp.fw:ice_ddp:0x01031b00 -mice_ddp -c${.TARGET}" \ +ice_ddp.c optional ice_ddp powerpc64 | ice pci powerpc64le \ + compile-with "${AWK} -f $S/tools/fw_stub.awk ice_ddp.fw:ice_ddp:0x01031e00 -mice_ddp -c${.TARGET}" \ no-ctfconvert no-implicit-rule before-depend local \ clean "ice_ddp.c" -ice_ddp.fwo optional ice_ddp powerpc64 \ +ice_ddp.fwo optional ice_ddp powerpc64 | ice pci powerpc64le \ dependency "ice_ddp.fw" \ compile-with "${NORMAL_FWO}" \ no-implicit-rule \ clean "ice_ddp.fwo" -ice_ddp.fw optional ice_ddp powerpc64 \ - dependency "$S/contrib/dev/ice/ice-1.3.27.0.pkg" \ - compile-with "${CP} $S/contrib/dev/ice/ice-1.3.27.0.pkg ice_ddp.fw" \ +ice_ddp.fw optional ice_ddp powerpc64 | ice pci powerpc64le \ + dependency "$S/contrib/dev/ice/ice-1.3.30.0.pkg" \ + compile-with "${CP} $S/contrib/dev/ice/ice-1.3.30.0.pkg ice_ddp.fw" \ no-obj no-implicit-rule \ clean "ice_ddp.fw" dev/ixl/if_ixl.c optional ixl pci powerpc64 \ diff --git a/sys/contrib/dev/ice/README b/sys/contrib/dev/ice/README index e6d126d62877..e2ce84d72e71 100644 --- a/sys/contrib/dev/ice/README +++ b/sys/contrib/dev/ice/README @@ -1,14 +1,16 @@ -OS Default Dynamic Device Personalization (DDP) Package +OS Default Dynamic Device Personalization (DDP) Package ====================================================================== -July 7, 2020 +May 12, 2022 Contents ======== - Overview +- Supported Operating Systems - Safe Mode - Notes -- Installation & Troubleshooting +- Installation +- Troubleshooting - Legal @@ -16,7 +18,7 @@ Overview ======== Devices based on the Intel(R) Ethernet 800 Series require a Dynamic Device Personalization (DDP) package file to enable advanced features (such as dynamic -tunneling, Intel(R) Ethernet Flow Director, RSS, and ADQ). +tunneling, Intel(R) Ethernet Flow Director, RSS, and ADQ). DDP allows you to change the packet processing pipeline of a device by applying a profile package to the device at runtime. Profiles can be used to, for @@ -24,12 +26,13 @@ example, add support for new protocols, change existing protocols, or change default settings. DDP profiles can also be rolled back without rebooting the system. -The DDP package loads during device initialization. The driver checks to see if -the DDP package is present and compatible. If this file exists, the driver will -load it into the device. If the DDP package file is missing or incompatible -with the driver, the driver will go into Safe Mode where it will use the -configuration contained in the device's NVM. Refer to the Intel(R) Ethernet -Adapters and Devices User Guide for more information on Safe Mode. +The DDP package loads during device initialization or driver runtime, depending +on the operating system. The driver checks to see if the DDP package is present +and compatible. If this file exists, the driver will load it into the device. +If the DDP package file is missing or incompatible with the driver, the driver +will go into Safe Mode where it will use the configuration contained in the +device's NVM. Refer to the Intel(R) Ethernet Adapters and Devices User Guide +for more information on Safe Mode. A general-purpose, default DDP package is automatically installed with all supported Intel Ethernet 800 Series drivers on supported operating systems. @@ -59,6 +62,18 @@ The default DDP package supports the following: - MPLS (up to 5 consecutive MPLS labels in the outermost Layer 2 header group) +Supported Operating Systems +=========================== +This DDP package is supported on the following operating systems: +- Microsoft* Windows Server* +- Linux* +- FreeBSD* +- VMware* ESXi* + +Refer to the Intel(R) Ethernet Adapters and Devices User Guide for currently +supported versions of these operating systems. + + Safe Mode ========= Safe Mode disables advanced and performance features, and supports only basic @@ -66,45 +81,44 @@ traffic and minimal functionality, such as updating the NVM or downloading a new driver or DDP package. Refer to the Intel(R) Ethernet Adapters and Devices User Guide for more details -on DDP and Safe Mode. +on DDP and Safe Mode. Notes ===== -- You cannot update the DDP package if any PF drivers are already loaded. To -overwrite a package, unload all PFs and then reload the driver with the new -package. +- In Linux, FreeBSD, and Windows, you cannot update the DDP package if any PF +drivers are already loaded. To overwrite a package, unload all PFs and then +reload the driver with the new package. -- Except for Linux, you can only use one DDP package per driver, even if you -have more than one device installed that uses the driver. +- In ESXi, use esxcli to load and unload DDP packages for specific market +segments during driver runtime. + +- In FreeBSD and Windows, you can only use one DDP package per driver, even if +you have more than one device installed that uses the driver. -- Only the first loaded PF per device can download a package for that device. +- In Linux, FreeBSD, and Windows, only the first loaded PF per device can +download a package for that device. In ESXi, you can load different DDP +packages for different PFs associated with a device. - If you are using DPDK, see the DPDK documentation at https://www.dpdk.org/ for installation instructions and more information. -Installation and Troubleshooting -================================ - -Microsoft* Windows* -------------------- -The DDP package is installed as part of the driver binary. You don't need to -take additional steps to install the DDP package file. +Installation +============ -If you encounter issues with the DDP package file, download the latest driver. - - -ESX ---- -The DDP package is installed as part of the driver binary. You don't need to -take additional steps to install the DDP package file. +Microsoft Windows +----------------- +TO INSTALL THE OS DEFAULT DDP PACKAGE: -If you encounter issues with the DDP package file, download the latest driver. +The default DDP package is installed as part of the driver binary. You don't +need to take additional steps to install the DDP package file. FreeBSD ------- +TO INSTALL THE OS DEFAULT DDP PACKAGE: + The FreeBSD driver automatically installs the default DDP package file during driver installation. See the base driver README for general installation and building instructions. @@ -112,15 +126,14 @@ building instructions. The DDP package loads during device initialization. The driver looks for the ice_ddp module and checks that it contains a valid DDP package file. -If you encounter issues with the DDP package file, you may need to download an -updated driver or ice_ddp module. See the log messages for more information. - NOTE: It's important to do 'make install' during initial ice driver installation so that the driver loads the DDP package automatically. Linux ----- +TO INSTALL THE OS DEFAULT DDP PACKAGE: + The Linux driver automatically installs the default DDP package file during driver installation. Read the base driver README for general installation and building instructions. @@ -131,9 +144,8 @@ intel/ice/ddp/ice.pkg in your firmware root (typically /lib/firmware/ or The ice.pkg file is a symbolic link to the default DDP package file installed by the linux-firmware software package or the out-of-tree driver installation. -If you encounter issues with the DDP package file, you may need to download an -updated driver or DDP package file. Refer to the log messages for more -information. + +TO INSTALL A DDP PACKAGE FOR SPECIFIC MARKET SEGMENTS: You can install specific DDP package files for different physical devices in the same system. To install a specific DDP package: @@ -177,9 +189,87 @@ NOTE: The presence of a device-specific DDP package file overrides the loading of the default DDP package file. +ESX +--- +TO INSTALL THE OS DEFAULT DDP PACKAGE: + +The default DDP package is installed as part of the driver binary. You don't +need to take additional steps to install the DDP package file. + +TO INSTALL A DDP PACKAGE FOR SPECIFIC MARKET SEGMENTS: + +You must first install the Intel(R) ESXCLI Plug-In for Managing Intel(R) +Ethernet Network Adapters to be able to install and load market-specific DDP +packages. Download it from: +https://www.intel.com/content/www/us/en/download/19380/intel-esxcli-plug-in-for- +managing-intel-ethernet-network-adapters.html + +NOTE: ESXi support for DDP packages for specific market segments requires the +following: +- OS: ESXi 6.7 or higher +- Driver: icen 1.9.1.x or higher +- Tool: intnet 1.8.3.x or higher + +To install and load this DDP package: + +1. Download and install the esxcli plug-in from the URL above. + +2. Download the DDP package. + +3. Copy the DDP package file to the following location: /store/intel/icen/ddp/. + If the directory does not yet exist, create it before copying the file. + +4. From the command prompt, run the following command to load the DDP package: + + # esxcli intnet ddp load -n -p -f + + Where: + = the name of the NIC + = the name of the DDP package to load + -f = forces the package to load + + NOTE: This operation will cause the driver to reset. + +5. Wait for the load result status. + + +To list all active DDP packages for all virtual NICs, run the following: + +# esxcli intnet ddp list + +To unload (roll back) a DDP package, run the following: + +# esxcli intnet ddp rollback -n -f + +NOTE: This operation will cause the driver to reset. + + +Troubleshooting +=============== + +Microsoft Windows +----------------- +If you encounter issues with the DDP package file, download the latest driver. + +FreeBSD +------- +If you encounter issues with the DDP package file, you may need to download an +updated driver or ice_ddp module. See the log messages for more information. + +Linux +----- +If you encounter issues with the DDP package file, you may need to download an +updated driver or DDP package file. Refer to the log messages for more +information. + +ESX +--- +If you encounter issues with the DDP package file, download the latest driver. + + Legal / Disclaimers =================== -Copyright (c) 2019 - 2020, Intel Corporation. +Copyright (c) 2019 - 2022, Intel Corporation. Intel and the Intel logo are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries. diff --git a/sys/contrib/dev/ice/ice-1.3.27.0.pkg b/sys/contrib/dev/ice/ice-1.3.30.0.pkg similarity index 79% rename from sys/contrib/dev/ice/ice-1.3.27.0.pkg rename to sys/contrib/dev/ice/ice-1.3.30.0.pkg index 2fcc57d47d5f..454a2a6ea193 100644 Binary files a/sys/contrib/dev/ice/ice-1.3.27.0.pkg and b/sys/contrib/dev/ice/ice-1.3.30.0.pkg differ diff --git a/sys/modules/ice_ddp/Makefile b/sys/modules/ice_ddp/Makefile index ef0b064503bb..2735a2ba4da2 100644 --- a/sys/modules/ice_ddp/Makefile +++ b/sys/modules/ice_ddp/Makefile @@ -1,6 +1,6 @@ # $FreeBSD$ KMOD= ice_ddp -FIRMWS= ${SRCTOP}/sys/contrib/dev/ice/ice-1.3.27.0.pkg:ice_ddp:0x01031b00 +FIRMWS= ${SRCTOP}/sys/contrib/dev/ice/ice-1.3.30.0.pkg:ice_ddp:0x01031e00 .include From nobody Tue Jan 24 23:46: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 4P1kBs73tZz3121P; Tue, 24 Jan 2023 23:46: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 4P1kBs6NJxz3kVV; Tue, 24 Jan 2023 23:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674603989; 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=lcgqEHvlkzhZ69Ud5gATgpoF5iH7KH9+SUr75/QEnd0=; b=f+cdX9JYiJTWgPG8Bgvajt1XAq7VEWZNkaYCyHeAMrbpK4u1831wkecYY6QUDKcqzrWk8z bzlrSztty7dFX1JDIunTiQuxcbKPW1bCrjY7IIo34Rx1VvR+WPcFDWY+JZGC596LiRfnI4 j7XXKPdG8l0IPNt6RyRumaHy6y7VD3AkA+GO94WVCmaSbD5Vzk4M1FuqBotiOb35rwYFF0 KpNQcHmOmq5wzSTdSUnpdgO2ffSXsvArMNuTQ9uDKW0q78Sqmbi4iHSufBPnCUSKU22ZtW ruSrxkz6EwVA8udImrxpG1h4LLn7YfXzoXubEeSJzOSAj7qJY8QUx+NE/KVz8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674603989; 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=lcgqEHvlkzhZ69Ud5gATgpoF5iH7KH9+SUr75/QEnd0=; b=Yvn5L2faGoFKX1pAP9Jain/Uz0zuDNaAqQnp83IWMoYDG9KMoPEvh0V7GA4nFV5DCEfU6R pbp763tgXkVrvu7oRQs+4zDY5yu8ShQyyKIcmlzgmXuPCzXgdF6M3qWZkcugAgqLkLM2Gy 4zUqz88FCAHRmSs1C/mzFmomrt+HlWP104EN6Kxl163QnfSDKn6P9dQxMay5go3F78dirl n8yoV1UJyw9dMlAj7TKNV4oTZKboiegN8nFy3FxJk+CgHTJZvXYIrfGcIDQQVoq+SBD9WS cJBsdL7eOSAB6Hjl8P1tdTAZFiJYa6B5TMCxMnuz3eDXV0vm8GLT/QpnoYVxIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674603989; a=rsa-sha256; cv=none; b=ghd8gsEWDMsrJTZ6782EOaQSEJl+iqq9mmSbUOfQRHg6fOxMS/3Cw+zS7/2yRTkN9CaRSd UnEvyfxLqx+XXxm6gk/Mz6LAMVPaTZ5T96t/mWKPfyvXWyxRYbMRHaQ1ElE4zbi5HO1vnH tNLXMgcSAVRDNkoUlby0fugw0U0qMs3+LqHzsmNdRbz6MWBw3TeRPBt8P+GLhiGOqfiLpR 78GbcSfPtu/bcIzVBIMYi2dmCRWGoDo6X1d9FI47kk+VoAVaYbCynWHLT8rk7wlNz7xZwo X4FU3bjBleLVgnLzv36yvZRxpUXLePj8IHskw1CzD4cZZEnYU1LmL1IWIPSnDg== 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 4P1kBs5Qr9zT3D; Tue, 24 Jan 2023 23:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30ONkTAM021172; Tue, 24 Jan 2023 23:46:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30ONkTNP021171; Tue, 24 Jan 2023 23:46:29 GMT (envelope-from git) Date: Tue, 24 Jan 2023 23:46:29 GMT Message-Id: <202301242346.30ONkTNP021171@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Eric Joyner Subject: git: 9147969bc277 - main - iflib: Add null check to iflib_stop() 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: erj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9147969bc277b389a62373c6a5050a2ebfd39071 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by erj: URL: https://cgit.FreeBSD.org/src/commit/?id=9147969bc277b389a62373c6a5050a2ebfd39071 commit 9147969bc277b389a62373c6a5050a2ebfd39071 Author: Przemyslaw Lewandowski AuthorDate: 2023-01-24 23:41:15 +0000 Commit: Eric Joyner CommitDate: 2023-01-24 23:45:15 +0000 iflib: Add null check to iflib_stop() Ever since gtaskqueue_drain() was added to iflib_stop(), a kernel panic occurs when the ice(4) driver is in recovery mode. Queues are not initialized in this mode, so gt_taskqueue is not initialized, and gtaskqueue_drain() will panic. Fix this by only doing a drain if an RX queue's gt_taskqueue is initialized. Signed-off-by: Eric Joyner Reviewed by: erj@ MFC after: 1 week Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D37892 --- sys/net/iflib.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 5f202b120005..0a500f8e2810 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -2644,8 +2644,9 @@ iflib_stop(if_ctx_t ctx) bzero((void *)di->idi_vaddr, di->idi_size); } for (i = 0; i < scctx->isc_nrxqsets; i++, rxq++) { - gtaskqueue_drain(rxq->ifr_task.gt_taskqueue, - &rxq->ifr_task.gt_task); + if (rxq->ifr_task.gt_taskqueue != NULL) + gtaskqueue_drain(rxq->ifr_task.gt_taskqueue, + &rxq->ifr_task.gt_task); rxq->ifr_cq_cidx = 0; for (j = 0, di = rxq->ifr_ifdi; j < sctx->isc_nrxqs; j++, di++) From nobody Wed Jan 25 01:44: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 4P1mqW57mYz3bBrf; Wed, 25 Jan 2023 01:44: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 4P1mqW4gTcz45k6; Wed, 25 Jan 2023 01:44:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674611095; 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=6dxyfi0yadlVJ9AGaupMMUePcD/bhhSWcCXCEtLGgVw=; b=pUkckAEAeYzrOVTVxgkF3pqm/RzrUWzkYWP0C4TgxHSCAzWnnXDqRRb0eWxJsyxl/fnKRQ Snnq6K4yAuthnjk2/6ma3OQ3zOnbSIFQ0bmr3adjCnY7Iz6dxssP2DqxSDjWjwQvzIt4HK IhgAMNPLBn1iMU9uHzTE5/4kKrHs59nNG6QZZAN3vN5rL2qfKGKKDccnLFmVY+3PwaHu4E CeW1g2O/nE9w23qoGgt8ALkFxFbmkRggAxbFoSTRNsfwQUSVEyvKH6m+rLvIqtBdXCdFes mWjLBj//2p4zpfyYvwsAfjrabesstFhyQuo3Y9fw0XSXiQ+CgiRCW3DduqX/DQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674611095; 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=6dxyfi0yadlVJ9AGaupMMUePcD/bhhSWcCXCEtLGgVw=; b=lcB99bODw9hRA9gmQr4UJT/Oj8WKKqqF9VOg1lnQ61+EyC66ieoKR85k9px0ydnntkBM6J Fwoj251awbgvXs0Lu5gPUfUAHVIKoYTuurbDBHPOuM+2gculEwKxeP6HBlh/TFa6jVateE 56au0LvW6PjN/0ybR3/YyLeRBb8Dt1zR7I+TUbS6NmQ+yIL+cuf+wHoWwDuF93Daci/zQW HOVpaX4whyMeVeXIaRXjmfD3ZBkRy2UxbU025wOI6H6smv3E71/jniCngSFcgP24pqtE3C 7IkxsbbXsmvNCjT+CFT2DDo4CwALSBhwDvsMWIOHWM7SeTDsOaTVZRASRbmiXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674611095; a=rsa-sha256; cv=none; b=e7WcmSAsK7HZlAFfPwhGgMUcK+3Ne1fAZ1JzzY4hfj5SNlOV8iJ2C0uLqF6hVWxfUX+rWK h5JEgL/1FAHNPRgnaO54TTninTYohv3crtBy5xOdKHAmBlcPq9k0gRtD7q5vIqsl+zWGzn zEHgkTr4BNGVw6rtvO27qADBpC432Di1kP0kvc2+qHh55yuHmRa6/iNy4xw3euU3AlZzZA Mei7sYvg+hJ1ZSdbolNRLVw/dC1OSpSMF7NP3Xhem7HES752NJ1VrN9GHC4FP1BpvMf4j5 JmuofaSBqC18VzKDS+/awOSNP8JmnzRT+B6cBwynBXztydrxtow2mfdexy4Aaw== 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 4P1mqW3k0rzX3C; Wed, 25 Jan 2023 01:44:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P1itiP094182; Wed, 25 Jan 2023 01:44:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P1itUK094181; Wed, 25 Jan 2023 01:44:55 GMT (envelope-from git) Date: Wed, 25 Jan 2023 01:44:55 GMT Message-Id: <202301250144.30P1itUK094181@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: 25b18d8935a5 - main - libcxx: use __SIZEOF_LONG__ == 8 instead of __LP64__ 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: 25b18d8935a5ee933d5465f5db41ad58c26590f9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=25b18d8935a5ee933d5465f5db41ad58c26590f9 commit 25b18d8935a5ee933d5465f5db41ad58c26590f9 Author: Konstantin Belousov AuthorDate: 2023-01-24 10:03:45 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-25 01:19:27 +0000 libcxx: use __SIZEOF_LONG__ == 8 instead of __LP64__ for CHERI. Requested by: arichardson Reviewed by: arichardson, emaste, imp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D38178 --- contrib/llvm-project/libcxx/src/atomic.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/llvm-project/libcxx/src/atomic.cpp b/contrib/llvm-project/libcxx/src/atomic.cpp index e7496fa43666..4a2e466bd145 100644 --- a/contrib/llvm-project/libcxx/src/atomic.cpp +++ b/contrib/llvm-project/libcxx/src/atomic.cpp @@ -77,7 +77,7 @@ static void __libcpp_platform_wake_by_address(__cxx_atomic_contention_t const vo const_cast<__cxx_atomic_contention_t*>(__ptr), 0); } -#elif defined(__FreeBSD__) && defined(__LP64__) +#elif defined(__FreeBSD__) && __SIZEOF_LONG__ == 8 static void __libcpp_platform_wait_on_address(__cxx_atomic_contention_t const volatile* __ptr, __cxx_contention_t __val) From nobody Wed Jan 25 01:44: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 4P1mqX5vYwz3bBtR; Wed, 25 Jan 2023 01:44: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 4P1mqX5Jtgz45cR; Wed, 25 Jan 2023 01:44:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674611096; 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=5QCERgpgWlfcWbUxFo+cSwnYun/Hp8+830L4Tt3uCzM=; b=txRJum8V435cXb49cnJ9fMAQjL83peI6BFalHl7SaEtk/4VGXZgpHgQfWv8l2VCDIIrDF5 MduZsqqV+4tApoz6L+QjKOpw7pL0Nq+bKs31eQKniTlF56Tf7xY4VwBVEUclc7yXHFQRwm L7ywJZN9Rs0LhNX1zryhGrteqoWfjLotIW+TZln1VH2CxaLVVDCBS5ZlEJbAmoFfhZBsH2 z3rhhKaMKz3XwhmgK0N6s398WegQ+fuvjhC/le4ozdy3UujaWulTRL6gtu1rdyGZ+LL1Nt PEKZ4fB8cSlRfa2PjQTZXvC13Qj7UaxtWQ4M54Of4IVcZRLvxmmyafnCfq85rQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674611096; 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=5QCERgpgWlfcWbUxFo+cSwnYun/Hp8+830L4Tt3uCzM=; b=e0sS45CJeEUHKPiV3eNsRaAaEKx6mNC17jlfMdA+rwpvdtdFPpdgYnHAUQ5NlgwfmdEasb ASPSCHzTkMOMvOvL3fD3HNxyrGxFj07m2IGopNKWxuV0oMD/K8eAu6HNGuF1zPO92WBQ2P kr7kshh8zEU/EqCufbEDWXIkXXGlDpSyyjMQobghsejQfiTf0enh0LF4bNq6rRw2GfDkzY nVCAWZGTTXACwd+tzhybuMQw0nEmZqel5UBXCh7EVhnLcLnXHExdcdyGsyas8Tc2IZbXSR Z7WNVGVDiRhss0JQX7NJ8Mfs9PalViWvAZgH/ZUilD+JAkfMJi19q3uugbiCAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674611096; a=rsa-sha256; cv=none; b=QlVBvoAMvThhFQBivBTjIXfV05ELg2LslFg0HOc7HTHa5heVaaa1NOe0D7pwskkcjCTere nD3AmCug+eMNrEOg0Iz+2ZVTeKmgJrpMk+U8Si+VJTUDSDlcwW6X9ln21fBmjcq5S71qVd Y+L+h5kg/DSnMJJ65BM0NBYQjXH0pB0RBZ552kO++H6P99maSz9Hbr1hN741SNlybW+fiN ztWpAHQ43pLdwFZclaCWsK7Jd9kphKmS+li5ct8paIeeoi0FzZQlxEzPiATfwnCcYSTIz7 sFAZjfYG/AtNtkLNBLU90j5CdMZwTi+Svv3NUCU/UDFQkbnlH5USLbi56kwGOA== 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 4P1mqX4PsvzWdL; Wed, 25 Jan 2023 01:44:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P1iuwR094206; Wed, 25 Jan 2023 01:44:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P1iuok094205; Wed, 25 Jan 2023 01:44:56 GMT (envelope-from git) Date: Wed, 25 Jan 2023 01:44:56 GMT Message-Id: <202301250144.30P1iuok094205@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: 4c4a29267cbd - main - libcxx: add comment explaining why umtx is only used for 64bits 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: 4c4a29267cbdd05471322e03bfd5eff8eb68e750 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=4c4a29267cbdd05471322e03bfd5eff8eb68e750 commit 4c4a29267cbdd05471322e03bfd5eff8eb68e750 Author: Konstantin Belousov AuthorDate: 2023-01-24 15:36:24 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-25 01:19:42 +0000 libcxx: add comment explaining why umtx is only used for 64bits Requested by: imp Reviewed by: arichardson, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D38178 --- contrib/llvm-project/libcxx/src/atomic.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/contrib/llvm-project/libcxx/src/atomic.cpp b/contrib/llvm-project/libcxx/src/atomic.cpp index 4a2e466bd145..f90d28c2e569 100644 --- a/contrib/llvm-project/libcxx/src/atomic.cpp +++ b/contrib/llvm-project/libcxx/src/atomic.cpp @@ -78,6 +78,11 @@ static void __libcpp_platform_wake_by_address(__cxx_atomic_contention_t const vo } #elif defined(__FreeBSD__) && __SIZEOF_LONG__ == 8 +/* + * Since __cxx_contention_t is int64_t even on 32bit FreeBSD + * platforms, we have to use umtx ops that work on the long type, and + * limit its use to architectures where long and int64_t are synonyms. + */ static void __libcpp_platform_wait_on_address(__cxx_atomic_contention_t const volatile* __ptr, __cxx_contention_t __val) From nobody Wed Jan 25 06:22: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 4P1v0C0PYrz3bp3t; Wed, 25 Jan 2023 06:22: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 4P1v0B70Wtz3Dsv; Wed, 25 Jan 2023 06:22:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674627771; 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=oj+JzWwZarC1Jok8EHqhA5JKvUx4B7UMaom4N4Bpahw=; b=sveP6XK/+vlGebgYi06YEliTfuCWFhD5tkNX2x5qgYO+VSooS8Dd2LBMSKSzaQ+wLCbAF+ CKeTs1y2SHC5J1FLx7AqzkYBal0Yc0aVVcTrXh1XDqj9GKgAmq/3dyKe5k9JXzSYaBWoAZ zSoohgQFXYCEb6mCmH5EBwiMo4Qcrng2oVatHsbaz+p/hKVp10r3Xf2MiEZYRDfuYAcMxu GUNQV37N+qpO9oVnPKUKQ3ZFfFcC/QoH7Z3DRt8e60eIvUu9c3F3iU97DV/zUgiUc+IICB z6k/CGJHsIWO2Te83fAFKdYrWJkOAk/4VGclHiEYwjhvP0FXswOsFEnJlevdog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674627771; 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=oj+JzWwZarC1Jok8EHqhA5JKvUx4B7UMaom4N4Bpahw=; b=gQsT0/cx3ssW/R3qa/Wu9ZUlhwWKwmMr0IvgaVtE3Cr2nhzjq0AJM2dKQQe/5+kNfe9hQ+ KVI9RcaJ/W5kGOKU611j6kYyvbbVdSGBaxoBwjY5dKZsDvJ/gMBhCMIjrBGZkg0dfxd3IF +Crt627f3EOnhLg44NPWHtyh/K8htYdkvwDohAyLwdLY50inEH99ePgMXO3ewVhs9cpFoM c6F9uIvTvVktJo2yAXsJgwwjrimnRLkDb5nXgsycbpY6k44XokGAy+9sGobfHncTfItUai ALF4T9u0halS0pZj3Hp+4eEt6wQLnIm4YPlBJ9/EhXbI3XFfqOHkXK0JXCUk0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674627771; a=rsa-sha256; cv=none; b=wQzi305WzAFaiwn4a6L5M5ZFSOMksRuTrL0f37z8RPq0U0mqBYM33iIi9C4L84jRmizb4H wo60csjN53teGmrLZWDul1vTeA4y7Vpss7Bhh6xItMTxmyCUjDH0r1+cC/c8Zeh+ru91TA bXE4IbX+7k0HxUlFkIG8Dgl10Eir/++To/wCT7XaFNuB8SX+yEB5tAp+7bYZE09H1WaR/k g/if4Y8yv0CLfs15uzWKWcsNUiro4cfDfx7/cKRL2YbR/k8frtLFahL+TOQhSFLqMUc7GJ guohi/4c1xvjhjMFpWMPCguDRhRMzCS9sifFYMryM7msvWvbfrxQkFhclpuXYg== 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 4P1v0B64GBzfmZ; Wed, 25 Jan 2023 06:22:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P6Mojx095787; Wed, 25 Jan 2023 06:22:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P6MoHI095786; Wed, 25 Jan 2023 06:22:50 GMT (envelope-from git) Date: Wed, 25 Jan 2023 06:22:50 GMT Message-Id: <202301250622.30P6MoHI095786@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: d90ff31ae5cd - main - w: Complete libxo transition. 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: d90ff31ae5cd9ba073fbd6a7b2367b5209ea534e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=d90ff31ae5cd9ba073fbd6a7b2367b5209ea534e commit d90ff31ae5cd9ba073fbd6a7b2367b5209ea534e Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 06:21:13 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 06:22:46 +0000 w: Complete libxo transition. MFC after: 1 week Sponsred by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D38172 --- usr.bin/w/w.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/usr.bin/w/w.c b/usr.bin/w/w.c index 45e624c29460..8c33cd9d35b2 100644 --- a/usr.bin/w/w.c +++ b/usr.bin/w/w.c @@ -67,7 +67,6 @@ static const char sccsid[] = "@(#)w.c 8.4 (Berkeley) 4/16/94"; #include #include -#include #include #include #include @@ -189,7 +188,7 @@ main(int argc, char *argv[]) nflag += 1; break; case 'f': case 'l': case 's': case 'u': case 'w': - warnx("-%c no longer supported", ch); + xo_warnx("-%c no longer supported", ch); /* FALLTHROUGH */ case '?': default: @@ -204,7 +203,7 @@ main(int argc, char *argv[]) _res.retry = 1; /* only try once.. */ if ((kd = kvm_openfiles(nlistf, memf, NULL, O_RDONLY, errbuf)) == NULL) - errx(1, "%s", errbuf); + xo_errx(1, "%s", errbuf); (void)time(&now); @@ -239,7 +238,7 @@ main(int argc, char *argv[]) continue; } if ((ep = calloc(1, sizeof(struct entry))) == NULL) - errx(1, "calloc"); + xo_errx(1, "calloc"); *nextp = ep; nextp = &ep->next; memmove(&ep->utmp, utmp, sizeof *utmp); @@ -338,7 +337,8 @@ main(int argc, char *argv[]) pr_header(&now, nusers); if (wcmd == 0) { xo_close_container("uptime-information"); - xo_finish(); + if (xo_finish() < 0) + xo_err(1, "stdout"); (void)kvm_close(kd); exit(0); } @@ -351,7 +351,7 @@ main(int argc, char *argv[]) } if ((kp = kvm_getprocs(kd, KERN_PROC_ALL, 0, &nentries)) == NULL) - err(1, "%s", kvm_geterr(kd)); + xo_err(1, "%s", kvm_geterr(kd)); for (i = 0; i < nentries; i++, kp++) { if (kp->ki_stat == SIDL || kp->ki_stat == SZOMB || kp->ki_tdev == NODEV) @@ -400,7 +400,7 @@ main(int argc, char *argv[]) ep->args = fmt_argv(kvm_getargv(kd, ep->kp, argwidth), ep->kp->ki_comm, NULL, MAXCOMLEN); if (ep->args == NULL) - err(1, NULL); + xo_err(1, NULL); } /* sort by idle time */ if (sortidle && ehead != NULL) { @@ -472,7 +472,8 @@ main(int argc, char *argv[]) xo_close_list("user-entry"); xo_close_container("user-table"); xo_close_container("uptime-information"); - xo_finish(); + if (xo_finish() < 0) + xo_err(1, "stdout"); (void)kvm_close(kd); exit(0); From nobody Wed Jan 25 06:22: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 4P1v0D1ckpz3bnnm; Wed, 25 Jan 2023 06:22: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 4P1v0D15BFz3Dft; Wed, 25 Jan 2023 06:22:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674627772; 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=hlutUL/1/rAR+6TqWdh9EysIEFRqyii68iKoIEvC3p4=; b=c9eKxP0QO7pyFrOCh6X+3E5i+StHbkhz+RKTSBGog1nB+PdQQuJSXt5K8o3Y5BpVxNtQUO AGSkOW74zvJyQ37bUBRB2x7IkG7g/JvZwEEN8rkHt0RebNjWMZXcUZZIUo/KOtJMQl/en6 RtMcY1LV1F04eiSVKlRxIp4eOG/Lwfh/jBZiuS/6bvhP7svv09gvxoLmNArCzisBKTNYcA NCc5TDZ6MV6+HsgRCOEmHWfGolahOQKtAjuXCGKEYFSg+FL3InbwDMM2zHB/SaVWEy9jKY bfpcUMNHggL124Pt79Lw7bZuPQneAOBY9+X/zkARJ+9c+luAzxYL/1MTkvN+OA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674627772; 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=hlutUL/1/rAR+6TqWdh9EysIEFRqyii68iKoIEvC3p4=; b=WHhXtM3cqh0f/tlzu6SVuKsfmbHvpJxpow1c3ZpmbuuG8e0h8gFW8mAF3PFdIgw434+7Vi qrCGZj8LuwiHcyUHAIPsS2jziVHfTSmPLjBEW4F8L6qOGSUoTYJTqKumiqsnSAQHrCdixG telQZ12DaKklmeuDMHCm7T1cONwih37jj8nDB1CRG0ij/ub37/kH+EUTrRbEcxaRnGdCaJ 05eEjvsJ7VNYtddEk1SgY7/n5iMPCs355DUHk+5pHUDqEXZN9vAuJ3NauLfROT/ZIbfGn6 Y1jV0OFndPVU13mb+hgtbI2KfuBVMp0LkIDJ5kgaUa/VVecu373tTZXVXKr37w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674627772; a=rsa-sha256; cv=none; b=A7DS0477CuPblHhqN3Sy7cOEwMaOi7iEEJo8b1mF5qcHh9kYJaujFiGu0AxgZEbWDy8sKD NLPlUC4ZTac0/S8PHq6/DCxvfRbMZ7e0bGm0J26v42RXZ5SFuKoPijLe+/o5mCRBw1ox/w 3o/dLe0RCRMyLNvD3dKsJ+Hf5pN0RnZSAmvJwoOd3qhlTXHqeQkywydsXyz6mCQ1Uj6Pyl kxLkCQWDjDwcvTVPNUFAc9tvl5kpDspMMB5NlZ0KjRow5vlyldQIlL2l+eytXOX2aMhBOu tdR7k7MhDPNWB20zRbVlEO71wZQC10qQ+hZd8aqPpuLFvyCMgBh+SOUNvaCABA== 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 4P1v0D09zczfDJ; Wed, 25 Jan 2023 06:22:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P6Mp8r095816; Wed, 25 Jan 2023 06:22:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P6Mp6t095815; Wed, 25 Jan 2023 06:22:51 GMT (envelope-from git) Date: Wed, 25 Jan 2023 06:22:51 GMT Message-Id: <202301250622.30P6Mp6t095815@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: d8c9f8089187 - main - libc: Update mktime(3) / timegm(3) tests. 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: d8c9f80891872a54d0b21933136644d915096fe3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=d8c9f80891872a54d0b21933136644d915096fe3 commit d8c9f80891872a54d0b21933136644d915096fe3 Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 06:21:23 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 06:22:46 +0000 libc: Update mktime(3) / timegm(3) tests. Sponsored by: Klara, Inc. Reviewed by: ngie Differential Revision: https://reviews.freebsd.org/D38177 --- contrib/netbsd-tests/lib/libc/time/t_mktime.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/contrib/netbsd-tests/lib/libc/time/t_mktime.c b/contrib/netbsd-tests/lib/libc/time/t_mktime.c index 1080b77eda80..63905b8bad54 100644 --- a/contrib/netbsd-tests/lib/libc/time/t_mktime.c +++ b/contrib/netbsd-tests/lib/libc/time/t_mktime.c @@ -1,4 +1,4 @@ -/* $NetBSD: t_mktime.c,v 1.5 2012/03/18 07:33:58 jruoho Exp $ */ +/* $NetBSD: t_mktime.c,v 1.6 2017/10/27 00:55:27 kre Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -64,18 +64,16 @@ ATF_TC_HEAD(mktime_negyear, tc) ATF_TC_BODY(mktime_negyear, tc) { -#ifdef __FreeBSD__ - atf_tc_expect_fail("needs work"); -#endif struct tm tms; time_t t; (void)memset(&tms, 0, sizeof(tms)); - tms.tm_year = ~0; + tms.tm_year = -1; + tms.tm_mday = 1; errno = 0; t = mktime(&tms); - ATF_REQUIRE_ERRNO(0, t != (time_t)-1); + ATF_REQUIRE(t != (time_t)-1); } ATF_TC(timegm_epoch); @@ -95,7 +93,7 @@ ATF_TC_BODY(timegm_epoch, tc) tms.tm_year = 1970 - 1900; tms.tm_mday = 1; t = timegm(&tms); - ATF_REQUIRE_ERRNO(0, t == (time_t)0); + ATF_REQUIRE(t == (time_t)0); /* one second after midnight on 1 Jan 1970 */ (void)memset(&tms, 0, sizeof(tms)); @@ -104,7 +102,7 @@ ATF_TC_BODY(timegm_epoch, tc) tms.tm_mday = 1; tms.tm_sec = 1; t = timegm(&tms); - ATF_REQUIRE_ERRNO(0, t == (time_t)1); + ATF_REQUIRE(t == (time_t)1); /* * 1969-12-31 23:59:59 = one second before the epoch. @@ -119,7 +117,8 @@ ATF_TC_BODY(timegm_epoch, tc) tms.tm_min = 59; tms.tm_sec = 59; t = timegm(&tms); - ATF_REQUIRE_ERRNO(0, t == (time_t)-1); + ATF_REQUIRE(t == (time_t)-1); + /* ATF_REQUIRE(errno == 0); does not work, errno is kept clear */ /* * Another way of getting one second before the epoch: @@ -131,7 +130,7 @@ ATF_TC_BODY(timegm_epoch, tc) tms.tm_mday = 1; tms.tm_sec = -1; t = timegm(&tms); - ATF_REQUIRE_ERRNO(0, t == (time_t)-1); + ATF_REQUIRE(t == (time_t)-1); /* * Two seconds before the epoch. @@ -142,7 +141,7 @@ ATF_TC_BODY(timegm_epoch, tc) tms.tm_mday = 1; tms.tm_sec = -2; t = timegm(&tms); - ATF_REQUIRE_ERRNO(0, t == (time_t)-2); + ATF_REQUIRE(t == (time_t)-2); } From nobody Wed Jan 25 07:29: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 4P1wSv0K1Wz3bwM8; Wed, 25 Jan 2023 07:29: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 4P1wSt6wvNz3LC7; Wed, 25 Jan 2023 07:29:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674631759; 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=J/HvG7K1aUcpBZ5HE5swGccLx7QO4aEM3aAOfhUtdZk=; b=nruNmd8MPBUyLPqU6vmndiaGi85mCfexq2IkAvCt8+w2li+HqSvMU3Gj7033oLQNNeOQ15 O/AJ5zP7B6uY55yfXpTaGIlC3P8M1e7jLJuDZ5F0zUhUTVL/Pi2+tH/nLE4/4qeeud4sAq mbjzTjdnAq/f/tT2sRRvUUjvifBP48v/x4moje/nhPqIYb4UfTgiNPn14+Zg3juarAcr+D /oDydtwptz3UmkBPIRceGXs4PUNih4znZ5LEiSWlqPGYxRS5cKwLmDEGNBzUHxXBwVgbap 2F/OetoWu1YjZW9iCAVm1Y9NJ8UqJi+wfJjuTaUUXoWtdP1HsQrDBTeca8+jEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674631759; 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=J/HvG7K1aUcpBZ5HE5swGccLx7QO4aEM3aAOfhUtdZk=; b=WjlDrBMDIMnGPT9FwQmlxDdyMtqcBt3ToFxf30L/kFoW36VYZs5WSz9shsFvBPp2AANgSf HNOssJYgaFRec7wKokI5ueERFgPzsVsvk3kfxgtnmoNCRmqTnwOKWAU2h83r5djLgzpnH6 9NlpkmVxAVgzqztTkvhjpt9UQmb2C5DJplxYkBXzKSK/6V3DOVHY/6WiZ6G8x6cgVqYypd 4lR8DSVgInMWIRhthLU5vGnQXDwjvNNt9OAN+D4S/BUaQC2Xsaup7dO+lHjpC2NmfsmJIV sDjJSDGAX61ksBMXl472Lqi0BUqD+3AtiFPPDQkpcDyMwqMAPhNU3EKzSvrV6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674631759; a=rsa-sha256; cv=none; b=sYq9+6oL+GybcWbFXE/A1/xFrG1DO83RE6G07Hm+68CYLVAc51D2j1reTVMLjnMcM07CEA 0rh8r//qwY/efVZCM53SHBbIRMqCVxpCLqekWuVNJGfrMKZXVXEKYl1kMoZoVBnNfkd0aA g71ekhgJrd9AUjDNYfGOmbG3a9UsmFaK12C6+Bqn2bUPKs5PjQEzjBL17/GLL5Jv9d/Bjn B+r5q65Z4NIKxNzQqn3hK+2hMp/HzO7+mEQeipzhPHR1H7zmH8nAOoVB4mI819yVKNsmTR SdhsaaPKi/UUD+uNDJ5A5Xv5yo/Qj2edGEcOSyuC7mmCmlCV3o+HlApbSdVbmg== 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 4P1wSt5z7NzgRx; Wed, 25 Jan 2023 07:29:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P7TIQq084369; Wed, 25 Jan 2023 07:29:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P7TIOW084368; Wed, 25 Jan 2023 07:29:18 GMT (envelope-from git) Date: Wed, 25 Jan 2023 07:29:18 GMT Message-Id: <202301250729.30P7TIOW084368@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: 5a0061214930 - main - arm64: Move device scmi to std.arm 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: 5a00612149308403ecbf26f56a46f11190211911 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=5a00612149308403ecbf26f56a46f11190211911 commit 5a00612149308403ecbf26f56a46f11190211911 Author: Emmanuel Vadot AuthorDate: 2023-01-25 07:28:22 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-25 07:28:22 +0000 arm64: Move device scmi to std.arm The scmi driver in its current form requires the arm_doorbell driver to communicate with the firmware. The arm_doorbell is only found in ARM Juno reference board (and apparently on Morello too). If we want to use scmi on other platform (like some rockchip or imx soc), the driver needs to be updated to support svc/shmem communication with the firmware. For now since it can be only used with arm_doorbell move the device to std.arm otherwise kernel configs like ALLWINNER or ROCKCHIP fails to build. Reviewed by: br, imp Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D37953 --- sys/arm64/conf/std.arm | 3 +++ sys/arm64/conf/std.dev | 2 -- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/arm64/conf/std.arm b/sys/arm64/conf/std.arm index d17c80b78fff..2b40fd7b0eb8 100644 --- a/sys/arm64/conf/std.arm +++ b/sys/arm64/conf/std.arm @@ -11,6 +11,9 @@ device pl061 # Arm PL061 GPIO controller # Serial (COM) ports device pl011 +# Firmware +device scmi # System Control Management Interface + device arm_doorbell # ARM Message Handling Unit (MHU) options FDT diff --git a/sys/arm64/conf/std.dev b/sys/arm64/conf/std.dev index affe3d3014a3..1725cec626e4 100644 --- a/sys/arm64/conf/std.dev +++ b/sys/arm64/conf/std.dev @@ -109,6 +109,4 @@ options HID_DEBUG # enable debug msgs device hid # Generic HID support # Firmware -device scmi # System Control Management Interface - device mmio_sram # Generic on-chip SRAM From nobody Wed Jan 25 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 4P1yS92qXWz310Qm; Wed, 25 Jan 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 4P1yS92SBYz3k5y; Wed, 25 Jan 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=1674637129; 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=yjc/gYRPXSxltHdB3yxvbnV2yr1H2vhmggrbPVko0eM=; b=r+2ntIIHffio6kyT/atpYVdSBBmShhTUvJnMp57oNmSMHZxQ8U0aOrC3zDYQRGWmueimYe c8F8O+ulowxfGrEGjl9mzkXV2rxLHUORQEQfUMjMAkRqAnNUQXwbog9qIeyE/xFC9tqTGi zdG1SIjqoMAS/bctJ3jRHtKUsE+DRkCD3g5sJn3itQqJmO+Ty/nx0Qjereytc1vwKgp0UL IoSm1aVreuwVFD0npZMzqCOG5Rxv+PqbkDknCIRHi3+019u2+FGstHfEVBt/ZXwap9G3ZP RCH1RPKOfDlIudAmYpBLMb+uEKazaaJKMXYi1SPC9xgTybei85J4+ZEgg2Bj8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637129; 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=yjc/gYRPXSxltHdB3yxvbnV2yr1H2vhmggrbPVko0eM=; b=hxEjqG0kGRZR28JMAaDNt/bUGNLuf9o78wBuEZNyzfwdYnbs8fZ63jarX67Cdy1S6ylRBw eeoFXQ+vB5jqISCqf3tB6S66cLX08HrQzi/heZE2HuD/0UFgRmMGi3XGde4FfcFqTTgzK6 xeLbin2KhDLL+723ndtoJY1locYi+n1/eEMagSF3K2t3tVvt3Jf5gyxXmfYSYVbS5G4o4O QyzKRDfQl0gzwvP4bydJDoyGNgfN2p4pjWFu+NVR0y1W3eaUW8EP/lVHpuiRZx7XZ5qDw9 5B2W7NRn4xK2YypAwXK8BhCxmJjcaSq3lTdilYUV50ZzSj48PZ1uh4GUmIaUZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674637129; a=rsa-sha256; cv=none; b=RlORU1xbBy4xNn3OHu5gXFv5OgIvX4y6XrCJ34qSDMksr8ljPEQkTdN5BQgMkMnMwOMcam 8XYDgc0VVlyOS6UYiXAi3jwxz0klH72h+2l/E6zuZ2HZW4/BWJft+m9pDyg4IuR/d0fVeT 0nQ9ZYpLz/xut+Q4UnS1SqetG2FBHlk9ln4WWKlGFKXY/8Xkz/wRGd8PCNcUJy2b1H7RX8 aW38fDdGpJAaBsabtJMT0ou6j/6jKvnIoM70n6Z+gOO087QA3bQT54yexdxVYDsVAfqqoQ JbU7aNTds9SbPRXuLKA8Sn7chPGTTm5oSFLrQLpfUvTXf0wCf0EaBvJJBy5JLg== 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 4P1yS91SfRzkHp; Wed, 25 Jan 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.16.1/8.16.1) with ESMTP id 30P8wnSk012888; Wed, 25 Jan 2023 08:58:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P8wnDu012887; Wed, 25 Jan 2023 08:58:49 GMT (envelope-from git) Date: Wed, 25 Jan 2023 08:58:49 GMT Message-Id: <202301250858.30P8wnDu012887@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: bc4346e0aead - main - pci_vendors: update to 2023-01-18 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: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bc4346e0aead0b934773aac5e9a81def46f266ad Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=bc4346e0aead0b934773aac5e9a81def46f266ad commit bc4346e0aead0b934773aac5e9a81def46f266ad Author: Baptiste Daroussin AuthorDate: 2023-01-25 08:58:39 +0000 Commit: Baptiste Daroussin CommitDate: 2023-01-25 08:58:39 +0000 pci_vendors: update to 2023-01-18 --- share/misc/pci_vendors | 201 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 171 insertions(+), 30 deletions(-) diff --git a/share/misc/pci_vendors b/share/misc/pci_vendors index 97220fd5ca8f..4d44418e93be 100644 --- a/share/misc/pci_vendors +++ b/share/misc/pci_vendors @@ -1,8 +1,8 @@ # # List of PCI ID's # -# Version: 2022.12.04 -# Date: 2022-12-04 03:15:02 +# Version: 2023.01.18 +# Date: 2023-01-18 03:15:02 # # Maintained by Albert Pool, Martin Mares, and other volunteers from # the PCI ID Project at https://pci-ids.ucw.cz/. @@ -93,6 +93,8 @@ 0432 SCM Microsystems, Inc. 0001 Pluto2 DVB-T Receiver for PCMCIA [EasyWatch MobilSet] 0497 Dell Inc. (wrong ID) +060e Lightelligence + 0001 Hummingbird ES 0675 Dynalink 1700 IS64PH ISDN Adapter 1702 IS64PH ISDN Adapter @@ -1105,6 +1107,7 @@ 103c 8615 Pavilion Laptop 15-cw1xxx 17aa 3181 ThinkCentre M75n IoT 17aa 5124 ThinkPad E595 + 1dc2 2209 Avita Pura 14 Notebook ea50 cc10 RXi2-BP 15dd Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] 103c 83c6 Radeon Vega 8 Mobile @@ -1120,6 +1123,7 @@ 103c 8615 Pavilion Laptop 15-cw1xxx ea50 ce19 mCOM10-L1900 15e7 Barcelo + 103c 8b17 ProBook 445 G9/455 G9 15ff Fenghuang [Zhongshan Subor Z+] 1607 Arden 1636 Renoir @@ -3790,6 +3794,7 @@ 72b1 RV560 [Radeon X1650 XT] (Secondary) 72b3 RV560 [Radeon X1650 GT] (Secondary) 7300 Fiji [Radeon R9 FURY / NANO Series] + 1002 0b35 FirePro S9300 X2 1002 0b36 Radeon R9 FURY X / NANO 1002 1b36 Radeon Pro Duo 1043 049e Radeon R9 FURY @@ -3802,6 +3807,7 @@ 731f Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] 1002 0b36 Reference RX 5700 XT 1458 2313 Radeon RX 5700 XT Gaming OC + 1458 231d Radeon RX 5600 XT/REV 2.0 [Windforce 6GB OC] 148c 2398 AXRX 5700 XT 8GBD6-3DHE/OC [PowerColor Red Devil Radeon RX 5700 XT] 1682 5701 RX 5700 XT RAW II 1849 5120 Radeon RX 5600 XT @@ -3831,6 +3837,7 @@ 1002 0e3a Radeon RX 6900 XT 148c 2408 Red Devil AMD Radeon RX 6900 XT 1da2 440f TOXIC RX 6900 XT + 1da2 e437 Pulse Radeon RX 6800 1eae 6701 Speedster MERC 319 AMD Radeon RX 6800 XT Black 1eae 6901 Speedster MERC 319 AMD Radeon RX 6900 XT Black 73c3 Navi 22 @@ -3864,6 +3871,7 @@ 743f Navi 24 [Radeon RX 6400/6500 XT/6500M] 1da2 e457 PULSE AMD Radeon RX 6500 XT 744c Navi 31 [Radeon RX 7900 XT/7900 XTX] + 1da2 e471 NITRO+ RX 7900 XTX Vapor-X 7833 RS350 Host Bridge 7834 RS350 [Radeon 9100 PRO/XT IGP] 7835 RS350M [Mobility Radeon 9000 IGP] @@ -4891,14 +4899,14 @@ 1453 Family 17h (Models 00h-0fh) PCIe GPP Bridge 1454 Family 17h (Models 00h-0fh) Internal PCIe GPP Bridge 0 to Bus B 1455 Zeppelin/Renoir PCIe Dummy Function - 1456 Family 17h (Models 00h-0fh) Platform Security Processor + 1456 Family 17h (Models 00h-0fh) Platform Security Processor (PSP) 3.0 Device 1457 Family 17h (Models 00h-0fh) HD Audio Controller 145a Zeppelin/Raven/Raven2 PCIe Dummy Function 145b Zeppelin Non-Transparent Bridge 145c Family 17h (Models 00h-0fh) USB 3.0 Host Controller 145d Zeppelin Switch Upstream (PCIE SW.US) 145e Zeppelin Switch Downstream (PCIE SW.DS) - 145f Zeppelin USB 3.0 Host controller + 145f Zeppelin USB 3.0 xHCI Compliant Host Controller 1460 Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 0 1461 Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 1 1462 Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 2 @@ -5075,6 +5083,7 @@ ea50 ce19 mCOM10-L1900 15e3 Family 17h/19h HD Audio Controller 103c 8615 Pavilion Laptop 15-cw1xxx + 103c 8b17 ProBook 445 G9/455 G9 1043 86c7 PRIME B450M-A Motherboard 17aa 5124 ThinkPad E595 15e4 Sensor Fusion Hub @@ -5280,7 +5289,7 @@ 43c6 400 Series Chipset PCIe Bridge 43c7 400 Series Chipset PCIe Port 43c8 400 Series Chipset SATA Controller - 43d5 400 Series Chipset USB 3.1 XHCI Controller + 43d5 400 Series Chipset USB 3.1 xHCI Compliant Host Controller 43e9 500 Series Chipset Switch Upstream Port 43eb 500 Series Chipset SATA Controller # or ASM106X Serial ATA Controller @@ -5417,6 +5426,7 @@ 7908 FCH USB EHCI Controller 790b FCH SMBus Controller 103c 8615 Pavilion Laptop 15-cw1xxx + 103c 8b17 ProBook 445 G9/455 G9 1043 876b PRIME Motherboard 1462 7c37 X570-A PRO motherboard 15d9 790b H12SSL-i @@ -5508,6 +5518,9 @@ 9930 CyberBlade/XPm 9960 CyberBlade XP2 1024 Beijing Dajia Internet Information Technology Co. + 0101 StreamLake 200 AI-VPU + 1024 0201 SL200-NP + 1024 0301 SL200-P 1025 Acer Incorporated [ALI] 1435 M1435 1445 M1445 @@ -7292,6 +7305,8 @@ 006a Intrepid2 Firewire 006b Intrepid2 GMAC (Sun GEM) 0074 U4 HT Bridge + 100c Apple Silicon PCI Express Root Port + 1010 Apple Silicon USB4/Thunderbolt PCI Express Root Port # should be 14e4:1645 1645 Broadcom NetXtreme BCM5701 Gigabit Ethernet 1801 T2 Bridge Controller @@ -8560,6 +8575,7 @@ # nee CMD Technology Inc 1095 Silicon Image, Inc. 0240 Adaptec AAR-1210SA SATA HostRAID Controller + 0242 AAR-1220SA SATA RAID Controller 0640 PCI0640 0643 PCI0643 0646 PCI0646 @@ -9349,10 +9365,8 @@ 103c 0024 Pavilion ze4400 builtin USB 103c 0025 XE4500 Notebook 104d 810f VAIO PCG-U1 USB/OHCI Revision 1.0 - 10b9 5237 ASRock 939Dual-SATA2 Motherboard 1849 5237 ASRock 939Dual-SATA2 Motherboard 5239 USB 2.0 Controller - 10b9 5239 ASRock 939Dual-SATA2 Motherboard 1849 5239 ASRock 939Dual-SATA2 Motherboard 5243 M1541 PCI to AGP Controller 5246 AGP8X Controller @@ -11127,6 +11141,7 @@ 086d C79 [GeForce 9200] 086e C79 [GeForce 9100M G] 086f MCP79 [GeForce 8200M G] + 1043 16b2 F5GL Notebook 0870 C79 [GeForce 9400M] 0871 C79 [GeForce 9200] 0872 C79 [GeForce G102M] @@ -11253,21 +11268,28 @@ 0a88 MCP79 Memory Controller 0a89 MCP79 Memory Controller 0a98 MCP79 Memory Controller + 1043 1a87 F5GL Notebook 10de cb79 iMac 9,1 0aa0 MCP79 PCI Express Bridge + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 0aa2 MCP79 SMBus + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 19da a123 IONITX-F-E 0aa3 MCP79 Co-processor + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 19da a123 IONITX-F-E 0aa4 MCP79 Memory Controller + 1043 1a87 F5GL Notebook 19da a123 IONITX-F-E 0aa5 MCP79 OHCI USB 1.1 Controller + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 19da a123 IONITX-F-E 0aa6 MCP79 EHCI USB 2.0 Controller + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 19da a123 IONITX-F-E 0aa7 MCP79 OHCI USB 1.1 Controller @@ -11279,14 +11301,17 @@ 19da a123 IONITX-F-E 0aaa MCP79 EHCI USB 2.0 Controller 0aab MCP79 PCI Bridge + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 0aac MCP79 LPC Bridge 0aad MCP79 LPC Bridge 19da a123 IONITX-F-E 0aae MCP79 LPC Bridge + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 0aaf MCP79 LPC Bridge 0ab0 MCP79 Ethernet + 1043 1215 F5GL Notebook 10de cb79 Apple iMac 9,1 19da a123 IONITX-F-E 0ab1 MCP79 Ethernet @@ -11298,6 +11323,7 @@ 0ab6 MCP79 SATA Controller 0ab7 MCP79 SATA Controller 0ab8 MCP79 AHCI Controller + 1043 1a87 F5GL Notebook 0ab9 MCP79 AHCI Controller 10de cb79 Apple iMac 9,1 0aba MCP79 AHCI Controller @@ -11307,6 +11333,7 @@ 0abe MCP79 RAID Controller 0abf MCP79 RAID Controller 0ac0 MCP79 High Definition Audio + 1043 1903 F5GL Notebook 10de cb79 Apple iMac 9,1 0ac1 MCP79 High Definition Audio 0ac2 MCP79 High Definition Audio @@ -11315,8 +11342,10 @@ 10de cb79 Apple iMac 9,1 0ac5 MCP79 PCI Express Bridge 0ac6 MCP79 PCI Express Bridge + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 0ac7 MCP79 PCI Express Bridge + 1043 1a87 F5GL Notebook 10de cb79 Apple iMac 9,1 0ac8 MCP79 PCI Express Bridge 0ad0 MCP78S [GeForce 8200] SATA Controller (non-AHCI mode) @@ -12231,7 +12260,7 @@ 13c2 GM204 [GeForce GTX 970] 13c3 GM204 13d7 GM204M [GeForce GTX 980M] - 13d8 GM204M [GeForce GTX 970M] + 13d8 GM204M [GeForce GTX 960 OEM / 970M] 13d9 GM204M [GeForce GTX 965M] 13da GM204M [GeForce GTX 980 Mobile] 13e7 GM204GL [GeForce GTX 980 Engineering Sample] @@ -12546,8 +12575,7 @@ 20b0 GA100 [A100 SXM4 40GB] 20b1 GA100 [A100 PCIe 40GB] 20b2 GA100 [A100 SXM4 80GB] -# 20B3 14A7 10DE PG506-242 / 20B3 14A8 10DE PG506-243 - 20b3 GA100 [PG506-242/243] + 20b3 GA100 [A100-SXM-64GB] 20b5 GA100 [A100 PCIe 80GB] 20b6 GA100GL [PG506-232] 20b7 GA100GL [A30 PCIe] @@ -12604,7 +12632,9 @@ 228b GA104 High Definition Audio Controller 228e GA106 High Definition Audio Controller 2296 Tegra PCIe Endpoint Virtual Network + 22ba AD102 High Definition Audio Controller 2302 GH100 + 2313 GH100 [H100 CNX] 2321 GH100 2322 GH100 [H800] 2330 GH100[H100 SXM5 80GB] @@ -12665,8 +12695,8 @@ 2561 GA106M [GeForce RTX 3060 Laptop GPU] 2563 GA106M [GeForce RTX 3050 Ti Mobile / Max-Q] 2571 GA106 [RTX A2000 12GB] - 2582 GA107 [GeForce RTX 3050] - 2583 GA107 [GeForce RTX 3050] + 2582 GA107 [GeForce RTX 3050 8GB] + 2583 GA107 [GeForce RTX 3050 4GB] 25a0 GA107M [GeForce RTX 3050 Ti Mobile] 25a2 GA107M [GeForce RTX 3050 Mobile] 25a3 GA107 @@ -12678,6 +12708,7 @@ 25aa GA107M [GeForce MX570 A] # GN20-P0 Refresh 25ac GN20-P0-R-K2 + 25ad GA107 [GeForce RTX 2050] 25af GA107 [GeForce RTX 3050 Engineering Sample] 25b5 GA107GLM [RTX A4 Mobile] # A16 - 25B6 10DE 14A9 / A2 - 25B6 10DE 157E @@ -12694,6 +12725,7 @@ 25f9 GA107 [RTX A1000 Embedded GPU ] 25fa GA107 [RTX A2000 Embedded GPU] 25fb GA107 [RTX A500 Embedded GPU] + 2681 AD102 [RTX TITAN Ada] 2684 AD102 [GeForce RTX 4090] 26b1 AD102GL [L6000 / RTX 6000 Ada Generation] 26b5 AD102GL [L40] @@ -12702,6 +12734,7 @@ 2704 AD103 [GeForce RTX 4080] 2717 GN21-X11 2757 GN21-X11 + 2782 AD104 [GeForce RTX 4070 Ti] 2785 AD104 27a0 GN21-X9 27b8 AD104GL [L4] @@ -13053,6 +13086,7 @@ 103c 86d4 Pavilion Laptop 15-ec0xxx # Rev 29, uses r8169 Driver on Linux 103c 8882 HP ProDesk 405 G8 Desktop Mini PC + 103c 8b17 ProBook 445 G9/455 G9 [RTL8111HSH-CG GbE Controller] 1043 11f5 Notebook motherboard (one of many models) 1043 16d5 U6V/U31J laptop 1043 81aa P5B @@ -13706,6 +13740,7 @@ 1462 7181 K8MM3-V mainboard 147b 1407 KV8-MAX3 motherboard 1695 300c Realtek ALC655 audio on EP-8KRA series mainboard + 16f3 4170 J7F2 motherboard 1849 0850 ASRock 775Dual-880 Pro onboard audio (Realtek ALC850) 1849 9739 P4VT8 Mainboard (C-Media CMI9739A codec) # probably all K7VT2/4*/6 @@ -14324,6 +14359,7 @@ 112a Hermes Electronics Company, Ltd. # nee Linotype - Hell AG 112b Heidelberger Druckmaschinen AG + 0001 SCU5 112c Zenith Data Systems 112d Ravicad 112e Infomedia Microelectronics Inc. @@ -19162,7 +19198,7 @@ a804 NVMe SSD Controller SM961/PM961/SM963 144d a801 SM963 2.5" NVMe PCIe SSD a808 NVMe SSD Controller SM981/PM981/PM983 - 144d a801 SSD 970 EVO Plus + 144d a801 SSD 970 EVO 1d49 403b Thinksystem U.2 PM983 NVMe SSD a809 NVMe SSD Controller 980 a80a NVMe SSD Controller PM9A1/PM9A3/980PRO @@ -19694,6 +19730,7 @@ 103c 22be Ethernet 1Gb 4-port 331i Adapter 103c 3383 Ethernet 1Gb 4-port 331T Adapter 14e4 1904 4-port 1Gb Ethernet Adapter + 14e4 1909 Broadcom NetXtreme 5719 Quad Port Gigabit NIC 193d 1025 NIC-ETH330T-LP-4P 1659 NetXtreme BCM5721 Gigabit Ethernet PCI Express 1014 02c6 eServer xSeries server mainboard @@ -21131,6 +21168,7 @@ 117c 0092 FastFrame NQ11 117c 0093 FastFrame NQ12 15b3 0006 Mellanox Technologies ConnectX-3 Pro Stand-up dual-port 40GbE MCX314A-BCCT + 15b3 000c ConnectX-3 Pro 10 GbE Dual Port SFP+ Adapter revision A1 15b3 0078 ConnectX-3 Pro 10 GbE Dual Port KR Mezzanine Card 15b3 0079 ConnectX-3 Pro 40 GbE Dual Port QSFP+ Adapter 15b3 0080 ConnectX-3 Pro 10 GbE Dual Port SFP+ Adapter @@ -22359,8 +22397,9 @@ 0017 StorSecure 300 GZIP Compression and AES Encryption Card 17c0 Wistron Corp. 17c2 Newisys, Inc. +17c3 Protogate, Inc. # nee Airgo Networks, Inc. -17cb Qualcomm +17cb Qualcomm Technologies, Inc 0001 AGN100 802.11 a/b/g True MIMO Wireless Card 1385 5c00 WGM511 Pre-N 802.11g Wireless CardBus Adapter 1737 0045 WMP54GX v1 802.11g Wireless-G PCI Adapter with SRX @@ -24213,6 +24252,7 @@ 1504 PC400 NVMe SSD 1527 PC401 NVMe Solid State Drive 256GB 174a Gold P31/PC711 NVMe Solid State Drive + 1959 Platinum P41 NVMe Solid State Drive 2TB 2204 960GB TLC PCIe Gen3 x4 NVMe M.2 22110 243b PE6110 NVMe Solid State Drive 1c5c 0100 PE6110 NVMe Solid State Drive @@ -24264,11 +24304,18 @@ 1c5f 4a31 NVMe SSD PBlaze5 926 3200G 2.5" U.2 1c5f 4a40 NVMe SSD PBlaze5 926 6400G AIC 1c5f 4a41 NVMe SSD PBlaze5 926 6400G 2.5" U.2 - 003e PBlaze6 6920 + 003e PBlaze6 6920/6930 1c5f 0a31 NVMe SSD PBlaze6 6920 3840GB 2.5" U.2 1c5f 0a41 NVMe SSD PBlaze6 6920 7680GB 2.5" U.2 + 1c5f 0b31 NVMe SSD PBlaze6 6930 3840GB 2.5" U.3 + 1c5f 0b41 NVMe SSD PBlaze6 6930 7680GB 2.5" U.3 + 1c5f 0b51 NVMe SSD PBlaze6 6930 15360GB 2.5" U.3 + 1c5f 0b61 NVMe SSD PBlaze6 6930 30720GB 2.5" U.3 1c5f 4a31 NVMe SSD PBlaze6 6920 3200GB 2.5" U.2 1c5f 4a41 NVMe SSD PBlaze6 6920 6400GB 2.5" U.2 + 1c5f 4b41 NVMe SSD PBlaze6 6936 6400GB 2.5" U.3 + 1c5f 4b51 NVMe SSD PBlaze6 6936 12800GB 2.5" U.3 + 1c5f 4b61 NVMe SSD PBlaze6 6936 25600GB 2.5" U.3 0540 PBlaze4 NVMe SSD 0550 PBlaze5 700/900 0555 PBlaze5 510/516 @@ -24327,9 +24374,9 @@ 1cc4 a212 NVMe SSD UHXXXa series U.2 1600GB 1cc4 a213 NVMe SSD UHXXXa series U.2 3200GB 1cc4 a214 NVMe SSD UHXXXa series U.2 6400GB - 1cc4 e122 VNMe SSD UH711a series U.2 1920GB - 1cc4 e123 VNMe SSD UH711a series U.2 3840GB - 1cc4 e124 VNMe SSD UH711a series U.2 7680GB + 1cc4 e122 NVMe SSD UH711a series U.2 1920G + 1cc4 e123 NVMe SSD UH711a series U.2 3840GB + 1cc4 e124 NVMe SSD UH711a series U.2 7680GB 17ab NVMe 256G SSD device 6303 AM630 PCIe 4.0 x4 NVMe SSD Controller 1cc5 Embedded Intelligence, Inc. @@ -24610,6 +24657,9 @@ 1d78 7108 D7436 U.2 15mm 7.68TB NVMe SSD 1d78 7109 D7456 U.2 15mm 12.8TB NVMe SSD 1d78 710a D7436 U.2 15mm 15.36TB NVMe SSD + 1d78 7202 Aliflash V2 U.2 15mm 1.92TB NVMe SSD + 1d78 7204 Aliflash V2 U.2 15mm 3.84TB NVMe SSD + 1d78 7208 Aliflash V2 U.2 15mm 7.68TB NVMe SSD 1d79 Transcend Information, Inc. 1d7c Aerotech, Inc. # Fiber-optic HyperWire motion control bus from Aerotech. @@ -24618,10 +24668,12 @@ 0101 Codensity D400 SSD 0102 Codensity D408 PCIe Gen4 NVMe SSD 0202 Codensity T408 Video Encoding-Decoding Accelerator + 0401 Quadra Video Processing Unit (VPU) # nee Fuzhou Rockchip Electronics Co., Ltd 1d87 Rockchip Electronics Co., Ltd 0100 RK3399 PCI Express Root Port 1808 RK1808 Neural Network Processor Card + 3528 RK3528 PCI Express Root Port 3566 RK3568 Remote Signal Processor 3588 RK3588 1d89 YEESTOR Microelectronics Co., Ltd @@ -24717,15 +24769,18 @@ 1dbe 3001 DONGHU-Z1 DC ZNS SSD U.2 1dbf Guizhou Huaxintong Semiconductor Technology Co., Ltd 0401 StarDragon4800 PCI Express Root Port +1dc2 Alco Digital Devices Limited 1dc5 FADU Inc. 1dcd Liqid Inc. 1dcf Beijing Sinead Technology Co., Ltd. 1dd3 Sage Microelectronics Corp. 1dd4 Swissbit AG -1dd8 Pensando Systems +1dd8 AMD Pensando Systems 0002 DSC2 Elba Upstream Port 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1000 DSC Capri Upstream Port 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB @@ -24750,6 +24805,8 @@ 1dd8 4014 DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1002 DSC Ethernet Controller 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB @@ -24763,6 +24820,8 @@ 1dd8 4014 DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1003 DSC Ethernet Controller VF 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB @@ -24776,6 +24835,8 @@ 1dd8 4014 DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1004 DSC Management Controller 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB @@ -24789,12 +24850,18 @@ 1dd8 4014 DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1005 DSC NVMe Controller 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1006 DSC NVMe Controller VF 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1007 DSC Storage Accelerator 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB @@ -24808,10 +24875,40 @@ 1dd8 4014 DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU + 1009 DSC Ethernet Controller UPT + 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU + 100a DSC Serial Port Controller + 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU + 100b DSC vDPA Network Device VF + 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU + 100c DSC PDS Core Management + 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU + 100d DSC Virtio Network Device VF + 1dd8 5001 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 5003 DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 Services Card + 1dd8 500a DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU R2 + 1dd8 500b DSC2-200 50/100/200G 2-port 32G RAM 64G eMMC G2 DPU 1ddd Thorlabs 1de0 Groq -# rename due to conflict with a term in use by another company for an entirely different product. - 0000 TSP100 Tensor Streaming Processor + 0000 TSP [GroqChip] + 1de0 0000 GC1-010X-ES [GroqCard] + 1de0 c005 GC1-010B [GroqCard] + 1de0 c006 GC1-0109 [GroqCard] + 1de0 c007 GC1-0100 [GroqCard] 1de1 Tekram Technology Co.,Ltd. 0391 TRM-S1040 [DC-315 / DC-395 series] 2020 DC-390 Series SCSI Adapter [AMD Am53C974] @@ -25149,7 +25246,7 @@ 0200 MTT S80 Engineering Sample 0201 MTT S80 0202 MTT S70 - 0203 G2D10 + 0203 MTT S60 0211 G2D40 0221 G2S80 0222 MTT S3000 @@ -25197,6 +25294,19 @@ 5220 IG5220-Based NVMe SSD 5236 IG5236-Based NVMe SSD 5636 IG5636-Based NVMe SSD +1f0f NebulaMatrix Technology + 1041 D1055AS vDPA Ethernet Controller + 1f0f 0001 D1055AS vDPA Ethernet Controller + 1042 D1055AS vDPA Storage Controller + 1f0f 0001 D1055AS vDPA Storage Controller + 1220 D1055AS Ethernet Controller + 1221 D1055AS Ethernet Controller + 1222 D1055AS Ethernet Controller + 1223 D1055AS Ethernet Controller + 1600 M16104 Family + 1601 M16104 Family Virtual Function + 2022 D1055AS PCI Express Switch Upstream Port + 9088 D1055AS PCI Express Switch Downstream Port 1f24 xFusion Digital Technologies Co., Ltd. 1058 EP500/EP600 NVMe SSD 1f24 1114 EP500 NVMe SSD(RI) @@ -26861,8 +26971,14 @@ 8086 8d08 NVMe Datacenter SSD [3DNAND] VE 2.5" U.2 (P5316) 8086 8d1d NVMe Datacenter SSD [3DNAND] VE E1.L 9.5/18mm (P5316) 8086 c008 NVMe Datacenter SSD [3DNAND] SE U.2 15mm (P5530) - 0bd0 Ponte Vecchio 2T - 0bd5 Ponte Vecchio 1T + 0bd0 Ponte Vecchio XL (2 Tile) + 0bd5 Ponte Vecchio XT (2 Tile) [Data Center GPU Max 1550] + 0bd6 Ponte Vecchio XT (2 Tile) [Data Center GPU Max 1550] + 0bd7 Ponte Vecchio XT (2 Tile) [Data Center GPU Max 1350] + 0bd8 Ponte Vecchio XT (2 Tile) [Data Center GPU Max 1350] + 0bd9 Ponte Vecchio XT (1 Tile) [Data Center GPU Max 1100] + 0bda Ponte Vecchio XT (1 Tile) [Data Center GPU Max 1100] + 0bdb Ponte Vecchio XT (1 Tile) [Data Center GPU Max 1100] 0be0 Atom Processor D2xxx/N2xxx Integrated Graphics Controller 0be1 Atom Processor D2xxx/N2xxx Integrated Graphics Controller 105b 0d7c D270S/D250S Motherboard @@ -26965,6 +27081,7 @@ 8086 0000 Ethernet Controller XXV710 Intel(R) FPGA Programmable Acceleration Card N3000 for Networking 8086 0001 Ethernet Controller XXV710 Intel(R) FPGA Programmable Acceleration Card N3000 for Networking 0d9f Ethernet Controller (2) I225-IT + 0dcd Ethernet Connection C825-X 0dd2 Ethernet Network Adapter I710 1137 0000 I710T4LG 4x1 GbE RJ45 PCIe NIC 1137 02e3 I710T4LG 4x1 GbE RJ45 PCIe NIC @@ -27684,7 +27801,7 @@ 1107 PRO/1000 MF Server Adapter (LX) 1130 82815 815 Chipset Host Bridge and Memory Controller Hub 1025 1016 Travelmate 612 TX - 1043 8027 TUSL2-C Mainboard + 1043 8027 CUSL2-C/TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 8086 4532 Desktop Board D815EEA2/D815EFV 8086 4557 D815EGEW Mainboard @@ -29215,6 +29332,8 @@ 2088 Sky Lake-E DDRIO Registers 208d Sky Lake-E CHA Registers 208e Sky Lake-E CHA Registers +# Engineering sample GPU + 2240 Larrabee 2241 Larrabee 2250 Xeon Phi coprocessor 5100 series 225c Xeon Phi coprocessor SE10/7120 series @@ -29323,7 +29442,7 @@ 1028 00d8 Precision 530 1028 010e Optiplex GX240 103c 126f e-pc 40 - 1043 8027 TUSL2-C Mainboard + 1043 8027 CUSL2-C/TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 147b 0505 BL7 motherboard 147b 0507 TH7II-RAID @@ -29338,7 +29457,7 @@ 1028 00d8 Precision 530 1028 010e Optiplex GX240 103c 126f e-pc 40 - 1043 8027 TUSL2-C Mainboard + 1043 8027 CUSL2-C/TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 147b 0505 BL7 motherboard 147b 0507 TH7II-RAID @@ -29352,7 +29471,7 @@ 1028 00d8 Precision 530 1028 010e Optiplex GX240 103c 126f e-pc 40 - 1043 8027 TUSL2-C Mainboard + 1043 8027 CUSL2-C/TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 147b 0505 BL7 motherboard 147b 0507 TH7II-RAID @@ -29440,7 +29559,7 @@ 1028 00d8 Precision 530 1028 010e Optiplex GX240 103c 126f e-pc 40 - 1043 8027 TUSL2-C Mainboard + 1043 8027 CUSL2-C/TUSL2-C Mainboard 147b 0505 BL7 motherboard 147b 0507 TH7II-RAID 15d9 3280 Supermicro P4SBE Mainboard @@ -32914,6 +33033,8 @@ 8086 02a4 Wireless-AC 9462 43fc Tiger Lake-H Integrated Sensor Hub 444e Turbo Memory Controller + 4511 Elkhart Lake Gaussian and Neural Accelerator + 4538 Elkhart Lake PCI-e Root Complex 4555 Elkhart Lake [UHD Graphics Gen11 16EU] 4571 Elkhart Lake [UHD Graphics Gen11 32EU] 460d 12th Gen Core Processor PCI Express x16 Controller #1 @@ -32974,6 +33095,17 @@ 193d 4000 UN-GPU-XG310-32GB-FHFL 4908 DG1 [Iris Xe Graphics] 4909 DG1 [Iris Xe MAX 100] + 4b00 Elkhart Lake eSPI Controller + 4b23 Elkhart Lake SMBus Controller + 4b24 Elkhart Lake SPI (Flash) Controller + 4b38 Elkhart Lake PCH PCI Express Root Port #0 + 4b39 Elkhart Lake PCH PCI Express Root Port #1 + 4b3e Elkhart Lake PCH PCI Express Root Port #6 + 4b58 Elkhart Lake High Density Audio bus interface + 4b63 Elkhart Lake SATA AHCI + 4b70 Elkhart Lake Management Engine Interface + 4b7d Elkhart Lake USB 3.10 XHCI + 4b7f Elkhart Lake PMC SRAM 4c3d Volume Management Device NVMe RAID Controller 4c8a RocketLake-S GT1 [UHD Graphics 750] 4c8b RocketLake-S GT1 [UHD Graphics 730] @@ -32994,6 +33126,9 @@ 4f80 DG2 4f81 DG2 4f82 DG2 + 4f90 DG2 Audio Controller + 4f91 DG2 Audio Controller + 4f92 DG2 Audio Controller 5001 LE80578 5002 LE80578 Graphics Processor Unit 5009 LE80578 Video Display Controller @@ -33078,6 +33213,7 @@ 8086 0034 Wireless-AC 9560 160MHz 8086 0070 Wi-Fi 6 AX201 160MHz 8086 0074 Wi-Fi 6 AX201 160MHz + 8086 0094 Wi-Fi 6E AX211 160MHz 8086 4070 Wi-Fi 6 AX201 160MHz 8086 4090 Wi-Fi 6E AX211 160MHz 51fc Alder Lake-P Integrated Sensor Hub @@ -33103,6 +33239,11 @@ 56b1 DG2 [Arc Pro A40/A50] 56c0 Data Center GPU Flex 170 56c1 Data Center GPU Flex 140 + 579c Ethernet Connection E825-C for backplane + 579d Ethernet Connection E825-C for QSFP + 579e Ethernet Connection E825-C for SFP + 57b1 Ethernet Controller E610 1GBASE T + 8086 0000 Ethernet Converged Network Adapter E610 5845 QEMU NVM Express Controller 1af4 1100 QEMU Virtual Machine 5900 Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers @@ -34554,7 +34695,7 @@ a3f0 Comet Lake PCH-V cAVS a620 6400/6402 Advanced Memory Buffer (AMB) a77f Volume Management Device NVMe RAID Controller Intel Corporation - a780 Raptor Lake-S UHD Graphics + a780 Raptor Lake-S GT1 [UHD Graphics 770] a781 Raptor Lake-S UHD Graphics a782 Raptor Lake-S UHD Graphics a783 Raptor Lake-S UHD Graphics From nobody Wed Jan 25 09:03:24 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 4P1yYT0WkMz311QW; Wed, 25 Jan 2023 09:03: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 4P1yYS72VSz3krq; Wed, 25 Jan 2023 09:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637405; 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=XhRTFy7pHrhaSLOb1xtNOF2zOFImZeFFLBkPcdaZO0Y=; b=Jr6dqoUO3aAuRrMkvxhCQ8HoEDWHEiyqJC8yXqOPQ4A0rBF85jmQH42G6MbUg54EyNktIg myV4jrYeaBk7BK1G/RFXySu6o68nzdJ+Zlvf1nPS7tteo9zz2fz/mFijWfivraDJjjX+Pl 9Mj7wKcNDIKWJ7CXUjSEyVs3oG0jOxAP5+KFEmP+3LshkkP/pD/esQp77Jf8XQvqn5q/wm uG/jS8+JPwooeUVLO530dkmv62kGwcNbqe7rChwuyIIt20Fvm3dP4/LRz9pWBwWcbfwIyn IDJhwCbWfwJeAaI2eTx/V050rVD6wu04+bTfhlpJtAks/fpqKfyZOzdPlg/efA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637405; 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=XhRTFy7pHrhaSLOb1xtNOF2zOFImZeFFLBkPcdaZO0Y=; b=OUeeeE3qXzn6Pl4pTshFwCDmLogt8QQzrqwhQp0B5LGIO93mpX542QmAJGJ0K/mV7zcMTO PuopWmErHQBR/ltH2jxbNmrK906U+NEzrF5uvXbV6pedWyTi42H3e0VtsX0zl+Iyw46ssc SujcaWvxMfxUnnmwmPhiTcWdIltQLDlYQVltjVsEAfPwpIjx6TCj90Uf4IuzOvAc8BqoRb mDXNpg/D7Hh4NAf0TOKc9C6VzAj8uFXzyHELPwvRvlOKnawTTvEOqQwUfvZl/8Ao7wE+FE Y625T/fckUun6OOIYuX0LDvahgtK0ZT1yPbvcfDY2M+x5BGP1UNQpFdYokarrg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674637405; a=rsa-sha256; cv=none; b=iPkcglpqZT0ZmRmiwxoj7qFuLLWeO0cspKmc7sCgMKY/0sD5P6lt00lO77jhrV00BbmGp7 gLvPds/C5DFFZfnMN+I+m9KHuphUGcxUt4RsJH7s1uoG2rEIb+QafaOnyhMZXP96voqS7G UzdUp2DH6k87Elv9x+qgpCteaH5LZ8TYG7AYml5bi7BstdM6ge/2Jwes7Kl5elMql0e41l k6TGY+pVS+R/jO0JCZOVIF9TayJbrn1qgwK1levcsKiUz6EX2Sry17hkVPvfjZ2hTouT9k I7P+CafCedpPF4ynEPA67Ek3zXgCOyQ1MfBjk17tkU1fqrd2zeXwRWyHbhsm/w== 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 4P1yYS63yFzjjg; Wed, 25 Jan 2023 09:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P93OtZ027076; Wed, 25 Jan 2023 09:03:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P93Obg027075; Wed, 25 Jan 2023 09:03:24 GMT (envelope-from git) Date: Wed, 25 Jan 2023 09:03:24 GMT Message-Id: <202301250903.30P93Obg027075@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: cdd9d92dade6 - main - strfmon(3): Add an EXAMPLES section 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: cdd9d92dade61a6b5c37b758e9533a076bb5a2de Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=cdd9d92dade61a6b5c37b758e9533a076bb5a2de commit cdd9d92dade61a6b5c37b758e9533a076bb5a2de Author: Jose Luis Duran AuthorDate: 2022-11-08 20:36:57 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-25 09:02:55 +0000 strfmon(3): Add an EXAMPLES section Reviewed by: kib MFC after: 1 week --- lib/libc/stdlib/strfmon.3 | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/lib/libc/stdlib/strfmon.3 b/lib/libc/stdlib/strfmon.3 index 924c82109a68..1ddfb77cb0ac 100644 --- a/lib/libc/stdlib/strfmon.3 +++ b/lib/libc/stdlib/strfmon.3 @@ -149,6 +149,31 @@ The .Fn strfmon_l function returns the same values as .Fn strfmon . +.Sh EXAMPLES +The following example will format the value +.Dq Li 1234567.89 +to the string +.Dq Li $1,234,567.89 : +.Bd -literal -offset indent +#include +#include +#include + +int +main() +{ + char string[100]; + double money = 1234567.89; + + if (setlocale(LC_MONETARY, "en_US.UTF-8") == NULL) { + fprintf(stderr, "Unable to setlocale().\\n"); + return (1); + } + + strfmon(string, sizeof(string) - 1, "%n", money); + printf("%s\\n", string); +} +.Ed .Sh ERRORS The .Fn strfmon From nobody Wed Jan 25 09:03: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 4P1yYV3mJ4z3113x; Wed, 25 Jan 2023 09:03: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 4P1yYV0mlZz3kbT; Wed, 25 Jan 2023 09:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637406; 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=Uf4ZVRBE4qx4jdz/e0WhVsFfbYlFiNX0tXyT6trKliA=; b=hBN6+5Sm7T0kEVT5J4VgOg3bHnXf3MKuORLHDu2RYVFm1v+jVmrJX8KsvUXgYYTof9J8ET SweExjZIr/oSPmM60mnBgbR3yY2DcQNKgRme9bos8/Dn/grnjsMHBAZ+DztrC9NwM5J8gX LNYmSasm7DAUJvbHTQOD/+cPxS8EiVa8uMb7+wP+d8TCkJuBvNGxeQqf5lfw1RIdF1Ikc1 oaKRXltsZDFwfoYh4KMBR8vnv4GmnTjmOBIlmZMtMCSQ/gHMzlVpnvUfvzLBsMk4qOyW84 aimnkm/dWGiNxJr1g76474kyqunp3IvaWsUvj9R2ZnDkFtznNB/SoTdTJ92PgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637406; 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=Uf4ZVRBE4qx4jdz/e0WhVsFfbYlFiNX0tXyT6trKliA=; b=iFpEZKwUbHXyteXOSzjwmLniRaAa9W2IwUhLsl+ojJQh2AgDFRm8yth3Lm201v0tj7G/dV xCb+119wHCz9pSKiCwCB/YIj6E6WBPnFPUF4e7V+HLNnjnSaj4eH9YwfkzbyjcvHJqtg1q N+yTvOZg+iePM3rLCyn4IQbzHFRwN7YNiKU3Hudcd/4sDjHqMbawdEHeRRu2yDAkw3LSrG mdV/r6gb53ee2Uzb8rLUYWzMju9dzz1InbXkKw/qENrTnAgMw/GG3hg/e4DTKECn5tq00u AwA7s4MGL4RONf99QEigKb6fbaNvuWdzHHkXK7ojGqP+R2Ltq9IjsGKTBmVMPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674637406; a=rsa-sha256; cv=none; b=L0qCcFSBegp3DxpUhsTZoNm+PXiCIo38FHVeeplhcpHTLbohIOL65iujMQl4pDcVj680DC SMZ9uSzqhzi3Gf9697oLGey7OtzLURTGL9jMjXijeUQ9zAVNoisI2YkWe7T1awQ72bGp+k PwDSV5Co/rK/B6uJX2prhkKo41sVCpDGXptZ9ZHuiJad6d1oJ80ycVHFjc6NMRO0YrKhtD eyLreAUQgD4tVW4S4LD0di+w6q7BaUqEBRqhTD0B/7Mv/Bg3bD6VZoUf2/Wp06g2Sk9guI WsUKFNNBDfWINKY2yjZG4Q+Bi6t6PrZbynf/zI79qhYVROOKse7MZ0jBvn3tIw== 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 4P1yYT6xZSzjjh; Wed, 25 Jan 2023 09:03:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P93PJF027100; Wed, 25 Jan 2023 09:03:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P93Pnf027099; Wed, 25 Jan 2023 09:03:25 GMT (envelope-from git) Date: Wed, 25 Jan 2023 09:03:25 GMT Message-Id: <202301250903.30P93Pnf027099@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: 59cc636d94a6 - main - strfmon(3): Wording improvements 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: 59cc636d94a6c9b28147304fa59351224f801e92 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=59cc636d94a6c9b28147304fa59351224f801e92 commit 59cc636d94a6c9b28147304fa59351224f801e92 Author: Jose Luis Duran AuthorDate: 2022-11-08 20:53:17 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-25 09:02:55 +0000 strfmon(3): Wording improvements Use the same terminology as the other `_l` xlocale(3) functions. Reviewed by: kib MFC after: 1 week --- lib/libc/stdlib/strfmon.3 | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/libc/stdlib/strfmon.3 b/lib/libc/stdlib/strfmon.3 index 1ddfb77cb0ac..5c110a8987dc 100644 --- a/lib/libc/stdlib/strfmon.3 +++ b/lib/libc/stdlib/strfmon.3 @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 28, 2022 +.Dd January 25, 2023 .Dt STRFMON 3 .Os .Sh NAME @@ -37,13 +37,15 @@ .In monetary.h .Ft ssize_t .Fn strfmon "char * restrict s" "size_t maxsize" "const char * restrict format" "..." +.In monetary.h +.In xlocale.h .Ft ssize_t .Fn strfmon_l "char * restrict s" "size_t maxsize" "locale_t loc" "const char * restrict format" "..." .Sh DESCRIPTION The .Fn strfmon function places characters into the array pointed to by -.Fa s +.Fa s , as controlled by the string pointed to by .Fa format . No more than @@ -52,9 +54,9 @@ bytes are placed into the array. .Pp The .Fn strfmon_l -function does the same as +function takes an explicit locale argument, whereas the .Fn strfmon -but takes an explicit locale rather than using the current locale. +function uses the current global or per-thread locale. .Pp The format string is composed of zero or more directives: ordinary characters (not @@ -129,12 +131,14 @@ character is written. .El .El .Sh RETURN VALUES -If the total number of resulting bytes including the terminating +If the total number of resulting bytes, including the terminating .Dv NUL -byte is not more than +byte, is not more than .Fa maxsize , .Fn strfmon -returns the number of bytes placed into the array pointed to by +and +.Fn strfmon_l +return the number of bytes placed into the array pointed to by .Fa s , not including the terminating .Dv NUL @@ -144,11 +148,6 @@ the contents of the array are indeterminate, and .Va errno is set to indicate the error. -.Pp -The -.Fn strfmon_l -function returns the same values as -.Fn strfmon . .Sh EXAMPLES The following example will format the value .Dq Li 1234567.89 From nobody Wed Jan 25 09:03: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 4P1yYW2dmhz311Hd; Wed, 25 Jan 2023 09:03: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 4P1yYW20Jgz3khk; Wed, 25 Jan 2023 09:03:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637407; 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=k2vLlXgi61vXjdFbtju2ij9ffWkec8VlZmKhJkeeGNU=; b=XMQyIrdIAZvLOCgRxnycRf5okWIizPPUaVDWX5+DugFs4QSUritrw4T1fVcuHGqvCfMMLF xX12RExXyzYoNhp/pC+Sr8QWXTH2VxODGAWMoJ3N0lAWaOf0UVvfr5SUAskUi2iOOZklzW Y2y1DTFIyvCLYr9at4HTG1lUhse2TZiBpi+0uedBz6MtebZAtzSJrgqoeZNSY6t3UC+Cuj 3r/ehIPD21qsARHf9sFCW/Cu86l+bXVRrzBD7sAt+/uOMDyxD2yzXEzjQJzOQD78Q0kDF1 V22JqoIF8kVZ/C+7pDQM3ncoMRkggNVF5ZjX7288LzsdIpBLPHH+QhbxvltmVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674637407; 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=k2vLlXgi61vXjdFbtju2ij9ffWkec8VlZmKhJkeeGNU=; b=CgQIF5P6c24WAhQk3DWj145bIazffy0an/aFdgRU0Ds11Lizn/lM/6v7QkKkv4yFB+/pxA rjN/NtkIq1qhoTUP8WdVeSE3hVh4JLcbON7YsQOLw0pulH22rxgT+26drVJ8x2A2dooFk/ pK3FIQHSXwApC3uRPMS9D99k84qEA94Dr2vclWnBwD1lUBHUKRHTwyifNsxU+Xj8w9F2lY IkqT04LOZ3YzP4HRRSdqjk+WsiGYP16eT7YSH2N0qCD9CRbBdxdiGUupGhsm4PdCeEP9OD X+05A9k0+qqd0HFA4xPrBhiJfNAoxpsPhNaa3+rMIqlrlbjJhmXSWj8L07hNCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674637407; a=rsa-sha256; cv=none; b=PYZ5MJmGgl4TxMeP2AXBMLFhp4Ueg9Jsp4j1iYzPh4TElKN4wjVM7GNQeQXWq8zeCDeQlD OhFABx/yfZIRY3DK5FaQz2Gdp+i62HoR65ucPUlNCzwIeto/HKLwoSkMLqwdz4hfCSr3xM 9n5dPngMkoiET6R28qsWifp3iZBYodkaJ+yROB53epS+xGZHjQVEOicgRXVxaRA1kdnSoz F41P1uhLFXeeDth5hVURNTuuqGAzM8uik1G6bdngL5vrFVd4jkfl09BAtkXYouoByKdxmx Twc4AWmtYHmX38rAw/me2t/gOMCBqOCIaqN5cnVLjTEUnRCuv5wijqJM1NFoAg== 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 4P1yYW100YzjrT; Wed, 25 Jan 2023 09:03:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P93RPp027124; Wed, 25 Jan 2023 09:03:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P93REH027123; Wed, 25 Jan 2023 09:03:27 GMT (envelope-from git) Date: Wed, 25 Jan 2023 09:03:27 GMT Message-Id: <202301250903.30P93REH027123@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: f5924ad8fde4 - main - strfmon(3): Match the return type 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: f5924ad8fde4d5e9c233b821cb6097c6a46740b5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=f5924ad8fde4d5e9c233b821cb6097c6a46740b5 commit f5924ad8fde4d5e9c233b821cb6097c6a46740b5 Author: Jose Luis Duran AuthorDate: 2022-11-08 20:16:49 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-25 09:02:55 +0000 strfmon(3): Match the return type Reviewed by: kib MFC after: 1 week --- lib/libc/stdlib/strfmon.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index ba02544eb2ec..f36e6f2b0d82 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -645,7 +645,7 @@ ssize_t strfmon(char * __restrict s, size_t maxsize, const char * __restrict format, ...) { - size_t ret; + ssize_t ret; va_list ap; va_start(ap, format); @@ -659,7 +659,7 @@ ssize_t strfmon_l(char * __restrict s, size_t maxsize, locale_t loc, const char * __restrict format, ...) { - size_t ret; + ssize_t ret; va_list ap; va_start(ap, format); From nobody Wed Jan 25 13:57: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 4P254k0ldzz3bWft; Wed, 25 Jan 2023 13:57: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 4P254k00TSz477q; Wed, 25 Jan 2023 13:57:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674655046; 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=0w2qrmuayczZkIyHNK279/vpnY+qyA0Zxr09UJ55I3Q=; b=RcElbYlh9TPF+Mvj4owgLaeOqs5ZqPzPfYv+1xjhcxeZ8320XJcBFnxEWpH7kWk57Ca+kh limrern448maStFmwsX9iynRD5YHtSDAJNSA7aRhMQ+K+8kecg85O/0wbA17W6yTZPrtX3 qUpNxDNFKroez0jL/35DDA/2Fahk1OZG1cK06UtxjuA7k2YJJKWLLEAiDcDveGU7YxvyTx DGtYEJ/V9pBSIj1PxDwlYOkaZi7Q5syvbQGvkXDWGZ5V/mewrB+lrraJ5g1xG90ME/YDuI o4Eor+xvPwOVJUli9Rp2df5rudPsHm5ugWGNX9PTaGE9UJgcYX0zNv/9sQST8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674655046; 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=0w2qrmuayczZkIyHNK279/vpnY+qyA0Zxr09UJ55I3Q=; b=URuAKnUR8opf6bsHbOIjzDGlrahCeJSYpTrdbhciQA6RIoCDcTIVTvYgEp9jXP0/ux4haI vds9agsLCvF+SUEqj3lg5KJwvEdfwIOkq5LbwhkbiN77sfqS544oMpaPe1O9o0BzE35T3Z 8GJy+A5OxLGD5TsKhrmigJx+7AZNaVl4gcisb7fr6pgaHCZ4j/9fZK6gXy9Bc8S12SVyjn 0XqBw4mUn09CQksN47tmng9QpCBOoPfjN4TjAVrn68XVywUZn7WzLZ+VO4GOBCGc11KnkO ndbvT9eKWuHyjGhskc5lGsP+fMGMaq5JbV03PWEd4XJHNN21IY5tKorVCmm3aA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674655046; a=rsa-sha256; cv=none; b=JdeJfFmtBL22L4XAjsnH1aIdDEpoVUaI4vZygTN0NlnhRvhFhUixXpT4AMq1kwebruO7xA aZF+GDTrTqn6gvLRcMsOydssskTJAaG3K7J75nrZTPqGeBWfhp2Kc5QGK38iIzxPLNYwLO wAQGX/n0pRJCIf2yDVd6yiEwNGrCTEVw02HR6EQu/vbXaq1/PhyOvAiPZnyrKz5FNrLvsc uVwII6x2TkZCEC7Xi5wOB00y/P4nJLb0vH8/BDn6Hp70KuNjls9y+ZJd94Q/02NJn8zTHr miF4IbgB2p45fOQN06pEvUx5kJmQNwBkzOvgk9P4gu3jLBxUarqj0NvmxEme1w== 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 4P254j63VWzrKG; Wed, 25 Jan 2023 13:57:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PDvP3g042648; Wed, 25 Jan 2023 13:57:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PDvPwG042647; Wed, 25 Jan 2023 13:57:25 GMT (envelope-from git) Date: Wed, 25 Jan 2023 13:57:25 GMT Message-Id: <202301251357.30PDvPwG042647@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 864ea9abfb98 - main - pytest: add an example test fetching test directory and ATF vars. 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: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 864ea9abfb98493a157dc17be17c428080843bdd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=864ea9abfb98493a157dc17be17c428080843bdd commit 864ea9abfb98493a157dc17be17c428080843bdd Author: Alexander V. Chernikov AuthorDate: 2023-01-25 13:55:33 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-01-25 13:55:33 +0000 pytest: add an example test fetching test directory and ATF vars. MFC after: 2 weeks --- tests/examples/test_examples.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/examples/test_examples.py b/tests/examples/test_examples.py index 13fdcc420f0e..fe9ae0a72cf2 100644 --- a/tests/examples/test_examples.py +++ b/tests/examples/test_examples.py @@ -49,6 +49,16 @@ class TestExampleSimple(BaseTest): def test_two(self): pass + @pytest.mark.skip(reason="comment me to run the test") + def test_get_properties(self, request): + """Shows fetching of test src dir and ATF-set variables""" + print() + print("SRC_DIR={}".format(request.fspath.dirname)) + print("ATF VARS:") + for k, v in self.atf_vars.items(): + print(" {}: {}".format(k, v)) + print() + @pytest.mark.skip(reason="comment me to run the test") @pytest.mark.require_user("unprivileged") def test_syscall_failure(self): From nobody Wed Jan 25 15:07: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 4P26db36Qfz3bgbt; Wed, 25 Jan 2023 15:07: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 4P26db2Hh2z4Fnn; Wed, 25 Jan 2023 15:07:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674659251; 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=5YvIGIcRV7j4LnJhnpDgf8O7GOlN0SLTskZ9DzZAevw=; b=Of90UYa6UaN0i8wZyg8urtlE6WueO/X4KLYAEGQMZBpNsToRyB8ii+PvocjINtFTUjiOKR nNBH8sHZU5FyHtXEeCF+SeqvHEea+ibsJInJcVlL+J/DV+enyy1g4hy+ulk2enOZDJd9na 1l1wm6J13ixuufGh4OQ32mfvTda+uUqmihxxpjaw14fgfCnCDoFa0w4rl9mVHY4PWX76oU 81RnJYdkL6tlj41TTtxr5gh9srwGcJSIru616/MSxExDpQKN8X/rw6Dgo/RwH3GB4T5VQo 6Pkp3ZGZsw4wP+tc1y1pkcJUpvjgmanNMRtNPugiexpw+h45FKDmv35Q8AuiTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674659251; 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=5YvIGIcRV7j4LnJhnpDgf8O7GOlN0SLTskZ9DzZAevw=; b=f1ATqYmakzmtjjijsezU5e1zj8MyjbjmfG977xRatIE822+HJEmK8XpnqYAclA7gj+wj/r ZyYjCXnVySw+DgEYb+BM7LkZ79ZXeycU7S/Eo8KC/hxAfucCZsTTFTr8KIbo/VmTpCUtvT MdmEGe5Woj1Buw2BVDGsVbbO394LTR2eoO9ORexOv0+ki9gv2SqVgdRLLOhySDPxn1AX5d Vh+H7OXIkLKs0tuTYbBbTTsut1awR5kX3Nl2ERADnYuOlYHEB6nNDSECsn6uZgDbFpX/qP hoxKdoxNHrTzMey2x9rgvAuvdnGhi3s4D5dilPSb69W9r1PXR+LR1zwspjXRwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674659251; a=rsa-sha256; cv=none; b=iWYbuBpks6ZKbLvYo9OrXDEteEeJMaPpreig/BrX27rCh+d30s48a/EV0rRZOcyfadRNzN W+QXZQzKAXKknZgf2HKVA2vNCfAsd2GyM/OFUIWNC1GNVq8AyIdkChA5MaRczM/BORH6wR zUdhbvg1LhDvoVcbNuPRCXqDyRdcTl7XPWstSPVqL3+SlQAJg3hx3sMIKWWUkiRK5a3kcU Q2wUn324Yid7dPf8O5YkS9OmkOsw09X33yfEKXGsFY+p+bVXUTpnVHKxIf+QtCX6W7XrhU 1j9Q4iGw9OqCgOBfoBDnIYQZmej5xUCvpL1yWY2bNtlUa2D+Qxg+rhaksdt5hg== 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 4P26db0xV0ztZt; Wed, 25 Jan 2023 15:07:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PF7V64044569; Wed, 25 Jan 2023 15:07:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PF7VsQ044568; Wed, 25 Jan 2023 15:07:31 GMT (envelope-from git) Date: Wed, 25 Jan 2023 15:07:31 GMT Message-Id: <202301251507.30PF7VsQ044568@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: eaf5ec88c2df - main - stand: Add testing for i386 as well to full-test.sh 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: eaf5ec88c2df8efe49ce819c81aae582935c2e4c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=eaf5ec88c2df8efe49ce819c81aae582935c2e4c commit eaf5ec88c2df8efe49ce819c81aae582935c2e4c Author: Warner Losh AuthorDate: 2023-01-25 15:02:08 +0000 Commit: Warner Losh CommitDate: 2023-01-25 15:04:59 +0000 stand: Add testing for i386 as well to full-test.sh Sponsored by: Netflix --- tools/boot/full-test.sh | 45 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/tools/boot/full-test.sh b/tools/boot/full-test.sh index 6f45d6bfe20f..11f575779b92 100644 --- a/tools/boot/full-test.sh +++ b/tools/boot/full-test.sh @@ -279,7 +279,7 @@ make_linuxboot_images() zfs=${IMAGES}/${ma_combo}/linuxboot-${ma_combo}.zfs img=${IMAGES}/${ma_combo}/linuxboot-${ma_combo}.img img2=${IMAGES}/${ma_combo}/linuxboot-${ma_combo}-zfs.img - pool="linuxboot-testing" + pool="linuxboot" mkdir -p ${IMAGES}/${ma_combo} makefs -t msdos -o fat_type=32 -o sectors_per_cluster=1 \ -o volume_label=EFISYS -s100m ${esp} ${src} @@ -444,7 +444,6 @@ make_freebsd_images() ufs=${IMAGES}/${ma_combo}/freebsd-${ma_combo}.ufs img=${IMAGES}/${ma_combo}/freebsd-${ma_combo}.img mkdir -p ${IMAGES}/${ma_combo} -# XXX 4096 sector? makefs -t msdos -o fat_type=32 -o sectors_per_cluster=1 \ -o volume_label=EFISYS -s100m ${esp} ${src} makefs -t ffs -B little -s 200m -o label=root ${ufs} ${dir} ${dir2} @@ -454,6 +453,30 @@ make_freebsd_images() set -x + # BIOS i386 + a=i386:i386 + m=${a%%:*} + ma=${a##*:} + ma_combo="${m}" + [ "${m}" != "${ma}" ] && ma_combo="${m}-${ma}" + dir=${TREES}/${ma_combo}/freebsd + dir2=${TREES}/${ma_combo}/test-stand + ufs=${IMAGES}/${ma_combo}/freebsd-${ma_combo}.ufs + img=${IMAGES}/${ma_combo}/freebsd-${ma_combo}.img + mkdir -p ${IMAGES}/${ma_combo} + mkdir -p ${dir2}/etc + cat > ${dir2}/etc/fstab < ${out} < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 4410e857965e - main - stand/uboot: Remove -fPIC here 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: 4410e857965edef0e3be42ae323356ec08d2aaad Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=4410e857965edef0e3be42ae323356ec08d2aaad commit 4410e857965edef0e3be42ae323356ec08d2aaad Author: Warner Losh AuthorDate: 2023-01-25 15:03:08 +0000 Commit: Warner Losh CommitDate: 2023-01-25 15:04:59 +0000 stand/uboot: Remove -fPIC here When needed, -fPIC is added in defs.mk. While not in main, mips on stable/13 can't tolerate it. Remove it here. MFC After: now (it's a build issue) Sponsored by: Netflix --- stand/uboot/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/stand/uboot/Makefile b/stand/uboot/Makefile index 052c9615bfc2..ed2253cdae6f 100644 --- a/stand/uboot/Makefile +++ b/stand/uboot/Makefile @@ -62,8 +62,6 @@ SRCS+= metadata.c .include "${BOOTSRC}/fdt.mk" -CFLAGS+= -fPIC - # Pick up the bootstrap header for some interface items CFLAGS+= -I${LDRSRC} From nobody Wed Jan 25 15:55: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 4P27jW41Xjz3bnBD; Wed, 25 Jan 2023 15:55: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 4P27jW3TxGz4Kn5; Wed, 25 Jan 2023 15:55:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674662159; 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=pdUhXaamEW5QJyzwVxjmVXgoKZCcuOmc5RM5bT7QtOk=; b=MXNtGVWS6xP3eVCTdfJd7vIoHxuTnVta2BTAf0ZNPUjU9ci2TNhOZqf4YOLSPeqfPB1g8+ 7Y9A1wZR3+Is7aCe8MtPzpE9CE+Z051Y27a6+CScyvXtCPFFMIyPmvNV0zbXZ+WbumMYm5 vQNS7lkl9pElUDyIiKYLvDyJPBNsLUyfU8GYZOmJ73LrC1qP+MTluSEU4IbYnA3aRZ7T2/ OnOCrAjX9Lv0dtddb4GZLPIJ3boC0HZCzeV+rEoF2T14b9pdZZ3dXvYqAtW6mf0im/qTos ZyEnrKjRKGLJFNQajcLcZhxrQqJ0RmakdJiVBMw/jkArfHpzvgluMNavx3Cf6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674662159; 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=pdUhXaamEW5QJyzwVxjmVXgoKZCcuOmc5RM5bT7QtOk=; b=rj4hXOGwxeruAJP7apHxNd+mz3/AKnMEIXZyxO4un6fJ6sdsUGvYWR6F92B/9I1IEJgp8f PA6XyPazq46SjjpMzEoqRzYedArg9VNppfKxeKtMydQHN1exHT2bVxzl0EZxZq16EH6+oX TkW9nUYENDM2f1HtnNr5IqZYQhhOkrwbLkDtchhUpek8hTjojepr1eG1R49iM+JTb9OQ1p ZESS+G+qJZNFkVZbxrpzz8buCHvUFQvh8x7ipuoCiTH0jm6JPocF3NKQpDBRY/sYDxgIdC at05DUtUgTpLudBGBQqrj1KrzCuz5VirNFKYgPgcSm0m2eCJqJHplgrjlBG7pQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674662159; a=rsa-sha256; cv=none; b=q1sdsBffKI5nMvHfvShgr46+y5zqEe7LhyHLPGJFWePLcEUMJHzCPLDBfpWMRNZ30mN4eb BmVGW5EUf0pT+P67mDJbzYzPkbMofvuMOIW2xiuq75Fwl8dFwqO6d0YF6simJTedUiu5ds iBQKCbsJb+MVkgqoy6PPgV4iIzArQuBMxpmCuD6qPNAZjz+WHGC88XcVN5RC4RsJ8SAE6H 7os+4no+0vsZc3LXDD0cXAHZ667Iipu19B9fXfeiT1dhlF5228rOecIB53Q64s1ObW0LCL Vx24wvwRiSz19i1VUHQ4IQ5wKRIH5dM+tza4CK3B8kkZqRsfGAyUZCiZdDD0Mw== 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 4P27jW2YSYzvjX; Wed, 25 Jan 2023 15:55:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PFtxD1015570; Wed, 25 Jan 2023 15:55:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PFtxeh015569; Wed, 25 Jan 2023 15:55:59 GMT (envelope-from git) Date: Wed, 25 Jan 2023 15:55:59 GMT Message-Id: <202301251555.30PFtxeh015569@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: 783c318fd118 - main - zoneinfo: On amd64, include 32-bit 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: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 783c318fd1181d46554c31a5039db10e7f5eef49 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=783c318fd1181d46554c31a5039db10e7f5eef49 commit 783c318fd1181d46554c31a5039db10e7f5eef49 Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 15:54:52 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 15:54:52 +0000 zoneinfo: On amd64, include 32-bit data. While there, drop the unnecessary posixrules option. Sponsored by: Klara, Inc. Reviewed by: imp, allanjude Differential Revision: https://reviews.freebsd.org/D38142 --- share/zoneinfo/Makefile | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/share/zoneinfo/Makefile b/share/zoneinfo/Makefile index dfe148544bd6..cffd12cc5e9a 100644 --- a/share/zoneinfo/Makefile +++ b/share/zoneinfo/Makefile @@ -51,7 +51,6 @@ LEAPFILE= TZFILES= africa antarctica asia australasia etcetera europe \ factory northamerica southamerica TZFILES+= backward -POSIXRULES= America/New_York TZFILES:= ${TZFILES:S/^/${CONTRIBDIR}/} @@ -78,11 +77,17 @@ all: zoneinfo .endif META_TARGETS+= zoneinfo install-zoneinfo +# On amd64, include 32-bit data for compatibility with statically-linked +# i386 binaries which still use a 32-bit time_t. +.if ${MACHINE_ARCH} == "amd64" +ZICFLAGS+= -b fat +.endif + zoneinfo: ${TDATA} mkdir -p ${TZBUILDDIR} cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS} umask 022; cd ${.CURDIR}; \ - zic -D -d ${TZBUILDDIR} -p ${POSIXRULES} -m ${NOBINMODE} \ + zic -D -d ${TZBUILDDIR} ${ZICFLAGS} -m ${NOBINMODE} \ ${LEAPFILE} ${TZFILES} # From nobody Wed Jan 25 16:05: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 4P27x11G29z3bnvk for ; Wed, 25 Jan 2023 16:05:57 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (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 4P27x05s9Rz4M5S for ; Wed, 25 Jan 2023 16:05:56 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f50.google.com with SMTP id l41-20020a05600c1d2900b003daf986faaeso1653489wms.3 for ; Wed, 25 Jan 2023 08:05:56 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=c4QCEVKqU6xy/Vy0BEj1ze4l3jQUxUCorNHljfUzU/0=; b=WWdmLzKuvQ5ntaejUQICOaeVhGO12x7W4/i+ItRfPdnfLUDPyGMWM3fHAgDLGSQwBY AwyWqtUJJyGt/tgtGshsqMSeNPGsAsN14zQTWp+UqqWrvo4SqxmHUrWhcMYIf2/02Jq9 0BvOXVta4PBiTGZhzOJZD54tWXhBaZQK/UGACILJpQwHTTts5FVJwQAPH5Y5lP1jGn7g z23HitudbE6a7W9VFs7Lk/rEBcbob7PI5PJdq5mod2O2RAvAE7qrdbvgF7b2fdNHe44f FTwuZ75Q11dx8J3QMoQXuAiNoGoTWEmtB+Nf2xU1aMqM6gnQdOb1FXZShdwXWvNaudJx 76aA== X-Gm-Message-State: AFqh2kp0DW+6eE0rBqxGRUsitaHHuNQIKfVTgHtI/ZJaCO0JZBpmgFfR CnXPTJNeXABX1ptcMHtXWoI+9g== X-Google-Smtp-Source: AMrXdXveUMBXL+sPdJgXbmgK7rOl1eIEg6YK8y2LSG20stKDzXjAUpjlgarOvNlAKWX0jbLedpY9og== X-Received: by 2002:a05:600c:a29e:b0:3d9:ee01:ae5b with SMTP id hu30-20020a05600ca29e00b003d9ee01ae5bmr31972323wmb.12.1674662755079; Wed, 25 Jan 2023 08:05:55 -0800 (PST) Received: from smtpclient.apple (global-5-143.n-2.net.cam.ac.uk. [131.111.5.143]) by smtp.gmail.com with ESMTPSA id hu10-20020a05600ca28a00b003d9f14e9085sm2181029wmb.17.2023.01.25.08.05.54 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 25 Jan 2023 08:05:54 -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 \(3696.120.41.1.1\)) Subject: Re: git: 783c318fd118 - main - zoneinfo: On amd64, include 32-bit data. From: Jessica Clarke In-Reply-To: <202301251555.30PFtxeh015569@gitrepo.freebsd.org> Date: Wed, 25 Jan 2023 16:05:54 +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: References: <202301251555.30PFtxeh015569@gitrepo.freebsd.org> To: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= X-Mailer: Apple Mail (2.3696.120.41.1.1) X-Rspamd-Queue-Id: 4P27x05s9Rz4M5S X-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On 25 Jan 2023, at 15:55, Dag-Erling Sm=C3=B8rgrav = wrote: >=20 > The branch main has been updated by des: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D783c318fd1181d46554c31a5039db10e= 7f5eef49 >=20 > commit 783c318fd1181d46554c31a5039db10e7f5eef49 > Author: Dag-Erling Sm=C3=B8rgrav > AuthorDate: 2023-01-25 15:54:52 +0000 > Commit: Dag-Erling Sm=C3=B8rgrav > CommitDate: 2023-01-25 15:54:52 +0000 >=20 > zoneinfo: On amd64, include 32-bit data. >=20 > While there, drop the unnecessary posixrules option. I=E2=80=99m not sure how this makes sense. Isn=E2=80=99t the file format = entirely MI? There=E2=80=99s nothing in zic that knows what TARGET_ARCH is when = building the bootstrap tool, the only thing it could possibly look at is MACHINE_ARCH for the bootstrap tool, but that would tell you about the build machine not the target machine. So why does cross-compiling i386 on amd64 work but lib32 from a native amd64 build doesn=E2=80=99t? Jess > Sponsored by: Klara, Inc. > Reviewed by: imp, allanjude > Differential Revision: https://reviews.freebsd.org/D38142 > --- > share/zoneinfo/Makefile | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) >=20 > diff --git a/share/zoneinfo/Makefile b/share/zoneinfo/Makefile > index dfe148544bd6..cffd12cc5e9a 100644 > --- a/share/zoneinfo/Makefile > +++ b/share/zoneinfo/Makefile > @@ -51,7 +51,6 @@ LEAPFILE=3D > TZFILES=3D africa antarctica asia australasia etcetera europe \ > factory northamerica southamerica > TZFILES+=3D backward > -POSIXRULES=3D America/New_York >=20 > TZFILES:=3D ${TZFILES:S/^/${CONTRIBDIR}/} >=20 > @@ -78,11 +77,17 @@ all: zoneinfo > .endif > META_TARGETS+=3D zoneinfo install-zoneinfo >=20 > +# On amd64, include 32-bit data for compatibility with = statically-linked > +# i386 binaries which still use a 32-bit time_t. > +.if ${MACHINE_ARCH} =3D=3D "amd64" > +ZICFLAGS+=3D -b fat > +.endif > + > zoneinfo: ${TDATA} > mkdir -p ${TZBUILDDIR} > cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS} > umask 022; cd ${.CURDIR}; \ > - zic -D -d ${TZBUILDDIR} -p ${POSIXRULES} -m ${NOBINMODE} \ > + zic -D -d ${TZBUILDDIR} ${ZICFLAGS} -m ${NOBINMODE} \ > ${LEAPFILE} ${TZFILES} >=20 > # From nobody Wed Jan 25 16:22: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 4P28Hz2rMcz3bqg6; Wed, 25 Jan 2023 16:22:23 +0000 (UTC) (envelope-from des@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 4P28Hz2KXWz4NdR; Wed, 25 Jan 2023 16:22:23 +0000 (UTC) (envelope-from des@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674663743; 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=eYeWzCkSqN+9/ecKFm/YEmo8CN2ZSBRjdyGNfM3157M=; b=sIW2POdk7qbdDewTBmLLj0VX2fkU5qFoYnlNjBxuonI2zepHKeyA2ZIwqJkbkajsbLmdga nfYWmPVpL0FjzUXh8OOgta2PI7NRoKhZSwi65O0hRJxo9vBI+yD+HHtV15N9lqjwIwISg0 mUYUM3J01Nrs6Mx3isYvUXKMNgarnqXPppnw7iROsnjh17gLjftsnBYfbepMLulopFw5ao BQfYh0kgwvrY+VuyX/old34/D+I/FGuPavdjjaBG2ninNG+dcrCRIuid6M6DxUms1jJ9pI +1xQtSzwWx1D+U0Kn28BhrZnrZBuhC4jv6vh8OfBgEkJglLfoWuQPitWG802pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674663743; 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=eYeWzCkSqN+9/ecKFm/YEmo8CN2ZSBRjdyGNfM3157M=; b=pFFeiDDJ14AW0i69h5S7B6sBKViWASKQ4BI31HO9QSzkCOwMK1Vt9n1aukP2lsHo5gGwCq M7dYiQ0OYP/uxHQbGhO3acgLT5LE/x298yG2BiposGwy8aP9zQeEwaHcB3GtP8HWXK+d3w wKN3K2Qf4jY9G2CH15FsX7bUZll43J3D9M3jG3uHpldUyQKDfQJzq/1aL4AQ02vpBGG2qj 0IOEh8T5w+wZ8r/+fvHLIxtuuAd/yGkgJrjOlewyRomIrn9bKJb2Ej6OrV0adOwnt11Jul NZFkZaV7wDg0Dv8NLlUaEzKbmpP3sL/b4WQ57jwNrE2dsogpE6FiKJzziaVKyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674663743; a=rsa-sha256; cv=none; b=TUZVPzZWOnJ8YnVZxyoBt1Da4K1nc7xeN/vyYXYO/n90VuEHiDceBnL5ePn7v+jVPOVSy5 Onw7J/3+xmW+AUf3lgKToWujITb9ymvNulsSMiGnBA39SfdXbxjX8ZEM4JzlbglyB0M8mV O2mk4u4Yp4EHriKgmBfyMN5hji/VTuG5O4N8JhVV/T+n7DE8O7l/GG1Mo35LYtPRCgv6d8 GaDrcnRQ1I9HPx9OtOhZVzlk13JtplEsw8gBZnou7tIS9JLy8QMUMDpnQRuVZImNr0pJ7z rlcSgmVDGJECRltdNV+gdN7WnbZux6BPwHV9iQvH9CJHhNBsCvb9UVZvJM8Q9w== Received: from ltc.des.no (unknown [178.232.227.131]) (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: des) by smtp.freebsd.org (Postfix) with ESMTPSA id 4P28Hz0fWfzFT2; Wed, 25 Jan 2023 16:22:23 +0000 (UTC) (envelope-from des@freebsd.org) Received: by ltc.des.no (Postfix, from userid 1001) id 803B89CE1E; Wed, 25 Jan 2023 17:22:21 +0100 (CET) From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= To: Jessica Clarke Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Subject: Re: git: 783c318fd118 - main - zoneinfo: On amd64, include 32-bit data. In-Reply-To: (Jessica Clarke's message of "Wed, 25 Jan 2023 16:05:54 +0000") References: <202301251555.30PFtxeh015569@gitrepo.freebsd.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (berkeley-unix) Date: Wed, 25 Jan 2023 17:22:21 +0100 Message-ID: <865ycua8jm.fsf@ltc.des.no> 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: quoted-printable X-ThisMailContainsUnwantedMimeParts: N Jessica Clarke writes: > Dag-Erling Sm=C3=B8rgrav writes: > > zoneinfo: On amd64, include 32-bit data. > I=E2=80=99m not sure how this makes sense. Isn=E2=80=99t the file format = entirely MI? It's not machine independent so much as multi-target. The file structure is basically: 32-bit header 32-bit data 64-bit header 64-bit data Recent versions leave out the 32-bit data unless you pass -b fat on the command line. To a legacy binary, that looks like a valid file (the 32-bit header is still present) with no transitions. DES --=20 Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org From nobody Wed Jan 25 16:35: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 4P28Zl4bvTz3bsGY; Wed, 25 Jan 2023 16:35: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 4P28Zl3tXTz4Ps5; Wed, 25 Jan 2023 16:35:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674664511; 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=NkJqln0wZ0VXEvGSc0e8B4OezPfZb43b3nHODnab4TI=; b=hUWVYscINBVNhyIbhAN0qy3ZrASnEhj02vSBDZP7qdTjYkRh0/BNCUnaQY3Zyk+8HcQbRE S09awTiisG8+uQH6t8b8nw9eq814n+3TatDb3aBoPOtzThsT6T910QApOJQLBqHutH4Zar wATAODs1PmsJ2BL/sEu+vXWe4XtZIrxeL3MaczTpg+oJHXR2Y49U7IOAoI4rTCtWSyJPmS zaShwHBqzSmBDeCOOfEH+p0or3ZJO/v6/HKHWbLnq3FaoJxngICPOUyXZ2X4xhyqqlVZjp aSNoYSH15VSika3I7VZMPgL7iQ/XhngxevOX4mLksunwvXNkjpWYgAcOyEAAWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674664511; 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=NkJqln0wZ0VXEvGSc0e8B4OezPfZb43b3nHODnab4TI=; b=XH+kpH2Xm4kzVclL2M7nmjmxKvkrsY+Xu/B3OEdQMCrEsFJ6iTHf49iFUaanVn4wIHQbHr fDEJ/il9cAcMQfwGBXLFeCwZI4Y+hewSVdBlYbcYQao2lb5ysSs+cbmS+qorTEZJ1UEmkE oSfh9mFEJ/0WbdmOagyi1fiO9qy0rZP/I+LrIBeEP2YZKVczk0XB/bcqKNofG65N+cUZfi zpdbrqQFKmJIKaBzR+a5SR0+i4iY5Vip0n9PyIJ7T7hbcEpB6/AQv3lKeVhBCmQwQSqmKD 70hcNxRGFegf6YsPYffyUQNJ+XEkwi+VF2D4jg+AKM8LUm/IGp6aC2BLmptcLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674664511; a=rsa-sha256; cv=none; b=pcDgiRy5Ht0L1zfWtTtUYO5kjYz5RlhuvY4dAFSYp3ekUD7Jyw/5p07ypA5cR6vSv/OdHR dZkz334hc6lreU0ef7tEzgF+Wz2sbCTySZwQh+IdTHc5/HrRPtG9uf67VI4/Y03AxEdQzj QT4A6p6oYsHbrgztEmN7p3/ScxmVKJii465FhHBrJNffyDSw3shkKXNGQu40XfPN2rSWwB 8iGh6dRefnl8KOGTiAy1eaTAlfrr9ef/nc8LBTdplH7bIJM9H7MmOQzNtyLS4OxIqrZPsf mbvG1PfZ9A3Fj7je3XgNr/2XD7B0fVjCznBBIQNHkuOEG4RX3k+3W+FggUKhEQ== 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 4P28Zl2qVyzvns; Wed, 25 Jan 2023 16:35:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PGZBiC073719; Wed, 25 Jan 2023 16:35:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PGZBSB073718; Wed, 25 Jan 2023 16:35:11 GMT (envelope-from git) Date: Wed, 25 Jan 2023 16:35:11 GMT Message-Id: <202301251635.30PGZBSB073718@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 20ea7f26e413 - main - pytest: delete interfaces from inside the jail. 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: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 20ea7f26e41375828a390fba613b86acfe366add Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=20ea7f26e41375828a390fba613b86acfe366add commit 20ea7f26e41375828a390fba613b86acfe366add Author: Alexander V. Chernikov AuthorDate: 2023-01-25 16:32:52 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-01-25 16:34:17 +0000 pytest: delete interfaces from inside the jail. This change follows the approach used in 80fc25025ffc, to minimise the impact of the delayed interface migration. MFC after: 2 weeks --- tests/atf_python/sys/net/vnet.py | 46 ++++++++++++++++++++++++++++++++-------- 1 file changed, 37 insertions(+), 9 deletions(-) diff --git a/tests/atf_python/sys/net/vnet.py b/tests/atf_python/sys/net/vnet.py index 1a8efe0d9edc..1f61269ffe6c 100644 --- a/tests/atf_python/sys/net/vnet.py +++ b/tests/atf_python/sys/net/vnet.py @@ -1,6 +1,7 @@ #!/usr/local/bin/python3 import copy import ipaddress +import re import os import socket import sys @@ -150,6 +151,7 @@ class VnetInterface(object): class IfaceFactory(object): INTERFACES_FNAME = "created_ifaces.lst" + AUTODELETE_TYPES = ("epair", "lo", "tap", "tun") def __init__(self): self.file_name = self.INTERFACES_FNAME @@ -158,19 +160,46 @@ class IfaceFactory(object): with open(self.file_name, "a") as f: f.write(iface_name + "\n") + def _list_ifaces(self) -> List[str]: + ret: List[str] = [] + try: + with open(self.file_name, "r") as f: + for line in f: + ret.append(line.strip()) + except OSError: + pass + return ret + def create_iface(self, alias_name: str, iface_name: str) -> List[VnetInterface]: ifaces = VnetInterface.create_iface(alias_name, iface_name) for iface in ifaces: - self._register_iface(iface.name) + if not self.is_autodeleted(iface.name): + self._register_iface(iface.name) return ifaces + @staticmethod + def is_autodeleted(iface_name: str) -> bool: + iface_type = re.split(r"\d+", iface_name)[0] + return iface_type in IfaceFactory.AUTODELETE_TYPES + + def cleanup_vnet_interfaces(self, vnet_name: str) -> List[str]: + """Destroys""" + ifaces_lst = ToolsHelper.get_output( + "/usr/sbin/jexec {} ifconfig -l".format(vnet_name) + ) + for iface_name in ifaces_lst.split(): + if not self.is_autodeleted(iface_name): + if iface_name not in self._list_ifaces(): + print("Skipping interface {}:{}".format(vnet_name, iface_name)) + continue + run_cmd( + "/usr/sbin/jexec {} ifconfig {} destroy".format(vnet_name, iface_name) + ) + def cleanup(self): try: - with open(self.file_name, "r") as f: - for line in f: - run_cmd("/sbin/ifconfig {} destroy".format(line.strip())) os.unlink(self.INTERFACES_FNAME) - except Exception: + except OSError: pass @@ -260,7 +289,7 @@ class VnetFactory(object): try: jid_str = run_cmd(cmd) jid = int(jid_str) - except ValueError as e: + except ValueError: print("Jail creation failed, output: {}".format(jid_str)) raise self._register_vnet(vnet_name) @@ -276,13 +305,12 @@ class VnetFactory(object): return VnetInstance(vnet_alias, vnet_name, jid, ifaces) def cleanup(self): + iface_factory = IfaceFactory() try: with open(self.file_name) as f: for line in f: vnet_name = line.strip() - ToolsHelper.print_output( - "/usr/sbin/jexec {} ifconfig -l".format(vnet_name) - ) + iface_factory.cleanup_vnet_interfaces(vnet_name) run_cmd("/usr/sbin/jail -r {}".format(vnet_name)) os.unlink(self.JAILS_FNAME) except OSError: From nobody Wed Jan 25 16:37: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 4P28cz2gj0z3bsBM for ; Wed, 25 Jan 2023 16:37:07 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (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 4P28cz0mb1z4Q3Y for ; Wed, 25 Jan 2023 16:37:07 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f41.google.com with SMTP id k16so14209757wms.2 for ; Wed, 25 Jan 2023 08:37:07 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=zW6HP6ufqqSp7J39VL7ZU0dL3IZRkNCVjCLZWWcT6Lo=; b=ED5EUqjQ5Xu2eGa/qobvqUeGMR78peCoUp8KhKneZ/CXxUGFrIICwT+HuyXowvQ8Ew R6WW0RbcVBCNzWtEVAXXScUr0ps7w794g+GRgX3m/DiOqxjO9C5C2tEiMy/89L1CE27h NEqA34htdBVndQ1HXLRkc6HjYB8krBeIFEsWephhLs1y7S+eBs2CZzuZw5Rz20VBESnZ NsoEBG1yFnlrtfVpqM/nqPnhaw9Bs+VAwSbSUl1GaaPb/T8Zxnpds4pf9KmFD/E9FUUi 5lbSpq3jujMe/VhQDdQKTVvD90kyR1/m+tNai1xiR10hBv5a6cTxV2Z1iM+KVTvfGtE3 PvUw== X-Gm-Message-State: AFqh2kr7XriGy0AvGtN8zWALKyZaX8wQy98PFgUo61isUmWvBL5xiGGA hZC5KOD5wdvnFU5D6UvP84j3oxwHxGegUdcaRoM= X-Google-Smtp-Source: AMrXdXsn4FPkZMNSvWdOuDmpXT+/Kl7HF3t/j4rbjxL83aGEjuIbmdnD1Zfl1mDAkCV9qqyEDQk7QQ== X-Received: by 2002:a05:600c:3d14:b0:3da:f793:fff6 with SMTP id bh20-20020a05600c3d1400b003daf793fff6mr32100187wmb.16.1674664625231; Wed, 25 Jan 2023 08:37:05 -0800 (PST) Received: from smtpclient.apple (global-5-143.n-2.net.cam.ac.uk. [131.111.5.143]) by smtp.gmail.com with ESMTPSA id f6-20020a05600c43c600b003db06224953sm2541533wmn.41.2023.01.25.08.37.04 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 25 Jan 2023 08:37:04 -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 \(3696.120.41.1.1\)) Subject: Re: git: 783c318fd118 - main - zoneinfo: On amd64, include 32-bit data. From: Jessica Clarke In-Reply-To: <865ycua8jm.fsf@ltc.des.no> Date: Wed, 25 Jan 2023 16:37:04 +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: <8BCFDF3C-BB95-460A-AA9E-DE57BC86281C@freebsd.org> References: <202301251555.30PFtxeh015569@gitrepo.freebsd.org> <865ycua8jm.fsf@ltc.des.no> To: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= X-Mailer: Apple Mail (2.3696.120.41.1.1) X-Rspamd-Queue-Id: 4P28cz0mb1z4Q3Y X-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On 25 Jan 2023, at 16:22, Dag-Erling Sm=C3=B8rgrav = wrote: >=20 > Jessica Clarke writes: >> Dag-Erling Sm=C3=B8rgrav writes: >>> zoneinfo: On amd64, include 32-bit data. >> I=E2=80=99m not sure how this makes sense. Isn=E2=80=99t the file = format entirely MI? >=20 > It's not machine independent so much as multi-target. The file > structure is basically: >=20 > 32-bit header > 32-bit data > 64-bit header > 64-bit data >=20 > Recent versions leave out the 32-bit data unless you pass -b fat on = the > command line. To a legacy binary, that looks like a valid file (the > 32-bit header is still present) with no transitions. But the 64-bit version is machine independent, it=E2=80=99s just not = compatible with old consumers. And those old consumers can be run on i386 (jail or full system), not just amd64 with lib32, and will need the 32-bit data just as much, yet won=E2=80=99t have it. Which is what my point was in = the rest of my previous email that you chopped off when replying. I think this really needs to be .if ${MACHINE_ARCH} =3D=3D "amd64" || ${MACHINE_ARCH} =3D=3D "i386" (or the same with MACHINE_CPUARCH to be more forward-thinking) Though -b fat governs things other than whether you get 32-bit data, namely working around bugs in older versions, which may well apply to non-x86 architectures. So probably we should just do the same thing on every architecture (unless you want to go and figure out when each architecture entered FreeBSD and when each bug worked around got fixed, though probably at least some of them were in the recent import) so as to not get weird edge-case failures on non-x86, as it can be a pain to deal with failures that only show up on non-x86 but are from the configuration not the architecture. Jess From nobody Wed Jan 25 17:03: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 4P29CS6klvz3bvWG; Wed, 25 Jan 2023 17:03: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 4P29CS4W12z3FQV; Wed, 25 Jan 2023 17:03:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666212; 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=fTwpoCge3O+iX2GYuiXGY5Wjm7mOBzLrjyFn3aMbxLM=; b=gW4s2KIySjRg+D02RiXZU++yC0FyuKKhomjDrZuK+jHDIoPsZg/3JLe++lmezjnvA/FpvN PO+fh888YFeBwC0wFGaSntosx01AmRoDWw7+jq1Upxi1soYXLpedmOXYOrGJLFoahTznC5 FTKMSlfX8n1CSnF5sRqcr07HQnMolfQbRU/qZpW10+qbSlJ1B8TAfHZ102HHph2q045cMy 8tmxTSQMjdy4farqFZLMgm5KdlhEmo42Jo2scg+I0ZuOnUM9SU9n6+AFrkqvVJWl7w4ZRk exZJwbsEaiunV3/gOSu2NMCiUJ+jxhHQsCfjWsY7Gq5tpFKgXDdNbsT/wDdZPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666212; 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=fTwpoCge3O+iX2GYuiXGY5Wjm7mOBzLrjyFn3aMbxLM=; b=kRA1MdMxYE1PQvLTGczV30K/TfpLeWyXuv1gn8J8qxW/DWWy4oSPckwWOiaDm9O4UyyzFM iu5E77LRK9yPBOrSFWP6wyXDI8w0rlQyv/wbJ8oWTjxiL/djglmUbnqXYDbO3gSbOSwzMy THY9prB0YyS1taAX1MIo3CHSFQtv9+LZdG6Kt1LNXL8VtOuozzL6V8XInVyTg1mMIaKTSg y280cFUgqtLxsTWqTw5r9YZKEDtM47lLhY1rjLMGPpyNovF3y5HzZtn3wV3bjxEp66kfNQ HAa96yxP5uYZkjt4uDbd8KmI1hJHNnAF4Vu/CbqXfnZrNY6m1IowzO4vVKEq1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674666212; a=rsa-sha256; cv=none; b=u2GQYzU20uNij82L0IvhVxF+L/FsrJlujdgnBpPyGgdC9JRWoTVqzALKreJsIfiITXlWNe F9X9GuLBxbgQ9QEPArgnmf4kq7aeDvmDqAHulbS/mJORko44T9hNgvsmIDeXcwJUCS+xZM oeTQnqrABAClvHptUSWFo/+5jYyJBNvACoDoeWHfvEnZW4SGdjx6s3/XMmJndbqTafrMQ4 2suVuKXfS6/nTAHJaPuVjZp8NgNOgcFTQWoGXx9Yg08xMDgXmdN9/6q0PF5XqfdF/x7d9Z GjCNZqKTNixxjGI/ZdztyOWRgj8P8G9KMv+gmJ3P1BaRbxMu+3a/pJbtqafDmw== 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 4P29CS3YFJzxCS; Wed, 25 Jan 2023 17:03:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PH3WDZ017799; Wed, 25 Jan 2023 17:03:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PH3WSu017798; Wed, 25 Jan 2023 17:03:32 GMT (envelope-from git) Date: Wed, 25 Jan 2023 17:03:32 GMT Message-Id: <202301251703.30PH3WSu017798@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: a7b1b73935f2 - main - tzcode: Document zic's -D option. 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: a7b1b73935f21a3dcd6fc8d86a37b92f0c9ba93f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=a7b1b73935f21a3dcd6fc8d86a37b92f0c9ba93f commit a7b1b73935f21a3dcd6fc8d86a37b92f0c9ba93f Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 17:02:55 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 17:02:55 +0000 tzcode: Document zic's -D option. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D38141 --- contrib/tzcode/zic.8 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contrib/tzcode/zic.8 b/contrib/tzcode/zic.8 index 79624da4e9e2..37d9a3abd418 100644 --- a/contrib/tzcode/zic.8 +++ b/contrib/tzcode/zic.8 @@ -3,7 +3,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 15, 2022 +.Dd January 21, 2023 .Dt ZIC 8 .Os .Sh NAME @@ -71,6 +71,8 @@ mishandles timestamps after the year 2038 anyway. Also see the .Fl r option for another way to alter output size. +.It Fl D +Do not create directories. .It Fl d Ar directory Create time conversion information files in the named directory rather than in the standard directory named below. From nobody Wed Jan 25 17:03: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 4P29CV0DTVz3bvYZ; Wed, 25 Jan 2023 17:03: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 4P29CT5PMbz3FKl; Wed, 25 Jan 2023 17:03:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666213; 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=mAQ739bpQi1UcK5fR/nFWRyFtz9eHC6Vxa5RHpSXZKg=; b=rcpEJFt8TfOaa0yeQ00ejxBp37q9EAR0Etcs1ZQQjwr5PQSMde8QoBeTgjwelNki6uqCiL 9N+ImUrUypm4YkjNS6jaDCDkUS2xgnNGUEgXxk7GIKEOmlAZUwRVzC+dUdbdKciimoviOD yMPH5o8vOYju7bK6cCxu7M/cBzCZ455ovDzp4YzMt5S+YQHM1Em6BCWNFZR/7nUKidaguD 2D4TCVSOcuzmW11KYAeI36gufSsK3vuuDAFVOwDfug7AzsUra0ao8noVY8bsTjgF11FVmq FICkLZfIDOpquZLpvpx2DBtzCQJqOOW6fpUtRP/x5IM1p0lK6gTsji2z9lHc5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666213; 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=mAQ739bpQi1UcK5fR/nFWRyFtz9eHC6Vxa5RHpSXZKg=; b=VcLTkfRUQ7wP7SIyfg2X+1IIhv6/CwiakyJVT2WFRAMqMLou9UTJBxgaJ2PeY0hyuMFCXR mK6Gpndl+xdUfaSHpp9pdajjZqWukm8YuvKDGeQm0DBQ+/2k8jgSii6EHxdrEC+V/Re8kZ 7XiZOBP/bZX2p61T9EjJxB0XcmV/0kcrvZfMkUeU/JTVgqn7fZRKR5soKwD+sY080HzLas ee+OaZNNURShZjDl/A+RTxJ+I5RyMdW+uiZJVhe1a0g/xSrV6whvPKuNc9Zu5cI5Il5UEI UgAfL5llUzri2zxuMNoUdPNmefB/iYuS2NSwxiiz9AdPyjM7AFmHGqXrfj/cdg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674666213; a=rsa-sha256; cv=none; b=L5zSPt+xvdw+4uhY8XPFDamS30iREVu02kSAZXDCbkIUrbk3f7IDz8YV7ldd2ydOl7MxdZ 11wKf+1AtTmhpuC3z4Y/BhZJoS3YpxBdX3ZFUtjmaL/GLOvUbaF02cNc8jkXTU6younr0J L5LNlNBzdGH/K1RgJU2+/BnBx5LBYVaReAtXZxqxxYpigmdb7u+FctxFU8AznsHFYWinTr a6OchrzWdoHMOlMx4+3FN+eMpBRd+icWVF8lFSY9TFbeaJL3e7HooWadvIG5q/UzLFEabR 5b/MOnkwuJ8Y2kcK4SvRmlIpeNBS5/mTSXCSKo+YZLm9a+5I1M+2c39szNGsNA== 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 4P29CT4VdnzxNr; Wed, 25 Jan 2023 17:03:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PH3XuQ017839; Wed, 25 Jan 2023 17:03:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PH3XN8017838; Wed, 25 Jan 2023 17:03:33 GMT (envelope-from git) Date: Wed, 25 Jan 2023 17:03:33 GMT Message-Id: <202301251703.30PH3XN8017838@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: 6fc1bbbf62bd - main - w: Unlike err(3), xo_err(3) won't accept a null format string. 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: 6fc1bbbf62bda2f1b5be3a4be3d36bc964490ebe Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=6fc1bbbf62bda2f1b5be3a4be3d36bc964490ebe commit 6fc1bbbf62bda2f1b5be3a4be3d36bc964490ebe Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 17:03:00 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 17:03:00 +0000 w: Unlike err(3), xo_err(3) won't accept a null format string. MFC after: 1 week X-MFC-with: d90ff31ae5cd Sponsored by: Klara, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D38192 --- usr.bin/w/w.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/w/w.c b/usr.bin/w/w.c index 8c33cd9d35b2..0a43957a73f8 100644 --- a/usr.bin/w/w.c +++ b/usr.bin/w/w.c @@ -400,7 +400,7 @@ main(int argc, char *argv[]) ep->args = fmt_argv(kvm_getargv(kd, ep->kp, argwidth), ep->kp->ki_comm, NULL, MAXCOMLEN); if (ep->args == NULL) - xo_err(1, NULL); + xo_err(1, "fmt_argv"); } /* sort by idle time */ if (sortidle && ehead != NULL) { From nobody Wed Jan 25 17:03: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 4P29CW0QD7z3bvpw; Wed, 25 Jan 2023 17:03: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 4P29CV6N7Yz3FJQ; Wed, 25 Jan 2023 17:03:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666214; 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=hr1MS15NzUOn40Qxv+gUf3I9zFJo/+e1lH4tu/VQyWE=; b=jGIbWJ5uYwAQpk2x0Qwy7zIz+btOFIvaEPo00kBt6IoHRLGafMPvH1ZmMZsne1rFKM4o4A yNT3Zw2wZuHWjeahyBREgGIIPfyg0XSB0jhaJAeHNIh500nv4KDUPJxUquhgWm0LIc9xbC brS0FfuGImvbLSJRND/VeVHxM2QH4iRJWocTFQr3iDSJ+5QPj7p6K3BKXyy/3tqGexHmYj rafmjE1/HO+lpszLjGIF3V1QbKA746LN6gK3LcdbQpiLorQmON+oe1LHReqQUV5lTdVeyw e5UgiK7iP8NadWEAVsuP0ISYJBVF028cgHmL8lnM/kEpnv5brNj50C3PSKfk3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666214; 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=hr1MS15NzUOn40Qxv+gUf3I9zFJo/+e1lH4tu/VQyWE=; b=hYf4uvHwZr9pY+RjGHRbEIrZ3/UKehn//ymXSrGVBQs1Ejs6Tow2J2Ax2llvU3RLtSCaaD l+4giTwppOE7D64c0jx0Q59qxESZQ572h6AVlS1UMtqHEnJVVy/uHJSL0tRbOmc0l73W4q j7zMIb7y0LONNVXmWk5IF6v/zgf95zpdJNVOYSL9u0mCVcQSALyBImI84tGolodz1X7e0f IwneX4I+bHsZD3a5BxaoHEbLONfL2e904InMNEGulSCfP02vbliHCuqpvFIMkynFPyQ9ex HXHLcQGK/n98qYcHTkRFOCv+TIrnzMC3bOm0HlaPteqx7e4dmSm9tD5gEOdqqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674666214; a=rsa-sha256; cv=none; b=Tk5K6ej+s3CE5nwanEHu3YkGbDgG2/JCvvs/4GUiA3sEDRQ432sU5Q5rJ0AbPV0vfwOrQ6 XXUEURt+Tq3eqZ5gDpYRxGEKNWGOP8mwiTx7e9mn5nZYEYM/vsPyPuWQ14fCOHrbozABEH zUoSL59oEJLr7osJ8A+dUvvUa2F6BV/5u4QgQY4O6xIjHKEV87iZkevAnCf1ky8S37QvWq XVTmzBmqOTJjAcErTF6rr+sixVA+eoTQT9dyMq7JFpEBW/Oh/eKkv6ukIN0IvM1Jght2wY eDVwUJA2nP84ZR6wyit1O27eXsaENmRmFgp+/h04LA+B2hVwRJj6QJqR1Ev/Og== 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 4P29CV5RZqzxNs; Wed, 25 Jan 2023 17:03:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PH3YYg017870; Wed, 25 Jan 2023 17:03:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PH3YvB017869; Wed, 25 Jan 2023 17:03:34 GMT (envelope-from git) Date: Wed, 25 Jan 2023 17:03:34 GMT Message-Id: <202301251703.30PH3YvB017869@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: f1021d27f73e - main - zoneinfo: Always produce fat zoneinfo 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: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f1021d27f73efb821213a973e1ab9366278c78f1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=f1021d27f73efb821213a973e1ab9366278c78f1 commit f1021d27f73efb821213a973e1ab9366278c78f1 Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 17:03:05 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 17:03:05 +0000 zoneinfo: Always produce fat zoneinfo files. These aren't just needed for compatibility with i386 binaries (which need the 32-bit section), but potentially also for compatibility with older binaries on all platforms. Sponsored by: Klara, Inc. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D38194 --- share/zoneinfo/Makefile | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/share/zoneinfo/Makefile b/share/zoneinfo/Makefile index cffd12cc5e9a..17dce860edae 100644 --- a/share/zoneinfo/Makefile +++ b/share/zoneinfo/Makefile @@ -77,11 +77,10 @@ all: zoneinfo .endif META_TARGETS+= zoneinfo install-zoneinfo -# On amd64, include 32-bit data for compatibility with statically-linked -# i386 binaries which still use a 32-bit time_t. -.if ${MACHINE_ARCH} == "amd64" -ZICFLAGS+= -b fat -.endif +# +# Produce “fat” zoneinfo files for backward compatibility. +# +ZICFLAGS?= -b fat zoneinfo: ${TDATA} mkdir -p ${TZBUILDDIR} From nobody Wed Jan 25 17:03: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 4P29CX1LmPz3bvtd; Wed, 25 Jan 2023 17:03:36 +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 4P29CX0Vqnz3FJx; Wed, 25 Jan 2023 17:03:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666216; 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=I8+Si9gRCJsMmuJTYtV/xSAjygcXwAhA74IJljrZhxs=; b=UHPO7TUCtym5psbAf/E4oJ8+zC+IfRwBwPjkuAsHSYbSLC2DuM750O4OHZDR/PkWEVP7/a xGIgzsAMrWTLW9N/6nNn9z9aNSt4JcKPHfs07sQ/Vlss5OG720Vs5WI6xGH1NWJmX4n4OL Ef2i5lRCOatMWY0zyaBfiVxUdqGGM0xqW+Uxgmcu5gHNpbX19L1nMq3F6mQLTiEnVPTZGD SDKQ2jpsZmT5L+37T+xqN9eVSB+nDzFJnEhSybGrwPY2UeCt5pXAuD07LpEPccZzB1W/Lh /7ZCtWwq9eXXf+dISA59eF5eE4tiSKV4Cpo/CjyC/u0kwRLB1fHQgMzqbc4zqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674666216; 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=I8+Si9gRCJsMmuJTYtV/xSAjygcXwAhA74IJljrZhxs=; b=OxdNhvNy75/Gc7knQPw+4jMFimj17ksZM7QxQvliydhc4QuX4tZEJUE+/l/aXgxgr0ndnD 3Uvf8rQwb8bkCHTsQz7+kxP0TksAShxGXTufgCj7fuJECZottZ4H55EruiPULwxNGj+BOT GJgS3Cas12c3J5upWDY1/ItBM9x0ANUvmR0RRxc6p0ZuYoyess3yCAaBXBuDBKv7xyL2XI E04gZbzM7Ix+ePL4S6tryQ0Wc2gjfP14vYpaTbvFC6b2aYWpzQBL5C2ZlNKY8I3zKvOACM 2Wf1W0W0l8JG7fvxDokW6FAZv1V3YZ/97a5eZmq0CyU7FSmOZFwM1tp+hArliw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674666216; a=rsa-sha256; cv=none; b=vsp2FnOeD9vrcUKatmCmSDow51Z0KNrF4Ms52JZBI68PHm0V+5rD9BhnfXnsYwruo49CH8 Bw1ZR3rSFqgW0sfk1FHYd3ZsGz/XleESG6HmJux0hqcIJMXLN+1POwLpBoVXkL4S06/W9A plxpRtgncS44SPFx2yi977EPO3W/j5WpOCkb0t8Jn+MeceiRbChWqWqbH2mUrj1x00J5AP nkinD4AwKf2lTTCEFHELwEjzteza6YC/194GjJL6LjsYTk52Po6NWVkybGQGmiOzhcpoX1 n28aDIFU7BVGlMwzbuPC3JiQLpmK+OmAZT6Z91dDcrvG0TXcvTpy3aMuEbIZbw== 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 4P29CW6PMGzxNt; Wed, 25 Jan 2023 17:03:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PH3ZXd017902; Wed, 25 Jan 2023 17:03:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PH3Z9H017901; Wed, 25 Jan 2023 17:03:35 GMT (envelope-from git) Date: Wed, 25 Jan 2023 17:03:35 GMT Message-Id: <202301251703.30PH3Z9H017901@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: 7a4a520064cb - main - Fix cross-build from STABLE or older CURRENT. 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: 7a4a520064cb7fbff79560113682d6fe1a1ae9ee Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=7a4a520064cb7fbff79560113682d6fe1a1ae9ee commit 7a4a520064cb7fbff79560113682d6fe1a1ae9ee Author: Dag-Erling Smørgrav AuthorDate: 2023-01-25 17:03:10 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-01-25 17:03:10 +0000 Fix cross-build from STABLE or older CURRENT. Previously, zic and tzsetup were both listed as install tools and basic bootstrap tools. Actually, tzsetup is an install tool while zic is a non-basic bootstrap tool. Fixes: 783c318fd118 Sponsored by: Klara, Inc. Reviewed by: jrtc27, emaste Differential Revision: https://reviews.freebsd.org/D38195 --- Makefile.inc1 | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 1396a8e7a172..6435cadbd45c 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1319,10 +1319,6 @@ __installcheck_sh_check: .PHONY # # Required install tools to be saved in a scratch dir for safety. # -.if ${MK_ZONEINFO} != "no" -_zoneinfo= zic tzsetup -.endif - .if !defined(CROSSBUILD_HOST) _sysctl=sysctl .endif @@ -1330,14 +1326,19 @@ _sysctl=sysctl ITOOLS= [ awk cap_mkdb cat chflags chmod chown cmp cp \ date echo egrep find grep id install ${_install-info} \ ln make mkdir mtree mv pwd_mkdb \ - rm sed services_mkdb sh sort strip ${_sysctl} test time true uname wc \ - ${_zoneinfo} ${LOCAL_ITOOLS} + rm sed services_mkdb sh sort strip ${_sysctl} test time true uname wc + +.if ${MK_ZONEINFO} != "no" +ITOOLS+=tzsetup +.endif # Needed for share/man .if ${MK_MAN_UTILS} != "no" ITOOLS+=makewhatis .endif +ITOOLS+=${LOCAL_ITOOLS} + # # distributeworld # @@ -2238,6 +2239,11 @@ _strfile= usr.bin/fortune/strfile # C source for loader built in font (8x16.c). _vtfontcvt= usr.bin/vtfontcvt +# zic is used to compile timezone data +.if ${MK_ZONEINFO} != "no" +_zic= usr.sbin/zic +.endif + # If we are not building the bootstrap because BOOTSTRAPPING is sufficient # we symlink the host version to $WORLDTMP instead. By doing this we can also # detect when a bootstrap tool is being used without the required MK_FOO. @@ -2440,10 +2446,6 @@ _basic_bootstrap_tools+=usr.bin/jot _basic_bootstrap_tools+=sbin/md5 .endif -.if ${MK_ZONEINFO} != "no" -_basic_bootstrap_tools+=usr.sbin/zic usr.sbin/tzsetup -.endif - .if defined(BOOTSTRAP_ALL_TOOLS) _other_bootstrap_tools+=${_basic_bootstrap_tools} .for _subdir _links in ${_basic_bootstrap_tools_multilink} @@ -2528,6 +2530,7 @@ bootstrap-tools: ${_bt}-links .PHONY ${_localedef} \ ${_mkcsmapper} \ ${_mkesdb} \ + ${_zic} \ ${LOCAL_BSTOOL_DIRS} ${_bt}-${_tool}: ${_bt}-links .PHONY .MAKE ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ From nobody Wed Jan 25 18:18: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 4P2BsS2ts2z3b51Q; Wed, 25 Jan 2023 18:18: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 4P2BsS2RQnz3P0l; Wed, 25 Jan 2023 18:18:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674670684; 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=G3L84bcVbRyLWKlSMqW1krGCrtj1EHMKG+EmdEp7M/0=; b=Hu6W8EdhTFXAJm9f4gCFw+byreIRkgwGKYHfCmPBeuLArZxACPrpKCsgI4WgjlXBi4VMGY vAT6BMc3DYYZ3HtumJRQ5GZfu1DENFQoqjhsH+vH8BfMz9I71uP8Xj64aAC6EUc7whSRk+ sFSVu0Au3wuvGKMX7wYR2L6AJ5opOoJKmzVhKJfUSD+2rI52VWKctc2UVJezCUGBi8bjkJ /qmlFFB4EjPlma0EeV+bkyN64mMiLqsDaHbi6JtsensU3ifZdZELuBayvgrDi/20wpedst xTTejDeRqInApO2521+Gwlx/JlSeKT/lJbLex6aPg9FMnWcdrkYeK3mIK0ykjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674670684; 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=G3L84bcVbRyLWKlSMqW1krGCrtj1EHMKG+EmdEp7M/0=; b=yrzyaQfxzQWQRsXNr1BlagPZSwWBPFYehP7SAemGjYtI1NKTK7VbB6Uh1EOHSARZLNopDn j9nGUvJFsGMTADcWyXMucQWsNCh7pY6DOsGuG7H1Vh9Q38Eib3HZos1e2wzQns77rPdMXc g1oxdCofmwbpgbFDf1mYRPMQpeGwvlWcp63tl7qmziE2AT//M5qjtvnIJluHmFchVORqtP 59QgZCwpALe8AcnDQU39HOXAoDAmtK30F/UmNwMjc43F2BEPvXhpCnurKPd415dVMSAWJP Crkwznoj3bEUqt0DANcPJGUiIGEte2AU5Y8iIkaUczM6IjnqH6NG/DOpbcYnHw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674670684; a=rsa-sha256; cv=none; b=uMmG47RdvAckui3z4q25jZSsS3GUZnPAfwXYWCRdEZ9BWnD1DC+IcT9DCbGRapkLjvIo0G +R9eCL9csImBhKy2YF39cmIH2GNWu+A5qiWqVMbqJCyfu/dO+h5Gg+75Habwrk9te7kCiv WRcx4cXaxoEprvDxW2EurzdpnCGAFHGtXaRDqB59Gqr6pu2taicSG+nlpEAC8R57DN8Xl9 RGPe2D2WqSF66uG4iHCkrsHkV4XeY5zayNugghqLmM5g26ODYTilNjrtthwlYEKJeDQeDh uuO8slFCeLWNXqognW+/DyuhacuRD5LA65xaOCZsD7EKZ8fNq2tM+Vd2Cm6OKA== 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 4P2BsS1PpKzyyv; Wed, 25 Jan 2023 18:18:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PII4f4019102; Wed, 25 Jan 2023 18:18:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PII4ic019101; Wed, 25 Jan 2023 18:18:04 GMT (envelope-from git) Date: Wed, 25 Jan 2023 18:18:04 GMT Message-Id: <202301251818.30PII4ic019101@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ceri Davies Subject: git: da52fc464a4c - main - ipfw.8: there never was a "skip-action" action 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: ceri X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: da52fc464a4c80fdbed551824064d203831b4e7b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by ceri (doc committer): URL: https://cgit.FreeBSD.org/src/commit/?id=da52fc464a4c80fdbed551824064d203831b4e7b commit da52fc464a4c80fdbed551824064d203831b4e7b Author: Ceri Davies AuthorDate: 2023-01-25 18:15:18 +0000 Commit: Ceri Davies CommitDate: 2023-01-25 18:15:18 +0000 ipfw.8: there never was a "skip-action" action It was renamed during review of D1776 but this entry slipped through. PR: 243284 Reported by: pprocacci@gmail.com Obtained from: Chad Jacob Milios --- sbin/ipfw/ipfw.8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/ipfw/ipfw.8 b/sbin/ipfw/ipfw.8 index c635c2742956..ef66f89a4d89 100644 --- a/sbin/ipfw/ipfw.8 +++ b/sbin/ipfw/ipfw.8 @@ -1,7 +1,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 13, 2023 +.Dd January 25, 2023 .Dt IPFW 8 .Os .Sh NAME @@ -4631,7 +4631,7 @@ Bear in mind that this is example only and it is not very useful by itself. .Pp On way out, after all checks place this rules: .Pp -.Dl "ipfw add allow record-state skip-action" +.Dl "ipfw add allow record-state defer-action" .Dl "ipfw add nat 1" .Pp And on way in there should be something like this: From nobody Wed Jan 25 19:17: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 4P2DB90HK9z3bCl7; Wed, 25 Jan 2023 19:17:37 +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 4P2DB9014fz3l4H; Wed, 25 Jan 2023 19:17:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674674257; 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=0B3XlE6rJwOMvSXoL/WajEnQoePqpa6cs/u5Pqe2O2c=; b=WKUonYR3Uu5aPXS9SCIBDwBgh3Fvclmg9F1wG76ja4FccfjRvgIf4MoQqx6MraQE2Na5mx PDeqU8zzy5kVzy47e6ZSJs+uIno0dZ1ZungWMDTS/t+FFY+BIWXmvCmM01bMkW1+6pRjbf RzFkcIbdB24x9yd1RUpCqk8y4glUtqvVkKO/VmADDsFFOhUuV9Zj6o9eMdoUVuCWEZMREd 2Yx0fxPCfBKSVaYuobc2cMLEHi4yd2AwnD/IqPHV4Zrq+jAPB2UVKFXR5r3/Nht9Fxdh7B ZjZtznTHTdjnBg0jXlDB5J7qp1kb8jz80m0wT1ucRbbXYha5qycDrXBN+qqKog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674674257; 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=0B3XlE6rJwOMvSXoL/WajEnQoePqpa6cs/u5Pqe2O2c=; b=xjPHxZOd+yqAN/zMmjTZxzgQRkBe0ai/yQpFDDBuRuetpe8QR7RlxHGjoT/FmrzdV7GO3f 2QOGEgr98yGehKSquEgvMg+TUwUL+WaS7ZXYE1DYx/u2YRCrvq21BhuhdhJYTjszvtSDyf M3GTQl8P02qjE2JzRRmOTuofv5Uur2qpsGA3JxTE52gONAjo8vvtCmuBRT1JmcMJXSK6Yp h1T1RAmmSifnRdg/gy6brJFvetW6UrloBVtFN4UhNsOyiffiKyt6/PBRRVGaMw/1zQK2YC nV3j1kq/Qc/tfnN2Gr8Y6fnNyREuZe+NPRbUXy5u048hvh4XPeUe7PAHNZWJpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674674257; a=rsa-sha256; cv=none; b=eu0Ez43CHqNEAVXANojePDs2E50ChThhHTEVTBlqGQFz1uDLZEgXHw9kXdr6+t286M05F1 fi1pIpfwYpbWFjnJ4y2zdJhbXFRHTEBsBMsa64ty6cAH6xeyOK7jSYSlCfZq78j89KWvRF GamsJXip1rEkXRwceVhTfOw8krjb5xDCA4JArgx+KK4p5rrxo+IuVhWY+DesXiZxSvTbri 0Lc/28GBjrpNCwNytY5qhr4CcT2YsI1UhdGoAa4Sv1xycEZbV4HflqtDVht20XzdnTO1Pd 31GtvophhlbFcMzYsnaFdsPTCsg3TXaOq7HVrbwiEWR0+vgUmFT1Hs2cGaEywA== 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 4P2DB86B1Xz10bb; Wed, 25 Jan 2023 19:17:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PJHa2S005946; Wed, 25 Jan 2023 19:17:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PJHVP4005933; Wed, 25 Jan 2023 19:17:31 GMT (envelope-from git) Date: Wed, 25 Jan 2023 19:17:31 GMT Message-Id: <202301251917.30PJHVP4005933@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: 15f0b8c309de - main - zfs: merge openzfs/zfs@9cd71c860 (master) 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: 15f0b8c309dea1dcb14d3e374686576ff68ac43f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=15f0b8c309dea1dcb14d3e374686576ff68ac43f commit 15f0b8c309dea1dcb14d3e374686576ff68ac43f Merge: da52fc464a4c 9cd71c8604d5 Author: Martin Matuska AuthorDate: 2023-01-25 18:50:29 +0000 Commit: Martin Matuska CommitDate: 2023-01-25 18:50:29 +0000 zfs: merge openzfs/zfs@9cd71c860 (master) Notable upstream pull request merges: #13805 Configure zed's diagnosis engine with vdev properties #14110 zfs list: Allow more fields in ZFS_ITER_SIMPLE mode #14121 Batch enqueue/dequeue for bqueue #14123 arc_read()/arc_access() refactoring and cleanup #14159 Bypass metaslab throttle for removal allocations #14243 Implement uncached prefetch #14251 Cache dbuf_hash() calculation #14253 Allow reciever to override encryption property in case of replication #14254 Restrict visibility of per-dataset kstats inside FreeBSD jails #14255 Zero end of embedded block buffer in dump_write_embedded() #14263 Cleanups identified by CodeQL and Coverity #14264 Miscellaneous fixes #14272 Change ZEVENT_POOL_GUID to ZEVENT_POOL to display pool names #14287 FreeBSD: Remove stray debug printf #14288 Colorize zfs diff output #14289 deadlock between spa_errlog_lock and dp_config_rwlock #14291 FreeBSD: Fix potential boot panic with bad label #14292 Add tunable to allow changing micro ZAP's max size #14293 Turn default_bs and default_ibs into ZFS_MODULE_PARAMs #14295 zed: add hotplug support for spare vdevs #14304 Activate filesystem features only in syncing context #14311 zpool: do guid-based comparison in is_vdev_cb() #14317 Pack zrlock_t by 8 bytes #14320 Update arc_summary and arcstat outputs #14328 FreeBSD: catch up to 1400077 #14376 Use setproctitle to report progress of zfs send #14340 Remove some dead ARC code #14358 Wait for txg sync if the last DRR_FREEOBJECTS might result in a hole #14360 libzpool: fix ddi_strtoull to update nptr #14364 Fix unprotected zfs_znode_dmu_fini #14379 zfs_receive_one: Check for the more likely error first #14380 Cleanup of dead code suggested by Clang Static Analyzer #14397 Avoid passing an uninitialized index to dsl_prop_known_index #14404 Fix reading uninitialized variable in receive_read #14407 free_blocks(): Fix reports from 2016 PVS Studio FreeBSD report #14418 Introduce minimal ZIL block commit delay #14422 x86 assembly: fix .size placement and replace .align with .balign Obtained from: OpenZFS OpenZFS commit: 9cd71c8604d52def22ffaddc35755712f0fb9349 lib/libbe/be.c | 8 +- lib/libbe/be_access.c | 6 +- lib/libbe/be_info.c | 4 +- .../.github/workflows/build-dependencies.txt | 6 + .../.github/workflows/zfs-tests-functional.yml | 17 +- .../openzfs/.github/workflows/zfs-tests-sanity.yml | 17 +- sys/contrib/openzfs/CODE_OF_CONDUCT.md | 2 +- sys/contrib/openzfs/META | 2 +- sys/contrib/openzfs/cmd/arc_summary | 173 +++-- sys/contrib/openzfs/cmd/arcstat.in | 119 ++- sys/contrib/openzfs/cmd/zdb/zdb.c | 44 +- sys/contrib/openzfs/cmd/zed/agents/zfs_agents.c | 2 +- sys/contrib/openzfs/cmd/zed/agents/zfs_diagnosis.c | 40 +- sys/contrib/openzfs/cmd/zed/agents/zfs_mod.c | 21 +- sys/contrib/openzfs/cmd/zed/agents/zfs_retire.c | 89 ++- .../openzfs/cmd/zed/zed.d/statechange-notify.sh | 4 +- sys/contrib/openzfs/cmd/zfs/zfs_iter.c | 65 +- sys/contrib/openzfs/cmd/zfs/zfs_iter.h | 12 +- sys/contrib/openzfs/cmd/zfs/zfs_main.c | 65 +- sys/contrib/openzfs/cmd/zhack.c | 3 +- sys/contrib/openzfs/cmd/zpool/zpool_main.c | 96 +-- .../openzfs/cmd/zstream/zstream_decompress.c | 22 +- .../openzfs/cmd/zstream/zstream_recompress.c | 22 +- sys/contrib/openzfs/cmd/zstream/zstream_redup.c | 22 +- sys/contrib/openzfs/cmd/ztest.c | 48 +- sys/contrib/openzfs/config/ax_python_devel.m4 | 71 +- sys/contrib/openzfs/config/deb.am | 28 +- sys/contrib/openzfs/config/kernel-acl.m4 | 50 +- sys/contrib/openzfs/config/kernel-tmpfile.m4 | 32 +- sys/contrib/openzfs/config/kernel.m4 | 32 + sys/contrib/openzfs/config/zfs-build.m4 | 1 + sys/contrib/openzfs/configure.ac | 2 + sys/contrib/openzfs/contrib/debian/.gitignore | 1 + sys/contrib/openzfs/contrib/debian/control | 3 +- .../contrib/debian/openzfs-libpam-zfs.postinst | 4 +- .../contrib/debian/openzfs-zfs-zed.postinst | 7 - .../openzfs/contrib/debian/openzfs-zfs-zed.prerm | 16 - .../contrib/debian/openzfs-zfsutils.install | 1 - .../contrib/debian/openzfs-zfsutils.postinst | 15 - .../openzfs/contrib/debian/{rules => rules.in} | 4 +- .../contrib/dracut/90zfs/zfs-load-key.sh.in | 2 +- sys/contrib/openzfs/contrib/initramfs/scripts/zfs | 22 +- .../openzfs/contrib/pam_zfs_key/pam_zfs_key.c | 2 +- .../system-generators/zfs-mount-generator.c | 9 +- .../openzfs/etc/systemd/system/zfs-zed.service.in | 2 +- sys/contrib/openzfs/include/Makefile.am | 1 + sys/contrib/openzfs/include/libzfs.h | 25 +- sys/contrib/openzfs/include/libzutil.h | 9 + sys/contrib/openzfs/include/os/freebsd/Makefile.am | 3 + .../include/os/freebsd/spl/sys/ia32/asm_linkage.h | 178 +++++ sys/contrib/openzfs/include/os/linux/Makefile.am | 4 + .../include/os/linux/kernel/linux/blkdev_compat.h | 4 + .../include/os/linux/kernel/linux/dcache_compat.h | 8 +- .../include/os/linux/kernel/linux/simd_powerpc.h | 15 + .../include/os/linux/spl/sys/ia32/asm_linkage.h | 212 ++++++ .../openzfs/include/os/linux/spl/sys/kmem.h | 3 + .../openzfs/include/os/linux/spl/sys/kmem_cache.h | 3 - .../openzfs/include/os/linux/zfs/sys/trace_arc.h | 6 +- sys/contrib/openzfs/include/os/linux/zfs/sys/zpl.h | 5 +- sys/contrib/openzfs/include/sys/arc.h | 8 +- sys/contrib/openzfs/include/sys/arc_impl.h | 63 +- sys/contrib/openzfs/include/sys/asm_linkage.h | 48 ++ sys/contrib/openzfs/include/sys/bqueue.h | 7 +- sys/contrib/openzfs/include/sys/dbuf.h | 9 +- sys/contrib/openzfs/include/sys/dnode.h | 8 +- sys/contrib/openzfs/include/sys/dsl_dir.h | 2 +- sys/contrib/openzfs/include/sys/fm/fs/zfs.h | 4 + sys/contrib/openzfs/include/sys/fs/zfs.h | 5 + sys/contrib/openzfs/include/sys/spa.h | 2 +- sys/contrib/openzfs/include/sys/vdev_impl.h | 8 + sys/contrib/openzfs/include/sys/zfs_znode.h | 2 + sys/contrib/openzfs/include/sys/zrlock.h | 3 +- sys/contrib/openzfs/lib/libicp/Makefile.am | 1 + sys/contrib/openzfs/lib/libspl/include/Makefile.am | 10 + .../include/os/freebsd/sys/ia32/asm_linkage.h | 184 +++++ .../include/os/linux}/sys/ia32/asm_linkage.h | 31 +- .../icp => lib/libspl}/include/sys/asm_linkage.h | 0 sys/contrib/openzfs/lib/libzfs/libzfs.abi | 27 +- sys/contrib/openzfs/lib/libzfs/libzfs_changelist.c | 6 +- sys/contrib/openzfs/lib/libzfs/libzfs_crypto.c | 2 +- sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c | 72 +- sys/contrib/openzfs/lib/libzfs/libzfs_diff.c | 40 + sys/contrib/openzfs/lib/libzfs/libzfs_iter.c | 53 +- sys/contrib/openzfs/lib/libzfs/libzfs_mount.c | 4 +- sys/contrib/openzfs/lib/libzfs/libzfs_pool.c | 62 +- sys/contrib/openzfs/lib/libzfs/libzfs_sendrecv.c | 114 ++- sys/contrib/openzfs/lib/libzfs/libzfs_status.c | 2 +- sys/contrib/openzfs/lib/libzfs/libzfs_util.c | 21 +- sys/contrib/openzfs/lib/libzpool/kernel.c | 6 +- sys/contrib/openzfs/lib/libzutil/Makefile.am | 1 + .../lib/libzutil/os/linux/zutil_setproctitle.c | 299 ++++++++ sys/contrib/openzfs/man/man1/arcstat.1 | 82 +- sys/contrib/openzfs/man/man4/zfs.4 | 26 +- sys/contrib/openzfs/man/man7/vdevprops.7 | 17 +- sys/contrib/openzfs/man/man8/zfs-send.8 | 24 +- sys/contrib/openzfs/man/man8/zfs.8 | 4 + sys/contrib/openzfs/module/Kbuild.in | 4 +- sys/contrib/openzfs/module/icp/algs/aes/aes_impl.c | 2 +- .../openzfs/module/icp/algs/aes/aes_impl_aesni.c | 9 +- .../openzfs/module/icp/algs/blake3/blake3_impl.h | 1 + .../openzfs/module/icp/algs/blake3/blake3_x86-64.c | 20 +- sys/contrib/openzfs/module/icp/algs/modes/ccm.c | 2 +- sys/contrib/openzfs/module/icp/algs/modes/gcm.c | 20 +- .../openzfs/module/icp/algs/modes/gcm_pclmulqdq.c | 3 +- sys/contrib/openzfs/module/icp/algs/sha2/sha2.c | 5 +- sys/contrib/openzfs/module/icp/api/kcf_ctxops.c | 2 +- .../openzfs/module/icp/asm-x86_64/aes/aes_aesni.S | 16 +- .../openzfs/module/icp/asm-x86_64/aes/aes_amd64.S | 60 +- .../module/icp/asm-x86_64/blake3/blake3_avx2.S | 12 +- .../module/icp/asm-x86_64/blake3/blake3_avx512.S | 30 +- .../module/icp/asm-x86_64/blake3/blake3_sse2.S | 32 +- .../module/icp/asm-x86_64/blake3/blake3_sse41.S | 31 +- .../module/icp/asm-x86_64/modes/aesni-gcm-x86_64.S | 86 +-- .../module/icp/asm-x86_64/modes/gcm_pclmulqdq.S | 2 +- .../module/icp/asm-x86_64/modes/ghash-x86_64.S | 58 +- .../module/icp/asm-x86_64/sha2/sha256_impl.S | 8 +- .../module/icp/asm-x86_64/sha2/sha512_impl.S | 11 +- sys/contrib/openzfs/module/icp/core/kcf_callprov.c | 2 +- .../openzfs/module/icp/include/aes/aes_impl.h | 9 +- .../openzfs/module/icp/include/sys/ia32/stack.h | 160 ---- .../openzfs/module/icp/include/sys/ia32/trap.h | 107 --- sys/contrib/openzfs/module/lua/ldo.c | 6 +- sys/contrib/openzfs/module/lua/lfunc.h | 4 +- sys/contrib/openzfs/module/lua/lgc.c | 2 +- sys/contrib/openzfs/module/lua/lgc.h | 2 +- sys/contrib/openzfs/module/lua/lobject.h | 4 +- sys/contrib/openzfs/module/lua/lvm.c | 2 +- .../openzfs/module/lua/setjmp/setjmp_aarch64.S | 2 +- sys/contrib/openzfs/module/lua/setjmp/setjmp_arm.S | 2 +- .../openzfs/module/lua/setjmp/setjmp_i386.S | 2 +- sys/contrib/openzfs/module/lua/setjmp/setjmp_ppc.S | 4 +- .../openzfs/module/lua/setjmp/setjmp_sparc64.S | 2 +- .../openzfs/module/lua/setjmp/setjmp_x86_64.S | 22 +- sys/contrib/openzfs/module/os/freebsd/spl/callb.c | 4 +- .../openzfs/module/os/freebsd/spl/spl_kstat.c | 89 ++- .../openzfs/module/os/freebsd/zfs/kmod_core.c | 7 +- sys/contrib/openzfs/module/os/freebsd/zfs/spa_os.c | 2 + .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 31 +- .../openzfs/module/os/freebsd/zfs/zfs_acl.c | 4 +- .../openzfs/module/os/freebsd/zfs/zfs_debug.c | 4 +- .../openzfs/module/os/freebsd/zfs/zfs_dir.c | 7 + .../openzfs/module/os/freebsd/zfs/zfs_znode.c | 4 +- .../openzfs/module/os/freebsd/zfs/zio_crypt.c | 3 +- .../openzfs/module/os/linux/spl/spl-kmem-cache.c | 10 +- .../openzfs/module/os/linux/spl/spl-thread.c | 5 +- sys/contrib/openzfs/module/os/linux/spl/spl-zone.c | 2 +- .../openzfs/module/os/linux/zfs/vdev_disk.c | 13 +- sys/contrib/openzfs/module/os/linux/zfs/zfs_acl.c | 6 +- .../openzfs/module/os/linux/zfs/zfs_debug.c | 6 +- sys/contrib/openzfs/module/os/linux/zfs/zfs_dir.c | 13 +- .../openzfs/module/os/linux/zfs/zfs_vnops_os.c | 6 +- .../openzfs/module/os/linux/zfs/zfs_znode.c | 9 +- .../openzfs/module/os/linux/zfs/zpl_inode.c | 27 + .../openzfs/module/os/linux/zfs/zpl_xattr.c | 11 +- sys/contrib/openzfs/module/unicode/u8_textprep.c | 21 +- sys/contrib/openzfs/module/zcommon/zfs_fletcher.c | 4 +- sys/contrib/openzfs/module/zcommon/zpool_prop.c | 12 + sys/contrib/openzfs/module/zfs/arc.c | 848 +++++++++++---------- sys/contrib/openzfs/module/zfs/blake3_zfs.c | 4 +- sys/contrib/openzfs/module/zfs/bqueue.c | 117 +-- sys/contrib/openzfs/module/zfs/dbuf.c | 136 ++-- sys/contrib/openzfs/module/zfs/dmu.c | 18 +- sys/contrib/openzfs/module/zfs/dmu_objset.c | 9 +- sys/contrib/openzfs/module/zfs/dmu_recv.c | 47 +- sys/contrib/openzfs/module/zfs/dmu_send.c | 15 +- sys/contrib/openzfs/module/zfs/dmu_traverse.c | 3 +- sys/contrib/openzfs/module/zfs/dmu_tx.c | 10 +- sys/contrib/openzfs/module/zfs/dmu_zfetch.c | 6 +- sys/contrib/openzfs/module/zfs/dnode.c | 5 + sys/contrib/openzfs/module/zfs/dnode_sync.c | 31 +- sys/contrib/openzfs/module/zfs/dsl_dataset.c | 23 +- sys/contrib/openzfs/module/zfs/dsl_dir.c | 5 +- sys/contrib/openzfs/module/zfs/dsl_prop.c | 2 +- sys/contrib/openzfs/module/zfs/dsl_scan.c | 10 +- sys/contrib/openzfs/module/zfs/fm.c | 3 +- sys/contrib/openzfs/module/zfs/metaslab.c | 13 +- sys/contrib/openzfs/module/zfs/spa.c | 2 +- sys/contrib/openzfs/module/zfs/spa_config.c | 2 + sys/contrib/openzfs/module/zfs/spa_errlog.c | 267 +++---- sys/contrib/openzfs/module/zfs/vdev.c | 137 +++- sys/contrib/openzfs/module/zfs/vdev_indirect.c | 2 +- .../zfs/vdev_raidz_math_powerpc_altivec_common.h | 44 +- sys/contrib/openzfs/module/zfs/vdev_removal.c | 6 +- sys/contrib/openzfs/module/zfs/zap.c | 4 +- sys/contrib/openzfs/module/zfs/zap_micro.c | 8 +- sys/contrib/openzfs/module/zfs/zcp.c | 10 +- sys/contrib/openzfs/module/zfs/zfs_chksum.c | 2 +- sys/contrib/openzfs/module/zfs/zfs_fm.c | 79 ++ sys/contrib/openzfs/module/zfs/zfs_fuid.c | 2 +- sys/contrib/openzfs/module/zfs/zfs_ioctl.c | 24 +- sys/contrib/openzfs/module/zfs/zfs_vnops.c | 2 +- sys/contrib/openzfs/module/zfs/zil.c | 36 +- sys/contrib/openzfs/module/zfs/zio.c | 2 +- sys/contrib/openzfs/module/zfs/zvol.c | 4 +- .../module/zstd/include/zstd_compat_wrapper.h | 2 - .../module/zstd/lib/common/fse_decompress.c | 11 - sys/contrib/openzfs/module/zstd/zfs_zstd.c | 4 +- sys/contrib/openzfs/scripts/debian-packaging.sh | 36 - sys/contrib/openzfs/tests/runfiles/common.run | 1 + sys/contrib/openzfs/tests/runfiles/linux.run | 2 +- sys/contrib/openzfs/tests/runfiles/sanity.run | 3 + .../openzfs/tests/test-runner/bin/zts-report.py.in | 10 +- .../openzfs/tests/zfs-tests/cmd/mmapwrite.c | 12 +- .../openzfs/tests/zfs-tests/tests/Makefile.am | 12 +- .../tests/functional/acl/posix/posix_004_pos.ksh | 3 + .../zfs_property/zfs_written_property_001_pos.ksh | 1 + .../zfs_receive/zfs_receive_to_encrypted.ksh | 14 + .../cli_root/zfs_send/zfs_send_006_pos.ksh | 32 +- .../tests/functional/events/zed_cksum_config.ksh | 158 ++++ .../tests/functional/events/zed_io_config.ksh | 150 ++++ .../tests/functional/l2arc/l2arc_mfuonly_pos.ksh | 2 +- .../tests/functional/renameat2/Makefile.am | 7 - .../rsend/send_encrypted_freeobjects.ksh | 87 +++ .../rsend/send_encrypted_incremental.ksh | 93 +++ .../functional/rsend/send_raw_large_blocks.ksh | 2 +- .../tests/functional/trim/autotrim_config.ksh | 1 + .../tests/functional/trim/trim_config.ksh | 1 + .../functional/zvol/zvol_misc/zvol_misc_trim.ksh | 1 + sys/modules/zfs/zfs_config.h | 17 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 220 files changed, 4467 insertions(+), 2127 deletions(-) diff --cc lib/libbe/be.c index 13f7a59d5215,000000000000..cc6b8533a8f9 mode 100644,000000..100644 --- a/lib/libbe/be.c +++ b/lib/libbe/be.c @@@ -1,1309 -1,0 +1,1309 @@@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2017 Kyle J. Kneitinger + * + * 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 REGENTS 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 REGENTS 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 +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "be.h" +#include "be_impl.h" + +struct promote_entry { + char name[BE_MAXPATHLEN]; + SLIST_ENTRY(promote_entry) link; +}; + +struct be_destroy_data { + libbe_handle_t *lbh; + char target_name[BE_MAXPATHLEN]; + char *snapname; + SLIST_HEAD(, promote_entry) promotelist; +}; + +#if SOON +static int be_create_child_noent(libbe_handle_t *lbh, const char *active, + const char *child_path); +static int be_create_child_cloned(libbe_handle_t *lbh, const char *active); +#endif + +/* Arbitrary... should tune */ +#define BE_SNAP_SERIAL_MAX 1024 + +/* + * Iterator function for locating the rootfs amongst the children of the + * zfs_be_root set by loader(8). data is expected to be a libbe_handle_t *. + */ +static int +be_locate_rootfs(libbe_handle_t *lbh) +{ + struct statfs sfs; + struct mnttab entry; + zfs_handle_t *zfs; + + /* + * Check first if root is ZFS; if not, we'll bail on rootfs capture. + * Unfortunately needed because zfs_path_to_zhandle will emit to + * stderr if / isn't actually a ZFS filesystem, which we'd like + * to avoid. + */ + if (statfs("/", &sfs) == 0) { + statfs2mnttab(&sfs, &entry); + if (strcmp(entry.mnt_fstype, MNTTYPE_ZFS) != 0) + return (1); + } else + return (1); + zfs = zfs_path_to_zhandle(lbh->lzh, "/", ZFS_TYPE_FILESYSTEM); + if (zfs == NULL) + return (1); + + strlcpy(lbh->rootfs, zfs_get_name(zfs), sizeof(lbh->rootfs)); + zfs_close(zfs); + return (0); +} + +/* + * Initializes the libbe context to operate in the root boot environment + * dataset, for example, zroot/ROOT. + */ +libbe_handle_t * +libbe_init(const char *root) +{ + char altroot[MAXPATHLEN]; + libbe_handle_t *lbh; + char *poolname, *pos; + int pnamelen; + + lbh = NULL; + poolname = pos = NULL; + + if ((lbh = calloc(1, sizeof(libbe_handle_t))) == NULL) + goto err; + + if ((lbh->lzh = libzfs_init()) == NULL) + goto err; + + /* + * Grab rootfs, we'll work backwards from there if an optional BE root + * has not been passed in. + */ + if (be_locate_rootfs(lbh) != 0) { + if (root == NULL) + goto err; + *lbh->rootfs = '\0'; + } + if (root == NULL) { + /* Strip off the final slash from rootfs to get the be root */ + strlcpy(lbh->root, lbh->rootfs, sizeof(lbh->root)); + pos = strrchr(lbh->root, '/'); + if (pos == NULL) + goto err; + *pos = '\0'; + } else + strlcpy(lbh->root, root, sizeof(lbh->root)); + + if ((pos = strchr(lbh->root, '/')) == NULL) + goto err; + + pnamelen = pos - lbh->root; + poolname = malloc(pnamelen + 1); + if (poolname == NULL) + goto err; + + strlcpy(poolname, lbh->root, pnamelen + 1); + if ((lbh->active_phandle = zpool_open(lbh->lzh, poolname)) == NULL) + goto err; + free(poolname); + poolname = NULL; + + if (zpool_get_prop(lbh->active_phandle, ZPOOL_PROP_BOOTFS, lbh->bootfs, + sizeof(lbh->bootfs), NULL, true) != 0) + goto err; + + if (zpool_get_prop(lbh->active_phandle, ZPOOL_PROP_ALTROOT, + altroot, sizeof(altroot), NULL, true) == 0 && + strcmp(altroot, "-") != 0) + lbh->altroot_len = strlen(altroot); + + return (lbh); +err: + if (lbh != NULL) { + if (lbh->active_phandle != NULL) + zpool_close(lbh->active_phandle); + if (lbh->lzh != NULL) + libzfs_fini(lbh->lzh); + free(lbh); + } + free(poolname); + return (NULL); +} + + +/* + * Free memory allocated by libbe_init() + */ +void +libbe_close(libbe_handle_t *lbh) +{ + + if (lbh->active_phandle != NULL) + zpool_close(lbh->active_phandle); + libzfs_fini(lbh->lzh); + free(lbh); +} + +/* + * Proxy through to libzfs for the moment. + */ +void +be_nicenum(uint64_t num, char *buf, size_t buflen) +{ + + zfs_nicenum(num, buf, buflen); +} + +static bool +be_should_promote_clones(zfs_handle_t *zfs_hdl, struct be_destroy_data *bdd) +{ + char *atpos; + + if (zfs_get_type(zfs_hdl) != ZFS_TYPE_SNAPSHOT) + return (false); + + /* + * If we're deleting a snapshot, we need to make sure we only promote + * clones that are derived from one of the snapshots we're deleting, + * rather than that of a snapshot we're not touching. This keeps stuff + * in a consistent state, making sure that we don't error out unless + * we really need to. + */ + if (bdd->snapname == NULL) + return (true); + + atpos = strchr(zfs_get_name(zfs_hdl), '@'); + return (strcmp(atpos + 1, bdd->snapname) == 0); +} + +/* + * This is executed from be_promote_dependent_clones via zfs_iter_dependents, + * It checks if the dependent type is a snapshot then attempts to find any + * clones associated with it. Any clones not related to the destroy target are + * added to the promote list. + */ +static int +be_dependent_clone_cb(zfs_handle_t *zfs_hdl, void *data) +{ + int err; + bool found; + char *name; + struct nvlist *nvl; + struct nvpair *nvp; + struct be_destroy_data *bdd; + struct promote_entry *entry, *newentry; + + nvp = NULL; + err = 0; + bdd = (struct be_destroy_data *)data; + + if (be_should_promote_clones(zfs_hdl, bdd) && + (nvl = zfs_get_clones_nvl(zfs_hdl)) != NULL) { + while ((nvp = nvlist_next_nvpair(nvl, nvp)) != NULL) { + name = nvpair_name(nvp); + + /* + * Skip if the clone is equal to, or a child of, the + * destroy target. + */ + if (strncmp(name, bdd->target_name, + strlen(bdd->target_name)) == 0 || + strstr(name, bdd->target_name) == name) { + continue; + } + + found = false; + SLIST_FOREACH(entry, &bdd->promotelist, link) { + if (strcmp(entry->name, name) == 0) { + found = true; + break; + } + } + + if (found) + continue; + + newentry = malloc(sizeof(struct promote_entry)); + if (newentry == NULL) { + err = ENOMEM; + break; + } + +#define BE_COPY_NAME(entry, src) \ + strlcpy((entry)->name, (src), sizeof((entry)->name)) + if (BE_COPY_NAME(newentry, name) >= + sizeof(newentry->name)) { + /* Shouldn't happen. */ + free(newentry); + err = ENAMETOOLONG; + break; + } +#undef BE_COPY_NAME + + /* + * We're building up a SLIST here to make sure both that + * we get the order right and so that we don't + * inadvertently observe the wrong state by promoting + * datasets while we're still walking the tree. The + * latter can lead to situations where we promote a BE + * then effectively demote it again. + */ + SLIST_INSERT_HEAD(&bdd->promotelist, newentry, link); + } + nvlist_free(nvl); + } + zfs_close(zfs_hdl); + return (err); +} + +/* + * This is called before a destroy, so that any datasets(environments) that are + * dependent on this one get promoted before destroying the target. + */ +static int +be_promote_dependent_clones(zfs_handle_t *zfs_hdl, struct be_destroy_data *bdd) +{ + int err; + zfs_handle_t *clone; + struct promote_entry *entry; + + snprintf(bdd->target_name, BE_MAXPATHLEN, "%s/", zfs_get_name(zfs_hdl)); - err = zfs_iter_dependents(zfs_hdl, true, be_dependent_clone_cb, bdd); ++ err = zfs_iter_dependents(zfs_hdl, 0, true, be_dependent_clone_cb, bdd); + + /* + * Drain the list and walk away from it if we're only deleting a + * snapshot. + */ + if (bdd->snapname != NULL && !SLIST_EMPTY(&bdd->promotelist)) + err = BE_ERR_HASCLONES; + while (!SLIST_EMPTY(&bdd->promotelist)) { + entry = SLIST_FIRST(&bdd->promotelist); + SLIST_REMOVE_HEAD(&bdd->promotelist, link); + +#define ZFS_GRAB_CLONE() \ + zfs_open(bdd->lbh->lzh, entry->name, ZFS_TYPE_FILESYSTEM) + /* + * Just skip this part on error, we still want to clean up the + * promotion list after the first error. We'll then preserve it + * all the way back. + */ + if (err == 0 && (clone = ZFS_GRAB_CLONE()) != NULL) { + err = zfs_promote(clone); + if (err != 0) + err = BE_ERR_DESTROYMNT; + zfs_close(clone); + } +#undef ZFS_GRAB_CLONE + free(entry); + } + + return (err); +} + +static int +be_destroy_cb(zfs_handle_t *zfs_hdl, void *data) +{ + char path[BE_MAXPATHLEN]; + struct be_destroy_data *bdd; + zfs_handle_t *snap; + int err; + + bdd = (struct be_destroy_data *)data; + if (bdd->snapname == NULL) { - err = zfs_iter_children(zfs_hdl, be_destroy_cb, data); ++ err = zfs_iter_children(zfs_hdl, 0, be_destroy_cb, data); + if (err != 0) + return (err); + return (zfs_destroy(zfs_hdl, false)); + } + /* If we're dealing with snapshots instead, delete that one alone */ - err = zfs_iter_filesystems(zfs_hdl, be_destroy_cb, data); ++ err = zfs_iter_filesystems(zfs_hdl, 0, be_destroy_cb, data); + if (err != 0) + return (err); + /* + * This part is intentionally glossing over any potential errors, + * because there's a lot less potential for errors when we're cleaning + * up snapshots rather than a full deep BE. The primary error case + * here being if the snapshot doesn't exist in the first place, which + * the caller will likely deem insignificant as long as it doesn't + * exist after the call. Thus, such a missing snapshot shouldn't jam + * up the destruction. + */ + snprintf(path, sizeof(path), "%s@%s", zfs_get_name(zfs_hdl), + bdd->snapname); + if (!zfs_dataset_exists(bdd->lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) + return (0); + snap = zfs_open(bdd->lbh->lzh, path, ZFS_TYPE_SNAPSHOT); + if (snap != NULL) + zfs_destroy(snap, false); + return (0); +} + +#define BE_DESTROY_WANTORIGIN (BE_DESTROY_ORIGIN | BE_DESTROY_AUTOORIGIN) +/* + * Destroy the boot environment or snapshot specified by the name + * parameter. Options are or'd together with the possible values: + * BE_DESTROY_FORCE : forces operation on mounted datasets + * BE_DESTROY_ORIGIN: destroy the origin snapshot as well + */ +static int +be_destroy_internal(libbe_handle_t *lbh, const char *name, int options, + bool odestroyer) +{ + struct be_destroy_data bdd; + char origin[BE_MAXPATHLEN], path[BE_MAXPATHLEN]; + zfs_handle_t *fs; + char *snapdelim; + int err, force, mounted; + size_t rootlen; + + bdd.lbh = lbh; + bdd.snapname = NULL; + SLIST_INIT(&bdd.promotelist); + force = options & BE_DESTROY_FORCE; + *origin = '\0'; + + be_root_concat(lbh, name, path); + + if ((snapdelim = strchr(path, '@')) == NULL) { + if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_FILESYSTEM)) + return (set_error(lbh, BE_ERR_NOENT)); + + if (strcmp(path, lbh->rootfs) == 0 || + strcmp(path, lbh->bootfs) == 0) + return (set_error(lbh, BE_ERR_DESTROYACT)); + + fs = zfs_open(lbh->lzh, path, ZFS_TYPE_FILESYSTEM); + if (fs == NULL) + return (set_error(lbh, BE_ERR_ZFSOPEN)); + + /* Don't destroy a mounted dataset unless force is specified */ + if ((mounted = zfs_is_mounted(fs, NULL)) != 0) { + if (force) { + zfs_unmount(fs, NULL, 0); + } else { + free(bdd.snapname); + return (set_error(lbh, BE_ERR_DESTROYMNT)); + } + } + } else { + /* + * If we're initially destroying a snapshot, origin options do + * not make sense. If we're destroying the origin snapshot of + * a BE, we want to maintain the options in case we need to + * fake success after failing to promote. + */ + if (!odestroyer) + options &= ~BE_DESTROY_WANTORIGIN; + if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) + return (set_error(lbh, BE_ERR_NOENT)); + + bdd.snapname = strdup(snapdelim + 1); + if (bdd.snapname == NULL) + return (set_error(lbh, BE_ERR_NOMEM)); + *snapdelim = '\0'; + fs = zfs_open(lbh->lzh, path, ZFS_TYPE_DATASET); + if (fs == NULL) { + free(bdd.snapname); + return (set_error(lbh, BE_ERR_ZFSOPEN)); + } + } + + /* + * Whether we're destroying a BE or a single snapshot, we need to walk + * the tree of what we're going to destroy and promote everything in our + * path so that we can make it happen. + */ + if ((err = be_promote_dependent_clones(fs, &bdd)) != 0) { + free(bdd.snapname); + + /* + * If we're just destroying the origin of some other dataset + * we were invoked to destroy, then we just ignore + * BE_ERR_HASCLONES and return success unless the caller wanted + * to force the issue. + */ + if (odestroyer && err == BE_ERR_HASCLONES && + (options & BE_DESTROY_AUTOORIGIN) != 0) + return (0); + return (set_error(lbh, err)); + } + + /* + * This was deferred until after we promote all of the derivatives so + * that we grab the new origin after everything's settled down. + */ + if ((options & BE_DESTROY_WANTORIGIN) != 0 && + zfs_prop_get(fs, ZFS_PROP_ORIGIN, origin, sizeof(origin), + NULL, NULL, 0, 1) != 0 && + (options & BE_DESTROY_ORIGIN) != 0) + return (set_error(lbh, BE_ERR_NOORIGIN)); + + /* + * If the caller wants auto-origin destruction and the origin + * name matches one of our automatically created snapshot names + * (i.e. strftime("%F-%T") with a serial at the end), then + * we'll set the DESTROY_ORIGIN flag and nuke it + * be_is_auto_snapshot_name is exported from libbe(3) so that + * the caller can determine if it needs to warn about the origin + * not being destroyed or not. + */ + if ((options & BE_DESTROY_AUTOORIGIN) != 0 && *origin != '\0' && + be_is_auto_snapshot_name(lbh, origin)) + options |= BE_DESTROY_ORIGIN; + + err = be_destroy_cb(fs, &bdd); + zfs_close(fs); + free(bdd.snapname); + if (err != 0) { + /* Children are still present or the mount is referenced */ + if (err == EBUSY) + return (set_error(lbh, BE_ERR_DESTROYMNT)); + return (set_error(lbh, BE_ERR_UNKNOWN)); + } + + if ((options & BE_DESTROY_ORIGIN) == 0) + return (0); + + /* The origin can't possibly be shorter than the BE root */ + rootlen = strlen(lbh->root); + if (*origin == '\0' || strlen(origin) <= rootlen + 1) + return (set_error(lbh, BE_ERR_INVORIGIN)); + + /* + * We'll be chopping off the BE root and running this back through + * be_destroy, so that we properly handle the origin snapshot whether + * it be that of a deep BE or not. + */ + if (strncmp(origin, lbh->root, rootlen) != 0 || origin[rootlen] != '/') + return (0); + + return (be_destroy_internal(lbh, origin + rootlen + 1, + options & ~BE_DESTROY_ORIGIN, true)); +} + +int +be_destroy(libbe_handle_t *lbh, const char *name, int options) +{ + + /* + * The consumer must not set both BE_DESTROY_AUTOORIGIN and + * BE_DESTROY_ORIGIN. Internally, we'll set the latter from the former. + * The latter should imply that we must succeed at destroying the + * origin, or complain otherwise. + */ + if ((options & BE_DESTROY_WANTORIGIN) == BE_DESTROY_WANTORIGIN) + return (set_error(lbh, BE_ERR_UNKNOWN)); + return (be_destroy_internal(lbh, name, options, false)); +} + +static void +be_setup_snapshot_name(libbe_handle_t *lbh, char *buf, size_t buflen) +{ + time_t rawtime; + int len, serial; + + time(&rawtime); + len = strlen(buf); + len += strftime(buf + len, buflen - len, "@%F-%T", localtime(&rawtime)); + /* No room for serial... caller will do its best */ + if (buflen - len < 2) + return; + + for (serial = 0; serial < BE_SNAP_SERIAL_MAX; ++serial) { + snprintf(buf + len, buflen - len, "-%d", serial); + if (!zfs_dataset_exists(lbh->lzh, buf, ZFS_TYPE_SNAPSHOT)) + return; + } +} + +bool +be_is_auto_snapshot_name(libbe_handle_t *lbh __unused, const char *name) +{ + const char *snap; + int day, hour, minute, month, second, serial, year; + + if ((snap = strchr(name, '@')) == NULL) + return (false); + ++snap; + /* We'll grab the individual components and do some light validation. */ + if (sscanf(snap, "%d-%d-%d-%d:%d:%d-%d", &year, &month, &day, &hour, + &minute, &second, &serial) != 7) + return (false); + return (year >= 1970) && (month >= 1 && month <= 12) && + (day >= 1 && day <= 31) && (hour >= 0 && hour <= 23) && + (minute >= 0 && minute <= 59) && (second >= 0 && second <= 60) && + serial >= 0; +} + +int +be_snapshot(libbe_handle_t *lbh, const char *source, const char *snap_name, + bool recursive, char *result) +{ + char buf[BE_MAXPATHLEN]; + int err; + + be_root_concat(lbh, source, buf); + + if ((err = be_exists(lbh, buf)) != 0) + return (set_error(lbh, err)); + + if (snap_name != NULL) { + if (strlcat(buf, "@", sizeof(buf)) >= sizeof(buf)) + return (set_error(lbh, BE_ERR_INVALIDNAME)); + + if (strlcat(buf, snap_name, sizeof(buf)) >= sizeof(buf)) + return (set_error(lbh, BE_ERR_INVALIDNAME)); + + if (result != NULL) + snprintf(result, BE_MAXPATHLEN, "%s@%s", source, + snap_name); + } else { + be_setup_snapshot_name(lbh, buf, sizeof(buf)); + + if (result != NULL && strlcpy(result, strrchr(buf, '/') + 1, + sizeof(buf)) >= sizeof(buf)) + return (set_error(lbh, BE_ERR_INVALIDNAME)); + } + if ((err = zfs_snapshot(lbh->lzh, buf, recursive, NULL)) != 0) { + switch (err) { + case EZFS_INVALIDNAME: + return (set_error(lbh, BE_ERR_INVALIDNAME)); + + default: + /* + * The other errors that zfs_ioc_snapshot might return + * shouldn't happen if we've set things up properly, so + * we'll gloss over them and call it UNKNOWN as it will + * require further triage. + */ + if (errno == ENOTSUP) + return (set_error(lbh, BE_ERR_NOPOOL)); + return (set_error(lbh, BE_ERR_UNKNOWN)); + } + } + + return (BE_ERR_SUCCESS); +} + + +/* + * Create the boot environment specified by the name parameter + */ +int +be_create(libbe_handle_t *lbh, const char *name) +{ + int err; + + err = be_create_from_existing(lbh, name, be_active_path(lbh)); + + return (set_error(lbh, err)); +} + +static int +be_deep_clone_prop(int prop, void *cb) +{ + int err; + struct libbe_dccb *dccb; + zprop_source_t src; + char pval[BE_MAXPATHLEN]; + char source[BE_MAXPATHLEN]; + char *val; + + dccb = cb; + /* Skip some properties we don't want to touch */ + if (prop == ZFS_PROP_CANMOUNT) + return (ZPROP_CONT); + + /* Don't copy readonly properties */ + if (zfs_prop_readonly(prop)) + return (ZPROP_CONT); + + if ((err = zfs_prop_get(dccb->zhp, prop, (char *)&pval, + sizeof(pval), &src, (char *)&source, sizeof(source), false))) + /* Just continue if we fail to read a property */ + return (ZPROP_CONT); + + /* + * Only copy locally defined or received properties. This continues + * to avoid temporary/default/local properties intentionally without + * breaking received datasets. + */ + if (src != ZPROP_SRC_LOCAL && src != ZPROP_SRC_RECEIVED) + return (ZPROP_CONT); + + /* Augment mountpoint with altroot, if needed */ + val = pval; + if (prop == ZFS_PROP_MOUNTPOINT) + val = be_mountpoint_augmented(dccb->lbh, val); + + nvlist_add_string(dccb->props, zfs_prop_to_name(prop), val); + + return (ZPROP_CONT); +} + +/* + * Return the corresponding boot environment path for a given + * dataset path, the constructed path is placed in 'result'. + * + * example: say our new boot environment name is 'bootenv' and + * the dataset path is 'zroot/ROOT/default/data/set'. + * + * result should produce: 'zroot/ROOT/bootenv/data/set' *** 2396 LINES SKIPPED *** From nobody Wed Jan 25 21:38: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 4P2HKC0CFZz3bW7X; Wed, 25 Jan 2023 21:38: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 4P2HKB6X1Bz40Tn; Wed, 25 Jan 2023 21:38:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682734; 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=A4pcBTLKL6NDMlv7W6ASy37rrbUkmHgJGWugdTWd+Pw=; b=f8nHkatDKiFyOt8sHT6VK/V1cQT2LE9vHzHzcmgx3BsHun/pWpvbVbuvvN4XU09xcu19uZ vKXc/SDsc0zp+phQK8hrEVRRCB0seK5FHeFVxoBlHvXJjSMCPCooVmZZTcb96j+U1+XKIE ooa062RFI5BFt+1r/BXLxEu/DsvHn30o+YQgLqvThi4odvc+2naxwHlAqberX1Nr0QOntf UORLZJoNIZ0DlKtSjpF3QqNmtb4of6Mvp+jtfjO2Tdn6DUwEDxA9xI9eKzM5rFIlcNjU4l JKffjQ9lmWun9jUV+jHfqn2KVq7MEOwOzwV1ZiXOLEMXutUeG6+JDXOomyFefw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682734; 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=A4pcBTLKL6NDMlv7W6ASy37rrbUkmHgJGWugdTWd+Pw=; b=rUU34xyzbits27vIJsIPxKvIqiAOUfBwi7vrhf02eIf7G0Jxgv8R3Y5UqLt47f5QuTaaMU u/K7bfE4aapOPUdAjkWsrp1ZSq3Fs6AjCW3ZVYhtC/tPvenvAb4QzI7gmnb8+30Tt4Sqef NvCWwmP3lOuD4igWkv3JSBnRtOn/zzwC+W0uuv8LhukCcTX0icTqv3yIgQIF8DzSIAGkyF xBaZJSbHkEZFivsztICErgk+vA9u5bL6EOJY/dbDU+eDU7+ccrzvmP2i+MMTiVMWdJmHJe G7LVpTiSvVk+uQDLFYfh9Y045yAsVxsnGG4FalNHLUiycAhpatT3V70zvc799g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682734; a=rsa-sha256; cv=none; b=Aqy9xK8blxohmGK59enJ8lRZPCYpsm6d8Dc/B51njF5zAxNGt6M/iT5pJF3Wf1H2WGQ58h qjtNGgvF50v+m5sDGxU8Xx1SMyaZ/2zrgP6oHGP6KRbAVJ68hhuA6dYKFFJFNRFNSOybUM ckWbCeMprW/OzERnMlvWalOxuHQS4CBs3JL5onBs4LYuVpFHrJdLLY3YPDNJelfLVFGv5k TfFJ/6cckcfRft9Gu/ctAofy1cDIYAkqzhmEigYJgh/ICzAVz3PqTS3C0oopmW6XXVL7r0 XrAqOiSX5jMIbH07OHM4cJgK70uZUaqiCrBYEsMbAYJcd01lek5XtpYLYFeLMg== 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 4P2HKB5Z3mz14jj; Wed, 25 Jan 2023 21:38:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLcs5F007382; Wed, 25 Jan 2023 21:38:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLcsSd007381; Wed, 25 Jan 2023 21:38:54 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:38:54 GMT Message-Id: <202301252138.30PLcsSd007381@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=20P=C3=A9dron?= Subject: git: f2044a3030fb - main - lindebugfs: Add `debugfs_create_atomic_t()` 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: f2044a3030fb2a657e59dee4b7e5865acff936bd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=f2044a3030fb2a657e59dee4b7e5865acff936bd commit f2044a3030fb2a657e59dee4b7e5865acff936bd Author: Jean-Sébastien Pédron AuthorDate: 2022-12-30 10:00:57 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:32 +0000 lindebugfs: Add `debugfs_create_atomic_t()` Reviewed by: jfree Approved by: jfree Differential Revision: https://reviews.freebsd.org/D37915 --- sys/compat/lindebugfs/lindebugfs.c | 30 ++++++++++++++++++++++ sys/compat/linuxkpi/common/include/linux/debugfs.h | 2 ++ 2 files changed, 32 insertions(+) diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index b72ceb5e0be9..11a6dac579ac 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -69,6 +69,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -424,6 +425,35 @@ debugfs_create_ulong(const char *name, umode_t mode, struct dentry *parent, unsi } +static int +debugfs_atomic_t_get(void *data, uint64_t *value) +{ + atomic_t *atomic_data = data; + *value = atomic_read(atomic_data); + return (0); +} + +static int +debugfs_atomic_t_set(void *data, uint64_t value) +{ + atomic_t *atomic_data = data; + atomic_set(atomic_data, (int)value); + return (0); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_atomic_t, debugfs_atomic_t_get, debugfs_atomic_t_set, "%d\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_atomic_t_ro, debugfs_atomic_t_get, NULL, "%d\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_atomic_t_wo, NULL, debugfs_atomic_t_set, "%d\n"); + +void +debugfs_create_atomic_t(const char *name, umode_t mode, struct dentry *parent, atomic_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_atomic_t, + &fops_atomic_t_ro, &fops_atomic_t_wo); +} + + static ssize_t fops_blob_read(struct file *filp, char __user *ubuf, size_t read_size, loff_t *ppos) { diff --git a/sys/compat/linuxkpi/common/include/linux/debugfs.h b/sys/compat/linuxkpi/common/include/linux/debugfs.h index 4c9f52a0bc0f..422b96006b04 100644 --- a/sys/compat/linuxkpi/common/include/linux/debugfs.h +++ b/sys/compat/linuxkpi/common/include/linux/debugfs.h @@ -84,6 +84,8 @@ void debugfs_create_u8(const char *name, umode_t mode, struct dentry *parent, uint8_t *value); void debugfs_create_ulong(const char *name, umode_t mode, struct dentry *parent, unsigned long *value); +void debugfs_create_atomic_t(const char *name, umode_t mode, struct dentry *parent, + atomic_t *value); struct dentry *debugfs_create_blob(const char *name, umode_t mode, struct dentry *parent, struct debugfs_blob_wrapper *value); From nobody Wed Jan 25 21:38: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 4P2HKD18tMz3bW0t; Wed, 25 Jan 2023 21:38: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 4P2HKD0JGkz40VJ; Wed, 25 Jan 2023 21:38:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682736; 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=ztoCP9WnNQSMAMeRF8rF3LTs+3iYo5yvMs6cZkO5piw=; b=TEVaNZyqR+nbLv9uVtesnCrEUyn+DLhsLaosRvplYx3xhSyHvenGmk9JO7zWaXSBajWjGt JyjjeYVglwKZyh79EJhuOGfhlEKS8BMmki8syok6uoa/JTEZijYgyGMBDOyNdCAUOtjga8 PDfXB+nmGTwsDrWGIgqT1Q0OCq3K6Jui3VuaIBoUCWfpcKqZQCzeSipYPPVMAz8EPe77MI vp5xBXzfO+IHvkZxxbNsXWdXjVppPRQQmVkarMUzKT+IpFwRW0RMhoPhsoHZnwH83zWDKk FmQjige96WAGL131OYWzb3dUbNgnxbqwbiak/IsqgHJurvDpfDdwzXnjtaWnQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682736; 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=ztoCP9WnNQSMAMeRF8rF3LTs+3iYo5yvMs6cZkO5piw=; b=G7cmmwsnTU1xQJRMn3J1gRiC1viDXyxC5k64p1wMJBkJMvHgQxTNPJiZmYjdOdE2srd/mM A8c9B7Q1V5DonvDyldGLE/iaDrBg76pTf9BECy4MCaFK9zNN/QVWrn2it5PqDkXe2zlxQh XzTMwd4Lw3PhoR1GeS1kPjw0rjhYewQNjvmaltK8ythmhi2kEt89RKMUM5vK6jSMfv0QTu PQjGVSS5QfFUF6scvhaoCZyEfcxqIYND+Iwj51m5+8N+fi3boRE/2qmRO3m1fh5+mbqtk3 eFxLLV64jBF2OEh/ly5UoufUufxBD8hr5ESU2bZpZSd3xI24OM80I68n8c5MtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682736; a=rsa-sha256; cv=none; b=KU9XR0Gf2hLh1oZ7lKl5zzDTkxbYzvj/PWjF7BCOm/lJXafmez2PC2YPBuw5jtSE0k3KTW CMzhntBaaE2kB0Idp+B3lZbHfiUBIm34PPlwJmCwd8QTL7gnITxM/uHFpQVwlOfLe3RNz+ qgLhqBJ6/gFCVzVHIxy2qCIdC7mQktbuUNy7xku+hwC/jI5JOOjW01cJJ9iZRsB3/rZP+a nWV6QyStJnuzg22EqhQJPlxEyNOzpjzu7P4E4q/weAwDGQ4UpkK4LgvdWdT80HOxcARlm6 AyHkI1youLIN4dWC+UVIOqXALaSwsNH5i3Ws/eS0zsaPZ5DHnO6xUB6zKT0+gg== 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 4P2HKC6SVNz14Wj; Wed, 25 Jan 2023 21:38:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLctjN007413; Wed, 25 Jan 2023 21:38:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLctIG007412; Wed, 25 Jan 2023 21:38:55 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:38:55 GMT Message-Id: <202301252138.30PLctIG007412@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=20P=C3=A9dron?= Subject: git: 976aa07a885b - main - lindebugfs: Add missing `debugfs_create_u*()` and `debugfs_create_x*()` 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: 976aa07a885b53e1bc2711082d2f6f113dbdd0bc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=976aa07a885b53e1bc2711082d2f6f113dbdd0bc commit 976aa07a885b53e1bc2711082d2f6f113dbdd0bc Author: Jean-Sébastien Pédron AuthorDate: 2023-01-12 23:41:32 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:52 +0000 lindebugfs: Add missing `debugfs_create_u*()` and `debugfs_create_x*()` The `debugfs_create_x*()` variants are the same as their `debugfs_create_u*()` equivalent, but they work with lowercase hexadecimal. While here, fix a few style(9) issues. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38087 --- sys/compat/lindebugfs/lindebugfs.c | 140 +++++++++++++++++++++ sys/compat/linuxkpi/common/include/linux/debugfs.h | 14 +++ 2 files changed, 154 insertions(+) diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index 11a6dac579ac..8e878b1cd446 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -364,6 +364,7 @@ DEFINE_DEBUGFS_ATTRIBUTE(fops_bool_wo, NULL, debugfs_bool_set, "%llu\n"); void debugfs_create_bool(const char *name, umode_t mode, struct dentry *parent, bool *value) { + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_bool, &fops_bool_ro, &fops_bool_wo); } @@ -392,10 +393,146 @@ DEFINE_DEBUGFS_ATTRIBUTE(fops_u8_wo, NULL, debugfs_u8_set, "%u\n"); void debugfs_create_u8(const char *name, umode_t mode, struct dentry *parent, uint8_t *value) { + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_u8, &fops_u8_ro, &fops_u8_wo); } +DEFINE_DEBUGFS_ATTRIBUTE(fops_x8, debugfs_u8_get, debugfs_u8_set, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x8_ro, debugfs_u8_get, NULL, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x8_wo, NULL, debugfs_u8_set, "0x%016llx\n"); + +void +debugfs_create_x8(const char *name, umode_t mode, struct dentry *parent, uint8_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_x8, + &fops_x8_ro, &fops_x8_wo); +} + + +static int +debugfs_u16_get(void *data, uint64_t *value) +{ + uint16_t *u16data = data; + *value = *u16data; + return (0); +} + +static int +debugfs_u16_set(void *data, uint64_t value) +{ + uint16_t *u16data = data; + *u16data = (uint16_t)value; + return (0); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_u16, debugfs_u16_get, debugfs_u16_set, "%u\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_u16_ro, debugfs_u16_get, NULL, "%u\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_u16_wo, NULL, debugfs_u16_set, "%u\n"); + +void +debugfs_create_u16(const char *name, umode_t mode, struct dentry *parent, uint16_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_u16, + &fops_u16_ro, &fops_u16_wo); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_x16, debugfs_u16_get, debugfs_u16_set, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x16_ro, debugfs_u16_get, NULL, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x16_wo, NULL, debugfs_u16_set, "0x%016llx\n"); + +void +debugfs_create_x16(const char *name, umode_t mode, struct dentry *parent, uint16_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_x16, + &fops_x16_ro, &fops_x16_wo); +} + + +static int +debugfs_u32_get(void *data, uint64_t *value) +{ + uint32_t *u32data = data; + *value = *u32data; + return (0); +} + +static int +debugfs_u32_set(void *data, uint64_t value) +{ + uint32_t *u32data = data; + *u32data = (uint32_t)value; + return (0); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_u32, debugfs_u32_get, debugfs_u32_set, "%u\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_u32_ro, debugfs_u32_get, NULL, "%u\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_u32_wo, NULL, debugfs_u32_set, "%u\n"); + +void +debugfs_create_u32(const char *name, umode_t mode, struct dentry *parent, uint32_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_u32, + &fops_u32_ro, &fops_u32_wo); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_x32, debugfs_u32_get, debugfs_u32_set, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x32_ro, debugfs_u32_get, NULL, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x32_wo, NULL, debugfs_u32_set, "0x%016llx\n"); + +void +debugfs_create_x32(const char *name, umode_t mode, struct dentry *parent, uint32_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_x32, + &fops_x32_ro, &fops_x32_wo); +} + + +static int +debugfs_u64_get(void *data, uint64_t *value) +{ + uint64_t *u64data = data; + *value = *u64data; + return (0); +} + +static int +debugfs_u64_set(void *data, uint64_t value) +{ + uint64_t *u64data = data; + *u64data = (uint64_t)value; + return (0); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_u64, debugfs_u64_get, debugfs_u64_set, "%u\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_u64_ro, debugfs_u64_get, NULL, "%u\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_u64_wo, NULL, debugfs_u64_set, "%u\n"); + +void +debugfs_create_u64(const char *name, umode_t mode, struct dentry *parent, uint64_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_u64, + &fops_u64_ro, &fops_u64_wo); +} + +DEFINE_DEBUGFS_ATTRIBUTE(fops_x64, debugfs_u64_get, debugfs_u64_set, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x64_ro, debugfs_u64_get, NULL, "0x%016llx\n"); +DEFINE_DEBUGFS_ATTRIBUTE(fops_x64_wo, NULL, debugfs_u64_set, "0x%016llx\n"); + +void +debugfs_create_x64(const char *name, umode_t mode, struct dentry *parent, uint64_t *value) +{ + + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_x64, + &fops_x64_ro, &fops_x64_wo); +} + static int debugfs_ulong_get(void *data, uint64_t *value) @@ -420,6 +557,7 @@ DEFINE_DEBUGFS_ATTRIBUTE(fops_ulong_wo, NULL, debugfs_ulong_set, "%llu\n"); void debugfs_create_ulong(const char *name, umode_t mode, struct dentry *parent, unsigned long *value) { + debugfs_create_mode_unsafe(name, mode, parent, value, &fops_ulong, &fops_ulong_ro, &fops_ulong_wo); } @@ -471,6 +609,7 @@ fops_blob_read(struct file *filp, char __user *ubuf, size_t read_size, loff_t *p static int fops_blob_open(struct inode *inode, struct file *filp) { + return (simple_open(inode, filp)); } @@ -504,6 +643,7 @@ lindebugfs_init(PFS_INIT_ARGS) static int lindebugfs_uninit(PFS_INIT_ARGS) { + return (0); } diff --git a/sys/compat/linuxkpi/common/include/linux/debugfs.h b/sys/compat/linuxkpi/common/include/linux/debugfs.h index 422b96006b04..074f709114eb 100644 --- a/sys/compat/linuxkpi/common/include/linux/debugfs.h +++ b/sys/compat/linuxkpi/common/include/linux/debugfs.h @@ -82,6 +82,20 @@ void debugfs_create_bool(const char *name, umode_t mode, struct dentry *parent, bool *value); void debugfs_create_u8(const char *name, umode_t mode, struct dentry *parent, uint8_t *value); +void debugfs_create_u16(const char *name, umode_t mode, struct dentry *parent, + uint16_t *value); +void debugfs_create_u32(const char *name, umode_t mode, struct dentry *parent, + uint32_t *value); +void debugfs_create_u64(const char *name, umode_t mode, struct dentry *parent, + uint64_t *value); +void debugfs_create_x8(const char *name, umode_t mode, struct dentry *parent, + uint8_t *value); +void debugfs_create_x16(const char *name, umode_t mode, struct dentry *parent, + uint16_t *value); +void debugfs_create_x32(const char *name, umode_t mode, struct dentry *parent, + uint32_t *value); +void debugfs_create_x64(const char *name, umode_t mode, struct dentry *parent, + uint64_t *value); void debugfs_create_ulong(const char *name, umode_t mode, struct dentry *parent, unsigned long *value); void debugfs_create_atomic_t(const char *name, umode_t mode, struct dentry *parent, From nobody Wed Jan 25 21:38: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 4P2HKF1Z52z3bW7c; Wed, 25 Jan 2023 21:38: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 4P2HKF0yg4z40MB; Wed, 25 Jan 2023 21:38:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682737; 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=yWsK8QNWqif31/dyUYjyP6cvdfVH/7KWq66wZIBHqcg=; b=Wn6i8zWxUdB+4NS1IbuFQkjbiY5BgNE2hjcSzziEdkd4SgINxogkeL6Q0FoX3bwnnfx5s4 LBOKJWxSzXdI107KUhJWJSadZrL3SeIIXK5I1cJHpO8+I8hnT/y62yo2AOzGZ1e0NkLg1J vuBzB0fIFUbWxiZsEgj7qho2Ba4Jm4uLS0CxjvGI1U4I3elGodVAxmp+OLQucKUwyAQ18U 1dItJDUJvkEydcLpyf4zJwBBhflVUz67vNSjlzMmIz8kvdmeKuaTlgROkrCIdqhE8kaWMW QgufnH4RXY4CquJC0uy1Kqv/zH9afxp1J5uBs+mBgGlBluK0tvK4Oe5xeDoE5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682737; 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=yWsK8QNWqif31/dyUYjyP6cvdfVH/7KWq66wZIBHqcg=; b=oQ1ykpBRdBXeG5z0TxbxUxyJZgQyUxFAa/2N/2ewyiqW5sxes/fFO9A2XH5i2WJUnNVp9t ZUedd8RdahBT0tIiWxekqdIAVA26mg0Zt8YLMvIifnfOGUo58Sv3SK0V0/zT4DHsVAdy06 je5JnTOINV/GcEjqXWoD0hRnjPejAgVfR88ai4n+B/8+buJmgQVXfs2P5P5InIB0yIPHq8 aZXMJn+y9TUOjyUMtQzGno2EG5ytWdxQj995bKN9HzOfQHfuDfOKEAP6C9z1Cvv8M9O5fn PaIBXVM+2CuxD2uylxlIWcwpNrKzJia2oCRSc0eydMttGh8X69WSlrzzWZ/WqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682737; a=rsa-sha256; cv=none; b=bh4nae/WJan6nJLix6eIqvJROFqGJy7rEEW0Bqch6My3q2oIYqmCACs8x5trpbhsQLhxHG 18TXx9TF6j2Z/goc2M6bIltCRiFNdM7Y/ZDDs5WKNHr6oFC8SHmR7onawWRt/sAAl0jJrg 9L3JKNiAKU79WSwey1WPgY4Md8+PDCjuw9v5T50DA2JAKr55ADEHarNSbnTrpxjSuxp6S7 tQj1cn/+2SJMiZgctPSnNS9MaznD+MOjhGcU+CnCgUpt3k7rIiH6urE1ZxmmjzXCUoAHlG bM0flH39IXIh6GewM4L1tDV4OiIxxa6t2rL8BHiMaXYXqP4cSvXuxvhJkUgUXA== 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 4P2HKF050Cz14R2; Wed, 25 Jan 2023 21:38:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLcu5p007442; Wed, 25 Jan 2023 21:38:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLcuJS007441; Wed, 25 Jan 2023 21:38:56 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:38:56 GMT Message-Id: <202301252138.30PLcuJS007441@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=20P=C3=A9dron?= Subject: git: a609ed795943 - main - linuxkpi: Define `synchronize_hardirq()` 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: a609ed795943673074b71aeafafabe46d08f1a6d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=a609ed795943673074b71aeafafabe46d08f1a6d commit a609ed795943673074b71aeafafabe46d08f1a6d Author: Jean-Sébastien Pédron AuthorDate: 2023-01-11 00:27:40 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:53 +0000 linuxkpi: Define `synchronize_hardirq()` It currently does the same as `synchronize_irq()`. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38079 --- sys/compat/linuxkpi/common/include/linux/hardirq.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/hardirq.h b/sys/compat/linuxkpi/common/include/linux/hardirq.h index 07f00f076860..9e7baec1b213 100644 --- a/sys/compat/linuxkpi/common/include/linux/hardirq.h +++ b/sys/compat/linuxkpi/common/include/linux/hardirq.h @@ -40,4 +40,14 @@ #define synchronize_irq(irq) _intr_drain((irq)) +/* + * FIXME: In the i915 driver's `intel_engine_cs.c` file, + * `synchronize_hardirq()` was replaced by `synchronize_rcu()` with the + * following comment: + * "Is it enough to wait that all cpu have context-switched?" + * + * See commit f6d50b7af554e21c380486d6f41c8537b265c777 in drm-kmod. + */ +#define synchronize_hardirq(irq) _intr_drain((irq)) + #endif /* _LINUXKPI_LINUX_HARDIRQ_H_ */ From nobody Wed Jan 25 21:38: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 4P2HKG3Zf0z3bW7j; Wed, 25 Jan 2023 21:38: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 4P2HKG1w0Dz40lt; Wed, 25 Jan 2023 21:38:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682738; 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=C9qpRnmgxOyFb2LpxFc1ce0rXvo4vLIkAapUPhMx8PM=; b=TYNfs/c+5PFZONfgzAa94CXcWzvIFds4Dej28FwAlqZ/cKF5ksBDnwLZezqsHn4jEwu2/i hg5Tyqgrccrp7wB4jawpQ6Zf8AsOML4R6jxNYtcYDDQvq+YePT4bdUNErc62atObpOSnYR iJaRvzrRZ0TGmSh1NwbJCAGnw7VAgWHTcZVMkua9k5l5l1hNOOEJN++yUROj9ypdLC6H00 vCahmfUVrzNlkTAlu3pAdEznpMq73Xl2nakGq/4HyZHALxkaopz8+/VElzkU9nbkWyfr59 fBhAHiZHpKU16na+Rv7xiNgNVHRxqR0Mepz1SdQ1yS07TUkGbV3eBzPFTYx31g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682738; 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=C9qpRnmgxOyFb2LpxFc1ce0rXvo4vLIkAapUPhMx8PM=; b=n8HV0EEDpbMwsms1gbP6hRNTYBBtTqBrC17XDZzjBBMrJgn7BixPcACcqiLJaZ8gdE0Fui 1+oVP5I0LfY/RktxrJTcZ4GfVt4HWpxtv6/Tfdc2aUCY3pFW0iFZPtTYfJK8xe2vaQgxGA VvX0IZabAu5Sil4sjDJQHjxnK2lPjJVUtnWNkvwjOy1sgkSlnS0EDyPU5J8sMdRejeJJzK Oy5LWmnFE2gCWVFSRmmAaH+NdZ8lGk/K4bM6e6kKk+EHhq0LtWp5J5tRH0xGl3CVnWdiia 2TshWf1tpW731LAkfprpCQf4tKfsX6Udom4GUkDgvP5zBoaqQPgATX3z+Dknng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682738; a=rsa-sha256; cv=none; b=xElYnVKmS441zroCmhMVnfDz9iEmFzRoKswET3wVSsCaemExugWFPODuKAGJ1qiY8nYo5Q vt2WIJFUFEzn82vGRN9TCCFYGUaR9jB5q+8YOa9PQ2/Qj+jGRyok7Bg6t6pF7AntLfeDfi cd3cZ4rWg23pPA8keITHq5NOv/5LoPT9LWTogFg22G6VxLdx9lgeljQrywe4+lbf55wWD7 ov1RMxL88TCdl4ctQ7lqkVbpGgo9RMo0ug+iZnQVfoKB62KZXOWFe58Vqt5S9n+o+68DRX u9ZjiMKDvFSWgpq4Os0TLwRruFga74JyB/gi8ed76gOKaHohEc5S2WxwclIf6Q== 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 4P2HKG11WCz14nF; Wed, 25 Jan 2023 21:38:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLcwDl007471; Wed, 25 Jan 2023 21:38:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLcw5N007470; Wed, 25 Jan 2023 21:38:58 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:38:58 GMT Message-Id: <202301252138.30PLcw5N007470@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=20P=C3=A9dron?= Subject: git: 2272ccaa68c5 - main - linuxkpi: Define `tasklet_unlock_spin_wait()` as `tasklet_unlock_wait()` 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: 2272ccaa68c550e0e29801b9d881b2ea5ba12efa Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=2272ccaa68c550e0e29801b9d881b2ea5ba12efa commit 2272ccaa68c550e0e29801b9d881b2ea5ba12efa Author: Jean-Sébastien Pédron AuthorDate: 2023-01-11 00:48:43 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:53 +0000 linuxkpi: Define `tasklet_unlock_spin_wait()` as `tasklet_unlock_wait()` Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38080 --- sys/compat/linuxkpi/common/include/linux/interrupt.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/interrupt.h b/sys/compat/linuxkpi/common/include/linux/interrupt.h index f56140632605..aa9360ead910 100644 --- a/sys/compat/linuxkpi/common/include/linux/interrupt.h +++ b/sys/compat/linuxkpi/common/include/linux/interrupt.h @@ -176,5 +176,6 @@ extern void tasklet_disable_nosync(struct tasklet_struct *); extern int tasklet_trylock(struct tasklet_struct *); extern void tasklet_unlock(struct tasklet_struct *); extern void tasklet_unlock_wait(struct tasklet_struct *ts); +#define tasklet_unlock_spin_wait(ts) tasklet_unlock_wait(ts) #endif /* _LINUXKPI_LINUX_INTERRUPT_H_ */ From nobody Wed Jan 25 21:38: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 4P2HKH3rZQz3bW2s; Wed, 25 Jan 2023 21:38: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 4P2HKH2vBRz40pP; Wed, 25 Jan 2023 21:38:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682739; 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=a5BDHICKiItwVJSP4tfzkV4Lrx0V77dQ66FFPGYB/tY=; b=g+UHyvmmS0WE5DzP6cDM+y9/gnGuHKIt/dQG7jNaVjomte0SxN5OKcQXaDfJ3jNscshYIy 4Li1EpwN/xzHHvOWlxWQUo9sr301bF1Kkldl0eKpNgIdl01zpmAPQuwBDWKDshQO1ForZO s+or6R4VeeK/fBqSr+kUWP7+vgexaJ/Gr4wLCYBSAELfBqPaSgaljKIx0/OI4nf5YXHoZU OIAIunzabX/Rfhai+cGYyz5xwyBT7YqClqhumJmko3n4kZl99pL5s7GtWEAtjMbI5+Vl8H GAN6YnLAVaB2RLyWMkoNh1ETeZANtypqCkdRbC0ohvZ+9Zb5IJA7weiiPppVBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682739; 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=a5BDHICKiItwVJSP4tfzkV4Lrx0V77dQ66FFPGYB/tY=; b=nQFqoI7/J7gH+DN8ieVWjcKyI+EcD+klelwe/d8h2KrXRzDVWK8vOU5VTOccf7P7RSGk1C SGvsW2R8sOXpb+TMT2lVS8zqSpH4vixoHrBfFa98xyKrk5VOexU0t07GhUuNejqUua5H0Y ldIn6X9d2AHL7cZDPYkiTHfAYxc0VQNN8c1C8MEjvvCVimMKbHKJxX5Z0Sc8+8G+N79/Nk biRLbAF3QY6z5c/KxrU5ZtFg8dNPvNlQAAjlgMSGL7TIuEUkC2dpecjupa6/hd5/frxVYV ThlchGs5/CJn7CmXOVDQ/DbNDSp5x1F7IP64AN+FUAsacfFl3BgfpZlvSnGX6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682739; a=rsa-sha256; cv=none; b=R8p1VJ5prii6GwNZZXsg/D+qcIEbMK5Naj91BajpTpiQKlfPC3SlL0E4AFHcOHHASBv1/d hSCcTUNmIhky11pempms520PflqJ549xigBkJNYsrR3F0nyfUOOUTzuJaYagRItvJqvkq6 AhypdpWbWOqMti+jIe5AU3n+j0HzqaSApT03dHUe780pMhgmu73fcisz7HCPw9Sxbqk8dg jq44F65KrQyqLaPB0IsB1Frx8yPNNANd7u7w4If49sI1Rs/j4VCe5J4ui42EkpLdPnL6lT Zm+hC4YuqM2u9UbwldWs76YjXESmY08AinG/t7HVaVHtC+X7diY+b6rzv6tqyw== 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 4P2HKH1zNPz14Ds; Wed, 25 Jan 2023 21:38:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLcxN8007500; Wed, 25 Jan 2023 21:38:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLcx5W007499; Wed, 25 Jan 2023 21:38:59 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:38:59 GMT Message-Id: <202301252138.30PLcx5W007499@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=20P=C3=A9dron?= Subject: git: 710c6084d110 - main - linuxkpi: Add `pm_runtime_suspended()` 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: 710c6084d11025fb3640dc1146ae1b157475333b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=710c6084d11025fb3640dc1146ae1b157475333b commit 710c6084d11025fb3640dc1146ae1b157475333b Author: Jean-Sébastien Pédron AuthorDate: 2023-01-11 22:23:14 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:53 +0000 linuxkpi: Add `pm_runtime_suspended()` Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38083 --- sys/compat/linuxkpi/common/include/linux/pm_runtime.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pm_runtime.h b/sys/compat/linuxkpi/common/include/linux/pm_runtime.h index 42c96a92b1ad..616dd508e562 100644 --- a/sys/compat/linuxkpi/common/include/linux/pm_runtime.h +++ b/sys/compat/linuxkpi/common/include/linux/pm_runtime.h @@ -40,4 +40,10 @@ pm_runtime_get_if_active(struct device *dev, bool x) return 1; } +static inline int +pm_runtime_suspended(struct device *dev) +{ + return 0; +} + #endif /* _LINUXKPI_LINUX_PM_RUNTIME_H_ */ From nobody Wed Jan 25 21:39: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 4P2HKJ4Rsbz3bW9p; Wed, 25 Jan 2023 21:39: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 4P2HKJ425bz40pp; Wed, 25 Jan 2023 21:39:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682740; 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=P5isMDjD7JcBIVQVEtE0uX63K+MN8Z+wR8ygvxN3WeA=; b=hzOQ5t4uxc8e986Gp+8npie1T4Vte7sF4R7U3tNHCWd/Qn9C2R6zx80pz7r6e+g9p5QjaR exJnBO+A4M3I+gazlvdYMpgU9YtNr4ZPO34INdw6w7HbSxN0n+M7kr86m+LyDGV5sf6eHY 8++UnjaRXkixMVHTHfb6K0b78Dsmhka+Hz7alUvKm2EAlObYfDg6CBHaZqvC3O+yBfaoDF t7TseGI3WN7N115Oj/knBcnGNFdb9xdV5BK/Fs1yOv9uNcHmXgj3gIorgKkfC9gjPBnV6M iL8ox8xRm3yGfTCxHsMumSE6KyX4TK3uegTZMnzofe/Ij/IL7ylKl93Ii4pwsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682740; 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=P5isMDjD7JcBIVQVEtE0uX63K+MN8Z+wR8ygvxN3WeA=; b=xMoQBx9EccnCPjmDSV3PXhbh9mxqM1CVHykyEyJB4XZ6GFWBTZ1tvrrlf8xnLa9q0LIVf8 z5RrtBU1Sg1B3ZjjWO0u0kiClkU5Dn4ER7ZmEso3KGaqItVXzBRWJQDSZs1uqu9cVHfLFS DBhQwFYQsCDBO1TfomlGBAFPd6lvZ7zNphRm7YYwFr6KBaWvgsj2BHPbbqspbNktKnXksq cceFXXWE34UgKxp/hkbniMJzinTnftUmelMzRfL3zYHPn83JM9+aYYfYqpoaygS9+UajXx vN2gtMau0fbSzRO1OL44jVf5/3PgHuzOF8iWPsGjCSgAiBPGja5l+EkFIq4VtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682740; a=rsa-sha256; cv=none; b=cdP4/xpNFbQ701pObsPMDwuFibh8+RD7W7A9mEZ9bDq7yIzg/Et9JGKwX8XefYMYmk/UW4 isOfIOcftoh/+/xrMLTIuVnUTbRZYuWkAY0INge6v+DHOZJUJJZ+hm/CkIBy3esfVLbjTy rlZELnaH2kDNSaHE98jwOShX5NkqQz7X56+steIZ9KM2/qnrevZCcyhCo8s8cenJivZ8I/ lgmN2r9//Rxx8GCBcLAshmodUGX6baCG493dsvF1tTtcDi5lNVQRW/GKabhGdhqDOv+qDE SM+xaTmm4+aAS0SfYophZwOLnVFisDeWahbWvDf2G4+Y9NFUyTUePQR8vnTKsw== 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 4P2HKJ2wY1z14Wk; Wed, 25 Jan 2023 21:39:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLd0rd007531; Wed, 25 Jan 2023 21:39:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLd0ww007530; Wed, 25 Jan 2023 21:39:00 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:39:00 GMT Message-Id: <202301252139.30PLd0ww007530@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=20P=C3=A9dron?= Subject: git: 270a13348065 - main - linuxkpi: Add `pm_suspend_via_firmware()` 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: 270a13348065ebf2f02fbf88a02d42fa63a245fc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=270a13348065ebf2f02fbf88a02d42fa63a245fc commit 270a13348065ebf2f02fbf88a02d42fa63a245fc Author: Jean-Sébastien Pédron AuthorDate: 2023-01-11 22:23:35 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:53 +0000 linuxkpi: Add `pm_suspend_via_firmware()` Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38084 --- sys/compat/linuxkpi/common/include/linux/suspend.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/suspend.h b/sys/compat/linuxkpi/common/include/linux/suspend.h new file mode 100644 index 000000000000..5c15b0619bd0 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/suspend.h @@ -0,0 +1,12 @@ +/* Public domain. */ + +#ifndef _LINUXKPI_LINUX_SUSPEND_H_ +#define _LINUXKPI_LINUX_SUSPEND_H_ + +static inline int +pm_suspend_via_firmware() +{ + return 0; +} + +#endif /* _LINUXKPI_LINUX_SUSPEND_H_ */ From nobody Wed Jan 25 21:39: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 4P2HKK5YZwz3bVxw; Wed, 25 Jan 2023 21:39: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 4P2HKK4gfQz40qT; Wed, 25 Jan 2023 21:39:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682741; 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=rH8ELxwzpYK/mi62hJguIY4CXcrhtYPeZN73r/PAI3o=; b=h499YSRFZGNSLOrxEX9VPvGhQhj23PbkLQRAoc2VaYPLcO563gvEiDk70hkeapYmBjq0E0 w0V+lblEiabMOMAjVO/VYlPy4WtB31ZgD9iOEuWEcETsGyscnXOkL4hqnIj6Kr/NN1G6nw yojHcf7FSgqq9iQsjHiiqVFNkG3D/TSR+tmRRptNAHu5ZTuK1vF8N1tF8u4Fin3bLvRbAu eGicz1mLoYZHjMAfEbVdzB45+1aSvsxre09jlf8JzVS2GSul0iKuAPTQRbaeiIxQ5wiZFI jfwkx/yeIkadHPe9PGCX5La7AylkIZ7RJ562kyuw6h+o3SmCKQFf/ZZYQFjuSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682741; 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=rH8ELxwzpYK/mi62hJguIY4CXcrhtYPeZN73r/PAI3o=; b=wUQjxeqFAhHkPgDQL6vciYKQF6in6pRHGpgQ15Q1X7ak83RBF82YWZ1DhLr9nUvu5FnuWI eoRG4Ldu3yOeKZxOLaJlNqk6ZV8iAKY82T7Yt5bejLM6nYQu4Uyg/kpG1DM2pdG2XE/+P5 zZe8zp8LzwxXi7g9L4CCOA5IPeJBZAhgC+XAEUlVPWf3Uu7VlwmLksqUb+HShQuyYnPckI umMPZx0qgF3RN4xL3uJbRUq2qBtu2Uj3X42izwbXSn4TycqPx/UtJaiaSDI/WlSFlSrxQd 1Hmwdb9Z68bPU+BYcJHnpsnvgrJNJRvU6K1cGLbfkEDT9zEvA3bWjJC8vmphYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682741; a=rsa-sha256; cv=none; b=qb2ml4GZHTxwkA8mm9KOarTZ3fVM4Z8Q4gJg5eFg8WmkvFF9MYqmhN9lupesN4Kv9XMF7v ryHrXca7fmSBFuI14xlE70a9zI1l/2+eNvTX8umSBrVkJhh0/ZmPw1i7v3Eilg9yQ8x3Ww SV9wH7+88z93ng5D/uQJ10pewifrOYZJXkDELRYJ49zytCili9eyMZykE43xkK7Q6efS2V Ku5VBSqA2IwcsQl5rIh1zn7367c6vgS6FPW5YxKneP+NNiRuxVkKvASoXdQAS1M9sM4RZH XNacykWftdKnOJOjWz/LDVHo34ntj66XQCI0SbGe3XqaL3tCdCB7rBpHxZsF/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 4P2HKK3g8Lz14R3; Wed, 25 Jan 2023 21:39:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLd1Ij007564; Wed, 25 Jan 2023 21:39:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLd125007563; Wed, 25 Jan 2023 21:39:01 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:39:01 GMT Message-Id: <202301252139.30PLd125007563@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=20P=C3=A9dron?= Subject: git: 0d4d9ee6f0f9 - main - linuxkpi: Add `complete` field to `struct dev_pm_ops` 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: 0d4d9ee6f0f9379f3de6e2c684dab19922eda705 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=0d4d9ee6f0f9379f3de6e2c684dab19922eda705 commit 0d4d9ee6f0f9379f3de6e2c684dab19922eda705 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-11 22:23:57 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:54 +0000 linuxkpi: Add `complete` field to `struct dev_pm_ops` This change breaks the KBI. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38085 --- sys/compat/linuxkpi/common/include/linux/device.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/device.h b/sys/compat/linuxkpi/common/include/linux/device.h index 720a2019c0f0..dfe80e84cea8 100644 --- a/sys/compat/linuxkpi/common/include/linux/device.h +++ b/sys/compat/linuxkpi/common/include/linux/device.h @@ -70,6 +70,7 @@ struct class { struct dev_pm_ops { int (*prepare)(struct device *dev); + void (*complete)(struct device *dev); int (*suspend)(struct device *dev); int (*suspend_late)(struct device *dev); int (*resume)(struct device *dev); From nobody Wed Jan 25 21:39: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 4P2HKM1sDBz3bVpC; Wed, 25 Jan 2023 21:39: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 4P2HKL5txrz4169; Wed, 25 Jan 2023 21:39:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682742; 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=2ZYwQOTLlKyngX/tqpuG9yuFdykHcwoTYZ1WhbrY0NM=; b=WwjQ41GPvrK3QVqg2sUtpGCzpefHNkUedpsjjARc2OGq4zJm0yOt905gvyQsVfA3Nks9Ay a6MdTIpgmquYosKr964pBN6GcZuB9bSrrVKZCyjcQpIIEVnNlTGe8hAN5e3E4EiSy7I5J2 Rr32BFXfkEWrtbjrOw/K4L8JyPs5vh6+WGIQErl/aQK0YKnimUz6i1YBsRPHvuRc6eTcJ/ 1Q1/mjEiZahqrJGBE7dZ8AnXamm//B8bv5nKy7n1yNwknu8ufppzqgkSBROoWJdyQ8HroU FTdAVD5uC7gQ3LpXNPNxLWsXtZiRv5RSEKs9bf1n1aTtBvHDoMh7gjE6Sb1lGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682742; 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=2ZYwQOTLlKyngX/tqpuG9yuFdykHcwoTYZ1WhbrY0NM=; b=MEP3ylmSrnoLpCSBTRKNcvgkXbf+5mHZudaKMrUkryLpvML7ixinuO9tEOs8QiJHNGhp2e kpOF84KPBeHWuGaRRR6A8/yxkvePIXsguQ5ayEuMnlvSe1MyxNIk805ZznJB/W9C12uOKY GyV0F6CvvV1kKOcvrGVj+QQW4IhSm4XEtPEgT8GmNS/BgNPovLrr/j1H0dal+uWhvQLYma XCyjtXaLUJ2/SLbvyP9aFb7J3dPV/9mI/43If+WpzLycQOmp9QxnQyCjz+D/9aQWLWjX7z F0Lqz9yjW8Tak7nJz/wJkUTED1ZXHtxF6vXF09YWJa1VC1otH9of7+QnZ7gmWg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682742; a=rsa-sha256; cv=none; b=f1aZICCZNYXjjafrCsv4h61OgVWc+b+JmYsC1d/6sspSbzhyzzxHk90brdKeNyapgSp9zA qlOuU8Rd+jJC04w+hGz2WtTlUTUsJWe57+E9UmuQDlamxO+kFlXe/3lhDnRUSImAg2Yh+h N+3u8eYUw0ZmM80IDDNwXkK3KQGA/D4g9eqIhZNhFgRLdt+Z8gGLG5QSVAnO7/+ZnI4mps H3gWrFM4dOMFdLZdEaHNT8ZtZ4TOa167mTGYDj9AwShnw5WhS1IitOGZ+7+hPBUDYq7BHU l+l8JSJKlrDpPb68oAj9Xy0c0kfzyOv2StJD38m6E4dr7nqlvGGfX+SzviuUoA== 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 4P2HKL4y1cz14Wl; Wed, 25 Jan 2023 21:39:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLd2ZZ007593; Wed, 25 Jan 2023 21:39:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLd2ws007592; Wed, 25 Jan 2023 21:39:02 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:39:02 GMT Message-Id: <202301252139.30PLd2ws007592@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=20P=C3=A9dron?= Subject: git: 4fee6659c42c - main - linuxkpi: Add `sysfs_emit()` 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: 4fee6659c42c264e17dad7625f8663a45594d46b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=4fee6659c42c264e17dad7625f8663a45594d46b commit 4fee6659c42c264e17dad7625f8663a45594d46b Author: Jean-Sébastien Pédron AuthorDate: 2023-01-11 23:23:33 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:54 +0000 linuxkpi: Add `sysfs_emit()` Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38086 --- sys/compat/linuxkpi/common/include/linux/sysfs.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/sysfs.h b/sys/compat/linuxkpi/common/include/linux/sysfs.h index e6b8ad210f16..b9689a367c90 100644 --- a/sys/compat/linuxkpi/common/include/linux/sysfs.h +++ b/sys/compat/linuxkpi/common/include/linux/sysfs.h @@ -37,6 +37,7 @@ #include #include +#include struct sysfs_ops { ssize_t (*show)(struct kobject *, struct attribute *, char *); @@ -295,6 +296,24 @@ sysfs_streq(const char *s1, const char *s2) return (l1 == l2 && strncmp(s1, s2, l1) == 0); } +static inline int +sysfs_emit(char *buf, const char *fmt, ...) +{ + va_list args; + int i; + + if (!buf || offset_in_page(buf)) { + pr_warn("invalid sysfs_emit: buf:%p\n", buf); + return (0); + } + + va_start(args, fmt); + i = vscnprintf(buf, PAGE_SIZE, fmt, args); + va_end(args); + + return (i); +} + #define sysfs_attr_init(attr) do {} while(0) #endif /* _LINUXKPI_LINUX_SYSFS_H_ */ From nobody Wed Jan 25 21:39: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 4P2HKN1Ll1z3bVy4; Wed, 25 Jan 2023 21:39: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 4P2HKM6jrmz40rH; Wed, 25 Jan 2023 21:39:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682744; 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=dK7/dPXImJemeau+S24E7AVUUHPVafJwxOlfHTdX8RM=; b=Zno3jIAhLhrTaDEjNzliDfK1OE4lLhEb1Mcz5mt6flvBWsOzR2GArY4qPzzQa5bpjnjrpk JawU0otBC9u5FniKbsbWwYr+rJa1cqJ3A1gfvJrDTQUR3Ggknpkht82DNe2IlKMP7KzHzQ y66t0f3m8+dPQGGL0WBdpIbX2oA7HyHewN6TCJoLAm2b8nC3yajZiGGaSt1z9aQVbtoThU QGn/t7UGi9ritux9iIU+Mlpgv7iRRwZViP9QRo0th32EfhtGal+Lp1UV6zSFMHnkmw7Hkh i3YZNOghd/4W+DWlBanAxG3qi6uJj8A8d0xcunUOxnFRTVNk1ojepKVgD/fkLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682744; 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=dK7/dPXImJemeau+S24E7AVUUHPVafJwxOlfHTdX8RM=; b=s9GoHMtfEcR7w3oOL6wrRv+LdLD2pDkL8PAPV5qXs7dxwgc1jynhjb1p4RDpmqKe2ThM3m URTG0zNFyGNIdvFyUDXmwOUwCGdd9u+TR8rpvYfWYJSKpDhQ3Q9cUE28zxepoCP/HBhdwA 82TXed2Ar1fRAxFnhi9C0Uk26OnVpB6GIqHKjllLo8BpiMkjgcBsYStKYjYIC26SwUYwp6 7mZ2wf054wnHYRr0DUlGsS9Ud9TzOGF650dnMD0DQ9dnPPY50SGMONTi3E8R/BQr1v1cB9 ygwMrrMensmFbG3s9aMxhYBWWrU9+BW+mSJ/8gWAOcyKcEVPvdX+DhANgykKDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682744; a=rsa-sha256; cv=none; b=Vvbew4nxMRAfAYz6HYNUwGZBhmxS6PQGDBhkXz4IxnRjh/X1veLi9TblybvWdYZDGcmxEi RICOLhx5UMGoUPHb2UIZQvSkNqpxVnurcfMWc+cUVR9xNHFMW1kEtZwNk8RSxsIHF+StdH gIArZLwLmasNaj6uZndh+DOBzKNKSOrhibH4BAYQBPro5t5aAk++nttgqI2U3EpoENnUJj OyO2xY3HADVz/N1ksm9OkrKsR9DQ9Q4NedELo7LCYclvGlZIJYx99x8y8a8pQLLAP/bQ/y mx+/nLzK5kjNKKHTsBijCZ7lKxh3JSbMVLbjDeK5LXxthNbz+cF3PmUIevfYaw== 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 4P2HKM5psYz14Wm; Wed, 25 Jan 2023 21:39:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLd3F7007624; Wed, 25 Jan 2023 21:39:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLd3lU007623; Wed, 25 Jan 2023 21:39:03 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:39:03 GMT Message-Id: <202301252139.30PLd3lU007623@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=20P=C3=A9dron?= Subject: git: b99bc8623245 - main - linuxkpi: Add `io_mapping_map_user()` and `remap_pfn_range()` 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: b99bc862324526b3ee6fad335618cbe85ad9e11e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=b99bc862324526b3ee6fad335618cbe85ad9e11e commit b99bc862324526b3ee6fad335618cbe85ad9e11e Author: Jean-Sébastien Pédron AuthorDate: 2023-01-14 12:22:19 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:54 +0000 linuxkpi: Add `io_mapping_map_user()` and `remap_pfn_range()` The code comes from the i915 DRM driver. In Linux commits b739f125e4ebd73d10ed30a856574e13649119ed and b12d691ea5e01db42ccf3b4207e57cb3ce7cfe91 (Linux 5.13), the i915 DRM driver dropped specific implementations to use Linux generic functions. Therefore I moved the FreeBSD code from that i915 driver to linuxkpi. However, these commits were later reverted (also in Linux 5.13) so the i915 driver doesn't use these functions. But perhaps it will help in the future. To sum up, the code comes from the i915 DRM driver but it doesn't use it (i.e. it continues to use its internal implementation). Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38088 --- .../linuxkpi/common/include/linux/io-mapping.h | 12 +++++ sys/compat/linuxkpi/common/include/linux/mm.h | 6 ++- sys/compat/linuxkpi/common/src/linux_page.c | 58 ++++++++++++++++++++++ 3 files changed, 75 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/io-mapping.h b/sys/compat/linuxkpi/common/include/linux/io-mapping.h index 5c24f1ff8659..e874c5bcadc7 100644 --- a/sys/compat/linuxkpi/common/include/linux/io-mapping.h +++ b/sys/compat/linuxkpi/common/include/linux/io-mapping.h @@ -37,6 +37,7 @@ #include #include +#include #include struct io_mapping { @@ -100,6 +101,17 @@ io_mapping_map_wc(struct io_mapping *mapping, unsigned long offset, return ((char *)mapping->mem + offset); } +int lkpi_io_mapping_map_user(struct io_mapping *iomap, + struct vm_area_struct *vma, unsigned long addr, unsigned long pfn, + unsigned long size); + +static inline int +io_mapping_map_user(struct io_mapping *iomap, struct vm_area_struct *vma, + unsigned long addr, unsigned long pfn, unsigned long size) +{ + return (lkpi_io_mapping_map_user(iomap, vma, addr, pfn, size)); +} + static inline void io_mapping_unmap(void *vaddr) { diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index 930d588902af..5cf4453dc966 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -218,11 +218,15 @@ apply_to_page_range(struct mm_struct *mm, unsigned long address, int zap_vma_ptes(struct vm_area_struct *vma, unsigned long address, unsigned long size); +int lkpi_remap_pfn_range(struct vm_area_struct *vma, + unsigned long start_addr, unsigned long start_pfn, unsigned long size, + pgprot_t prot); + static inline int remap_pfn_range(struct vm_area_struct *vma, unsigned long addr, unsigned long pfn, unsigned long size, pgprot_t prot) { - return (-ENOTSUP); + return (lkpi_remap_pfn_range(vma, addr, pfn, size, prot)); } static inline unsigned long diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 4c93d2f69354..c4d0d332af14 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -67,6 +67,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #ifdef __i386__ DEFINE_IDR(mtrr_idr); @@ -334,6 +335,63 @@ retry: return (VM_FAULT_NOPAGE); } +int +lkpi_remap_pfn_range(struct vm_area_struct *vma, unsigned long start_addr, + unsigned long start_pfn, unsigned long size, pgprot_t prot) +{ + vm_object_t vm_obj; + unsigned long addr, pfn; + int err = 0; + + vm_obj = vma->vm_obj; + + VM_OBJECT_WLOCK(vm_obj); + for (addr = start_addr, pfn = start_pfn; + addr < start_addr + size; + addr += PAGE_SIZE) { + vm_fault_t ret; +retry: + ret = lkpi_vmf_insert_pfn_prot_locked(vma, addr, pfn, prot); + + if ((ret & VM_FAULT_OOM) != 0) { + VM_OBJECT_WUNLOCK(vm_obj); + vm_wait(NULL); + VM_OBJECT_WLOCK(vm_obj); + goto retry; + } + + if ((ret & VM_FAULT_ERROR) != 0) { + err = -EFAULT; + break; + } + + pfn++; + } + VM_OBJECT_WUNLOCK(vm_obj); + + if (unlikely(err)) { + zap_vma_ptes(vma, start_addr, + (pfn - start_pfn) << PAGE_SHIFT); + return (err); + } + + return (0); +} + +int +lkpi_io_mapping_map_user(struct io_mapping *iomap, + struct vm_area_struct *vma, unsigned long addr, + unsigned long pfn, unsigned long size) +{ + pgprot_t prot; + int ret; + + prot = cachemode2protval(iomap->attr); + ret = lkpi_remap_pfn_range(vma, addr, pfn, size, prot); + + return (ret); +} + /* * Although FreeBSD version of unmap_mapping_range has semantics and types of * parameters compatible with Linux version, the values passed in are different From nobody Wed Jan 25 21:39: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 4P2HKP1Gqvz3bW1C; Wed, 25 Jan 2023 21:39: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 4P2HKP0r0Vz4121; Wed, 25 Jan 2023 21:39:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682745; 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=AcU9xEw4FRiYyQswD+qEXoHzax3wTQs7clcHeZfbvfE=; b=xTzLTx2ti3jxJFM2/SGgk3dIsSYD5c6EzbFIVWpSTsUEZmqIa4uD9rlv9DmwgGhYa3lf94 pnqlgjT/sZZsn9k3AUg2Dx4L7GGuwpK9puNR1XE7c+t27agQRfHgCJ50J4VuriOouqpDBC rpdbN7kD5EGtUNZUcTwQnqSRxKQhz+Rh28nnJXNoTubuG/ySh5wNhNWjM9uYBikkBwT+sK Zpzvww2oNnSsnV/L0IZ/x5GPzbtBr2bS9r2EBYT/MCVuqfFBZCXkrNdrFQn1rLepuZCgpM 0ngRPs+I1ViMt5+3KwHUSNUNBzfSFI4J56tj2lQirmK+7oxX26c3PM3IQv2v5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682745; 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=AcU9xEw4FRiYyQswD+qEXoHzax3wTQs7clcHeZfbvfE=; b=ailPH3si4/7yHzKlolPttnEkHWwlfusA3mXMRq5+iOnfwYaWK7k8LaQM1RpBRiPGxOnb9q xwWL6EDC9mK+Lej/ta/LrIoFcJCTwV6dTOtQ/sTYjy5WgBotj2uiBYlLhi4wjDokWaKCPO Q+WJJa0SkuQ3CXiIf8CF8rRTy0J2ApYKvMq2RY8I0xLQic5eJE1gl6GzPqVKl3nm7fPuZB xeahDMleMqZOOFor81oY7cwLkbLKaqCIWpfH/fD1jP+PQks1oprn7kUJx/howHH/vffk6Q oC0yO5gwfa5ot52x0NpOhigjD3Ncxr9AiQg/p2+dKKKrZENq0QixJeZLNeZHGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682745; a=rsa-sha256; cv=none; b=raBR0MXiYzXhi/U70ib1mETy+ocJ6MZhlVRVNMm7eJHRnfkrOy+JAt5yQpwQ8SZqyOrbn4 Vv78ec+LnJtSMRoRUJDOVx8qCZsdgJ+oSD/rQ2PWBNeCUV01FxhpiEU1A6qPHKRTXzovpI dwrWifqgd0HlJ//xYqF/P89n3p5PfaktDGo8wgD6S9+Qn1EZNW282wzmlxpX2jPO46aAM1 Qs1PzZHZ/UZ+d93z4NapRcu/ck1zlJHcvpHGVZPiHiMTKiipjfIWC9OQYCs5+dHPbfxuj2 G/Jv9C4OzlBdjcP3f3Fi3JV6XzccsEBKu9rOSflQkUdsuHDdTOpHjx2XpNFyMQ== 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 4P2HKN6vC3z14Wn; Wed, 25 Jan 2023 21:39:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLd4Fc007655; Wed, 25 Jan 2023 21:39:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLd4e4007654; Wed, 25 Jan 2023 21:39:04 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:39:04 GMT Message-Id: <202301252139.30PLd4e4007654@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=20P=C3=A9dron?= Subject: git: 9491ea7c6822 - main - linuxkpi: Fix `atomic_long_sub()` overflow 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: 9491ea7c68221ca7bc5e369ebb57660886ef1b13 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=9491ea7c68221ca7bc5e369ebb57660886ef1b13 commit 9491ea7c68221ca7bc5e369ebb57660886ef1b13 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-15 14:56:48 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:54 +0000 linuxkpi: Fix `atomic_long_sub()` overflow By (ab)using `atomic_long_add_return()`, `atomic_long_sub()` was making the atomic long overflow. Indeed the underlying FreeBSD atomic is based on an unsigned long. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38090 --- sys/compat/linuxkpi/common/include/asm/atomic-long.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/asm/atomic-long.h b/sys/compat/linuxkpi/common/include/asm/atomic-long.h index f8bd9edfccf9..aeec6edd707d 100644 --- a/sys/compat/linuxkpi/common/include/asm/atomic-long.h +++ b/sys/compat/linuxkpi/common/include/asm/atomic-long.h @@ -41,7 +41,7 @@ typedef struct { } atomic_long_t; #define atomic_long_add(i, v) atomic_long_add_return((i), (v)) -#define atomic_long_sub(i, v) atomic_long_add_return(-(i), (v)) +#define atomic_long_sub(i, v) atomic_long_sub_return((i), (v)) #define atomic_long_inc_return(v) atomic_long_add_return(1, (v)) #define atomic_long_inc_not_zero(v) atomic_long_add_unless((v), 1, 0) @@ -51,6 +51,12 @@ atomic_long_add_return(long i, atomic_long_t *v) return i + atomic_fetchadd_long(&v->counter, i); } +static inline long +atomic_long_sub_return(long i, atomic_long_t *v) +{ + return atomic_fetchadd_long(&v->counter, -i) - i; +} + static inline void atomic_long_set(atomic_long_t *v, long i) { From nobody Wed Jan 25 21:39: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 4P2HKQ26zcz3bW1F; Wed, 25 Jan 2023 21:39: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 4P2HKQ1f9Mz41Cy; Wed, 25 Jan 2023 21:39:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682746; 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=QnXSdC+ma1dJbFbgIcscpD0WxiojLYNyKaBXOvy/bNU=; b=pgVd8Gj/KNBb+9pK3Ade/HV+ajGcbEK0caPawntMyKIrIqlJ4nIKCrZBzSGCymX7s88XeH +FKvNDeaOO5AGJPhgCdsXA0+LPZzSrEMWXijvZhZKP1Qku/RzEiI0+KbzMjSNxqMa+QQNp ZPDKfJ7bt2qPmCQhSBi1BQGzaSUIEpDiusH3e46UfEj4WJAVYkBUbV5BqUEWfPuqMlQgmk LI13J+rh/fzNtYSePmIRJnVGcoVgvH5VATgNJ73A99kONGDvFTP1F/s0p3YDfggWyxlCuQ 8UJUEKudjZq5Z1OWM7/CZLD9+KKDUZWTyDIrRJeQYDpbCJPC0m/U4TXm8XDTcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674682746; 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=QnXSdC+ma1dJbFbgIcscpD0WxiojLYNyKaBXOvy/bNU=; b=XvND6ToaV4yHOLhi39RUyUv7BZT6joiD9mQjxeibFcqRDyfwaIB+puD0UFV8r8qX1h7acE dBWK+0OyibNaADIAz+dz2515+E1ox5Dtds/L2eJ2pSRVWnFCIGEazmai6YWWtzSr/XaIYy EAPp2wCZWQRGCO2TT4mhssH6MXacYUH4prOgmUycLR3i7g8ZcAWE3CUN+l9EtnMw/l09Cw 0xRCjxSmO5Ai/twtba14MWJYOYpGDvWbe/c97mvfhS/lelzZY+LJLLX7oDITidFHvaAQVb ZwwmvwUB9Cgg9ObHS709CBXkfcCkxnWBYaWKideeGzU75NEifw05/A7ldXca7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674682746; a=rsa-sha256; cv=none; b=OwLkmnpnOSQV0iQPGY1YMiJSLdmmjJuOM5sa4aRqSxBXCDt8Rf7Hm046BdTC7LE4SqXrMW 2zQUi4572HKDTpQAY7P3f0enc8wtC5O2+oPxhmwdhGndVEbraeRhwgcroBf8H3Pz2NrvPX RmCAIWnK6NCEr7LbngdnvmehqBbYLyT0oGmzAU28PfcrOgz5ZTUwycgueyxLI2XTw+t+1W Zl//LsB6fwbvEDrRqg1FS+CC/zXelo0u6mtQrAGO9zzFsJjsUC/fee5x6zWZTAHRTBZl20 5QI3QHeqfErE7jcjrXdspAQ+KsxmBWnIBhDjhRhsbp3aXA3zf0W8wmJqJ6m3dQ== 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 4P2HKQ0jSMz14SY; Wed, 25 Jan 2023 21:39:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PLd6pa007686; Wed, 25 Jan 2023 21:39:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PLd5x1007685; Wed, 25 Jan 2023 21:39:05 GMT (envelope-from git) Date: Wed, 25 Jan 2023 21:39:05 GMT Message-Id: <202301252139.30PLd5x1007685@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=20P=C3=A9dron?= Subject: git: 29ab19455484 - main - vt(4): Return errors from `vt_{,de}allocate()` 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: 29ab19455484be96150fa5e87bd38aefb85c888a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=29ab19455484be96150fa5e87bd38aefb85c888a commit 29ab19455484be96150fa5e87bd38aefb85c888a Author: Jean-Sébastien Pédron AuthorDate: 2023-01-14 18:22:56 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:26:57 +0000 vt(4): Return errors from `vt_{,de}allocate()` This is useful to the DRM drivers to let them know if a device is effectively used by the console. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38089 --- sys/dev/vt/hw/fb/vt_fb.c | 10 ++++++---- sys/dev/vt/vt.h | 4 ++-- sys/dev/vt/vt_core.c | 16 ++++++++++------ 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/sys/dev/vt/hw/fb/vt_fb.c b/sys/dev/vt/hw/fb/vt_fb.c index 093bf35ac6ba..8e0d6c035f9a 100644 --- a/sys/dev/vt/hw/fb/vt_fb.c +++ b/sys/dev/vt/hw/fb/vt_fb.c @@ -517,19 +517,21 @@ vt_fb_fini(struct vt_device *vd, void *softc) int vt_fb_attach(struct fb_info *info) { + int ret; - vt_allocate(&vt_fb_driver, info); + ret = vt_allocate(&vt_fb_driver, info); - return (0); + return (ret); } int vt_fb_detach(struct fb_info *info) { + int ret; - vt_deallocate(&vt_fb_driver, info); + ret = vt_deallocate(&vt_fb_driver, info); - return (0); + return (ret); } void diff --git a/sys/dev/vt/vt.h b/sys/dev/vt/vt.h index 977372f04a7d..764d612ed060 100644 --- a/sys/dev/vt/vt.h +++ b/sys/dev/vt/vt.h @@ -91,8 +91,8 @@ SYSCTL_INT(_kern_vt, OID_AUTO, _name, CTLFLAG_RWTUN, &vt_##_name, 0, _descr) struct vt_driver; -void vt_allocate(const struct vt_driver *, void *); -void vt_deallocate(const struct vt_driver *, void *); +int vt_allocate(const struct vt_driver *, void *); +int vt_deallocate(const struct vt_driver *, void *); typedef unsigned int vt_axis_t; diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index 213b11bee8f5..2827cc1c85a8 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -3137,12 +3137,12 @@ vt_resume_handler(void *priv) vd->vd_flags &= ~VDF_SUSPENDED; } -void +int vt_allocate(const struct vt_driver *drv, void *softc) { if (!vty_enabled(VTY_VT)) - return; + return (EINVAL); if (main_vd->vd_driver == NULL) { main_vd->vd_driver = drv; @@ -3156,31 +3156,35 @@ vt_allocate(const struct vt_driver *drv, void *softc) if (drv->vd_priority <= main_vd->vd_driver->vd_priority) { printf("VT: Driver priority %d too low. Current %d\n ", drv->vd_priority, main_vd->vd_driver->vd_priority); - return; + return (EEXIST); } printf("VT: Replacing driver \"%s\" with new \"%s\".\n", main_vd->vd_driver->vd_name, drv->vd_name); } vt_replace_backend(drv, softc); + + return (0); } -void +int vt_deallocate(const struct vt_driver *drv, void *softc) { if (!vty_enabled(VTY_VT)) - return; + return (EINVAL); if (main_vd->vd_prev_driver == NULL || main_vd->vd_driver != drv || main_vd->vd_softc != softc) - return; + return (EPERM); printf("VT: Switching back from \"%s\" to \"%s\".\n", main_vd->vd_driver->vd_name, main_vd->vd_prev_driver->vd_name); vt_replace_backend(NULL, NULL); + + return (0); } void From nobody Wed Jan 25 22:15: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 4P2J6v4Zkzz3bbVq; Wed, 25 Jan 2023 22:15: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 4P2J6v44j7z4680; Wed, 25 Jan 2023 22:15:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684903; 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=l+RuU/es6Fow3LQzQcF246bTt5aBbSih9EXUw9wgfLw=; b=AyUYQK/aG3mgEsJ2jK18gh37XE8IqKB4bQekGiAq+5lIJsLzv0KWWb0TcXBxj6cxp0IXY/ Sk8GEZst/qQtxjrRf3zAsWVWOub+dj5m2pGoWIlesJ6sJlG1ClUyxvmaaqPwR2JCmCztHD c9T1M0njz+XO7Hx7llgKcd8NxAQQfa/+fEGsJZQc+2oE6j+rHmvSTf/s7SvM012FMic656 JpB/nOkYRMWXjEQIn/9iR7bn9r4iT0mSftKXW/r595k2VD1mPa1rbpcZgc05sLSqFi0kb0 usgjbU6h54H6F3MRXaDpEOzAVlDDyuopBUXlJKjskICF6xjaJeaQ03ffpM9EUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684903; 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=l+RuU/es6Fow3LQzQcF246bTt5aBbSih9EXUw9wgfLw=; b=UJ915T7IalKhPi/KTjAvugtAinK1pv/Zjb3y3R2t4zbQ1GfgU85T6++wvD/GU1iyKzZQFr LWCM+dmlsibk6IlbQE+HIlg01CbtIyrnUAkROQDzdJnMt3CmyXKvgbSgMIadrekrI61oD1 F3qe4vn9gsgXch8tMPrUhWd3ro+LCV6tLqh89MBeu/bwemYBETpgnSqWGDnUFNrRhYyQVe AfUrCETDl8W40oveSDeh3Dgc6AJJZBRFyu/QVod4w4NJkW2ERktvaC5QWgSQbMRPX7Weh9 QmQ/r9gzpJwgZFrHDDdUBewAUl7mcKufdF4SYw3Zhtujbo9ATiC9g1rMunho0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684903; a=rsa-sha256; cv=none; b=I6KfBetE7S7s3UBukkL7n7nOg1AmMeuB262k9EJtXvasP8kznizDuKjR2BRGA92GDkRQtl KrjLy7B9N+PAb+IE9cpZM5of6WtW2jwn7yT6bOOlZGnMN4u6xyWpt3jMnBQaHa9s1nW8vQ Wl9GAP7sh9i1/7MC3qKfZ5W92E+8Oisf4/E0cbcZQtpS8S14LQ2j8l26G956Cu5b2OFUBE T5sqIh4R/IFro4uFMcKvOAF1xE8HUk70ALyvbcr7Y4Il2VvatPG3sUl6+NZiWnxcLr5quF 3hS0ZF5daHYdETcozv0r/s3wQrrkd6HJohzLG76wwmU5T+OKgehJmSlb+doeWA== 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 4P2J6v31yTz15JT; Wed, 25 Jan 2023 22:15:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMF3aF064162; Wed, 25 Jan 2023 22:15:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMF3ED064161; Wed, 25 Jan 2023 22:15:03 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:03 GMT Message-Id: <202301252215.30PMF3ED064161@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=20P=C3=A9dron?= Subject: git: bbff0400c1d7 - main - linuxkpi: Define `dev_dbg_ratelimited()` 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: bbff0400c1d7728ae1759d8f740033a0a2f8aeff Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=bbff0400c1d7728ae1759d8f740033a0a2f8aeff commit bbff0400c1d7728ae1759d8f740033a0a2f8aeff Author: Jean-Sébastien Pédron AuthorDate: 2023-01-19 00:15:03 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:48:32 +0000 linuxkpi: Define `dev_dbg_ratelimited()` Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38145 --- sys/compat/linuxkpi/common/include/linux/device.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/device.h b/sys/compat/linuxkpi/common/include/linux/device.h index dfe80e84cea8..92e7e6772fbd 100644 --- a/sys/compat/linuxkpi/common/include/linux/device.h +++ b/sys/compat/linuxkpi/common/include/linux/device.h @@ -235,6 +235,12 @@ show_class_attr_string(struct class *class, dev_warn(dev, __VA_ARGS__); \ } while (0) +#define dev_dbg_ratelimited(dev, ...) do { \ + static linux_ratelimit_t __ratelimited; \ + if (linux_ratelimited(&__ratelimited)) \ + dev_dbg(dev, __VA_ARGS__); \ +} while (0) + /* Public and LinuxKPI internal devres functions. */ void *lkpi_devres_alloc(void(*release)(struct device *, void *), size_t, gfp_t); void lkpi_devres_add(struct device *, void *); From nobody Wed Jan 25 22:15: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 4P2J6w57Z0z3bbfK; Wed, 25 Jan 2023 22:15: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 4P2J6w4fbNz468K; Wed, 25 Jan 2023 22:15:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684904; 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=MrUWnO6CSUs7HO9+UgRCAHmKcki10FdAdh+5j/IN+G0=; b=l8yqKGz6qeEFn05W+of/JCkiLaruDsdXUoz4M0rggGPn8W3HgAre3Piyh9+eL8YrH1JllA qrjwgrk/ec2s1YE207zQm0R93HRgoIfSL8tBPhKZ5nghwbZvCqKQi+AJX9I+l/fdgcP3Eg FKdbnI23HLy4V4qcttEnQPBXhHU9FUm9/aDHq84StaUpMZKMYmBEcXzsIt8QfSsqQUfIdU 9fU/jDhAXDAk5Ivkt0ippBAGw7CBhDrPFwOo7PgK4NxvGM2L4cC0mJPGTNOH5kJVIwmnIh WCxP8GCCfDd+UmzbcLvX7m4xH2pF0974Y5IygLQcFrKFlMxOpUUzJoFEnNIjDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684904; 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=MrUWnO6CSUs7HO9+UgRCAHmKcki10FdAdh+5j/IN+G0=; b=ooKH4YjMnuKTEW173F/COw+oW3c8NIHre3NI4HiuFtKrSp5aSoFr62zVbzUJVE5xI1rycI xF+QpLo9xcGeNn1K8UTweuDqzSC5wimfOndaw+rvS6NJdgicucHU4ZNJDzcNUaZ6rH+MRs 3/0Q9/rqVpxA3uLr42dZKAOs7h8GVpeyrDA0YMbgOaX+RuOK0P538y8TnbBFTJzUzaE2mN OPsvrHC4OoKb7R3YcAGq13ZMzISXrutqbpso7ly1EX2fY32iyIDBqN2eJFa8NwQZuxWUsO WLc2cu2E7GnKarR8R+JhNC5QShuun3gvWJNeVlj6a1DiRrcH2B+uxqWDoFfWqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684904; a=rsa-sha256; cv=none; b=mC9f1ubsiszqld0NlZh7UveTcGfaI+1sAKil7NPJ8N4UT3nMSiIyR/Qri/Mk+itc75BpRA f1XqhwCC/evX0uLphIHEjmQUKSdJRY4k0AK1bMAGdN6QpL/vwgcSgiyIFa4bTKKSVjJr0x OmaOBTKMUludsfpiN2RtYOKka/xwQ+5VypaH3LbaiCmf6Y7Iv3D2jP8h36Aul4VpMoXo8l TF6iIZ1AkgpxgJLZWkaXc1t2kRHqAyL89x8c9FzzN0QEaf/XcYIq4vyeeu6BoqH1iAOfCz cC1mI7I2LBv+Iwe0YZw1v0EaINe47+FOp4PAsZdT9DVXjJD8r6VuoBYliFORnw== 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 4P2J6w3kvCz15Xy; Wed, 25 Jan 2023 22:15:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMF4JE064191; Wed, 25 Jan 2023 22:15:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMF4BD064190; Wed, 25 Jan 2023 22:15:04 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:04 GMT Message-Id: <202301252215.30PMF4BD064190@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=20P=C3=A9dron?= Subject: git: 49b6d5ed142d - main - linuxkpi: Add `pci_device_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: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 49b6d5ed142d6c59b7a517ff5660165d8647bd01 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=49b6d5ed142d6c59b7a517ff5660165d8647bd01 commit 49b6d5ed142d6c59b7a517ff5660165d8647bd01 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-19 17:46:37 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:49:38 +0000 linuxkpi: Add `pci_device_is_present()` This calls bus_child_present(9) internally. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38148 --- sys/compat/linuxkpi/common/include/linux/pci.h | 9 +++++++++ sys/compat/linuxkpi/common/src/linux_pci.c | 10 ++++++++++ 2 files changed, 19 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index 6651fd62b44b..b54b5cc8dd70 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -1672,4 +1672,13 @@ pci_is_enabled(struct pci_dev *pdev) PCIM_CMD_BUSMASTEREN) != 0); } +static inline int +pci_wait_for_pending_transaction(struct pci_dev *pdev) +{ + + return (0); +} + +bool pci_device_is_present(struct pci_dev *pdev); + #endif /* _LINUXKPI_LINUX_PCI_H_ */ diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index da5430eb0d7b..aa29d0654cd1 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -996,6 +996,16 @@ lkpi_pci_msi_desc_alloc(int irq) return (desc); } +bool +pci_device_is_present(struct pci_dev *pdev) +{ + device_t dev; + + dev = pdev->dev.bsddev; + + return (bus_child_present(dev)); +} + CTASSERT(sizeof(dma_addr_t) <= sizeof(uint64_t)); struct linux_dma_obj { From nobody Wed Jan 25 22:15: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 4P2J6x6s1hz3bbVs; Wed, 25 Jan 2023 22:15: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 4P2J6x5nf2z468c; Wed, 25 Jan 2023 22:15:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684905; 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=r/Jq70RtcVMT4c0E0Cp7Vis/K+nReY2piT+OCZZHNJY=; b=bItI+07UyUmzeUJcQVON5qj4Qatcs85tQsNdWoR4s/69hBFhr3Ca0AXAxYgktydGk4R+jL tWmOAGJDplpHvGdwFv1wRz/shvyPjSGptKFOkHhg5FJ6UgOyO8LpB2Xd4P1H1PB6NaD0yC nPtd/Ekr55mMVTdBiWssoLH9rPiUI4O7JZjORWDHsYA6ybC4X1dcyMX8QdsIRcjfhJIpPe 6s4rdD52PZJPRtzH/unGTeXotOJbZUrvWO5hTx2N5IfGGWeGovDfNhOTkxVKTC8q2ceHdm jHbnvkUtGZwDWAOMHE3GjYWkvzwQp8gxnoao2AFnc36iJ0Rc2Yhm8LNQthbO3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684905; 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=r/Jq70RtcVMT4c0E0Cp7Vis/K+nReY2piT+OCZZHNJY=; b=bulsBWRkWj1ryQ3VuNe6N+E7FTcQbImS/rAeUTi0k3lXLcK6zpTYUioe+YLsH+abIYi/yH 2wfA9FLbe9bN9GYrWXx8fE96mWBTQ7wN7zwhv2suyLSB0f81Z217Oek18FMDwlrRBmCPKa SiWtOgm1zvSr9ijIGdjPsUvYoBQOipIVn4uybDDSSuwkSzEWM2CfNhjY/PIKKA1iMlukCg FF25sj3rY5mhs1ZN396vchhwNC5JgGjKke3WqFFmlLD1xQT4nZ8ZrcdSMh73BJxSRqNC6R ZsoHfYzcqdODqJ+cdlA01b4yL2EJx1VCwPT82b9Br8i6XJdnXyJEX2foT0joaA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684905; a=rsa-sha256; cv=none; b=dHajCRcm28GV+oJr0wmRtQRdGVl+WtO0qD/bNTAlmhgXD3/MTmefn7Vo8+4GwtCgoPqMOb v/eztzwtcQrwF+K9g7jKS+K9GuWGcK2uG5jpFRGiw7O1+9CPXtPrQsglcBOAgmj89xp9QJ sqNHsuIFo3Nl2YoMj89KIUzoMUXNN8Vu4RcwC6/CSuX5Qkpgj4VWLzRGCjABh2pwg3TalR Pl7WxOWyttZ+0N0etUutyenMqHArIZigFuqudeF3oR4A5Thl1QR2QSSuwuq5Y64X7VwNBe 6V0lxNjtDuluLjH9aFh0/1asw/uUn916EjDO2YjPrBW46MvmQxt+ZFhowc+beg== 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 4P2J6x4tcfz15MR; Wed, 25 Jan 2023 22:15:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMF5BP064226; Wed, 25 Jan 2023 22:15:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMF5XG064225; Wed, 25 Jan 2023 22:15:05 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:05 GMT Message-Id: <202301252215.30PMF5XG064225@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=20P=C3=A9dron?= Subject: git: f27b1399d685 - main - linuxkpi: Define ENOKEY to 126. 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: f27b1399d68585f5edd83645c2a37a1580e7fb93 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=f27b1399d68585f5edd83645c2a37a1580e7fb93 commit f27b1399d68585f5edd83645c2a37a1580e7fb93 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 17:14:25 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:49:53 +0000 linuxkpi: Define ENOKEY to 126. This is the same error code as Linux. This value is unused on FreeBSD. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38149 --- sys/compat/linuxkpi/common/include/linux/errno.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/errno.h b/sys/compat/linuxkpi/common/include/linux/errno.h index 796203422d23..d00dbec86b5a 100644 --- a/sys/compat/linuxkpi/common/include/linux/errno.h +++ b/sys/compat/linuxkpi/common/include/linux/errno.h @@ -35,6 +35,7 @@ #define EBADRQC 56 /* Bad request code */ #define EBADSLT 57 /* Invalid slot */ +#define ENOKEY 126 /* Required key not available */ #define ECHRNG EDOM #define ETIME ETIMEDOUT From nobody Wed Jan 25 22: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 4P2J6z0T1vz3bbh8; Wed, 25 Jan 2023 22:15: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 4P2J6y6m0Wz46c9; Wed, 25 Jan 2023 22:15:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684907; 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=7bGswC6qcgGsSeyPSiuFUTQcJdsFb63fOiiYbmHh+fM=; b=DJkw9CYh/eaDEocXuTTlyuuRoFH45WS9GqMy8dCRpI1XUvaxuVZ+EpketIktPWdetgvWJR Dryi6WtF98uPLnPrEzjIrizMlTj5EG3S1N//GSfgXSqcutbcuyL8DFGejZ35+mpDUYmRKJ 1TQ+nRdhihqjC+hY3AlWr0HgdNJm7Fp9C9yCxIfQz80YgbsWcNQe5kRbUC65hk0yf5Vuhi jwNWYpJKU9H6vtpXDjsauKXhKtbEiE9QFsha9SuWtoty2e2hylhOgM5JAD7v3AM0PtoG5W EKG4cH+sI2T8TofkJO21gLGuknWgsG1gcBLMq290zjuQoYBRfiHa65yCuWKn4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684907; 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=7bGswC6qcgGsSeyPSiuFUTQcJdsFb63fOiiYbmHh+fM=; b=Lf3EaatIQBCQhMB1wv01D6R83xZGdvHVG71yF+ddlXY6C92JbC70DMKeuVYuQbrV2s0Cul sJ/CGvNZTtMViKiamd3ZYFVOGJt6r09eaYxVl2GOUPO1qjj1h2tpKg6lHxTJ06gWcVEXR8 oTyoBt9YJ3zhSlAYqA5pu+0UZBXTsVR2gLngkcoXJ+0p3qDPobGTHleV09eIHY/OF6p0xL 1IX6vhQBZOb1PhKnaZmntquk24aDpzyVmOTf56r5fruQ41S3+CrnbKcv0k7jVDi9mkwduP 9LBLMGdhyjLerISRyRGICgO5rSmdDO2ywOCv9TcdjVFNTxhMPdoMqEGJnZjRNQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684907; a=rsa-sha256; cv=none; b=FdVqv3RGql7IwHSgyHNyeA0itWn6X8jgApFNqPCGHgwhp3DlZ8E3dioU2TbR7CmaPkyax4 Xr8CG3eZFirrNa6C8GOwH3Rsv7p/38455bpoNaNKBzG6SUUGL6yvn4mC+GrBn+FXhPh1F3 Dap6XvY68OW3w91LsAET3sMA/wW+AytAr7Uc36zhl1uvKUCfy8LKJgB3d+5mOL5jNgTl5e 7/b5DdGZNlcZtp5jR1GAVma3Kdvsu4T2k7ui2MfG4DVboiUqvjyGPyklMAImVuUPXXomBC TSoT+Tq5Tuup0AC5zNbEsMZFNAkgyzpP9Wb9F8DVrcUTBVhE+eDJiOs4J5F3/Q== 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 4P2J6y5qsdz14sr; Wed, 25 Jan 2023 22:15:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMF6nN064261; Wed, 25 Jan 2023 22:15:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMF6Ff064260; Wed, 25 Jan 2023 22:15:06 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:06 GMT Message-Id: <202301252215.30PMF6Ff064260@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=20P=C3=A9dron?= Subject: git: 04cbeeb59742 - main - linuxkpi: Adds more `SZ_*` macros 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: 04cbeeb59742a9e88d838e18b84004e9bb89ca00 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=04cbeeb59742a9e88d838e18b84004e9bb89ca00 commit 04cbeeb59742a9e88d838e18b84004e9bb89ca00 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 17:17:37 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:50:07 +0000 linuxkpi: Adds more `SZ_*` macros `SZ_2K` and `SZ_1G` were defined in irdma. They are removed from this driver. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38150 --- sys/compat/linuxkpi/common/include/linux/sizes.h | 14 ++++++++++++++ sys/dev/irdma/osdep.h | 2 -- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/sizes.h b/sys/compat/linuxkpi/common/include/linux/sizes.h index b132eedff933..4e2eee2e1b33 100644 --- a/sys/compat/linuxkpi/common/include/linux/sizes.h +++ b/sys/compat/linuxkpi/common/include/linux/sizes.h @@ -32,6 +32,7 @@ #define _LINUXKPI_LINUX_SIZES_H_ #define SZ_1K (1024 * 1) +#define SZ_2K (1024 * 2) #define SZ_4K (1024 * 4) #define SZ_8K (1024 * 8) #define SZ_16K (1024 * 16) @@ -43,9 +44,22 @@ #define SZ_1M (1024 * 1024 * 1) #define SZ_2M (1024 * 1024 * 2) +#define SZ_4M (1024 * 1024 * 4) #define SZ_8M (1024 * 1024 * 8) #define SZ_16M (1024 * 1024 * 16) #define SZ_32M (1024 * 1024 * 32) #define SZ_64M (1024 * 1024 * 64) +#define SZ_128M (1024 * 1024 * 128) +#define SZ_256M (1024 * 1024 * 256) +#define SZ_512M (1024 * 1024 * 512) + +#define SZ_1G (1024 * 1024 * 1024 * 1) +#define SZ_2G (1024 * 1024 * 1024 * 2) +#define SZ_4G (1024 * 1024 * 1024 * 4) +#define SZ_8G (1024 * 1024 * 1024 * 8) +#define SZ_16G (1024 * 1024 * 1024 * 16) +#define SZ_32G (1024 * 1024 * 1024 * 32) + +#define SZ_64T (1024 * 1024 * 1024 * 1024 * 64) #endif diff --git a/sys/dev/irdma/osdep.h b/sys/dev/irdma/osdep.h index 0bb062745ffe..9b155bb95b4a 100644 --- a/sys/dev/irdma/osdep.h +++ b/sys/dev/irdma/osdep.h @@ -87,8 +87,6 @@ /* a couple of linux size defines */ #define SZ_128 128 -#define SZ_2K SZ_128 * 16 -#define SZ_1G (SZ_1K * SZ_1K * SZ_1K) #define SPEED_1000 1000 #define SPEED_10000 10000 #define SPEED_20000 20000 From nobody Wed Jan 25 22:15: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 4P2J7010GXz3bbT2; Wed, 25 Jan 2023 22:15: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 4P2J700Xkpz46bC; Wed, 25 Jan 2023 22:15:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684908; 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=3XjCAvPVHqd6iUYWlcJgbxscMEGi3UKAst+U8PouKcY=; b=CISREcyYVNQlzRRRMuW033RsQuNSfzERvkcnlQqlwamlmSV6Gig4IK3e6Y5i3ixZxxkkQh vVLHfV7sOgTCYQlWctus/fLciI0HZIuarsTLznxJSyCyURsWJ3P5owsITbzBkc2IP7FUOV Ll8Y4HOcLOZJLBi1Qre0exARm/xMPyQ283fWGzuZVirnh1XnKBIpVlmPKDFkn74h8603nW G8Ck4ia4nxkdyPFF2ixiO7I7SB1MvuQ3RmxJ28BQkNf9D6h88I/jQdu+Ltspu7XPAITiVP nsVcF9yHbkJpnSpw4F0cqFq4VCwlRds/ElnirkLHG0aMeQaFO/i5wxioJS0uag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684908; 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=3XjCAvPVHqd6iUYWlcJgbxscMEGi3UKAst+U8PouKcY=; b=ZJIT8RURfgTF0IMzv9IFAHBr9+atuHBiHdERsHScEKM3G+Drovl7HM7EhDYZCiB8NQ2PX8 DgZRfbrdp5NrprzBV5zVDJZHU+dCqgEzj6QDL6wdeslCkCzFJQLWOkeaC4DQh2EhxlHh2N GfBeZrPQoK53mPdg6ojlzBDrCIuqAJ85cvd22Anl7MYSGMXgsRx97pIyD468+YpVCe5pD0 UvtDBrUsw7bsox4ts3E147rq1WENYJm5A7p7MqtqMP1dMU8+psxHjtZCqoZ4ohuzNEvv9b lTbchdfQ79qWXzYq3MpwR/tBay1oVxPDNfHrARZAP6N+iep7jEBHbthCE3jgZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684908; a=rsa-sha256; cv=none; b=cQducpUJ+hKEvoYhTsCFSsvE5myGJmJXBIRmVPmr2d4Q457q7pADnyQXxGzc2fEwSU698S mKtYbkVdFPj43lrlourYu09xFTm0AmyWQo/CNnd2BxCxOIrCHHlvVlUPLg7TPIZ+lOOw+5 1ZKaeM1OE/e4ziX2VkMBlZB9D65kPdFnUQBO4be4xRybeZgbSx/Tm0lLNEizcgPxa4AWtz 9umcGuqWHl9qRZy1IkH7ehGrpqnr6QNm3LB+D+MYtTqqZUf92PBWX/tMWw3Lq9dmejkw6+ Ijw919Iy46ul/H5ZElmBX/NE3OQ2Kfy+SAqh3oWCV9/9oiW8jqjDMwBL2ni7MQ== 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 4P2J6z6mJSz15Y0; Wed, 25 Jan 2023 22:15:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMF7vB064293; Wed, 25 Jan 2023 22:15:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMF7hw064292; Wed, 25 Jan 2023 22:15:07 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:07 GMT Message-Id: <202301252215.30PMF7hw064292@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=20P=C3=A9dron?= Subject: git: d9f1cb6774f1 - main - linuxkpi: Define `DEFINE_WD_CLASS(name)` in 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: d9f1cb6774f1785544c2fbeba476d4842967e804 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=d9f1cb6774f1785544c2fbeba476d4842967e804 commit d9f1cb6774f1785544c2fbeba476d4842967e804 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 17:19:01 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:50:27 +0000 linuxkpi: Define `DEFINE_WD_CLASS(name)` in It is defined as a synonymous to `DEFINE_WW_CLASS(name)`. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38151 --- sys/compat/linuxkpi/common/include/linux/ww_mutex.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/ww_mutex.h b/sys/compat/linuxkpi/common/include/linux/ww_mutex.h index 82ba7a55a7e8..d0dd7cd52601 100644 --- a/sys/compat/linuxkpi/common/include/linux/ww_mutex.h +++ b/sys/compat/linuxkpi/common/include/linux/ww_mutex.h @@ -61,6 +61,8 @@ struct ww_mutex { } \ SYSINIT(name, SI_SUB_LOCK, SI_ORDER_SECOND, name##_init, NULL) +#define DEFINE_WD_CLASS(name) DEFINE_WW_CLASS(name) + #define ww_mutex_is_locked(_m) \ sx_xlocked(&(_m)->base.sx) From nobody Wed Jan 25 22:15: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 4P2J712csMz3bbcj; Wed, 25 Jan 2023 22:15: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 4P2J711rdqz46d4; Wed, 25 Jan 2023 22:15:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684909; 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=iNrYZ+EAoJ9C+uciyXr4Z5XM6LSx3qkpOQq6ycILubA=; b=QFXQC38XsRrqbN8afmsdbW9i8Z0v77uEnSEV/C6r81DMykqYWLa74GuDoKn7GFknd4hSix gae2EFOcPXEgegPFw/J0u4lrCs37+eaFSWU0G2Fl/qqprfYKUjKWH3FZKRdrENEHYWx7QC nyLyFhp/7ie25EjGoIGk474m0RDSpx8UHBoTXaUKI0KXAnEZvN0auynnGwyUON3Tf+GfeQ MBQd4zNfGFp+yuC7TVHDbZi69LvvfdyQUETuJ8kdQfGrTP/bY8q7x1hV//QvsFWXY0xacU OXdXZJ2NviYfz6JmqW6oSiKzGR3tb7/oW2CXGcZo6EMRxLH57Xyl3t/pUszukQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684909; 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=iNrYZ+EAoJ9C+uciyXr4Z5XM6LSx3qkpOQq6ycILubA=; b=gAzJ56cU7Bcqu/r9vk8O1EbGkE+yKNEkI4T+lBWwLXzvAs5T3Ie/t7OWAq00wlYxD/HAt3 UIfW4ljVyhjICnWbnZWpgmt7B48fn12vrVtfkouYhY4aEhxz5cBgfuDAFAFvWajXbXtdlB 7WMwhgWNJcWjigznCirXhIInprGo+3ilI/oDAkDtJmTWT0zfD2KwkHs9U/9Sp8SVGiAwQF 5JvThtaByyzxiwb0u+H1fsgMDa468jp/lwJgAXjQRiyk8RO0psKFaDIQpFtp9p8nceHb2/ 62j9FIEmXJ/039qc6oDOOZ7nzP350BMJlwr+fUOD7Q39oVB36fJak2Zr9/XaXg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684909; a=rsa-sha256; cv=none; b=ae1YOgJbiqQ25rSarKCNCbE6be7+jnMhAKFJ033xvSUxDI7LmgQy930XEuBkmlB8kjttVS EuTofQwuS1W4/8KbhoX2X4+PMDYErHGBvqPgnduktfgSl0mafBBi/ezOvFeD8uhghTRpHC vTXKJrbFdA/yzHYNxqUjTb+tBfI0TIfhhrtkrLdE0hvB9CYyoF9gALgqT+5H3Hq/mkmPdT DL6aFT1nCPvOD3WfiEgsb/blezf9Rc33bK2jzL1EBT3sLKliZdIIABOVTv7il7W+6z+3Mv /lHvtA/eKM9dmSffTwtDYCCdEqHhUYvhXTTH2lPce+aoLXyAG5eJegSaRiNEqw== 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 4P2J710c0Mz15Y2; Wed, 25 Jan 2023 22:15:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMF8Zs064323; Wed, 25 Jan 2023 22:15:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMF8PM064322; Wed, 25 Jan 2023 22:15:08 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:08 GMT Message-Id: <202301252215.30PMF8PM064322@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=20P=C3=A9dron?= Subject: git: b34cd67243c3 - main - linuxkpi: Add `seqcount_ww_mutex_t` in 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: b34cd67243c39ca55be40b3e7958f3ade290347c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=b34cd67243c39ca55be40b3e7958f3ade290347c commit b34cd67243c39ca55be40b3e7958f3ade290347c Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 17:20:01 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:50:38 +0000 linuxkpi: Add `seqcount_ww_mutex_t` in It is defined as a synonymous to `seqcount_mutex_t`. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38152 --- sys/compat/linuxkpi/common/include/linux/seqlock.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/seqlock.h b/sys/compat/linuxkpi/common/include/linux/seqlock.h index 87a5136c1210..b6646f6d102e 100644 --- a/sys/compat/linuxkpi/common/include/linux/seqlock.h +++ b/sys/compat/linuxkpi/common/include/linux/seqlock.h @@ -53,6 +53,7 @@ struct seqcount_mutex { seqc_t seqc; }; typedef struct seqcount_mutex seqcount_mutex_t; +typedef struct seqcount_mutex seqcount_ww_mutex_t; static inline void __seqcount_init(struct seqcount *seqcount, const char *name __unused, @@ -68,6 +69,9 @@ seqcount_mutex_init(struct seqcount_mutex *seqcount, void *mutex __unused) seqcount->seqc = 0; } +#define seqcount_ww_mutex_init(seqcount, ww_mutex) \ + seqcount_mutex_init((seqcount), (ww_mutex)) + #define write_seqcount_begin(s) \ _Generic(*(s), \ struct seqcount: seqc_sleepable_write_begin, \ From nobody Wed Jan 25 22:15: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 4P2J72466Hz3bbfb; Wed, 25 Jan 2023 22:15: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 4P2J721xknz46dX; Wed, 25 Jan 2023 22:15:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684910; 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=VN8idvQLKwYg8sj0JOncfhPc8lu03XkL84MRtiBZ7Cs=; b=uGTiYw0CiC3gZUdw+uDnMVLDxbVgxrSVQyrg/MMAS9yNo9tz/Xm/AeapvYUBE/NfgFtJId eSTraRzfKAEUGSxYJteUG20XguopJX77gsINTffbmTPD9Q95Rz4VXoAyJf38eJWY7Q4vaY nIB3A5+Xtap64k6SRWmojLhvZ/wb8hJBtIDiuUpiHG/FkoQzqkL+BYK3H6V8BZYocIrqW4 RIEXsBuufyZMc0QijwJkJjvm4I/cRf8l2Zn911c6EEPhzhH7ASr0ugrWHGrSDoZ0CPBFHU XNG3zBC9sJiOmiUMw3ie5X8RbSCDBwaGR5HbqNtIL3r04VXVrWIYK5bjJq0r/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684910; 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=VN8idvQLKwYg8sj0JOncfhPc8lu03XkL84MRtiBZ7Cs=; b=eOFitwhvkE9a1XWNrEhXsrG88oTWaRBgNT5KT+KqPrcBT1Wiflsj0XIv9l1SmALYnyb6t8 FJQ+0kym7qZL3das/fP3hv+ls9f4uLNmvLyTX9xPKHghZwihxlfZcCby1l8r90U6ff/llj xWAvh6Awi/sbYgzZQQG/t5PTNKYku4Jc1RyG52Jdur9rLUc71tJqP4cX4RDWxEYyF4ozRM nn1sf/i+z29TVrwUJUDuWszo8KvTT/qKNId6GbRCTAAzx71GTcuEfCnQKIHJrwuWxdgbz1 FMb/Xk0ZWA83DL+2UArFQduPoO5tUpaWrYQ/LGifMFz25w/ngRs6bQap2iLeWg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684910; a=rsa-sha256; cv=none; b=B7hp206v8g0EiG6FcOFLseuftQHRMPvzHYNh8cppM6Wj1wJ3NkXRZXTijjivlBSxGe3hWs oJ1ozqxX9rA8rMmWPMjNhsoSgconXeKbCUF5gMeZRSh46RA/YDv1BI6hZiPwHlcfvIyUiN I76tQJGg/GpEIerGBGcL9TxMerKA8DEuSvcbdCCFj4Z+L7+MKi1v38omfEhmgLlCaoh0lk uXaK4M9+7zh8p2T2QYIfOWiwqyR6B75wNeE+yBcjX3ckFevpOFNO1B8wfhvu4cGHvutGF9 ecCRfVEnIqgmcEtXAbnn7dNTksAM2MugOwy8EVVyv3s4p8bJt6IbQCyP1WJVzQ== 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 4P2J720sXcz15d6; Wed, 25 Jan 2023 22:15:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMFA1t064352; Wed, 25 Jan 2023 22:15:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMFAH4064351; Wed, 25 Jan 2023 22:15:10 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:10 GMT Message-Id: <202301252215.30PMFAH4064351@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=20P=C3=A9dron?= Subject: git: 3d47e3bf7b37 - main - linuxkpi: Include from 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: 3d47e3bf7b3725482d6ae01675db097a6de020b6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=3d47e3bf7b3725482d6ae01675db097a6de020b6 commit 3d47e3bf7b3725482d6ae01675db097a6de020b6 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 17:51:40 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:50:52 +0000 linuxkpi: Include from I'm not sure this is correct, but it gives access to the definition of `PAGE_KERNEL` in `ttm_tt.c` in the DRM drivers. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38154 --- sys/compat/linuxkpi/common/include/linux/pagemap.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pagemap.h b/sys/compat/linuxkpi/common/include/linux/pagemap.h index f3c8c04aa13e..81b799f0e019 100644 --- a/sys/compat/linuxkpi/common/include/linux/pagemap.h +++ b/sys/compat/linuxkpi/common/include/linux/pagemap.h @@ -33,6 +33,7 @@ #include #include +#include static inline void release_pages(struct page **pages, int nr) From nobody Wed Jan 25 22:15: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 4P2J733Tdqz3bbfl; Wed, 25 Jan 2023 22:15: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 4P2J732bgkz46hq; Wed, 25 Jan 2023 22:15:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684911; 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=FPX2AGMh/YKXMw8/AYKN9uaIBdcv77uUMsdn7RabjqM=; b=d0/vgGRuGxTKkDrAXH47ndNQMf1bKAzaawwpzCVLL6OFJ4aLU5xK+6/pUq7E37bQR5qwRY enM978P57MzAUum5DNMsNn1pY1l9EfaL9b05873E0m1G/2sebUSuwHpam4xcJqFPh5Ky7C Xp/NCi+mU6j58fsjOU7/rh+mFtudr1AaLwOYFdnaUGj3pTq5hkSFwlhzi1jt+rZSQeYLTd wzc+G1R1crxlakP+8rYvZ80bgwfddEugF4EmvQ/Lr1G3E6MYZGGSXfG6uoJuW+imMjdqMo 8d47WLgzbIOuYeslw4CPi0gK54Vw9Mva62Yof2TeO9nfpIWI1MPiw4qTw7K5Fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684911; 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=FPX2AGMh/YKXMw8/AYKN9uaIBdcv77uUMsdn7RabjqM=; b=Io69hJDzV3F5CiEltcnmhKwrQyZYTU/rFCVBgbGo+p7r3wv2ZoUVrLwOO/KN7GrJZ+/bzc s2TTaMb5akF0JYZ99DJIXi7aATkWc+apshpa8X0CxG/hq6x1aHZ562A8cYXOhwKCIOlOXk Qyvm7dW7kMr5hNeLSM7P5Je/LLrRwEcpHG96wdqba327IIn7kAAWcj4Y09XmoedAAoKAdu kY82WRMv08UxPUUOrjctwKiUHBKEwh+MBtIoK6FIi3XWO3H8rxI/IaOMZMr8PlpW0dcw1h lYhScbip7568M0aGjna2UyrHgM1cOnCHxJway4ZWftE8P8s8rtMG2kmtYAHdRA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684911; a=rsa-sha256; cv=none; b=NqzUkCKCQCg8OT8cgHDQl+/l5v+oKXEWC0CIM5bsKoPyf15rByo80maHHDwNyZnMfbKqq+ 0xoNYu8rP1pa25MPw0iFMZpm4vyXg8TsAa+6WnMXVfRlKTt2a2S+jE7C5VpANHcWK1AOg7 cETR0EkGlt+6gT9HgCD8J2sdU6SkO/3zKsI5AkNw1dKtKzhTBK4RiJhrn84RepIOEwURt0 XWVnyMVP7o94wZJ0B/gt2ZIyYcFIK1xhzmmlKCvccozMGPCm0F0pgp8JqRWLp4JBOZHvKx u/PdRpxQrvHkYFboAs85zazvL/szrMeEPpuLY9Sbm+2dnpFKeXnbGfoCda2ctA== 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 4P2J731hlDz15JV; Wed, 25 Jan 2023 22:15:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMFBuw064381; Wed, 25 Jan 2023 22:15:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMFBYw064380; Wed, 25 Jan 2023 22:15:11 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:11 GMT Message-Id: <202301252215.30PMFBYw064380@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=20P=C3=A9dron?= Subject: git: 47877d61af07 - main - linuxkpi: Define `is_cow_mapping(flags)` as false 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: 47877d61af072b6b28cc1bf45bc906bba3618b32 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=47877d61af072b6b28cc1bf45bc906bba3618b32 commit 47877d61af072b6b28cc1bf45bc906bba3618b32 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 19:22:41 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:56:40 +0000 linuxkpi: Define `is_cow_mapping(flags)` as false Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38158 --- sys/compat/linuxkpi/common/include/linux/mm.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index 5cf4453dc966..2e0e47f774be 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -317,4 +317,6 @@ void lkpi_unmap_mapping_range(void *obj, loff_t const holebegin __unused, void vma_set_file(struct vm_area_struct *vma, struct linux_file *file); +#define is_cow_mapping(flags) (false) + #endif /* _LINUXKPI_LINUX_MM_H_ */ From nobody Wed Jan 25 22: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 4P2J744Lzsz3bbks; Wed, 25 Jan 2023 22:15: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 4P2J743P8bz46qZ; Wed, 25 Jan 2023 22:15:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684912; 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=OWq7Cr4A0x/PEwmsBJtGQ8fUcHcwhJFuGgiLO1d6yrk=; b=aHB1EXSmbJTgtdE5Vb7e9/GQw1VHpPK6kiqupQujUDe4dKQSQ/kiYU5hPBghtnijVWccRy 2L07GgFiNVbWO3pHnJfQjMq2c8zhJiaSZ01q3IxItEEkURn8mlOnwE13S3pcRAVVxOxX7q J34PAMG1DpNDj78EP7PDQkcwfx/XzNuHS7e+1tTMYQ9sWxcmXbVO1D67aZ6Jv1JmDVHypx QZYvpHbEsTXgFkbhJ67qVx/kSMIKPMadlYUunD0MXbszbAIgrw3q4+v7xJg1k9YlE3Hyzt 9qf0INhANXA7JBA5F5s73WCz9gFNBuJ1xvboAdN2IIlHfptGvFi9K2Xm69zliQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684912; 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=OWq7Cr4A0x/PEwmsBJtGQ8fUcHcwhJFuGgiLO1d6yrk=; b=fJLRasL8vm8pDJloiSoXtYT7FnNm8BJ5KvElNFpntnvx//lnW+b7aYBQXyvDR/gYtleH0r 7u7bvfl6pzh5wrpfg+xyNjWXne/dHFQ3/Z4cFBRxXXXiASZDQNbnZ2p1UIpOvmYQUoBHtH RBKJol2c3yGLd8c/zLWRyhq2Wr+iAvYGm5vN7KLcn+Dvxnr0JG1+/FpsNq3Hl0mwD5lHQg 1VXk1yYzFRlmPfAzfzS4KDhJE/GnHfUsj4GzZzd/PSKsdstrJnSUbU0lRaXXsoM48SdP0L IJvk8mjJZQuo6XUWpaVRuLU8k+CdqdULQDEJDr9TbSpCV719zhbLKHkrHI44+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684912; a=rsa-sha256; cv=none; b=QNDFiLSTeBmipWx//ir5h+JFh1a8hwYWXY6I24zegCgtjGEEtrjAa3yGhQuu7wzPVbf9Iq KgAOr60+AH5km3I0mQYwqbocaT5jGFp4PPnd1UANyGQ5our3jCa8CbzMVe97dcZnj3DCCi yc1cXyom69dUgMF55wMB6y/xYjf9x3IvFqqDowD7qf22wWH9ial9I7pgiGPzpL3b7iP1s5 IOVr1FZZ2OPogJB9ogPIJ8m725g5G+HPjsqxM1XhxXQJMGK4krhqkkUXFzepwCLPMr4/Hk 5B379H/whpMGhydDqQqdHWaP6mv8tHPFlvWoqpsZS8OGorV2iDMcdOyi17AmcQ== 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 4P2J742VJ9z15B8; Wed, 25 Jan 2023 22:15:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMFCrm064416; Wed, 25 Jan 2023 22:15:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMFCF5064415; Wed, 25 Jan 2023 22:15:12 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:12 GMT Message-Id: <202301252215.30PMFCF5064415@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=20P=C3=A9dron?= Subject: git: e64afbc21572 - main - linuxkpi: Add `sysfs_emit_at()` in 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: e64afbc21572984ca1249e01ff6b1cab39b679b9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=e64afbc21572984ca1249e01ff6b1cab39b679b9 commit e64afbc21572984ca1249e01ff6b1cab39b679b9 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 19:23:17 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:56:56 +0000 linuxkpi: Add `sysfs_emit_at()` in Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38159 --- sys/compat/linuxkpi/common/include/linux/sysfs.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/sysfs.h b/sys/compat/linuxkpi/common/include/linux/sysfs.h index b9689a367c90..9d19dd50dbbc 100644 --- a/sys/compat/linuxkpi/common/include/linux/sysfs.h +++ b/sys/compat/linuxkpi/common/include/linux/sysfs.h @@ -314,6 +314,24 @@ sysfs_emit(char *buf, const char *fmt, ...) return (i); } +static inline int +sysfs_emit_at(char *buf, int at, const char *fmt, ...) +{ + va_list args; + int i; + + if (!buf || offset_in_page(buf) || at < 0 || at >= PAGE_SIZE) { + pr_warn("invalid sysfs_emit: buf:%p at:%d\n", buf, at); + return (0); + } + + va_start(args, fmt); + i = vscnprintf(buf + at, PAGE_SIZE - at, fmt, args); + va_end(args); + + return (i); +} + #define sysfs_attr_init(attr) do {} while(0) #endif /* _LINUXKPI_LINUX_SYSFS_H_ */ From nobody Wed Jan 25 22:15: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 4P2J7552rQz3bbn8; Wed, 25 Jan 2023 22: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 4P2J754Hfdz478f; Wed, 25 Jan 2023 22: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=1674684913; 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=El5S3sJyCT826uYwJV95vYrGja781r35KovVnpD17q8=; b=mXqNnKXodnKnXKhNKwuP8+fnvCgMMoQF+L7EcrRH/uIAdySHAMySBFUAYKiIP2mcC7YY4l +pzh7b+b2TBVyXjc0NKmAoWlLsxp754eNX1Tj3yME1R142LfqBmp5nI79lXzwFkgbMNkgL 7comuFZCdOaFAWvOfM8dMdBRFXHeIBMru9+o2lXWgigoCwtIPQ/TN+VHArTC4W6KMXx54T 0r0WneWjWMqr4rtGWx7kacvbdVojmyzjLNw7ofnBeubKNpR7TZgEpduP/V31HIfo/X094E SF92MOY5NVdsDlk9RBfJcotHc/evlxxxnVun39mOPk9XALW0MFMeEzdTGCgn2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684913; 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=El5S3sJyCT826uYwJV95vYrGja781r35KovVnpD17q8=; b=XZ9fVPP84xyrosbkGfItanOjwQ73V/0zcrPddZuyl1g46cfGG+ash+3vap2NUPElvVVbir 9rRgVBt5dB7oVdOzJQ/vit/5/MUSeHwPvS4c0mg0IwDzA+/G13zoTmQNoKiY3WQf0C4kKW IlzfdlJdgirxjfKkiky0Il4+J12pUl2z1LIbq+uRlHRoANy0VKGtGFcKXkh7bR0YyNdyO/ 72IXWsGuxxs8KyyZ3Lf5hFQswwt3Ug2wVMnN0nRHRQfOPlASK/czyHng5SxbomiizQ2Yz8 QSrV8qp91SkELPeC8rDf9B6y1AeNIa5DAyWaBjIZs7g+aMDadO3uUiHQMQ9KXA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684913; a=rsa-sha256; cv=none; b=CWW6DYg1fjMg+e1a0w7f3nJiaitPLa7CT9FqwHVbMyObkj1qQ/xzk7Y4DqDYWBW1jIzSSr RgK7+8whzP5i6b4iN3AQ/mYe2qEC4/IF/wUj3wUehzhxfLbTTfjyKiFUnCxXSmqpzw58GD OqR6vNV/dsJ/zX7IABcSdYa2AOre3NFy3WJg+wGUHHEKsdDnyqgddAEQ+9BoeP/UbhGLjx g6DSBvcgXN6suJz4dmrOC0YRtM6ntpTNzuW5EfM/9SesodSc87yc4IOqbN2gyGasycZ0Nf clgMCbuj3+syJiv2sNZXCRld2xCMqbrBbLTfQNoqSYN0p0a5XqYm555pG3D8Zg== 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 4P2J753Ld9z15lF; Wed, 25 Jan 2023 22:15:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMFDXg064445; Wed, 25 Jan 2023 22:15:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMFD5A064444; Wed, 25 Jan 2023 22:15:13 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:13 GMT Message-Id: <202301252215.30PMFD5A064444@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=20P=C3=A9dron?= Subject: git: 4152ce213954 - main - linuxkpi: Add `msix_cap` to `struct pci_dev` 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: 4152ce2139548e3e3c28c1e224747fa5d10ae656 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=4152ce2139548e3e3c28c1e224747fa5d10ae656 commit 4152ce2139548e3e3c28c1e224747fa5d10ae656 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 19:23:59 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:57:08 +0000 linuxkpi: Add `msix_cap` to `struct pci_dev` At the same time, define `PCI_MSIX_FLAGS`and `PCI_MSIX_FLAGS_ENABLE`. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38160 --- sys/compat/linuxkpi/common/include/linux/pci.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index b54b5cc8dd70..07ea473a4c56 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -170,6 +170,8 @@ MODULE_PNP_INFO("U32:vendor;U32:device;V32:subvendor;V32:subdevice", \ #define PCI_MSI_ADDRESS_HI PCIR_MSI_ADDR_HIGH #define PCI_MSI_FLAGS PCIR_MSI_CTRL #define PCI_MSI_FLAGS_ENABLE PCIM_MSICTRL_MSI_ENABLE +#define PCI_MSIX_FLAGS PCIR_MSIX_CTRL +#define PCI_MSIX_FLAGS_ENABLE PCIM_MSIXCTRL_MSIX_ENABLE #define PCI_EXP_LNKCAP_CLKPM 0x00040000 #define PCI_EXP_DEVSTA_TRPND 0x0020 @@ -323,6 +325,7 @@ struct pci_dev { uint32_t class; uint8_t revision; uint8_t msi_cap; + uint8_t msix_cap; bool managed; /* devres "pcim_*(). */ bool want_iomap_res; bool msi_enabled; From nobody Wed Jan 25 22:15: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 4P2J771Hj0z3bbnF; Wed, 25 Jan 2023 22:15: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 4P2J765KHqz474Q; Wed, 25 Jan 2023 22:15:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684914; 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=CfN9MOVNO4udnv8fXmzr+aFiY17x0fCkhvIbPP2ZI2A=; b=fRf+a4Ys9R7ySOQDzW9LYC1EH5N9Bf7q0DvIW/BcvDwlhcgBc7WH2tpB6Gj8JMLduhGLuh AQ2FTJjyGxTiWn9lqMx0Sj2x8C35wQomlKxvJecZOJR9zfxo0YAMM3ntoSoxzhMqoXfMe5 hz55m2+pK4SNiO2LZTcHuMUdw5LK6mO1Ko+i/h9LpylUtjCOVl7OGytuX/LJHfIbKjzvmb REvb+wsqqh7E4hyd3rYNzLOTCKQT82M2MQWfyyVfY/l5gyl+5cWWByc/upMTdoZOtUoXtv n9PPwB0GPUhmRocDlEyYvV2SC44cMOVrzwRxJeZyW9b0OXltRRPY0GeqC+0cnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684914; 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=CfN9MOVNO4udnv8fXmzr+aFiY17x0fCkhvIbPP2ZI2A=; b=Ix20IOKT5pVrIKAR2Gq2NxUkHb08GhVH0HBab5MNpdEswWfvW5/zs7MD+buN/PLwBoYTiD 0Ra1BDhpBZQDE+E7KuwoacK0OvUQ5T4MjcSVdAfX5F41lPGcRlRpDvOzn/j1dB1PR+MPvE Hl7dPlT7uUnuRqkY+UYCQo/pYgCJm4C6Gk0l+5FX4jW9ucozPZZzwZLzgpJmniALyZ8wq4 /Ac2D/NHPAlc/DAs4cC58UsSJ5JxU0QdnF9GEb6sFGTndFx1PS56MY8TbkD6hm1TCKtoTM AgXeZiuAy7whAigBEopIgQnnTvGKd+abEwo5DsDIV5ocmSRbG9qs5mZ+7XK/Tw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684914; a=rsa-sha256; cv=none; b=viGlGtiE0VM+phDmyAnSMOdPEW5y8NzOK0JXdmm3A5HNGwdi6DtUzH/EKMdf+Iqc2e80Kv hwEj0JD7J+R9C5HqNe4QGu4UDL2/HdarXPUcob/TT8AFvtUEOngGOj2mzkcJL9erQIPhgT PPb7I09NhHXrBT6PDeHoDqCiO312KhT65wXGZCnFznJdVCaeZfz95C1qhKHPomCcxiyRQG 4v3hpmVBVkL2LceqQ4xUxKmpkwsAFYwXmEKPz/wtbn4kMXNededLwla/D4c+uzX74MXv1k 4osMklR6CfFVDWarfzS2YkNRa/B5z/e+Zkt96Jf3LhwZoFaSuCNGjsu4uZ09SQ== 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 4P2J764RBsz15JW; Wed, 25 Jan 2023 22:15:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMFEhY064474; Wed, 25 Jan 2023 22:15:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMFEYe064473; Wed, 25 Jan 2023 22:15:14 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:14 GMT Message-Id: <202301252215.30PMFEYe064473@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=20P=C3=A9dron?= Subject: git: ccd31b464568 - main - linuxkpi: Define `pm_suspend_target_state` in 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: ccd31b464568ecf5907dbecf255edf0676124735 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=ccd31b464568ecf5907dbecf255edf0676124735 commit ccd31b464568ecf5907dbecf255edf0676124735 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-20 20:13:32 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:57:21 +0000 linuxkpi: Define `pm_suspend_target_state` in It is set to `PM_SUSPEND_ON`. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38161 --- sys/compat/linuxkpi/common/include/linux/suspend.h | 7 +++++++ sys/compat/linuxkpi/common/src/linux_acpi.c | 3 +++ 2 files changed, 10 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/suspend.h b/sys/compat/linuxkpi/common/include/linux/suspend.h index 5c15b0619bd0..8458a6f6d4c5 100644 --- a/sys/compat/linuxkpi/common/include/linux/suspend.h +++ b/sys/compat/linuxkpi/common/include/linux/suspend.h @@ -3,6 +3,13 @@ #ifndef _LINUXKPI_LINUX_SUSPEND_H_ #define _LINUXKPI_LINUX_SUSPEND_H_ +typedef int suspend_state_t; + +extern suspend_state_t pm_suspend_target_state; + +#define PM_SUSPEND_ON 0 +#define PM_SUSPEND_TO_IDLE 1 + static inline int pm_suspend_via_firmware() { diff --git a/sys/compat/linuxkpi/common/src/linux_acpi.c b/sys/compat/linuxkpi/common/src/linux_acpi.c index 5eb60941abac..e092481ff979 100644 --- a/sys/compat/linuxkpi/common/src/linux_acpi.c +++ b/sys/compat/linuxkpi/common/src/linux_acpi.c @@ -40,6 +40,7 @@ #include #include +#include #include #include @@ -58,6 +59,8 @@ _Static_assert(LINUX_ACPI_TAGS <= LINUX_NOTIFY_TAGS, #ifdef DEV_ACPI +suspend_state_t pm_suspend_target_state = PM_SUSPEND_ON; + static uint32_t linux_acpi_target_sleep_state = ACPI_STATE_S0; static eventhandler_tag resume_tag; From nobody Wed Jan 25 22:15: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 4P2J7823Wgz3bbnG; Wed, 25 Jan 2023 22:15:16 +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 4P2J776Qnxz479Y; Wed, 25 Jan 2023 22:15:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684915; 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=cvhPzahCXpGu+VhYAH3vCvCiyWa9z21vPNPVMgoQPWE=; b=gJVUJ647HrAb7nMaePJXyVrjhcx5rwKNVgMVoHk/1jthMkX8jHHc/PlgOy68LgwTapkF9b mc6TVyAaEer7Mp9/f9Bj/pgJsZzshSLkUaKaaOO0TaiWUbrPdMcigdJrObCf7WVa0HvkQt vrDqodLtdyjlKXglieVkgWf5Uf3i6bU0dfp1B4gE1UpuHzR/az7XQvmtCGHAUdeGGXgNwk YCvL5MZE56PiIrnek722KH8f/fHJIlXUh/Z2n3Peno0hJdCjb2EqaQYtYT80bq0MfQ81Lm Yw5DGW1Ciz3rp+UJHV3a3hMsfU/6a2TmqKWH0SxtjQqvIrBJw9y/h59Nzm9dGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674684915; 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=cvhPzahCXpGu+VhYAH3vCvCiyWa9z21vPNPVMgoQPWE=; b=Qv7kwn+zo3+0IaIYw2yW3tpTe5CoXj+OL0deHuGnc8BU6dUuFqr8OYpJxH4fazGHCQ1RsM eKZsu/d6cOYVejIWjqZ3iV2bPZL8vGIK2JgFeqr4McaEl8tUYl/K7DLsZv0/9QVVYRwlsf u11CEhMJD3CgfolS1LcQJ48ajqsjEfrkUUFuAN7GzKFbElHuvcWRRJ7cujo0dUYT1ZmdCs jViheLlu/QgfW69AK4zN01VbT1zAr70fPnBSQe3cgN/8xqYd884ChU+lprTDDp4o5qtE6/ JaFZzWr+GWwP1doJhGfmsC/JGkhntuV0LHYVcECC+hyLDNuTlMiyRgOM7u8FDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674684915; a=rsa-sha256; cv=none; b=cea9asKQUJOtoaU5vUpLt9SW96jS3N7gY8FABHC5o1nbO3amsdQYNPhcHKbT4be6eTiRCH MQxA8U+D4lQhbQsnZXV8aMRzVjl6WphKTEE7pmJXynjYED65a8QXP442xBEih00TfgC9yH Y9lcbapE/Egnm3g+wKa7FyIVVGFxqIYY5Huv6tVatvQdYBWBpnos4WU4zteVvUjgV2c3G1 Qh/bYr8VfJyIJUqvV4wxrpB2XZAGjcOrMMsIT4kbMWniHsMxgTBHUVrskZefKMDvj3Er9Z KXZ0N/YrAA7JEcnVmqpVZMqO0oCi8daY4L9bztWPAjKmGiZw+LyZTgRRgZJa5A== 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 4P2J7755lwz15JZ; Wed, 25 Jan 2023 22:15:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMFFdn064504; Wed, 25 Jan 2023 22:15:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMFFc5064503; Wed, 25 Jan 2023 22:15:15 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:15:15 GMT Message-Id: <202301252215.30PMFFc5064503@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=20P=C3=A9dron?= Subject: git: 66cc55a041dd - main - linuxkpi: Define `PCI_STD_NUM_BARS` in 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: 66cc55a041ddaf4890239b1fe83632c74957bc03 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=66cc55a041ddaf4890239b1fe83632c74957bc03 commit 66cc55a041ddaf4890239b1fe83632c74957bc03 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-22 13:46:14 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 21:57:32 +0000 linuxkpi: Define `PCI_STD_NUM_BARS` in Reviewed by: emaste, manu Approved by: emaste, manu Differential Revision: https://reviews.freebsd.org/D38162 --- sys/compat/linuxkpi/common/include/linux/pci.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index 07ea473a4c56..b40241e4576d 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -106,6 +106,7 @@ MODULE_PNP_INFO("U32:vendor;U32:device;V32:subvendor;V32:subdevice", \ #define to_pci_dev(n) container_of(n, struct pci_dev, dev) +#define PCI_STD_NUM_BARS 6 #define PCI_VENDOR_ID PCIR_VENDOR #define PCI_DEVICE_ID PCIR_DEVICE #define PCI_COMMAND PCIR_COMMAND From nobody Wed Jan 25 22:27: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 4P2JPM6ztPz3bcyr; Wed, 25 Jan 2023 22:27: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 4P2JPM67BJz4DpK; Wed, 25 Jan 2023 22:27:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674685655; 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=r2qGxlmErh+nHfhMe3zJyupqT2HLMSxp53yve3uB3fk=; b=TDI1ThZYiJCy4i+nuR/Pb+mM6Jrq+c+z2gb+th8chx+7ywOlyIlgwaJ/D903IxFa/d7+Bf JiCdKp5lFbLXSEJ59gG013QDM2iIsfaefn+MpmlGLl393YitStXL6ulWuLTwj2SlhmCGTb oH2F/+SqEV2+A1mculBmLlQ1T9aNEkQWMh6+Y6sMpoLPsBYM1Eg3LToE8dHikF1/oZZDye QKufvO403baQ8KW+FRxWiRfpPS0T22CszgBbxcMg269d3HzK4PcD8pwMuqJuf+P8BV5O3W jvK4cjpundipirZU5gb5GEEPO9g5FUngSMsHzr9uPg6YYg7JcucK3MOel9csQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674685655; 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=r2qGxlmErh+nHfhMe3zJyupqT2HLMSxp53yve3uB3fk=; b=gJ6BylTNqtIBjZTjIPkf9kfi4IlzdoUN0/o12lXcrnsU5wEoEc3aLqT0aJbk/bFSNyCuQW JvEueViUWd0cRX9kWTnHDTTarlHJvDy3sk1CNN3rI8Di1+NFxL+VHy+RDEzVJDBIRXyiH8 r//K+cP6L9w/kkK2kaCgsXXnt8zEk52VPWr3X29SDjUEMzAP+v9A9RXkXWdKWBttYhqBxu qeNX+WNTFt4xAdjOXcfqfEZYHqC8+hEz/Ay2s5Cm9lqSMqImQJlOxLXgtG2OkcwQQUYfEU 5Xhf8ikJrIsBVUelR2I8hDVGm4+bYkVc2l9/3TqTZOUuLQiwsOaUxYnDEXzLhw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674685655; a=rsa-sha256; cv=none; b=oAtsOelNQjlBf/CfbZbL/u2PxGa6/T9E408Ik/qgh20dA7Odui3YV7IA0Ft3U1Hc+byaht F0MtfyA83NhLkLw+fv3neAwEPV0IiBmGU3fFFmhd2lMRI6DCvj3FJseOLhkGylQEiLU6wc Tqb2ONOWOFZc+G8e7ROiIK9Cqwp8RR76879r4w3Pj0wSlEmGj/Q9VUJvJW9YNX+28A8hce igUw9faluO0aJJUSQXUFFOPdMuA7dygGT/Hl1op0yZHPNF/6cSzOmrqup0AlNSez/ynVSG QKJxkkZNXmux7y3BmfW/F9hiNXEJsidjv4KNjHq0Jt4ErxMZ4q8U3Bjl88D6+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 4P2JPM53q2z15n4; Wed, 25 Jan 2023 22:27:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30PMRZkv078783; Wed, 25 Jan 2023 22:27:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30PMRZLV078782; Wed, 25 Jan 2023 22:27:35 GMT (envelope-from git) Date: Wed, 25 Jan 2023 22:27:35 GMT Message-Id: <202301252227.30PMRZLV078782@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=20P=C3=A9dron?= Subject: git: a04aa80e773a - main - lindebugfs: Add `debugfs_create_file_size()` 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: a04aa80e773a4bfdc4e72bab85d6e16f0083745e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=a04aa80e773a4bfdc4e72bab85d6e16f0083745e commit a04aa80e773a4bfdc4e72bab85d6e16f0083745e Author: Jean-Sébastien Pédron AuthorDate: 2022-12-30 09:57:49 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-25 22:23:16 +0000 lindebugfs: Add `debugfs_create_file_size()` This is the same as `debugfs_create_file()` but takes the initial size of the file. In FreeBSD, the given size is ignored and `debugfs_create_file()` is called. Reviewed by: emaste, manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D37914 --- sys/compat/lindebugfs/lindebugfs.c | 11 +++++++++++ sys/compat/linuxkpi/common/include/linux/debugfs.h | 8 +++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index 8e878b1cd446..168d591625f2 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -213,6 +213,16 @@ debugfs_create_file(const char *name, umode_t mode, return (dnode); } +struct dentry * +debugfs_create_file_size(const char *name, umode_t mode, + struct dentry *parent, void *data, + const struct file_operations *fops, + loff_t file_size __unused) +{ + + return debugfs_create_file(name, mode, parent, data, fops); +} + /* * NOTE: Files created with the _unsafe moniker will not be protected from * debugfs core file removals. It is the responsibility of @fops to protect @@ -228,6 +238,7 @@ debugfs_create_file_unsafe(const char *name, umode_t mode, struct dentry *parent, void *data, const struct file_operations *fops) { + return (debugfs_create_file(name, mode, parent, data, fops)); } diff --git a/sys/compat/linuxkpi/common/include/linux/debugfs.h b/sys/compat/linuxkpi/common/include/linux/debugfs.h index 074f709114eb..abda2d149582 100644 --- a/sys/compat/linuxkpi/common/include/linux/debugfs.h +++ b/sys/compat/linuxkpi/common/include/linux/debugfs.h @@ -56,8 +56,14 @@ struct dentry *debugfs_create_file(const char *name, umode_t mode, struct dentry *parent, void *data, const struct file_operations *fops); -struct dentry *debugfs_create_file_unsafe(const char *name, umode_t mode, +/* TODO: We currently ignore the `file_size` argument. */ +struct dentry *debugfs_create_file_size(const char *name, umode_t mode, struct dentry *parent, void *data, + const struct file_operations *fops, + loff_t file_size); + +struct dentry *debugfs_create_file_unsafe(const char *name, umode_t mode, +struct dentry *parent, void *data, const struct file_operations *fops); struct dentry *debugfs_create_mode_unsafe(const char *name, umode_t mode, From nobody Thu Jan 26 01:01: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 4P2Mq96cHGz30t93; Thu, 26 Jan 2023 01:01: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 4P2Mq967qNz4YLB; Thu, 26 Jan 2023 01:01:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674694901; 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=e9/g384abHZUED2kUwaZDL/h8spdQAPDAQZqlVJ0XtQ=; b=v9jueqkgQYe7IEvSWOvuc4242SSamXa8b3TTWdvz62MV0OBSMP4eRxkHzX/7OoRpkStjNr Rue82QtjgdOswapwJ0tWyLcbVgCK5wJvjvQsCvh/dkZqKV9sfocXCzncEeyNXrLIQkUspQ Dd3IxKZc9NNhFb3ernWlSOQyq8kw1QjoZMoOSc6/Rm2wH1XgnNmDW/YWchXS/xuNeiPaM/ ZUYoT+u9oFBU265tJ3Uu44V+++f5Bfng1+0O2g9gkNWVhMa4TVl76QzQBPaLQ9waDA8HzN 6vqTMPaKs2vlYsg2KmME6K24lt3sBDM0CwcKalP0aluEbibyHmt6JFEVRjV6Eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674694901; 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=e9/g384abHZUED2kUwaZDL/h8spdQAPDAQZqlVJ0XtQ=; b=CiXJd3FDe75ouMno5WhZTvbKMpBv6YhsFUSsfTyvryRkLfjr3aZslQJsaHAdORofDFFd+1 uS4nP3FlYqDv3xLjn2OBaRyhUCTnHPpUV/Npape58/Q9/cI5zlIvwgh86otgDW6YhlRHUM Nkrv7/LDxxdn26Jb59deEfw5+q6E11WDiAUvRnGZ9qQsr7/plPZZXR6Yhvtnx7NtFP6fSg osdP2fPtpcsQgqtWgjFYq+Xz4YkLZ/RrG9u7313LMgb57pW06S7tssDfcrv/rMUw/VKrka //6iGGjcC/KBGTT/e+/IsNTV5u7/AWjdHRKzxF+aCmr/jfrNjpyXwnrSIo+1Hg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674694901; a=rsa-sha256; cv=none; b=cFvF+szKHxiQdV4qrWyH0iZZMGNbVTfSSyW7ANB85uTDCwtNZyN0bWDF3Ivhv1KdwapWCL F0wI0oLmwqi8weoATT1mA/gCr7yqnNY99KMNACir8n3U155HS+xtf8yfvRCrbYf3U1nJiH bjqfn+0/CdB2tArBWwTZ2Az8MjZZIXcE9pWCQ058xhduqt/L+1fGsZYgREeGWSiJ0/Ftkn i5R1ZXBhyBwWDTSb5mlUJOo/l77ofQiaQ7lPpbz7nW1tuRHG66Kx8Si0wKQmZi3yYYlrdI DDXbsT1k56c30Nwzi8FfYyyNcDknF/xmdhA+JvtqGO/bkx3WuP5YMre0CEaqOA== 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 4P2Mq95CcTz18y2; Thu, 26 Jan 2023 01:01:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30Q11fqn007970; Thu, 26 Jan 2023 01:01:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30Q11fDP007969; Thu, 26 Jan 2023 01:01:41 GMT (envelope-from git) Date: Thu, 26 Jan 2023 01:01:41 GMT Message-Id: <202301260101.30Q11fDP007969@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kirk McKusick Subject: git: 0bd4c448ec1d - main - Rewrite to avoid Coverity false positive. 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: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14 commit 0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14 Author: Kirk McKusick AuthorDate: 2023-01-26 00:57:26 +0000 Commit: Kirk McKusick CommitDate: 2023-01-26 00:57:26 +0000 Rewrite to avoid Coverity false positive. MFC after: 1 week Reported by: Coverity (CID 1502669) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D37907 --- sbin/mount/getmntopts.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sbin/mount/getmntopts.c b/sbin/mount/getmntopts.c index e6607c385341..7702da903749 100644 --- a/sbin/mount/getmntopts.c +++ b/sbin/mount/getmntopts.c @@ -166,6 +166,7 @@ getmntpoint(const char *name) char *ddevname; struct statfs *mntbuf, *statfsp; int i, mntsize, isdev; + u_long len; if (stat(name, &devstat) != 0) return (NULL); @@ -178,12 +179,13 @@ getmntpoint(const char *name) statfsp = &mntbuf[i]; ddevname = statfsp->f_mntfromname; if (*ddevname != '/') { - if (strlen(_PATH_DEV) + strlen(ddevname) + 1 > - sizeof(statfsp->f_mntfromname)) + if ((len = strlen(_PATH_DEV) + strlen(ddevname) + 1) > + sizeof(statfsp->f_mntfromname) || + len > sizeof(device)) continue; - strcpy(device, _PATH_DEV); - strcat(device, ddevname); - strcpy(statfsp->f_mntfromname, device); + strncpy(device, _PATH_DEV, len); + strncat(device, ddevname, len); + strncpy(statfsp->f_mntfromname, device, len); } if (isdev == 0) { if (strcmp(name, statfsp->f_mntonname)) From nobody Thu Jan 26 14:34: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 4P2jrn1wYXz3bytK; Thu, 26 Jan 2023 14:34:17 +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 4P2jrn1Tmsz3Lgc; Thu, 26 Jan 2023 14:34:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674743657; 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=uUyGd5ZFm5Y5AElU1H5m42+u/cZdOxAqERrvpL2tHOw=; b=umgEwiFK5r+/icMUqg0lLOw7Ib+5hunhh6rssTKzkXpOZ1CSDOKGwALFD0NHhLPgkhSuNb 2DgIFUa8DTkQY0CbmwN+3S0U6E+vZucVbK1NqDcAv1FLFPQGjxGV+DvcCH8GhWRiZfA8Gs f1ZejJgL/w9kh9hpZFQraJ5v43EREGosvLaajZLe0yBlFIJBQj8nt+/P3u56X09FunNqQx +lswVHyJqA7V3fUowGiGwHWwG/y87uGnzCjgznAZO3L8I8PzWfSGXtA0yI5nMg/44y3q5j ZL5cMMi1idHxPPQa5tKw/f+yAedG+9dCsUpKJ5OmTns3KBAoYzgaCACU7fdl6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674743657; 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=uUyGd5ZFm5Y5AElU1H5m42+u/cZdOxAqERrvpL2tHOw=; b=KLbNrEINoALIBsaRlUz5VNpK5F1MQ++voTHQcGNqzrTVcZNtIOMhUlZ/AtHUQIKvp8UVT1 z+lNPG5822xO7Sap8P7Ljiyrn3PxhNQKTVc4ballus4CRlzZC8DbhjmNHnFeMQk/QIhAJy BidzIT8gsFvqIYay0CV78jGOZbskmHzFe/ASXNSkygczy5ec+y4Gh/6qcEcUmxEIcJJQYP ObsDNEIihQbq5ofAgX2eTcw+zdhFey9kT9w7Oq+00KqaDe5y15/Rj+WxEZcei03+nAJoCX RM0yJDisMCkLOfajDmNlHuoVYGupzdUQAIlazHPxytxL0VtHyu6xMjDP+VjJgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674743657; a=rsa-sha256; cv=none; b=AzMu8/J/im36AuZCgCaj0ajrx8W7mVCVc3e4kQZ+FTZ/VSFlefmufPN/zjKAWEuwKc0hVr c9HvyFv9h3bJlyc/GTzfjqHLPiPEoEh6C0/9OwQt/E+YwArXSUwaomVeZI8m4ilaLYIfau ibP6QOOidU8iji4zUtGdGkYQiJ5ut1qGpWoZ1fMiHtejlSn/yhch9ALl181yS2hVY8NRgL P0Gmq1OQ6zO+9MgfPM8d4mPqZRzlIEWw1x31AxgzwRFDWQwD+X72zj+MagKlxmlDHZcBic 5lcdpSVaNyJYM4TgyvG5g7u22PyVwHYDo4ZtroLQk3sX1FSePMF4NhGH/nQ4/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 4P2jrn0X4RzY9m; Thu, 26 Jan 2023 14:34:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QEYGcZ063094; Thu, 26 Jan 2023 14:34:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QEYGre063093; Thu, 26 Jan 2023 14:34:16 GMT (envelope-from git) Date: Thu, 26 Jan 2023 14:34:16 GMT Message-Id: <202301261434.30QEYGre063093@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 0d0ca120a79f - main - LinuxKPI: pci.h move function declaration to top of 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: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0d0ca120a79ff826d7c2ad84c44359c200460640 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=0d0ca120a79ff826d7c2ad84c44359c200460640 commit 0d0ca120a79ff826d7c2ad84c44359c200460640 Author: Bjoern A. Zeeb AuthorDate: 2023-01-26 14:31:26 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-01-26 14:33:31 +0000 LinuxKPI: pci.h move function declaration to top of file. No functional changes. X-MFC-with: 49b6d5ed142d6c59b7a517ff5660165d8647bd01 Sponsored by: The FreeBSD Foundation --- sys/compat/linuxkpi/common/include/linux/pci.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index b40241e4576d..3b9403a61ecd 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -357,6 +357,7 @@ struct pcim_iomap_devres { int pci_request_region(struct pci_dev *pdev, int bar, const char *res_name); int pci_alloc_irq_vectors(struct pci_dev *pdev, int minv, int maxv, unsigned int flags); +bool pci_device_is_present(struct pci_dev *pdev); /* Internal helper function(s). */ struct pci_dev *lkpinew_pci_dev(device_t); @@ -1683,6 +1684,4 @@ pci_wait_for_pending_transaction(struct pci_dev *pdev) return (0); } -bool pci_device_is_present(struct pci_dev *pdev); - #endif /* _LINUXKPI_LINUX_PCI_H_ */ From nobody Thu Jan 26 15:46: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 4P2lSP5sC6z3c8dS; Thu, 26 Jan 2023 15:46: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 4P2lSP5RDbz3jqJ; Thu, 26 Jan 2023 15:46:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674748005; 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=zVu7MmbvGBoESr9QpMjj9Xm8MtkGUARUvsf9hfxzSsk=; b=qnr3AgECSRNvXEYQCeW7zZPHImP7GL8IkmDlFUW2BMhKUAoBk1rkUBQV2s2n/tJqmJgEBt Mzj15ToZIuXYHCLksR8Jy6xhO8/xcSYHjScHJD1Pa/pDySEqpWgImqwVMQcFHAeKcmXRG7 x6xH+01Cr4x2XrqFUrwBaGJXXhAT2lVqVkwlT4H8hOfhl6a0XXeZ9wQc+3rWyZVrfNtPhD 6s3K9RABxZk5l1SxHOYFwbWQrbK5KRRLwNLhbfpj+BQlPKXp7eDoCrJCo0DDd8HyvoFYXW 3xxTNLAsmHiiG+1tWDp5vWRb1EqgbXUHTQBYbVPbIY4bbqF4G1VZFpnnmdrMaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674748005; 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=zVu7MmbvGBoESr9QpMjj9Xm8MtkGUARUvsf9hfxzSsk=; b=hBakFiM+FvVU5skLhpl7fjFzqTo/1E4HYL1cXyD0k1B0vuzK96jTkSDqFj6SC4KocogVOQ Yj5rQcNax14wiwDtspVNZ/vNlbyOLqGVo0p7oO4vn5eZx+pdDRgor6WDK13uJNbaLH1Wyj FhF6vwc9Sh7c5jejVuBEPyM66rW4DpyhEiawt9Jj3nI6+mWh+x1xJ9wRamBWy6qLOkgazG sm2tgij+kDr0KlRzIIlFWt8xSopbfofp/QpUcxrhh5vUAlwQ72/OGl7RjeYtJuezCfPFpG SiwRuWjr0I+Wl0AVfc59GcjMLzLvDT6OtWXQN5zOxnBk6Dv12nN+UEu9vFTaOQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674748005; a=rsa-sha256; cv=none; b=j6aySLqLz2hYv7pBfShFnnSlZbysgdOaV+Y7dQxOt5js4y+lZV2TUx06rGChEEtAmquw3F vKmqoOXj+NjjC/2LH9fkVAYnReQq3QySZSzl4guwa7e1HEfkzLPLGtK9tdbUWVJXbb0IFV m3ZFcigvG5aqyV9C3TTXaV2GaC4A6MmQaAp7VNyfSSQvFvbr5kDh25f0NTGZJn2gPTly88 Eirsu8FAx+VU57iUjG4qh1ZWDBBNtYoEnv4D+63izg13r01sozFnG6U6EKjNmtB+y7RlWb 24Iouy0KnPZGsPoz3700qADlECH3nJwQ/RjQcCx52wfmIbEDJ4kGbfgN5Xal2Q== 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 4P2lSP4MJQzZwm; Thu, 26 Jan 2023 15:46:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QFkjDr062604; Thu, 26 Jan 2023 15:46:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QFkjhl062603; Thu, 26 Jan 2023 15:46:45 GMT (envelope-from git) Date: Thu, 26 Jan 2023 15:46:45 GMT Message-Id: <202301261546.30QFkjhl062603@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: 7a78ae88659e - main - netlink: Zero-initialize writer structures allocated on the stack 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: 7a78ae88659e0f6a901574d17672d1ccdc3e971b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7a78ae88659e0f6a901574d17672d1ccdc3e971b commit 7a78ae88659e0f6a901574d17672d1ccdc3e971b Author: Mark Johnston AuthorDate: 2023-01-26 15:46:19 +0000 Commit: Mark Johnston CommitDate: 2023-01-26 15:46:19 +0000 netlink: Zero-initialize writer structures allocated on the stack The prevailing pattern seems to be to simply initialize all fields to zero. Without this, it's possible to trigger a branch on uninitialized memory, specifically, when testing nw->ignore_limit in nlmsg_refill_buffer(). Initialize the writer structure in a couple of functions where this is necessary. Reported by: KMSAN Reviewed by: melifaro Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38213 --- sys/netlink/route/rt.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/sys/netlink/route/rt.c b/sys/netlink/route/rt.c index 07735cd9d5bc..9854785d0ee8 100644 --- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -336,9 +336,9 @@ static void report_operation(uint32_t fibnum, struct rib_cmd_info *rc, struct nlpcb *nlp, struct nlmsghdr *hdr) { - struct nl_writer nw; - + struct nl_writer nw = {}; uint32_t group_id = family_to_group(rt_get_family(rc->rc_rt)); + if (nlmsg_get_group_writer(&nw, NLMSG_SMALL, NETLINK_ROUTE, group_id)) { struct route_nhop_data rnd = { .rnd_nhop = rc_get_nhop(rc), @@ -918,10 +918,9 @@ rtnl_handle_getroute(struct nlmsghdr *hdr, struct nlpcb *nlp, struct nl_pstate * void rtnl_handle_route_event(uint32_t fibnum, const struct rib_cmd_info *rc) { + struct nl_writer nw = {}; int family, nlm_flags = 0; - struct nl_writer nw; - family = rt_get_family(rc->rc_rt); /* XXX: check if there are active listeners first */ From nobody Thu Jan 26 17:32: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 4P2np22fpbz3bB8d; Thu, 26 Jan 2023 17:32: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 4P2np226NYz3tDN; Thu, 26 Jan 2023 17:32:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674754330; 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=wDPXltvepXO1rBR26lK3SY1PrOZM2s/ZTuj4eKjiWVA=; b=jKyuuu3Wim4QxdUGEt7+1fqsUivAVL5YEXC9Jbax0p3aCEXenXB5igbbNSuriISpGvlgPD s42YTAml1bAM8xeFxfcBMoJ9Z4jIjPH4L0A8DFb3qSLoga5pjA3/XR9JNGbtbTFsAfGyGd 0doL7NgmBVQwB3GEg5+8N2RDIXFTuhehDnUPjKYQDT35dzOEt7kaLfjqFDGtdjvC5cy37w +HwKZ2NHpZg183VeqnoINwtljtrTdCO5mRERhRW7IhBJMz8lc+wcDXJu+XwprjB8JI0kxJ v1dKlhWFbs2lUg9CsiiR3c/zBDHPIhPuL7x68hH5ROyH6c4JDw+cwjedHTvzOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674754330; 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=wDPXltvepXO1rBR26lK3SY1PrOZM2s/ZTuj4eKjiWVA=; b=ZI70HhuGxa3crAfp9AFMIvOUt+eoGh9qUeadQ8x8g47xTAuYxLharq0vZ8zIxu7ieXX702 bF2eDc61XRzIs69FCwsNNzuIhbkqcaewsBkR9r0XMY/xDKxtiu2R9U88UdlWfpN6x0LLJy qEVuwGaVM+8NPEf3pmTLghSsEjJAqLZmRhQlQf7pi5ACMvFbp/ZiYcZ5qzBRvkfOQBpJNo HqsS6xPUArWfc+kSpylr8xE1cl0P0pFrSf0SSNtdhWxcokzQ7XXf/IclsYb6dteswo3Vr8 A/wXlm0B9Ws7WJml+6yLww3w9QdLXfavsG44AfAVOy7VXQ6eDgUOM7aWd62pIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674754330; a=rsa-sha256; cv=none; b=DHgptm+f0pDIdTwaFCF5zxyoQ9k4BpdOhGtQapXUP4AJheyh4wGapTx/2IaKgSz1if/7ex Jg+CCzVPGSuYWkKa9O54BaGSD0L+js6QnxKH88d3JY/mF6RO2/sFBS2Wvsku7SY16SuwXg 0Ma8QAQKlT2gG+PUY02ssapbdRi9DwfQm+bAEQEgE/bi7CzrtInNaJhETVEqPgNSfD6fMO 223SA8Q8/wl11SOHOazlNAmijv1lteHhrdVq0SG1TMCoNiPGc/2vBvFH6XjeNQpEMHmsE/ H1RlM+wuEJyWkRt9ihTOtmDsXC1N5dJfASiLOKH6F0gUyIhRuh1X3ZXqpLEMiQ== 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 4P2np218zjzdT0; Thu, 26 Jan 2023 17:32:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QHWA7V017933; Thu, 26 Jan 2023 17:32:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QHWAgi017932; Thu, 26 Jan 2023 17:32:10 GMT (envelope-from git) Date: Thu, 26 Jan 2023 17:32:10 GMT Message-Id: <202301261732.30QHWAgi017932@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Richard Scheffenegger Subject: git: 18b83b626a4f - main - tcp: reduce the size of t_rttupdated in tcpcb 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: rscheff X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 18b83b626a4f596f1686140b99473125be9e33bf Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=18b83b626a4f596f1686140b99473125be9e33bf commit 18b83b626a4f596f1686140b99473125be9e33bf Author: Richard Scheffenegger AuthorDate: 2023-01-26 17:07:11 +0000 Commit: Richard Scheffenegger CommitDate: 2023-01-26 17:08:00 +0000 tcp: reduce the size of t_rttupdated in tcpcb During tcp session start, various mechanisms need to track a few initial RTTs before becoming active. Prevent overflows of the corresponding tracking counter and reduce the size of tcpcb simultaneously. Reviewed By: #transport, tuexen, guest-ccui Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D21117 --- sys/netinet/tcp_input.c | 3 ++- sys/netinet/tcp_stacks/bbr.c | 3 ++- sys/netinet/tcp_stacks/rack.c | 3 ++- sys/netinet/tcp_usrreq.c | 2 +- sys/netinet/tcp_var.h | 2 +- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 606f6649d73d..72faf53299e4 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -3537,7 +3537,8 @@ tcp_xmit_timer(struct tcpcb *tp, int rtt) INP_WLOCK_ASSERT(tptoinpcb(tp)); TCPSTAT_INC(tcps_rttupdated); - tp->t_rttupdated++; + if (tp->t_rttupdated < UCHAR_MAX) + tp->t_rttupdated++; #ifdef STATS stats_voi_update_abs_u32(tp->t_stats, VOI_TCP_RTT, imax(0, rtt * 1000 / hz)); diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 1080d53116b4..d54d213c82dd 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -6366,7 +6366,8 @@ tcp_bbr_xmit_timer_commit(struct tcp_bbr *bbr, struct tcpcb *tp, uint32_t cts) tp->t_rttvar = rtt_ticks << (TCP_RTTVAR_SHIFT - 1); } KMOD_TCPSTAT_INC(tcps_rttupdated); - tp->t_rttupdated++; + if (tp->t_rttupdated < UCHAR_MAX) + tp->t_rttupdated++; #ifdef STATS stats_voi_update_abs_u32(tp->t_stats, VOI_TCP_RTT, imax(0, rtt_ticks)); #endif diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 25a4f8dd3197..17c671705cab 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -7646,7 +7646,8 @@ tcp_rack_xmit_timer_commit(struct tcp_rack *rack, struct tcpcb *tp) } rack->rc_srtt_measure_made = 1; KMOD_TCPSTAT_INC(tcps_rttupdated); - tp->t_rttupdated++; + if (tp->t_rttupdated < UCHAR_MAX) + tp->t_rttupdated++; #ifdef STATS if (rack_stats_gets_ms_rtt == 0) { /* Send in the microsecond rtt used for rxt timeout purposes */ diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index 61c077ea66c6..47e635ba1faa 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -3068,7 +3068,7 @@ db_print_tcpcb(struct tcpcb *tp, const char *name, int indent) tp->t_rttvar, tp->t_rxtshift, tp->t_rttmin); db_print_indent(indent); - db_printf("t_rttupdated: %lu max_sndwnd: %u t_softerror: %d\n", + db_printf("t_rttupdated: %u max_sndwnd: %u t_softerror: %d\n", tp->t_rttupdated, tp->max_sndwnd, tp->t_softerror); db_print_indent(indent); diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index 9fca3e016d4a..5afd492189e3 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -230,7 +230,6 @@ struct tcpcb { uint32_t snd_ssthresh_prev; /* ssthresh prior to retransmit */ tcp_seq snd_recover_prev; /* snd_recover prior to retransmit */ int t_sndzerowin; /* zero-window updates sent */ - u_long t_rttupdated; /* number of times rtt sampled */ int snd_numholes; /* number of holes seen by sender */ u_int t_badrxtwin; /* window for retransmit recovery */ TAILQ_HEAD(sackhole_head, sackhole) snd_holes; @@ -276,6 +275,7 @@ struct tcpcb { uint32_t t_dsack_bytes; /* dsack bytes received */ uint32_t t_dsack_tlp_bytes; /* dsack bytes received for TLPs sent */ uint32_t t_dsack_pack; /* dsack packets we have eceived */ + uint8_t t_rttupdated; /* number of times rtt sampled */ /* TCP Fast Open */ uint8_t t_tfo_client_cookie_len; /* TFO client cookie length */ uint32_t t_end_info_status; /* Status flag of end info */ From nobody Thu Jan 26 18:10: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 4P2pdp2cY9z3bHKT; Thu, 26 Jan 2023 18:10: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 4P2pdp228hz3xlY; Thu, 26 Jan 2023 18:10:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674756606; 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=V+d54JNycarqumBDP693n7LjLV8VgIHzn/vEonylSos=; b=lfJS7MWu2lGiAdVvCRwjbIUdNcGWXJXLAGYZkXMhmO9TvoO0tUG/kzhY/uaZdQlf8uu3xy 30YP+X4m2wS3sJmmKvActbwNsOtQvlp7ZxiYAQD6B8dN/p3km4erq1J4Xgrbj0++QJkASy kxvFC/iru7qd0IICyDm//qd5Llk9R9nUY6Se2S4kUW2w93tmxG+NFPcoiDs0MEqfD++sFF Bn+1037lw7MmgreM4hD06Zvr8uj+1EuNYvd6p9QA0E0X2cNC6BGDMZU46bqJvN5j+oS96N LvJSrPKEiBq1BusjCXpvmIZj5jGcsKpn4VP8YGt+/5c4+oojyWAz5nmyPv2nDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674756606; 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=V+d54JNycarqumBDP693n7LjLV8VgIHzn/vEonylSos=; b=j+32ZFEPRirTG3BjWEw9hIz1OiXNllHs3eZLfkg1obYoRiciYiKO2CpcW3ks0P1GQ/+Vsh Tc4++gXDIY9tGm1pH5gBbCdHRGMEylDGMOHiDvU6c3c7B+4WJ1odElvokmNk/onvxNu5C9 Xzf6bHzo19yXvnKm9FQV8Qkgd37PS1imhU0cfgeguuYuJ0FLhBH7F84BADdQ6oejSANQT8 qxw/67JMD+Nds5PQYnwQy8wXcTMHLnsQ+xz77fc4J1RsPzN7i5KTWS9Xg8tOgvgsarYcZD fTURVTeE6O9CLG31USsY8gzE0yrdMyQRlAVsfsYGzci4kMW4+lFu/RFRpYlZsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674756606; a=rsa-sha256; cv=none; b=Ogzx8FzbBA1m+bmOFMsPw52EF88MDWZXcGtCPFfQ8jg6ojn/thTrp1VdWfkXWDIhX93AWu W2N1n2EQs1OyLrqYSUEtx0aoXg+FtXym5uL+sFdq4eBFrwLrqs8k0pfNCzo4AmgPRixIJk Q72ZiSqBrgt5gfMMUPWvISntRfIC/5F53x6OqpUCTMmuuCdHFI8UEnnJGm4rYheShm1RFf qn57Mhqc4jSVdzw1d7EvAbwfuLxree6yjTphLsJDDgOgqSporXBVr7fQcInBAXjYmgh3wE k9n+pTcug7h6cJ7Mt5WHBvYRb9FXChCODavYdmpwjBbjIDC9juXML9xpbNeM+w== 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 4P2pdp17LfzfKD; Thu, 26 Jan 2023 18:10:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QIA6JE066248; Thu, 26 Jan 2023 18:10:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QIA6m6066245; Thu, 26 Jan 2023 18:10:06 GMT (envelope-from git) Date: Thu, 26 Jan 2023 18:10:06 GMT Message-Id: <202301261810.30QIA6m6066245@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: ec965063070e - main - lua: reduce diffs between luaconf.h copies 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: ec965063070e5753c166cf592c9336444b74720a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ec965063070e5753c166cf592c9336444b74720a commit ec965063070e5753c166cf592c9336444b74720a Author: Ed Maste AuthorDate: 2023-01-25 22:01:00 +0000 Commit: Ed Maste CommitDate: 2023-01-26 17:38:19 +0000 lua: reduce diffs between luaconf.h copies Upstream luaconf.h is contrib/lua/src/luaconf.h.dist, while userland lua and loader lua have copies in lib/liblua/luaconf.h and stand/liblua/luaconf.h. Adjust whitespace, VCS tags, etc. to match upstream's version, for ease of comparison. Reviewed By: imp Sponsored By: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38206 --- lib/liblua/luaconf.h | 6 +++--- stand/liblua/luaconf.h | 7 ++++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/liblua/luaconf.h b/lib/liblua/luaconf.h index 892ac3a0c8f3..d5ac628e3052 100644 --- a/lib/liblua/luaconf.h +++ b/lib/liblua/luaconf.h @@ -1,4 +1,3 @@ -/* $FreeBSD$ */ /* ** $Id: luaconf.h $ ** Configuration file for Lua @@ -83,7 +82,7 @@ */ #define LUAI_IS32INT ((UINT_MAX >> 30) >= 3) -/* }================================================================== */ +/* }================================================================== */ @@ -203,6 +202,7 @@ #define LUA_LDIR "!\\lua\\" #define LUA_CDIR "!\\" #define LUA_SHRDIR "!\\..\\share\\lua\\" LUA_VDIR "\\" + #if !defined(LUA_PATH_DEFAULT) #define LUA_PATH_DEFAULT \ LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ @@ -211,7 +211,7 @@ ".\\?.lua;" ".\\?\\init.lua" #endif -#if !define(LUA_CPATH_DEFAULT) +#if !defined(LUA_CPATH_DEFAULT) #define LUA_CPATH_DEFAULT \ LUA_CDIR"?.dll;" \ LUA_CDIR"..\\lib\\lua\\" LUA_VDIR "\\?.dll;" \ diff --git a/stand/liblua/luaconf.h b/stand/liblua/luaconf.h index 8a0ad782e5e1..d5c222ce30be 100644 --- a/stand/liblua/luaconf.h +++ b/stand/liblua/luaconf.h @@ -1,6 +1,5 @@ -/* $FreeBSD$ */ /* -** $Id: luaconf.h,v 1.259 2016/12/22 13:08:50 roberto Exp $ +** $Id: luaconf.h $ ** Configuration file for Lua ** See Copyright Notice in lua.h */ @@ -218,7 +217,7 @@ #define LUA_LDIR LUA_ROOT "share/" #define LUA_CDIR LUA_ROOT "lib/" -#ifndef LUA_PATH_DEFAULT +#if !defined(LUA_PATH_DEFAULT) #define LUA_PATH_DEFAULT \ LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua;" \ @@ -433,6 +432,7 @@ #define lua_str2number(s,p) strtof((s), (p)) + #elif LUA_FLOAT_TYPE == LUA_FLOAT_LONGDOUBLE /* }{ long double */ #define LUA_NUMBER long double @@ -783,3 +783,4 @@ #endif + From nobody Thu Jan 26 18: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 4P2pnf2pMdz3bJTx; Thu, 26 Jan 2023 18:16: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 4P2pnf2N3Rz419G; Thu, 26 Jan 2023 18:16:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674757014; 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=oNK6sd/xSo0JzoSCYFUK8JJt81QxMZXe84USlMR9Fbs=; b=TynFR6rs2eDnkA3x8PZfSW0YrPVAXwkx+YBhf5oDc21qMu/wfXP5hNmSHAIneKMINsNkNX xTWR1zFlhBqsAG0LrWGAo6PYkMrqvN+BYhnRrEALdvRw4MUU8aLGryqTLoFhIsxsB59JdW Q0/Zk21dgTVRKJYKIIkcUKud/bolLGcd85AtvfMliT4h8N1lMwcb7tbcn2KQ/jBYL04tyl ibRSYD5w8417/BKX3z89DtVqdJtxM5N7sbfLKEalT0qVW/vNJQ/wJIKH6BufTk46IM349p yiPOvsEe/v3c+V3kALM2EJSRxpM9LMs/hYkK/XvS/xi0sOF6oLzcGwXPGLiS5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674757014; 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=oNK6sd/xSo0JzoSCYFUK8JJt81QxMZXe84USlMR9Fbs=; b=arkF6lhcxCOzOnL+D7cet9Y2eodm6Xfx7Og5ynj6Ev4igQ5ZfXEauwr3baINOox0nYFRo/ z4oNnxzblJ9NbQW4gUdTf0j851tqzGXT7LSqHMu67eRoezbrQbQ5J9YEJ/K8r8L3f/jOZb uzvBu5fd9Mie4lxzL++r0wt9uYEozkulH3Q5aoiPBDYVUE3TjnPA2yHQGDip4EK9gYiGRQ vh7iFCTDrMJy72Xzk35e2hwKj3EmA8GEpl2F0ESMmTi+XSq/wIRgPaXAIxicXhNrdviSt6 +h/czOprrpOqRutuFkrhbdOdRYm9ycLMPH1yRq69Z9+SlnBXdjBygD2u7f8PiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674757014; a=rsa-sha256; cv=none; b=RuiIN+VsqhS6Bo3yWOGufhMug60tngTrtlaeprcDPmVwRmfrWf1R5eXAxdskpy+8bsDK9d u7kjI6ZI+f16Wxp+K9k7MIe/a+ZxN+2QXGEyGP8dQ4XXIVuuqm3e6GR8zrK2n+pifi5Vca dsISnlJbu6ruN2UYqbUwCdtDiwFcqnoNGx9NaF0Nmt+e9ShpDfQztIRkijnP5gMaIw+q6r fsG2viwJBtgi4Blg9gqtFPJqjeIYGwciE9E5U03Rcnbba4PqhncYfy/NbhKZnv1g1nVTOj amlZGxsG6uJyo8UfnYvsx98J8Lb4eYbhi7CGwcj8h3mraIiAbeL1BB4IA6D98w== 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 4P2pnf1MZNzfPr; Thu, 26 Jan 2023 18:16:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QIGsp9077795; Thu, 26 Jan 2023 18:16:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QIGstw077794; Thu, 26 Jan 2023 18:16:54 GMT (envelope-from git) Date: Thu, 26 Jan 2023 18:16:54 GMT Message-Id: <202301261816.30QIGstw077794@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: 5c67f7c43e78 - main - udp: don't forget to initialize udpcb for UDPv6 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: 5c67f7c43e78e4ab31bb115dda4a9cf8059a07a0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=5c67f7c43e78e4ab31bb115dda4a9cf8059a07a0 commit 5c67f7c43e78e4ab31bb115dda4a9cf8059a07a0 Author: Gleb Smirnoff AuthorDate: 2023-01-26 18:16:32 +0000 Commit: Gleb Smirnoff CommitDate: 2023-01-26 18:16:32 +0000 udp: don't forget to initialize udpcb for UDPv6 Reported by: tuexen Fixes: 483fe96511ec02a3f077f9a59f1a96acb3640dea --- sys/netinet6/udp6_usrreq.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index df5e56076218..92cd4ab9cd39 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -986,8 +986,9 @@ udp6_abort(struct socket *so) static int udp6_attach(struct socket *so, int proto, struct thread *td) { - struct inpcb *inp; struct inpcbinfo *pcbinfo; + struct inpcb *inp; + struct udpcb *up; int error; pcbinfo = udp_get_inpcbinfo(so->so_proto->pr_protocol); @@ -1011,6 +1012,8 @@ udp6_attach(struct socket *so, int proto, struct thread *td) * which may match an IPv4-mapped IPv6 address. */ inp->inp_ip_ttl = V_ip_defttl; + up = intoudpcb(inp); + bzero(&up->u_start_zero, u_zero_size); INP_WUNLOCK(inp); return (0); } From nobody Thu Jan 26 18:16: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 4P2png30yxz3bJP1; Thu, 26 Jan 2023 18:16: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 4P2png2bK9z41Cv; Thu, 26 Jan 2023 18:16:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674757015; 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=4uu/eArj4XIkxdCMdV8PqS/9EJ+8YgL0AGeThxzXJHI=; b=C8Vu+lcSFptlHzn/CanU+PgvidESIuB9tvv8hd7ffCd5n5u9QPIyjlb47kXq5OyL37oMQh 9363FMwJguOoFmcW4MdNe85ZLoDWdOvkBrPy4mK0hA5dIDFRdD0O1GMZ5NRP6lfvbx1yRh BnsELay2SPsjWFmmCJOX+ziRnTS6Ce/1oaULFjj5pfmWyWHVbpdBRJy9VOQZrI/3OBJr2Z skzFqWO7PDOLcg9vCo6AtgfUbThO1kMzKfywwcvb3KpcssQE/aSpRl5RKr9hobwV7DYO4m IlN2RepeIDFB/jREjZdZvnZxjDxNzcEpqL11t3kj/e/eb8RSag9xzx5S//ssPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674757015; 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=4uu/eArj4XIkxdCMdV8PqS/9EJ+8YgL0AGeThxzXJHI=; b=UuNbzSTIKkmbDyi3Gpey1cZL32VLRdJ4w1R4+bzNo49FewcjoiM4wSsjYf8PH+rBPRVMk2 vA07daCEo6vnLltNg3Rv3jB0zbjUecrPSfnqE8P1EjnU88WsxTUv8hoiP9RgwdszEeCx1b 7H2jQ8iYZDALka6I48448MCMU1r86d1hAQKmYTAvN1ZCPI/7DfyiaQiU+3TQRMPkuW+vk5 Er+lKfgJJZDLCyIQRdlO08supH8qIPVpKJTVYRpRoZa2/s6TUNbSmcJGP6gGbco/M470ee nCNvNo+/7zDEwWZjPsbioeUBDpoUWyyVui896QujVpTz3HZl/y7BMRhiBouqvA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674757015; a=rsa-sha256; cv=none; b=Hs/smaNhX+gHhvcYfLH/YuIIXb8fAR+8X+6rRef/luEB5fILEjyLTpNOBhxNGZ1XsG6GqU gNIuvYruVmNovxbTnMNMQgDmF/JmRmzrdO7uC4f8VUA4JBvSenn11qWoPFDAB2OvU0PeCK Acrh+1HM3sjX7K3ryABrsvDylcAv5J4wGFqHTCCnuFYLI+xSsSSVsd0Idh7eJqJi496vn5 uO1dsMXOEpQgy4RL8ihlOaJ6upMpa1GwTKDNI616uUWWiuQ5VlViseK8qbNyXFAzmH5tw+ VffslHRBsuP64GFtZgzAVh5LOtykQMRkJb2yo7ECK8+l0ES4JSHgF9cWXszkQg== 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 4P2png1g39zfKl; Thu, 26 Jan 2023 18:16:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QIGt82077819; Thu, 26 Jan 2023 18:16:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QIGtkr077818; Thu, 26 Jan 2023 18:16:55 GMT (envelope-from git) Date: Thu, 26 Jan 2023 18:16:55 GMT Message-Id: <202301261816.30QIGtkr077818@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: d3acb974b48b - main - tcp: protect TCP over UDP configuration with a lock 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: d3acb974b48be37b552661715c4eb79d462aa6d1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=d3acb974b48be37b552661715c4eb79d462aa6d1 commit d3acb974b48be37b552661715c4eb79d462aa6d1 Author: Gleb Smirnoff AuthorDate: 2023-01-26 18:16:32 +0000 Commit: Gleb Smirnoff CommitDate: 2023-01-26 18:16:32 +0000 tcp: protect TCP over UDP configuration with a lock The sysctl modifies global sockets without any locks. The removed comment suggests that previously it relied on a lock that doesn't exist today. --- sys/netinet/tcp_subr.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 607abecfef97..9828529634bc 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -773,13 +773,14 @@ VNET_DEFINE(struct socket *, udp6_tun_socket) = NULL; #define V_udp6_tun_socket VNET(udp6_tun_socket) #endif +static struct sx tcpoudp_lock; + static void tcp_over_udp_stop(void) { - /* - * This function assumes sysctl caller holds inp_rinfo_lock() - * for writing! - */ + + sx_assert(&tcpoudp_lock, SA_XLOCKED); + #ifdef INET if (V_udp4_tun_socket != NULL) { soclose(V_udp4_tun_socket); @@ -805,10 +806,9 @@ tcp_over_udp_start(void) #ifdef INET6 struct sockaddr_in6 sin6; #endif - /* - * This function assumes sysctl caller holds inp_info_rlock() - * for writing! - */ + + sx_assert(&tcpoudp_lock, SA_XLOCKED); + port = V_tcp_udp_tunneling_port; if (ntohs(port) == 0) { /* Must have a port set */ @@ -896,6 +896,7 @@ sysctl_net_inet_tcp_udp_tunneling_port_check(SYSCTL_HANDLER_ARGS) (new > TCP_TUNNELING_PORT_MAX)) { error = EINVAL; } else { + sx_xlock(&tcpoudp_lock); V_tcp_udp_tunneling_port = new; if (old != 0) { tcp_over_udp_stop(); @@ -903,6 +904,7 @@ sysctl_net_inet_tcp_udp_tunneling_port_check(SYSCTL_HANDLER_ARGS) if (new != 0) { error = tcp_over_udp_start(); } + sx_xunlock(&tcpoudp_lock); } } return (error); @@ -1479,6 +1481,7 @@ tcp_init(void *arg __unused) TAILQ_INIT(&t_functions); rw_init(&tcp_function_lock, "tcp_func_lock"); register_tcp_functions(&tcp_def_funcblk, M_WAITOK); + sx_init(&tcpoudp_lock, "TCP over UDP configuration"); #ifdef TCP_BLACKBOX /* Initialize the TCP logging data. */ tcp_log_init(); From nobody Thu Jan 26 21:59: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 4P2vk41SMGz3c6XH; Thu, 26 Jan 2023 21:59: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 4P2vk40mmcz3slV; Thu, 26 Jan 2023 21:59:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674770348; 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=0v6R1UtkxDb1fD5hxoXIwaAiSVY0Ltt4y2dAk0fk/j4=; b=vua8M7RKLmb8c5Bv19wW8fyTCnTw7yrWnRChfKwWZe6sgbvOP5Ef+WiGETQzb3mmv6UhC9 WORsWSz+pdiwiXeR3yfnNFJWDWcSbNQVf84Zcjjsf2/PLmPwpGWZFGEiLLg94SDsQBVZVs z+poyng+xIgDrpy1+0FSLlB6nhhPEmjXeigs9Z2ctHhmVQTOxLQBkuHTSjp8lU6JY1c9wY mReSH0vOmsqq13UA0NlfMWpFowi5zQklXLeR27FcNsJbaRKvF7tXskw5ejI7NYbowgWCpW Iy0BhJHEYcndS8/uiQCvaD7fP+v8gXCaVNj8Bygc3AQ7wzmfLglpba+KvKaeLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674770348; 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=0v6R1UtkxDb1fD5hxoXIwaAiSVY0Ltt4y2dAk0fk/j4=; b=rzPJ7moWaoafSEVkeyBmSPQUC2BO1GAlQdiqiq8HxZhjdWTST5ouLGS/8Kwft94Wc6dIWz xjQL2DdmC2I9EA8Dl2ZVGKxZPi8Pz4C5A3g40Er2uTyEggdHbCrNdL/STJXYCM4x1rokbR O1JpckJXs3HtdJuohhFNM7ANSGF0yINznMLeAza5fdLCeLjQhHn07fPnrvKxG9zoWN4Ku2 6oNGj0lLqoUwtpR7APE+kl2SeFe2HnSqbu9UKXYQQEiDKijKE4ZrTd+W3hsL5vcraGV0H/ IUYLMkhYDGT3F2GYtXqHjmlMJd/Va6I4LTxu+dd/ZDmdihnVgkIiusF7O7LbDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674770348; a=rsa-sha256; cv=none; b=A0f1W4HieQ0SkuuAl1Y9X9DIWfOQLJ13kZ+0IELco8UDy9R/JnbiMw8/TuPGwJTJufAcm2 Ekgi/L9poVBa6E6nmqlo3gxSCbsSaeYqh/AtAVE6JLCIHG75MIR2I7sNpP0I6/KJ6twtrj eFG7gtmjDwwy3b7EzRnMbU1DEbpUB7phmuHVMG6j3wjhL0GyUUZV1LxNHZN94NeBa/db5p e99fiF05dMoIyRl+8GASf/Zwl+T/FBra1gFAlau8DYN0/7YMaQHFyJvVY72KYWyjStfYws XN/82eEXyOF82ejomnG9KhCKaX53BHscWobfmpWOzORmr7MyowBFJTXroIgkww== 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 4P2vk36yTdzlVs; Thu, 26 Jan 2023 21:59:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30QLx7Yh092842; Thu, 26 Jan 2023 21:59:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30QLx72g092841; Thu, 26 Jan 2023 21:59:07 GMT (envelope-from git) Date: Thu, 26 Jan 2023 21:59:07 GMT Message-Id: <202301262159.30QLx72g092841@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: e2d14a04c5fc - main - tcp: improve error handling of net.inet.tcp.udp_tunneling_port 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: e2d14a04c5fc49ad1aab280e3c2e7283bbacc948 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=e2d14a04c5fc49ad1aab280e3c2e7283bbacc948 commit e2d14a04c5fc49ad1aab280e3c2e7283bbacc948 Author: Michael Tuexen AuthorDate: 2023-01-26 21:55:22 +0000 Commit: Michael Tuexen CommitDate: 2023-01-26 21:55:22 +0000 tcp: improve error handling of net.inet.tcp.udp_tunneling_port In case the new port can't be set, set the port to 0. MFC after: 3 days Sponsored by: Netflix, Inc. --- sys/netinet/tcp_subr.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 9828529634bc..99fcd1f90a8a 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -903,6 +903,9 @@ sysctl_net_inet_tcp_udp_tunneling_port_check(SYSCTL_HANDLER_ARGS) } if (new != 0) { error = tcp_over_udp_start(); + if (error != 0) { + V_tcp_udp_tunneling_port = 0; + } } sx_xunlock(&tcpoudp_lock); } From nobody Fri Jan 27 00: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 4P2z2y6JP1z3bGt2; Fri, 27 Jan 2023 00: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 4P2z2y5mTqz4Tw6; Fri, 27 Jan 2023 00: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=1674779338; 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=gvQKbEWSNtnPZDtxmaeHe3UKBx4RJpSpEWkD94EyKpE=; b=sK5YqNv3asaCpOr+nGwsiF35sQDi5dDT3NAMSpBKSx5aMTV4cAnBx5UxldGkxAdyYRLjC5 qO6TGbCosZD4etcXhheVHawBYSwNcGDB2KXlKsX2VxF+iA0u7B2sgGrO7SPZu1LjfBYdCV M0bsTAvx7Y2nTHvE3Us3UIGi86kZ6kEQfWgNvzZBNh1ddfkpkf8lYSfB2ppN4zXo76p45P aD/5EPsPznfINTRYbROWzEUY0jOoUbGVYDJHunTsI6jCAba1OhvdXa+obJY2IC9z9oQtYP RPk0AZmIynXIo9EH370imLv1LKf07wd3WWFIXRhd/AhuZvTLxAYbQ58552xfiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674779338; 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=gvQKbEWSNtnPZDtxmaeHe3UKBx4RJpSpEWkD94EyKpE=; b=XPnAoj4j0Rbl9p0xKmM6o8j4bgSk4XDbL5/BHYL8wcifob5/zoUm63oIwthqJDIo8fLLB8 E52I+LZdgi8bW+tSn43t3QSFsMiu9QlTFKVXAOUrCaxbE3EGkiQhMbn2/k87piOtEUQLmi oG7tEYBSpz+JimKRKpF4ZpQAlo1d2nhhgXB5toPhmHHzoWDHpMtvdX25DBzS8wdBfdkO3z ZNZwh2bLjHPISifH+tJUONAdVYqaOhnflA7fP1AAE6ehmueKEXa22bYjqD+WDE0yEjgjIy vSPW1p6ccJwdOj5bPsbDzOMvwkAxePOfmP6slb1A1LJNx+R0CZYOMnjyHzGx9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674779338; a=rsa-sha256; cv=none; b=YQIqrY+PNiCbREdBcq/S666+HAL9AgwoBp+zTnxUwJW3I8q6nOFkouI2iHr4FkOEl2acw6 U/qevuhESsVJPBuUCtM1aKD4eeYBtc84daysUUcKtXeMS6zubGsxjn1yBxFXfQUpssuhK8 mvOJFU4pMLOy0Isf+RHfB3BDCdfVa663nIYqCKECPuZZ+Q0tZA48sDzKlYQTKjfSynqcvZ EHZipH68vXKXriC4pfTCnlJ3yt+o77hoIvET6vDftJMHrPbq68kHNfZ3yUEcxvrTHL/Oxh hawqx7gYmM/UrWZxlpAktTvZHeNi3+Y8NcDuQ2EH9iwyAB4PeLqqnOXtZMi+nA== 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 4P2z2y4kWfzptx; Fri, 27 Jan 2023 00:28:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R0Swg4007958; Fri, 27 Jan 2023 00:28:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R0SwjD007957; Fri, 27 Jan 2023 00:28:58 GMT (envelope-from git) Date: Fri, 27 Jan 2023 00:28:58 GMT Message-Id: <202301270028.30R0SwjD007957@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: e5dc40935f6e - main - Revert "stdlib.h: Fix qsort_r compatibility with GCC 12." 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: e5dc40935f6e57c6d1034ae4dea021e677bbae18 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e5dc40935f6e57c6d1034ae4dea021e677bbae18 commit e5dc40935f6e57c6d1034ae4dea021e677bbae18 Author: John Baldwin AuthorDate: 2023-01-27 00:28:03 +0000 Commit: John Baldwin CommitDate: 2023-01-27 00:28:03 +0000 Revert "stdlib.h: Fix qsort_r compatibility with GCC 12." This reverts commit 43703bc489ec504b947b869045c492ed38c1a69c. Reviewed by: jrtc27 Differential Revision: https://reviews.freebsd.org/D38216 --- include/stdlib.h | 6 ------ 1 file changed, 6 deletions(-) diff --git a/include/stdlib.h b/include/stdlib.h index 30d24aea1c10..754e8f5f5fd4 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -352,15 +352,9 @@ void __qsort_r_compat(void *, size_t, size_t, void *, __sym_compat(qsort_r, __qsort_r_compat, FBSD_1.0); #endif #if defined(__generic) && !defined(__cplusplus) -#if __GNUC__ == 12 -#define qsort_r(base, nel, width, arg4, arg5) \ - __generic(arg5, int (void *, const void *, const void *), \ - __qsort_r_compat, qsort_r)(base, nel, width, arg4, arg5) -#else #define qsort_r(base, nel, width, arg4, arg5) \ __generic(arg5, int (*)(void *, const void *, const void *), \ __qsort_r_compat, qsort_r)(base, nel, width, arg4, arg5) -#endif #elif defined(__cplusplus) __END_DECLS extern "C++" { From nobody Fri Jan 27 00: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 4P2z2z71Spz3bGt4; Fri, 27 Jan 2023 00: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 4P2z2z6Z61z4V05; Fri, 27 Jan 2023 00: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=1674779339; 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=5YtlRbVWNoys3BUxOWop1HwRQV11ON1mPzwdGFXqe64=; b=dgLgpp2js8dggTbWGn0yNOOTB2kPqmmqJ9e9l9ogyPUmJt/Jej1yobS4sRBKy7GO7L+WOI xDTRDbxbgQzXTOxnoJszJ9cA7sSXGvxT5Yq279XLwNe/hmfyaSCSqFZ7zUplarTS90BgTP nRRCSsQdojda/FVRh/ADjCENNJUdHVRkhXCjGjPXnF3o1F3GpV0hoZEF6enQN04pnSEl7F 0fGiLyqdAow21KYYFkMmWVY8JinOcUVWIMAx4nahdZIE8xVyWuGwylGL6RMAyQCnwWGC+G P6uLzf0nGQeGGPPxd9T0BbqyC/bYTsu3q+5ZU9PsjokQLzYkYBXJDPMYaL5EEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674779339; 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=5YtlRbVWNoys3BUxOWop1HwRQV11ON1mPzwdGFXqe64=; b=oYGSFp031RTGPBdtMosOI8EQnsvSje6BE0xThK0cHz8NoYIjwBLQPELH4jho4Clv0C25QT qYAM5QZoGl1RLcyq2FvXLPjq+UzMUYOGb+io2BhcfqJSrR4TJCSMXJufmZBXBM6y0Z2y1h uZhPNhKu3ioqbLYhoeo8BOgJrpO7V2G+HCBa21qAcqswBUvMK/d/ucD3Aermxybe0DJiuP rNnOb3T5CHvd+65EEVybFxV7UXnN268kFrFWLiuJ5r1eEvUlqBF5cNPvYf9BF7ktoFFgfZ L/QRU9ayx++o8hJaBCPMQOdJqo71pc7yZOKoMDlOU5E8yF/DkuzpLL6vikC0RQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674779339; a=rsa-sha256; cv=none; b=kljYCLpegNXKqDg20fQ/ocokKZnZeqkhgEDNk/nWP8aFFEZ09im/wPArqFETuwrVKnqDcf PDX+4vhamf+XIP1VBrnEC6EHaa7Knc2UsaBVQ44yKQd7c6HGgEYoM2Xmtwi3vloS8Dy9BQ 7MlCiq2JrphCcQ5h8EDmNLW/O0kd2yMsfd3noQ5GedUOIXJhGuB92lgXatdA0oMZ1W0T9B Ji8tmWzZYRirVGMGiXpnbcCZoRPIfuzJ2ZziIKEZnmP99S1a47T0Yohu35c8nUTIc4Cevm hmHMPQ16Z5V6qlSv7H7fk+TK5hXGwDFh5i7osc/v0U2AseOFkW5dHLFnrpux+w== 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 4P2z2z5QlbzpRv; Fri, 27 Jan 2023 00:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R0Sxl0007986; Fri, 27 Jan 2023 00:28:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R0SxYi007985; Fri, 27 Jan 2023 00:28:59 GMT (envelope-from git) Date: Fri, 27 Jan 2023 00:28:59 GMT Message-Id: <202301270028.30R0SxYi007985@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: 9d2f97981755 - main - : Decay expression passed to fallback version of __generic() 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: 9d2f9798175586bdcd3423443804fbbc0cffb8d2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=9d2f9798175586bdcd3423443804fbbc0cffb8d2 commit 9d2f9798175586bdcd3423443804fbbc0cffb8d2 Author: John Baldwin AuthorDate: 2023-01-27 00:28:22 +0000 Commit: John Baldwin CommitDate: 2023-01-27 00:28:22 +0000 : Decay expression passed to fallback version of __generic() This ensures that __generic() more closely matches _Generic() when using the fallback version when _Generic() is not available (such as GCC). Co-authored by: jrtc27 Reviewed by: jrtc27 Differential Revision: https://reviews.freebsd.org/D38215 --- sys/sys/cdefs.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/sys/cdefs.h b/sys/sys/cdefs.h index 83ba7584e5b9..1de042339c3a 100644 --- a/sys/sys/cdefs.h +++ b/sys/sys/cdefs.h @@ -312,6 +312,9 @@ * __generic(). Unlike _Generic(), this macro can only distinguish * between a single type, so it requires nested invocations to * distinguish multiple cases. + * + * Note that the comma operator is used to force expr to decay in + * order to match _Generic(). */ #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ @@ -321,7 +324,7 @@ #elif __GNUC_PREREQ__(3, 1) && !defined(__cplusplus) #define __generic(expr, t, yes, no) \ __builtin_choose_expr( \ - __builtin_types_compatible_p(__typeof(expr), t), yes, no) + __builtin_types_compatible_p(__typeof((0, (expr))), t), yes, no) #endif /* From nobody Fri Jan 27 02:14: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 4P31NW3sVsz3bmp0; Fri, 27 Jan 2023 02: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 4P31NW3YN5z4d0G; Fri, 27 Jan 2023 02: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=1674785659; 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=XpbL4tT+tHMVmuVx8LGrAH4rSvulhYdP4nfHGCqDi6I=; b=YkuBAy42PEUs/s8gYj1irx843iciNFS04+wkmpgF1Aa8eP6yMJ2x4jw0V1EHAcrKFRErRz kPbS4GktdBiolJGw77dpHRz5KGNFcX0W1VB06DA2oBGjfzVCFXCL1PpMoEfQNyKhR3b6t7 x49eJnyYNp2ojDIX8T6QCgGponeoNnlW1rYejQT0sjWP/36bWk/4GVvOCd+1k7vmVd83Dr vp3iGlYHoEXbB145y+PmneuCuFA8V/v8dxU4NBQSGs9bPy2SRhGVFZw0jvZTrmeSDqgzUa c0N39DePsWjjK1hq/IEMEgaggvLMfWYHoAPL916ZFcJ5tANfXpfzZ5Nf3RRMuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674785659; 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=XpbL4tT+tHMVmuVx8LGrAH4rSvulhYdP4nfHGCqDi6I=; b=mv6s54pNFg6PgrtMmA27/4hnh8ppovFcGTWknJKVDTB9xnPJ94UnKlnFtUXGv1SNEiTSA7 ak0/DofhSjoDgKbsSODRkA7s18ubcr96rdTCEkQBCazvh8WodtKu6+d2LLgmd2W7G3gToR e9cuQJNVqpTW1usmZq0D3j+WchozcYCHgYB0VAfs/kIT9HxZySzArGmEgtBoeOMjLU2pK4 P8RXNFen6fVmPLCgEpppVXJJ8OAJw2dz/fk1L8f2lfYlVDP8x35WaUigNgBEfpfEiimCQ8 zNpAjIwWV28v1iCBn1QwAAzYmrxPoOn7HGxKIe0e8pE1fg1lxlazeOIEA8f8yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674785659; a=rsa-sha256; cv=none; b=YRtc79QjSTb31f/DmCxY1VFtVaxa5LCDbC8np9JEUaRv2WSH03jYmX/6ce2xyId4+SxpZ9 CvOqm2u2FuhXK3YyTzsgfkZSy1Mt+BXnfou8knZ+KsuBkDkYwYrIEDrSWl6HlC+6aN+F6O MGPHeKYVhrw0gOmHHh1gskLXK2OiGxIulGoP/0IkfchwdqUTdMPNVjWiLQrWjVndap27Ck Po5NF3zb0XwsSlo72IiCFKy9Az4q7mgcbLjGHhUi38RxF+RDarDbqgPcadQZJawgEdhtVe v2rh++0jDWA6m404yYDvR9mzXyuE1YtnARK1crYkzpdPk9u27qGv7vajeHIk4w== 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 4P31NW2cVCzsNp; Fri, 27 Jan 2023 02:14:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R2EJdY063421; Fri, 27 Jan 2023 02:14:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R2EJqI063420; Fri, 27 Jan 2023 02:14:19 GMT (envelope-from git) Date: Fri, 27 Jan 2023 02:14:19 GMT Message-Id: <202301270214.30R2EJqI063420@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: ac4c695ad61e - main - Retire WITHOUT_CXX option 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: ac4c695ad61e81d00cff2a03202a4afe94a92513 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ac4c695ad61e81d00cff2a03202a4afe94a92513 commit ac4c695ad61e81d00cff2a03202a4afe94a92513 Author: Ed Maste AuthorDate: 2022-11-16 14:20:39 +0000 Commit: Ed Maste CommitDate: 2023-01-27 02:13:16 +0000 Retire WITHOUT_CXX option Several important base system components are written in C++, and the WITHOUT_CXX option produced a system that was not fully functional. Just accept this, and remove the option to build without C++ support. This reverts commit adc3c128c6603054586a993d117e5dd808deac17. Reviewed by: brooks, kevans, jhb (earlier) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D33108 --- Makefile.inc1 | 15 +- UPDATING | 4 + cddl/usr.sbin/Makefile | 3 +- lib/Makefile | 20 +- lib/atf/Makefile | 2 +- lib/libproc/Makefile | 8 +- sbin/Makefile | 2 +- share/man/man5/src.conf.5 | 38 +-- share/mk/src.libnames.mk | 2 - share/mk/src.opts.mk | 18 - tools/build/mk/OptionalObsoleteFiles.inc | 554 ------------------------------- tools/build/options/WITHOUT_CXX | 4 - usr.bin/Makefile | 8 +- 13 files changed, 22 insertions(+), 656 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 6435cadbd45c..dac412559716 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2922,18 +2922,14 @@ _prereq_libs+= lib/libclang_rt/ubsan_standalone_cxx _startup_libs= lib/csu _startup_libs+= lib/libc _startup_libs+= lib/libc_nonshared -.if ${MK_CXX} != "no" _startup_libs+= lib/libcxxrt -.endif _prereq_libs+= lib/libgcc_eh lib/libgcc_s _startup_libs+= lib/libgcc_eh lib/libgcc_s lib/libgcc_s__L: lib/libc__L lib/libgcc_s__L: lib/libc_nonshared__L -.if ${MK_CXX} != "no" lib/libcxxrt__L: lib/libgcc_s__L -.endif _prebuild_libs= ${_kerberos5_lib_libasn1} \ ${_kerberos5_lib_libhdb} \ @@ -2945,6 +2941,7 @@ _prebuild_libs= ${_kerberos5_lib_libasn1} \ ${_kerberos5_lib_libroken} \ ${_kerberos5_lib_libwind} \ lib/libbz2 ${_libcom_err} lib/libcrypt \ + lib/libc++ \ lib/libelf lib/libexpat \ lib/libfigpar \ ${_lib_libgssapi} \ @@ -2982,10 +2979,6 @@ gnu/lib/libdialog__L: lib/msun__L lib/ncurses/tinfo__L lib/ncurses/ncurses__L _prebuild_libs+= lib/libregex .endif -.if ${MK_CXX} != "no" -_prebuild_libs+= lib/libc++ -.endif - lib/libgeom__L: lib/libexpat__L lib/libsbuf__L lib/libkvm__L: lib/libelf__L @@ -3150,10 +3143,8 @@ lib/libradius__L: lib/libmd__L .endif lib/libproc__L: \ - ${_cddl_lib_libctf:D${_cddl_lib_libctf}__L} lib/libelf__L lib/librtld_db__L lib/libutil__L -.if ${MK_CXX} != "no" -lib/libproc__L: lib/libcxxrt__L -.endif + ${_cddl_lib_libctf:D${_cddl_lib_libctf}__L} \ + lib/libelf__L lib/librtld_db__L lib/libutil__L lib/libcxxrt__L .for _lib in ${_prereq_libs} ${_lib}__PL: .PHONY .MAKE diff --git a/UPDATING b/UPDATING index e9d53811df8d..172c611ee9f0 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 14.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".) +20230126: + The WITHOUT_CXX option has been removed. C++ components in the base + system are now built unconditionally. + 20230113: LinuxKPI pci.h changes may require out-of-tree drivers to be recompiled. Bump _FreeBSD_version to 1400078 to be able to detect this change. diff --git a/cddl/usr.sbin/Makefile b/cddl/usr.sbin/Makefile index 68dc735b3d1b..ef7878f41ade 100644 --- a/cddl/usr.sbin/Makefile +++ b/cddl/usr.sbin/Makefile @@ -12,8 +12,7 @@ SUBDIR.${MK_TESTS}+= tests SUBDIR.${MK_ZFS}+= \ zdb \ - zhack -SUBDIR.${MK_ZFS}.${MK_CXX}+= \ + zhack \ zfsd .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" diff --git a/lib/Makefile b/lib/Makefile index 6b4b356707fe..8d4115d29602 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -15,8 +15,9 @@ SUBDIR_BOOTSTRAP= \ libc_nonshared \ libcompiler_rt \ ${_libclang_rt} \ - ${_libcplusplus} \ - ${_libcxxrt} \ + libc++ \ + libc++experimental \ + libcxxrt \ libelf \ libssp \ libssp_nonshared \ @@ -47,6 +48,7 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ libcompat \ libcrypt \ libdevctl \ + libdevdctl \ libdevinfo \ libdevstat \ libdl \ @@ -165,7 +167,6 @@ SUBDIR+= clang .endif SUBDIR.${MK_CUSE}+= libcuse -SUBDIR.${MK_CXX}+= libdevdctl SUBDIR.${MK_TOOLCHAIN}+=libpe SUBDIR.${MK_DIALOG}+= libdpv libfigpar SUBDIR.${MK_FILE}+= libmagic @@ -176,20 +177,13 @@ SUBDIR.${MK_KERBEROS_SUPPORT}+= libcom_err SUBDIR.${MK_LDNS}+= libldns SUBDIR.${MK_STATS}+= libstats -# The libraries under libclang_rt can only be built by clang and when we enable -# C++ support. -.if ${COMPILER_TYPE} == "clang" && ${MK_CXX} != "no" +# The libraries under libclang_rt can only be built by clang. +.if ${COMPILER_TYPE} == "clang" _libclang_rt= libclang_rt .elif (${MK_ASAN} != "no" || ${MK_UBSAN} != "no") && make(all) .error Requested build with sanitizers but cannot build runtime libraries! .endif -.if ${MK_CXX} != "no" -_libcxxrt= libcxxrt -_libcplusplus= libc++ -_libcplusplus+= libc++experimental -.endif - SUBDIR.${MK_EFI}+= libefivar SUBDIR.${MK_GOOGLETEST}+= googletest SUBDIR.${MK_NETGRAPH}+= libnetgraph @@ -221,7 +215,7 @@ SUBDIR.${MK_RADIUS_SUPPORT}+= libradius SUBDIR.${MK_SENDMAIL}+= libmilter libsm libsmdb libsmutil SUBDIR.${MK_TELNET}+= libtelnet SUBDIR.${MK_TESTS_SUPPORT}+= atf -SUBDIR.${MK_TESTS_SUPPORT}.${MK_CXX}+= liblutok +SUBDIR.${MK_TESTS_SUPPORT}+= liblutok SUBDIR.${MK_TESTS}+= tests SUBDIR.${MK_UNBOUND}+= libunbound SUBDIR.${MK_USB}+= libusbhid libusb diff --git a/lib/atf/Makefile b/lib/atf/Makefile index 05c7973fdc02..42f93f78a8aa 100644 --- a/lib/atf/Makefile +++ b/lib/atf/Makefile @@ -28,7 +28,7 @@ .include SUBDIR= libatf-c -SUBDIR.${MK_CXX}+= libatf-c++ +SUBDIR+= libatf-c++ SUBDIR.${MK_TESTS}+= tests diff --git a/lib/libproc/Makefile b/lib/libproc/Makefile index 37d550cb22e3..54b3701fa3f1 100644 --- a/lib/libproc/Makefile +++ b/lib/libproc/Makefile @@ -15,13 +15,7 @@ INCS= libproc.h CFLAGS+= -I${.CURDIR} -.if ${MK_CXX} == "no" -CFLAGS+= -DNO_CXA_DEMANGLE -.else -LIBADD+= cxxrt -.endif - -LIBADD+= elf procstat rtld_db util z +LIBADD+= cxxrt elf procstat rtld_db util z .if ${MK_CDDL} != "no" LIBADD+= ctf diff --git a/sbin/Makefile b/sbin/Makefile index 69cf51a83e26..69c5db1dba4b 100644 --- a/sbin/Makefile +++ b/sbin/Makefile @@ -9,6 +9,7 @@ SUBDIR=adjkerntz \ comcontrol \ conscontrol \ ddb \ + devd \ devfs \ devmatch \ dhclient \ @@ -72,7 +73,6 @@ SUBDIR+= ping .endif SUBDIR.${MK_CCD}+= ccdconfig -SUBDIR.${MK_CXX}+= devd SUBDIR.${MK_HAST}+= hastctl SUBDIR.${MK_HAST}+= hastd SUBDIR.${MK_INET6}+= rtsol diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 132a05065bd0..9b832b8b89f2 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,6 +1,6 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. .\" $FreeBSD$ -.Dd November 21, 2022 +.Dd January 26, 2023 .Dt SRC.CONF 5 .Os .Sh NAME @@ -469,42 +469,6 @@ Build .Pp This is a default setting on amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. -.It Va WITHOUT_CXX -Do not build C++ headers and runtime libraries. -It also prevents building binaries and libraries written in C++, including -.Xr devd 8 . -When set, it enforces these options: -.Pp -.Bl -item -compact -.It -.Va WITHOUT_CLANG -.It -.Va WITHOUT_CLANG_EXTRAS -.It -.Va WITHOUT_CLANG_FORMAT -.It -.Va WITHOUT_CLANG_FULL -.It -.Va WITHOUT_DTRACE_TESTS -.It -.Va WITHOUT_GOOGLETEST -.It -.Va WITHOUT_LLD -.It -.Va WITHOUT_LLDB -.It -.Va WITHOUT_LLVM_COV -.It -.Va WITHOUT_OFED -.It -.Va WITHOUT_OFED_EXTRA -.It -.Va WITHOUT_OPENMP -.It -.Va WITHOUT_PMC -.It -.Va WITHOUT_TESTS -.El .It Va WITHOUT_DEBUG_FILES Avoid building or installing standalone debug files for each executable binary and shared library. diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index db7c86651f96..dd1bc78b1f1a 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -325,9 +325,7 @@ _DP_radius= crypto .endif _DP_rtld_db= elf procstat _DP_procstat= kvm util elf -.if ${MK_CXX} == "yes" _DP_proc= cxxrt -.endif .if ${MK_CDDL} != "no" _DP_proc+= ctf .endif diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index de36d672d20e..397af027e8e7 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -86,7 +86,6 @@ __DEFAULT_YES_OPTIONS = \ CROSS_COMPILER \ CRYPT \ CUSE \ - CXX \ CXGBETOOL \ DIALOG \ DICT \ @@ -349,11 +348,6 @@ __DEFAULT_YES_OPTIONS+=OPENMP __DEFAULT_NO_OPTIONS+=OPENMP .endif -# libc++ requires C++20 -.if !${COMPILER_FEATURES:Mc++20} -BROKEN_OPTIONS+=CXX -.endif - .include # @@ -383,18 +377,6 @@ MK_KERBEROS:= no MK_KERBEROS_SUPPORT:= no .endif -.if ${MK_CXX} == "no" -MK_CLANG:= no -MK_LLD:= no -MK_LLDB:= no -MK_LLVM_BINUTILS:= no -MK_GOOGLETEST:= no -MK_OFED:= no -MK_OPENMP:= no -MK_PMC:= no -MK_TESTS:= no -.endif - .if ${MK_DIALOG} == "no" MK_BSDINSTALL:= no .endif diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc index dacc89f9e78e..6e741dd06930 100644 --- a/tools/build/mk/OptionalObsoleteFiles.inc +++ b/tools/build/mk/OptionalObsoleteFiles.inc @@ -3719,560 +3719,6 @@ OLD_LIBS+=${DEBUG_LIB32_LIBS} . endif .endif -.if ${MK_CXX} == no -OLD_LIBS+=lib/libcxxrt.so.1 -OLD_FILES+=usr/lib/libc++.a -OLD_FILES+=usr/lib/libc++_p.a -OLD_FILES+=usr/lib/libc++experimental.a -OLD_FILES+=usr/lib/libc++.so -OLD_LIBS+=usr/lib/libc++.so.1 -OLD_FILES+=usr/lib/libcxxrt.a -OLD_FILES+=usr/lib/libcxxrt.so -OLD_FILES+=usr/lib/libcxxrt_p.a -OLD_FILES+=usr/include/c++/v1/__algorithm/adjacent_find.h -OLD_FILES+=usr/include/c++/v1/__algorithm/all_of.h -OLD_FILES+=usr/include/c++/v1/__algorithm/any_of.h -OLD_FILES+=usr/include/c++/v1/__algorithm/binary_search.h -OLD_FILES+=usr/include/c++/v1/__algorithm/clamp.h -OLD_FILES+=usr/include/c++/v1/__algorithm/comp.h -OLD_FILES+=usr/include/c++/v1/__algorithm/comp_ref_type.h -OLD_FILES+=usr/include/c++/v1/__algorithm/copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/copy_backward.h -OLD_FILES+=usr/include/c++/v1/__algorithm/copy_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/copy_n.h -OLD_FILES+=usr/include/c++/v1/__algorithm/count.h -OLD_FILES+=usr/include/c++/v1/__algorithm/count_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/equal.h -OLD_FILES+=usr/include/c++/v1/__algorithm/equal_range.h -OLD_FILES+=usr/include/c++/v1/__algorithm/fill.h -OLD_FILES+=usr/include/c++/v1/__algorithm/fill_n.h -OLD_FILES+=usr/include/c++/v1/__algorithm/find.h -OLD_FILES+=usr/include/c++/v1/__algorithm/find_end.h -OLD_FILES+=usr/include/c++/v1/__algorithm/find_first_of.h -OLD_FILES+=usr/include/c++/v1/__algorithm/find_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/find_if_not.h -OLD_FILES+=usr/include/c++/v1/__algorithm/for_each.h -OLD_FILES+=usr/include/c++/v1/__algorithm/for_each_n.h -OLD_FILES+=usr/include/c++/v1/__algorithm/generate.h -OLD_FILES+=usr/include/c++/v1/__algorithm/generate_n.h -OLD_FILES+=usr/include/c++/v1/__algorithm/half_positive.h -OLD_FILES+=usr/include/c++/v1/__algorithm/in_in_out_result.h -OLD_FILES+=usr/include/c++/v1/__algorithm/in_in_result.h -OLD_FILES+=usr/include/c++/v1/__algorithm/in_out_result.h -OLD_FILES+=usr/include/c++/v1/__algorithm/includes.h -OLD_FILES+=usr/include/c++/v1/__algorithm/inplace_merge.h -OLD_FILES+=usr/include/c++/v1/__algorithm/is_heap.h -OLD_FILES+=usr/include/c++/v1/__algorithm/is_heap_until.h -OLD_FILES+=usr/include/c++/v1/__algorithm/is_partitioned.h -OLD_FILES+=usr/include/c++/v1/__algorithm/is_permutation.h -OLD_FILES+=usr/include/c++/v1/__algorithm/is_sorted.h -OLD_FILES+=usr/include/c++/v1/__algorithm/is_sorted_until.h -OLD_FILES+=usr/include/c++/v1/__algorithm/iter_swap.h -OLD_FILES+=usr/include/c++/v1/__algorithm/lexicographical_compare.h -OLD_FILES+=usr/include/c++/v1/__algorithm/lower_bound.h -OLD_FILES+=usr/include/c++/v1/__algorithm/make_heap.h -OLD_FILES+=usr/include/c++/v1/__algorithm/max.h -OLD_FILES+=usr/include/c++/v1/__algorithm/max_element.h -OLD_FILES+=usr/include/c++/v1/__algorithm/merge.h -OLD_FILES+=usr/include/c++/v1/__algorithm/min.h -OLD_FILES+=usr/include/c++/v1/__algorithm/min_element.h -OLD_FILES+=usr/include/c++/v1/__algorithm/minmax.h -OLD_FILES+=usr/include/c++/v1/__algorithm/minmax_element.h -OLD_FILES+=usr/include/c++/v1/__algorithm/mismatch.h -OLD_FILES+=usr/include/c++/v1/__algorithm/move.h -OLD_FILES+=usr/include/c++/v1/__algorithm/move_backward.h -OLD_FILES+=usr/include/c++/v1/__algorithm/next_permutation.h -OLD_FILES+=usr/include/c++/v1/__algorithm/none_of.h -OLD_FILES+=usr/include/c++/v1/__algorithm/nth_element.h -OLD_FILES+=usr/include/c++/v1/__algorithm/partial_sort.h -OLD_FILES+=usr/include/c++/v1/__algorithm/partial_sort_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/partition.h -OLD_FILES+=usr/include/c++/v1/__algorithm/partition_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/partition_point.h -OLD_FILES+=usr/include/c++/v1/__algorithm/pop_heap.h -OLD_FILES+=usr/include/c++/v1/__algorithm/prev_permutation.h -OLD_FILES+=usr/include/c++/v1/__algorithm/push_heap.h -OLD_FILES+=usr/include/c++/v1/__algorithm/remove.h -OLD_FILES+=usr/include/c++/v1/__algorithm/remove_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/remove_copy_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/remove_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/replace.h -OLD_FILES+=usr/include/c++/v1/__algorithm/replace_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/replace_copy_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/replace_if.h -OLD_FILES+=usr/include/c++/v1/__algorithm/reverse.h -OLD_FILES+=usr/include/c++/v1/__algorithm/reverse_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/rotate.h -OLD_FILES+=usr/include/c++/v1/__algorithm/rotate_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/sample.h -OLD_FILES+=usr/include/c++/v1/__algorithm/search.h -OLD_FILES+=usr/include/c++/v1/__algorithm/search_n.h -OLD_FILES+=usr/include/c++/v1/__algorithm/set_difference.h -OLD_FILES+=usr/include/c++/v1/__algorithm/set_intersection.h -OLD_FILES+=usr/include/c++/v1/__algorithm/set_symmetric_difference.h -OLD_FILES+=usr/include/c++/v1/__algorithm/set_union.h -OLD_FILES+=usr/include/c++/v1/__algorithm/shift_left.h -OLD_FILES+=usr/include/c++/v1/__algorithm/shift_right.h -OLD_FILES+=usr/include/c++/v1/__algorithm/shuffle.h -OLD_FILES+=usr/include/c++/v1/__algorithm/sift_down.h -OLD_FILES+=usr/include/c++/v1/__algorithm/sort.h -OLD_FILES+=usr/include/c++/v1/__algorithm/sort_heap.h -OLD_FILES+=usr/include/c++/v1/__algorithm/stable_partition.h -OLD_FILES+=usr/include/c++/v1/__algorithm/stable_sort.h -OLD_FILES+=usr/include/c++/v1/__algorithm/swap_ranges.h -OLD_FILES+=usr/include/c++/v1/__algorithm/transform.h -OLD_FILES+=usr/include/c++/v1/__algorithm/unique.h -OLD_FILES+=usr/include/c++/v1/__algorithm/unique_copy.h -OLD_FILES+=usr/include/c++/v1/__algorithm/unwrap_iter.h -OLD_FILES+=usr/include/c++/v1/__algorithm/upper_bound.h -OLD_DIRS+=usr/include/c++/v1/__algorithm -OLD_FILES+=usr/include/c++/v1/__availability -OLD_FILES+=usr/include/c++/v1/__bit/bit_cast.h -OLD_FILES+=usr/include/c++/v1/__bit/byteswap.h -OLD_DIRS+=usr/include/c++/v1/__bit -OLD_FILES+=usr/include/c++/v1/__bit_reference -OLD_FILES+=usr/include/c++/v1/__bits -OLD_FILES+=usr/include/c++/v1/__bsd_locale_defaults.h -OLD_FILES+=usr/include/c++/v1/__bsd_locale_fallbacks.h -OLD_FILES+=usr/include/c++/v1/__charconv/chars_format.h -OLD_FILES+=usr/include/c++/v1/__charconv/from_chars_result.h -OLD_FILES+=usr/include/c++/v1/__charconv/to_chars_result.h -OLD_DIRS+=usr/include/c++/v1/__charconv -OLD_FILES+=usr/include/c++/v1/__chrono/calendar.h -OLD_FILES+=usr/include/c++/v1/__chrono/convert_to_timespec.h -OLD_FILES+=usr/include/c++/v1/__chrono/duration.h -OLD_FILES+=usr/include/c++/v1/__chrono/file_clock.h -OLD_FILES+=usr/include/c++/v1/__chrono/high_resolution_clock.h -OLD_FILES+=usr/include/c++/v1/__chrono/steady_clock.h -OLD_FILES+=usr/include/c++/v1/__chrono/system_clock.h -OLD_FILES+=usr/include/c++/v1/__chrono/time_point.h -OLD_DIRS+=usr/include/c++/v1/__chrono -OLD_FILES+=usr/include/c++/v1/__compare/common_comparison_category.h -OLD_FILES+=usr/include/c++/v1/__compare/compare_partial_order_fallback.h -OLD_FILES+=usr/include/c++/v1/__compare/compare_strong_order_fallback.h -OLD_FILES+=usr/include/c++/v1/__compare/compare_three_way.h -OLD_FILES+=usr/include/c++/v1/__compare/compare_three_way_result.h -OLD_FILES+=usr/include/c++/v1/__compare/compare_weak_order_fallback.h -OLD_FILES+=usr/include/c++/v1/__compare/is_eq.h -OLD_FILES+=usr/include/c++/v1/__compare/ordering.h -OLD_FILES+=usr/include/c++/v1/__compare/partial_order.h -OLD_FILES+=usr/include/c++/v1/__compare/strong_order.h -OLD_FILES+=usr/include/c++/v1/__compare/synth_three_way.h -OLD_FILES+=usr/include/c++/v1/__compare/three_way_comparable.h -OLD_FILES+=usr/include/c++/v1/__compare/weak_order.h -OLD_DIRS+=usr/include/c++/v1/__compare -OLD_FILES+=usr/include/c++/v1/__concepts/arithmetic.h -OLD_FILES+=usr/include/c++/v1/__concepts/assignable.h -OLD_FILES+=usr/include/c++/v1/__concepts/boolean_testable.h -OLD_FILES+=usr/include/c++/v1/__concepts/class_or_enum.h -OLD_FILES+=usr/include/c++/v1/__concepts/common_reference_with.h -OLD_FILES+=usr/include/c++/v1/__concepts/common_with.h -OLD_FILES+=usr/include/c++/v1/__concepts/constructible.h -OLD_FILES+=usr/include/c++/v1/__concepts/convertible_to.h -OLD_FILES+=usr/include/c++/v1/__concepts/copyable.h -OLD_FILES+=usr/include/c++/v1/__concepts/derived_from.h -OLD_FILES+=usr/include/c++/v1/__concepts/destructible.h -OLD_FILES+=usr/include/c++/v1/__concepts/different_from.h -OLD_FILES+=usr/include/c++/v1/__concepts/equality_comparable.h -OLD_FILES+=usr/include/c++/v1/__concepts/invocable.h -OLD_FILES+=usr/include/c++/v1/__concepts/movable.h -OLD_FILES+=usr/include/c++/v1/__concepts/predicate.h -OLD_FILES+=usr/include/c++/v1/__concepts/regular.h -OLD_FILES+=usr/include/c++/v1/__concepts/relation.h -OLD_FILES+=usr/include/c++/v1/__concepts/same_as.h -OLD_FILES+=usr/include/c++/v1/__concepts/semiregular.h -OLD_FILES+=usr/include/c++/v1/__concepts/swappable.h -OLD_FILES+=usr/include/c++/v1/__concepts/totally_ordered.h -OLD_DIRS+=usr/include/c++/v1/__concepts -OLD_FILES+=usr/include/c++/v1/__config -OLD_FILES+=usr/include/c++/v1/__config_site -OLD_FILES+=usr/include/c++/v1/__coroutine/coroutine_handle.h -OLD_FILES+=usr/include/c++/v1/__coroutine/coroutine_traits.h -OLD_FILES+=usr/include/c++/v1/__coroutine/noop_coroutine_handle.h -OLD_FILES+=usr/include/c++/v1/__coroutine/trivial_awaitables.h -OLD_DIRS+=usr/include/c++/v1/__coroutine -OLD_FILES+=usr/include/c++/v1/__debug -OLD_FILES+=usr/include/c++/v1/__errc -OLD_FILES+=usr/include/c++/v1/__filesystem/copy_options.h -OLD_FILES+=usr/include/c++/v1/__filesystem/directory_entry.h -OLD_FILES+=usr/include/c++/v1/__filesystem/directory_iterator.h -OLD_FILES+=usr/include/c++/v1/__filesystem/directory_options.h -OLD_FILES+=usr/include/c++/v1/__filesystem/file_status.h -OLD_FILES+=usr/include/c++/v1/__filesystem/file_time_type.h -OLD_FILES+=usr/include/c++/v1/__filesystem/file_type.h -OLD_FILES+=usr/include/c++/v1/__filesystem/filesystem_error.h -OLD_FILES+=usr/include/c++/v1/__filesystem/operations.h -OLD_FILES+=usr/include/c++/v1/__filesystem/path.h -OLD_FILES+=usr/include/c++/v1/__filesystem/path_iterator.h -OLD_FILES+=usr/include/c++/v1/__filesystem/perm_options.h -OLD_FILES+=usr/include/c++/v1/__filesystem/perms.h -OLD_FILES+=usr/include/c++/v1/__filesystem/recursive_directory_iterator.h -OLD_FILES+=usr/include/c++/v1/__filesystem/space_info.h -OLD_FILES+=usr/include/c++/v1/__filesystem/u8path.h -OLD_DIRS+=usr/include/c++/v1/__filesystem -OLD_FILES+=usr/include/c++/v1/__format/format_arg.h -OLD_FILES+=usr/include/c++/v1/__format/format_args.h -OLD_FILES+=usr/include/c++/v1/__format/format_context.h -OLD_FILES+=usr/include/c++/v1/__format/format_error.h -OLD_FILES+=usr/include/c++/v1/__format/format_fwd.h -OLD_FILES+=usr/include/c++/v1/__format/format_parse_context.h -OLD_FILES+=usr/include/c++/v1/__format/format_string.h -OLD_FILES+=usr/include/c++/v1/__format/format_to_n_result.h -OLD_FILES+=usr/include/c++/v1/__format/formatter.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_bool.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_char.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_floating_point.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_integer.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_integral.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_pointer.h -OLD_FILES+=usr/include/c++/v1/__format/formatter_string.h -OLD_FILES+=usr/include/c++/v1/__format/parser_std_format_spec.h -OLD_DIRS+=usr/include/c++/v1/__format -OLD_FILES+=usr/include/c++/v1/__functional/binary_function.h -OLD_FILES+=usr/include/c++/v1/__functional/binary_negate.h -OLD_FILES+=usr/include/c++/v1/__functional/bind.h -OLD_FILES+=usr/include/c++/v1/__functional/bind_back.h -OLD_FILES+=usr/include/c++/v1/__functional/bind_front.h -OLD_FILES+=usr/include/c++/v1/__functional/binder1st.h -OLD_FILES+=usr/include/c++/v1/__functional/binder2nd.h -OLD_FILES+=usr/include/c++/v1/__functional/compose.h -OLD_FILES+=usr/include/c++/v1/__functional/default_searcher.h -OLD_FILES+=usr/include/c++/v1/__functional/function.h -OLD_FILES+=usr/include/c++/v1/__functional/hash.h -OLD_FILES+=usr/include/c++/v1/__functional/identity.h -OLD_FILES+=usr/include/c++/v1/__functional/invoke.h -OLD_FILES+=usr/include/c++/v1/__functional/is_transparent.h -OLD_FILES+=usr/include/c++/v1/__functional/mem_fn.h -OLD_FILES+=usr/include/c++/v1/__functional/mem_fun_ref.h -OLD_FILES+=usr/include/c++/v1/__functional/not_fn.h -OLD_FILES+=usr/include/c++/v1/__functional/operations.h -OLD_FILES+=usr/include/c++/v1/__functional/perfect_forward.h -OLD_FILES+=usr/include/c++/v1/__functional/pointer_to_binary_function.h -OLD_FILES+=usr/include/c++/v1/__functional/pointer_to_unary_function.h -OLD_FILES+=usr/include/c++/v1/__functional/ranges_operations.h -OLD_FILES+=usr/include/c++/v1/__functional/reference_wrapper.h -OLD_FILES+=usr/include/c++/v1/__functional/unary_function.h -OLD_FILES+=usr/include/c++/v1/__functional/unary_negate.h -OLD_FILES+=usr/include/c++/v1/__functional/unwrap_ref.h -OLD_FILES+=usr/include/c++/v1/__functional/weak_result_type.h -OLD_DIRS+=usr/include/c++/v1/__functional -OLD_FILES+=usr/include/c++/v1/__functional_base -OLD_FILES+=usr/include/c++/v1/__hash_table -OLD_FILES+=usr/include/c++/v1/__iterator/access.h -OLD_FILES+=usr/include/c++/v1/__iterator/advance.h -OLD_FILES+=usr/include/c++/v1/__iterator/back_insert_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/common_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/concepts.h -OLD_FILES+=usr/include/c++/v1/__iterator/counted_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/data.h -OLD_FILES+=usr/include/c++/v1/__iterator/default_sentinel.h -OLD_FILES+=usr/include/c++/v1/__iterator/distance.h -OLD_FILES+=usr/include/c++/v1/__iterator/empty.h -OLD_FILES+=usr/include/c++/v1/__iterator/erase_if_container.h -OLD_FILES+=usr/include/c++/v1/__iterator/front_insert_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/incrementable_traits.h -OLD_FILES+=usr/include/c++/v1/__iterator/indirectly_comparable.h -OLD_FILES+=usr/include/c++/v1/__iterator/insert_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/istream_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/istreambuf_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/iter_move.h -OLD_FILES+=usr/include/c++/v1/__iterator/iter_swap.h -OLD_FILES+=usr/include/c++/v1/__iterator/iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/iterator_traits.h -OLD_FILES+=usr/include/c++/v1/__iterator/move_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/next.h -OLD_FILES+=usr/include/c++/v1/__iterator/ostream_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/ostreambuf_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/prev.h -OLD_FILES+=usr/include/c++/v1/__iterator/projected.h -OLD_FILES+=usr/include/c++/v1/__iterator/readable_traits.h -OLD_FILES+=usr/include/c++/v1/__iterator/reverse_access.h -OLD_FILES+=usr/include/c++/v1/__iterator/reverse_iterator.h -OLD_FILES+=usr/include/c++/v1/__iterator/size.h -OLD_FILES+=usr/include/c++/v1/__iterator/unreachable_sentinel.h -OLD_FILES+=usr/include/c++/v1/__iterator/wrap_iter.h -OLD_DIRS+=usr/include/c++/v1/__iterator -OLD_FILES+=usr/include/c++/v1/__libcpp_version -OLD_FILES+=usr/include/c++/v1/__locale -OLD_FILES+=usr/include/c++/v1/__mbstate_t.h -OLD_FILES+=usr/include/c++/v1/__memory/addressof.h -OLD_FILES+=usr/include/c++/v1/__memory/allocation_guard.h -OLD_FILES+=usr/include/c++/v1/__memory/allocator.h -OLD_FILES+=usr/include/c++/v1/__memory/allocator_arg_t.h -OLD_FILES+=usr/include/c++/v1/__memory/allocator_traits.h -OLD_FILES+=usr/include/c++/v1/__memory/auto_ptr.h -OLD_FILES+=usr/include/c++/v1/__memory/compressed_pair.h -OLD_FILES+=usr/include/c++/v1/__memory/concepts.h -OLD_FILES+=usr/include/c++/v1/__memory/construct_at.h -OLD_FILES+=usr/include/c++/v1/__memory/pointer_traits.h -OLD_FILES+=usr/include/c++/v1/__memory/ranges_construct_at.h -OLD_FILES+=usr/include/c++/v1/__memory/ranges_uninitialized_algorithms.h -OLD_FILES+=usr/include/c++/v1/__memory/raw_storage_iterator.h -OLD_FILES+=usr/include/c++/v1/__memory/shared_ptr.h -OLD_FILES+=usr/include/c++/v1/__memory/temporary_buffer.h -OLD_FILES+=usr/include/c++/v1/__memory/uninitialized_algorithms.h -OLD_FILES+=usr/include/c++/v1/__memory/unique_ptr.h -OLD_FILES+=usr/include/c++/v1/__memory/uses_allocator.h -OLD_FILES+=usr/include/c++/v1/__memory/voidify.h -OLD_DIRS+=usr/include/c++/v1/__memory -OLD_FILES+=usr/include/c++/v1/__mutex_base -OLD_FILES+=usr/include/c++/v1/__node_handle -OLD_FILES+=usr/include/c++/v1/__nullptr -OLD_FILES+=usr/include/c++/v1/__numeric/accumulate.h -OLD_FILES+=usr/include/c++/v1/__numeric/adjacent_difference.h -OLD_FILES+=usr/include/c++/v1/__numeric/exclusive_scan.h -OLD_FILES+=usr/include/c++/v1/__numeric/gcd_lcm.h -OLD_FILES+=usr/include/c++/v1/__numeric/inclusive_scan.h -OLD_FILES+=usr/include/c++/v1/__numeric/inner_product.h -OLD_FILES+=usr/include/c++/v1/__numeric/iota.h -OLD_FILES+=usr/include/c++/v1/__numeric/midpoint.h -OLD_FILES+=usr/include/c++/v1/__numeric/partial_sum.h -OLD_FILES+=usr/include/c++/v1/__numeric/reduce.h -OLD_FILES+=usr/include/c++/v1/__numeric/transform_exclusive_scan.h -OLD_FILES+=usr/include/c++/v1/__numeric/transform_inclusive_scan.h -OLD_FILES+=usr/include/c++/v1/__numeric/transform_reduce.h -OLD_DIRS+=usr/include/c++/v1/__numeric -OLD_FILES+=usr/include/c++/v1/__random/bernoulli_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/binomial_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/cauchy_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/chi_squared_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/clamp_to_integral.h -OLD_FILES+=usr/include/c++/v1/__random/default_random_engine.h -OLD_FILES+=usr/include/c++/v1/__random/discard_block_engine.h -OLD_FILES+=usr/include/c++/v1/__random/discrete_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/exponential_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/extreme_value_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/fisher_f_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/gamma_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/generate_canonical.h -OLD_FILES+=usr/include/c++/v1/__random/geometric_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/independent_bits_engine.h -OLD_FILES+=usr/include/c++/v1/__random/is_seed_sequence.h -OLD_FILES+=usr/include/c++/v1/__random/knuth_b.h -OLD_FILES+=usr/include/c++/v1/__random/linear_congruential_engine.h -OLD_FILES+=usr/include/c++/v1/__random/log2.h -OLD_FILES+=usr/include/c++/v1/__random/lognormal_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/mersenne_twister_engine.h -OLD_FILES+=usr/include/c++/v1/__random/negative_binomial_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/normal_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/piecewise_constant_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/piecewise_linear_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/poisson_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/random_device.h -OLD_FILES+=usr/include/c++/v1/__random/ranlux.h -OLD_FILES+=usr/include/c++/v1/__random/seed_seq.h -OLD_FILES+=usr/include/c++/v1/__random/shuffle_order_engine.h -OLD_FILES+=usr/include/c++/v1/__random/student_t_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/subtract_with_carry_engine.h -OLD_FILES+=usr/include/c++/v1/__random/uniform_int_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/uniform_random_bit_generator.h -OLD_FILES+=usr/include/c++/v1/__random/uniform_real_distribution.h -OLD_FILES+=usr/include/c++/v1/__random/weibull_distribution.h -OLD_DIRS+=usr/include/c++/v1/__random -OLD_FILES+=usr/include/c++/v1/__ranges/access.h -OLD_FILES+=usr/include/c++/v1/__ranges/all.h -OLD_FILES+=usr/include/c++/v1/__ranges/common_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/concepts.h -OLD_FILES+=usr/include/c++/v1/__ranges/copyable_box.h -OLD_FILES+=usr/include/c++/v1/__ranges/counted.h -OLD_FILES+=usr/include/c++/v1/__ranges/dangling.h -OLD_FILES+=usr/include/c++/v1/__ranges/data.h -OLD_FILES+=usr/include/c++/v1/__ranges/drop_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/empty.h -OLD_FILES+=usr/include/c++/v1/__ranges/empty_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/enable_borrowed_range.h -OLD_FILES+=usr/include/c++/v1/__ranges/enable_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/iota_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/join_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/non_propagating_cache.h -OLD_FILES+=usr/include/c++/v1/__ranges/owning_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/range_adaptor.h -OLD_FILES+=usr/include/c++/v1/__ranges/ref_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/reverse_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/single_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/size.h -OLD_FILES+=usr/include/c++/v1/__ranges/subrange.h -OLD_FILES+=usr/include/c++/v1/__ranges/take_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/transform_view.h -OLD_FILES+=usr/include/c++/v1/__ranges/view_interface.h -OLD_DIRS+=usr/include/c++/v1/__ranges -OLD_FILES+=usr/include/c++/v1/__split_buffer -OLD_FILES+=usr/include/c++/v1/__std_stream -OLD_FILES+=usr/include/c++/v1/__string -OLD_FILES+=usr/include/c++/v1/__thread/poll_with_backoff.h -OLD_FILES+=usr/include/c++/v1/__thread/timed_backoff_policy.h -OLD_DIRS+=usr/include/c++/v1/__thread -OLD_FILES+=usr/include/c++/v1/__threading_support -OLD_FILES+=usr/include/c++/v1/__tree -OLD_FILES+=usr/include/c++/v1/__tuple -OLD_FILES+=usr/include/c++/v1/__undef_macros -OLD_FILES+=usr/include/c++/v1/__utility/as_const.h -OLD_FILES+=usr/include/c++/v1/__utility/auto_cast.h -OLD_FILES+=usr/include/c++/v1/__utility/cmp.h -OLD_FILES+=usr/include/c++/v1/__utility/declval.h -OLD_FILES+=usr/include/c++/v1/__utility/exchange.h -OLD_FILES+=usr/include/c++/v1/__utility/forward.h -OLD_FILES+=usr/include/c++/v1/__utility/in_place.h -OLD_FILES+=usr/include/c++/v1/__utility/integer_sequence.h -OLD_FILES+=usr/include/c++/v1/__utility/move.h -OLD_FILES+=usr/include/c++/v1/__utility/pair.h -OLD_FILES+=usr/include/c++/v1/__utility/piecewise_construct.h -OLD_FILES+=usr/include/c++/v1/__utility/priority_tag.h -OLD_FILES+=usr/include/c++/v1/__utility/rel_ops.h -OLD_FILES+=usr/include/c++/v1/__utility/swap.h -OLD_FILES+=usr/include/c++/v1/__utility/to_underlying.h -OLD_FILES+=usr/include/c++/v1/__utility/transaction.h -OLD_DIRS+=usr/include/c++/v1/__utility -OLD_FILES+=usr/include/c++/v1/__variant/monostate.h -OLD_DIRS+=usr/include/c++/v1/__variant -OLD_FILES+=usr/include/c++/v1/algorithm -OLD_FILES+=usr/include/c++/v1/any -OLD_FILES+=usr/include/c++/v1/array -OLD_FILES+=usr/include/c++/v1/atomic -OLD_FILES+=usr/include/c++/v1/barrier -OLD_FILES+=usr/include/c++/v1/bit -OLD_FILES+=usr/include/c++/v1/bitset -OLD_FILES+=usr/include/c++/v1/cassert -OLD_FILES+=usr/include/c++/v1/ccomplex -OLD_FILES+=usr/include/c++/v1/cctype -OLD_FILES+=usr/include/c++/v1/cerrno -OLD_FILES+=usr/include/c++/v1/cfenv -OLD_FILES+=usr/include/c++/v1/cfloat -OLD_FILES+=usr/include/c++/v1/charconv -OLD_FILES+=usr/include/c++/v1/chrono -OLD_FILES+=usr/include/c++/v1/cinttypes -OLD_FILES+=usr/include/c++/v1/ciso646 -OLD_FILES+=usr/include/c++/v1/climits -OLD_FILES+=usr/include/c++/v1/clocale -OLD_FILES+=usr/include/c++/v1/cmath -OLD_FILES+=usr/include/c++/v1/codecvt -OLD_FILES+=usr/include/c++/v1/compare -OLD_FILES+=usr/include/c++/v1/complex -OLD_FILES+=usr/include/c++/v1/complex.h -OLD_FILES+=usr/include/c++/v1/concepts -OLD_FILES+=usr/include/c++/v1/condition_variable -OLD_FILES+=usr/include/c++/v1/coroutine -OLD_FILES+=usr/include/c++/v1/csetjmp -OLD_FILES+=usr/include/c++/v1/csignal -OLD_FILES+=usr/include/c++/v1/cstdarg -OLD_FILES+=usr/include/c++/v1/cstdbool -OLD_FILES+=usr/include/c++/v1/cstddef -OLD_FILES+=usr/include/c++/v1/cstdint -OLD_FILES+=usr/include/c++/v1/cstdio -OLD_FILES+=usr/include/c++/v1/cstdlib -OLD_FILES+=usr/include/c++/v1/cstring -OLD_FILES+=usr/include/c++/v1/ctgmath -OLD_FILES+=usr/include/c++/v1/ctime -OLD_FILES+=usr/include/c++/v1/ctype.h -OLD_FILES+=usr/include/c++/v1/cwchar -OLD_FILES+=usr/include/c++/v1/cwctype -OLD_FILES+=usr/include/c++/v1/cxxabi.h -OLD_FILES+=usr/include/c++/v1/deque -OLD_FILES+=usr/include/c++/v1/errno.h -OLD_FILES+=usr/include/c++/v1/exception -OLD_FILES+=usr/include/c++/v1/execution -OLD_FILES+=usr/include/c++/v1/experimental/__config -OLD_FILES+=usr/include/c++/v1/experimental/__memory -OLD_FILES+=usr/include/c++/v1/experimental/algorithm -OLD_FILES+=usr/include/c++/v1/experimental/coroutine -OLD_FILES+=usr/include/c++/v1/experimental/deque -OLD_FILES+=usr/include/c++/v1/experimental/filesystem -OLD_FILES+=usr/include/c++/v1/experimental/forward_list -OLD_FILES+=usr/include/c++/v1/experimental/functional -OLD_FILES+=usr/include/c++/v1/experimental/iterator -OLD_FILES+=usr/include/c++/v1/experimental/list -OLD_FILES+=usr/include/c++/v1/experimental/map -OLD_FILES+=usr/include/c++/v1/experimental/memory_resource -OLD_FILES+=usr/include/c++/v1/experimental/propagate_const -OLD_FILES+=usr/include/c++/v1/experimental/regex -OLD_FILES+=usr/include/c++/v1/experimental/set -OLD_FILES+=usr/include/c++/v1/experimental/simd -OLD_FILES+=usr/include/c++/v1/experimental/string -OLD_FILES+=usr/include/c++/v1/experimental/type_traits -OLD_FILES+=usr/include/c++/v1/experimental/unordered_map -OLD_FILES+=usr/include/c++/v1/experimental/unordered_set -OLD_FILES+=usr/include/c++/v1/experimental/utility -OLD_FILES+=usr/include/c++/v1/experimental/vector -OLD_DIRS+=usr/include/c++/v1/experimental -OLD_FILES+=usr/include/c++/v1/ext/__hash -OLD_FILES+=usr/include/c++/v1/ext/hash_map -OLD_FILES+=usr/include/c++/v1/ext/hash_set -OLD_DIRS+=usr/include/c++/v1/ext -OLD_FILES+=usr/include/c++/v1/fenv.h -OLD_FILES+=usr/include/c++/v1/filesystem -OLD_FILES+=usr/include/c++/v1/float.h -OLD_FILES+=usr/include/c++/v1/format -OLD_FILES+=usr/include/c++/v1/forward_list -OLD_FILES+=usr/include/c++/v1/fstream -OLD_FILES+=usr/include/c++/v1/functional -OLD_FILES+=usr/include/c++/v1/future -OLD_FILES+=usr/include/c++/v1/initializer_list -OLD_FILES+=usr/include/c++/v1/inttypes.h -OLD_FILES+=usr/include/c++/v1/iomanip -OLD_FILES+=usr/include/c++/v1/ios -OLD_FILES+=usr/include/c++/v1/iosfwd -OLD_FILES+=usr/include/c++/v1/iostream -OLD_FILES+=usr/include/c++/v1/istream -OLD_FILES+=usr/include/c++/v1/iterator -OLD_FILES+=usr/include/c++/v1/latch -OLD_FILES+=usr/include/c++/v1/limits -OLD_FILES+=usr/include/c++/v1/limits.h -OLD_FILES+=usr/include/c++/v1/list -OLD_FILES+=usr/include/c++/v1/locale -OLD_FILES+=usr/include/c++/v1/locale.h -OLD_FILES+=usr/include/c++/v1/map -OLD_FILES+=usr/include/c++/v1/math.h -OLD_FILES+=usr/include/c++/v1/memory -OLD_FILES+=usr/include/c++/v1/module.modulemap -OLD_FILES+=usr/include/c++/v1/mutex -OLD_FILES+=usr/include/c++/v1/new -OLD_FILES+=usr/include/c++/v1/numbers -OLD_FILES+=usr/include/c++/v1/numeric -OLD_FILES+=usr/include/c++/v1/optional -OLD_FILES+=usr/include/c++/v1/ostream -OLD_FILES+=usr/include/c++/v1/queue -OLD_FILES+=usr/include/c++/v1/random -OLD_FILES+=usr/include/c++/v1/ranges -OLD_FILES+=usr/include/c++/v1/ratio -OLD_FILES+=usr/include/c++/v1/regex -OLD_FILES+=usr/include/c++/v1/scoped_allocator -OLD_FILES+=usr/include/c++/v1/semaphore -OLD_FILES+=usr/include/c++/v1/set -OLD_FILES+=usr/include/c++/v1/setjmp.h -OLD_FILES+=usr/include/c++/v1/shared_mutex -OLD_FILES+=usr/include/c++/v1/span -OLD_FILES+=usr/include/c++/v1/sstream -OLD_FILES+=usr/include/c++/v1/stack -OLD_FILES+=usr/include/c++/v1/stdbool.h -OLD_FILES+=usr/include/c++/v1/stddef.h -OLD_FILES+=usr/include/c++/v1/stdexcept -OLD_FILES+=usr/include/c++/v1/stdint.h -OLD_FILES+=usr/include/c++/v1/stdio.h -OLD_FILES+=usr/include/c++/v1/stdlib.h -OLD_FILES+=usr/include/c++/v1/streambuf -OLD_FILES+=usr/include/c++/v1/string -OLD_FILES+=usr/include/c++/v1/string.h -OLD_FILES+=usr/include/c++/v1/string_view -OLD_FILES+=usr/include/c++/v1/strstream -OLD_FILES+=usr/include/c++/v1/system_error -OLD_FILES+=usr/include/c++/v1/tgmath.h -OLD_FILES+=usr/include/c++/v1/thread -OLD_FILES+=usr/include/c++/v1/tuple -OLD_FILES+=usr/include/c++/v1/type_traits -OLD_FILES+=usr/include/c++/v1/typeindex -OLD_FILES+=usr/include/c++/v1/typeinfo -OLD_FILES+=usr/include/c++/v1/unordered_map -OLD_FILES+=usr/include/c++/v1/unordered_set -OLD_FILES+=usr/include/c++/v1/utility -OLD_FILES+=usr/include/c++/v1/valarray -OLD_FILES+=usr/include/c++/v1/variant -OLD_FILES+=usr/include/c++/v1/vector -OLD_FILES+=usr/include/c++/v1/version -OLD_FILES+=usr/include/c++/v1/wchar.h -OLD_FILES+=usr/include/c++/v1/wctype.h -OLD_DIRS+=usr/include/c++/v1 -.endif - .if ${MK_LLD} == no OLD_FILES+=usr/bin/ld.lld .endif diff --git a/tools/build/options/WITHOUT_CXX b/tools/build/options/WITHOUT_CXX deleted file mode 100644 index a600bb03df27..000000000000 --- a/tools/build/options/WITHOUT_CXX +++ /dev/null @@ -1,4 +0,0 @@ -.\" $FreeBSD$ -Do not build C++ headers and runtime libraries. -It also prevents building binaries and libraries written in C++, including -.Xr devd 8 . diff --git a/usr.bin/Makefile b/usr.bin/Makefile index 3ccc626bdfc8..a53d908d454b 100644 --- a/usr.bin/Makefile +++ b/usr.bin/Makefile @@ -34,6 +34,7 @@ SUBDIR= alias \ cut \ diff \ dirname \ + dtc \ du \ elfctl \ elfdump \ @@ -125,6 +126,7 @@ SUBDIR= alias \ rev \ revoke \ rpcinfo \ + rs \ rup \ ruptime \ rusers \ @@ -210,8 +212,6 @@ SUBDIR.${MK_GAMES}+= number SUBDIR.${MK_GAMES}+= pom SUBDIR.${MK_GAMES}+= primes SUBDIR.${MK_GAMES}+= random -SUBDIR.${MK_CXX}+= dtc -SUBDIR.${MK_CXX}+= rs .if ${MK_GH_BC} == "yes" SUBDIR+= gh-bc .else @@ -248,7 +248,7 @@ SUBDIR.${MK_QUOTAS}+= quota SUBDIR.${MK_SENDMAIL}+= vacation SUBDIR.${MK_TALK}+= talk SUBDIR.${MK_TELNET}+= telnet -SUBDIR.${MK_TESTS_SUPPORT}.${MK_CXX}+= kyua +SUBDIR.${MK_TESTS_SUPPORT}+= kyua SUBDIR.${MK_TESTS}+= tests SUBDIR.${MK_TEXTPROC}+= ul SUBDIR.${MK_TFTP}+= tftp @@ -281,9 +281,7 @@ SUBDIR.${MK_VT}+= vtfontcvt SUBDIR.${MK_USB}+= usbhidaction SUBDIR.${MK_USB}+= usbhidctl SUBDIR.${MK_UTMPX}+= last -.if ${MK_CXX} != "no" SUBDIR.${MK_UTMPX}+= users -.endif SUBDIR.${MK_UTMPX}+= who SUBDIR.${MK_OFED}+= ofed From nobody Fri Jan 27 09:19: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 4P3Bpy5YD0z3b69J; Fri, 27 Jan 2023 09:19:22 +0000 (UTC) (envelope-from melifaro@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 4P3Bpy5HxZz3vKt; Fri, 27 Jan 2023 09:19:22 +0000 (UTC) (envelope-from melifaro@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674811162; 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=pavRKE0t10cJ6FBKHWrbs0W9Fie6pyTpzDg9IsE221s=; b=U1Qrpv4sa+VrJ6+++dpPz0BEZgZi8L5wH45HZLnOTZYdCrwsh9HFhPNS4RR4cZDs4rxiv3 sn7qXQkA0hvKwVAXqg2q+sG03H0vZLYuCoZnqTjIJ1y8UnmTNHHq0Oq+hZKF6GLgdeZ+Zc 0BqwL2IZJU+TwYDjkB5d5HuRxYJeRA8/B8PvKJj0mXMoN6y+pz9n7mOzlD10/bFjx6bai9 YaaGpIX5lfo0oZOB29cVfFfc3B2nIjKnQji7euQoe1Z4L4bEI7rdgOr9REqVcSSe0XskJ4 B5B90MiZEGbUVQO7wYGp0JT5LeNhMhuZL6vVjswzJ95p1NiPqFrQdmzVM/dNuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674811162; 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=pavRKE0t10cJ6FBKHWrbs0W9Fie6pyTpzDg9IsE221s=; b=j010OumSlANvLRpQhxjEWpLROrh1+9LjF5wtUcZT4gzhekFISsxKlU9t8AAslQ5eQfKwr4 aZ6zssxtX9/od0L/H41jHqq4cDGe0GEN0a0AnIMhkP9cFYTzPMKggvUUyi+hrUBzBw5P+H DQRmGRkfMN/hHf18C6C/1wlw7g/abX/xfzWaC9qMIuSm309VDBlNS0ooS/HFcRRNXFbJzE AtcCANwPdxj30qe85cJ5/TTyJJInHQdP/A0TuS8WsP60/upSXDSGy8r8fEiedd4NxmOyup EsE6ddgc9jLkvOTAYkhfp+BevfpRMWvk1G6wOqXIrOZkztF5dKt85zFJhsZZCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674811162; a=rsa-sha256; cv=none; b=ZheYrmFJEqFZWznUKo4lr5bbyZA1zN7U6f2teoLX9xABOzniMCXpph65DttoJGNrdNIH8E VOAoV5nQdxfA68RrbcfBAETg+2doWYL2SAletLd1rTrpZ222dpa0/6v8H+aFBZuTKqSuCl 2hPjNZYLN2MyFXDCAwL5gDqgtras8EYmkHwGjftRiBkdbe/vidABx8/p2UWqTOdcyqQwtW qkCx8iX1lUGCwvG7Lmp4aHwm6cOnDLaMRf8HQ01Ik1sXCHG04s0i/uWBLowbS9asLS9/c0 TKmiX/+TyYOHOU5PBETeyj4ZqM4Gc3TaydUp91ev/S/ig6co/cPSkku8E3R5eA== Received: from smtpclient.apple (unknown [IPv6:2a02:8084:d6bb:510:e19b:af10:9e05:1f33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: melifaro/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4P3Bpx6QKsz1157; Fri, 27 Jan 2023 09:19:21 +0000 (UTC) (envelope-from melifaro@freebsd.org) Content-Type: text/plain; charset=us-ascii 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 \(3731.200.110.1.12\)) Subject: Re: git: ac4c695ad61e - main - Retire WITHOUT_CXX option From: Alexander Chernikov In-Reply-To: <202301270214.30R2EJqI063420@gitrepo.freebsd.org> Date: Fri, 27 Jan 2023 09:19:10 +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: References: <202301270214.30R2EJqI063420@gitrepo.freebsd.org> To: Ed Maste X-Mailer: Apple Mail (2.3731.200.110.1.12) X-ThisMailContainsUnwantedMimeParts: N > On 27 Jan 2023, at 02:14, Ed Maste wrote: >=20 > The branch main has been updated by emaste: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3Dac4c695ad61e81d00cff2a03202a4afe= 94a92513 >=20 > commit ac4c695ad61e81d00cff2a03202a4afe94a92513 > Author: Ed Maste > AuthorDate: 2022-11-16 14:20:39 +0000 > Commit: Ed Maste > CommitDate: 2023-01-27 02:13:16 +0000 >=20 > Retire WITHOUT_CXX option Nice. Does that imply more openness in writing (or re-writing) userland = core tools in C++? >=20 >=20 >=20 > Several important base system components are written in C++, and the > WITHOUT_CXX option produced a system that was not fully functional. > Just accept this, and remove the option to build without C++ = support. >=20 > This reverts commit adc3c128c6603054586a993d117e5dd808deac17. >=20 > Reviewed by: brooks, kevans, jhb (earlier) > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D33108 > --- > Makefile.inc1 | 15 +- > UPDATING | 4 + > cddl/usr.sbin/Makefile | 3 +- > lib/Makefile | 20 +- > lib/atf/Makefile | 2 +- > lib/libproc/Makefile | 8 +- > sbin/Makefile | 2 +- > share/man/man5/src.conf.5 | 38 +-- > share/mk/src.libnames.mk | 2 - > share/mk/src.opts.mk | 18 - > tools/build/mk/OptionalObsoleteFiles.inc | 554 = ------------------------------- > tools/build/options/WITHOUT_CXX | 4 - > usr.bin/Makefile | 8 +- > 13 files changed, 22 insertions(+), 656 deletions(-) >=20 > diff --git a/Makefile.inc1 b/Makefile.inc1 > index 6435cadbd45c..dac412559716 100644 > --- a/Makefile.inc1 > +++ b/Makefile.inc1 > @@ -2922,18 +2922,14 @@ _prereq_libs+=3D = lib/libclang_rt/ubsan_standalone_cxx > _startup_libs=3D lib/csu > _startup_libs+=3D lib/libc > _startup_libs+=3D lib/libc_nonshared > -.if ${MK_CXX} !=3D "no" > _startup_libs+=3D lib/libcxxrt > -.endif >=20 > _prereq_libs+=3D lib/libgcc_eh lib/libgcc_s > _startup_libs+=3D lib/libgcc_eh lib/libgcc_s >=20 > lib/libgcc_s__L: lib/libc__L > lib/libgcc_s__L: lib/libc_nonshared__L > -.if ${MK_CXX} !=3D "no" > lib/libcxxrt__L: lib/libgcc_s__L > -.endif >=20 > _prebuild_libs=3D ${_kerberos5_lib_libasn1} \ > ${_kerberos5_lib_libhdb} \ > @@ -2945,6 +2941,7 @@ _prebuild_libs=3D ${_kerberos5_lib_libasn1} \ > ${_kerberos5_lib_libroken} \ > ${_kerberos5_lib_libwind} \ > lib/libbz2 ${_libcom_err} lib/libcrypt \ > + lib/libc++ \ > lib/libelf lib/libexpat \ > lib/libfigpar \ > ${_lib_libgssapi} \ > @@ -2982,10 +2979,6 @@ gnu/lib/libdialog__L: lib/msun__L = lib/ncurses/tinfo__L lib/ncurses/ncurses__L > _prebuild_libs+=3D lib/libregex > .endif >=20 > -.if ${MK_CXX} !=3D "no" > -_prebuild_libs+=3D lib/libc++ > -.endif > - > lib/libgeom__L: lib/libexpat__L lib/libsbuf__L > lib/libkvm__L: lib/libelf__L >=20 > @@ -3150,10 +3143,8 @@ lib/libradius__L: lib/libmd__L > .endif >=20 > lib/libproc__L: \ > - ${_cddl_lib_libctf:D${_cddl_lib_libctf}__L} lib/libelf__L = lib/librtld_db__L lib/libutil__L > -.if ${MK_CXX} !=3D "no" > -lib/libproc__L: lib/libcxxrt__L > -.endif > + ${_cddl_lib_libctf:D${_cddl_lib_libctf}__L} \ > + lib/libelf__L lib/librtld_db__L lib/libutil__L lib/libcxxrt__L >=20 > .for _lib in ${_prereq_libs} > ${_lib}__PL: .PHONY .MAKE > diff --git a/UPDATING b/UPDATING > index e9d53811df8d..172c611ee9f0 100644 > --- a/UPDATING > +++ b/UPDATING > @@ -27,6 +27,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 14.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".) >=20 > +20230126: > + The WITHOUT_CXX option has been removed. C++ components in the base > + system are now built unconditionally. > + > 20230113: > LinuxKPI pci.h changes may require out-of-tree drivers to be = recompiled. > Bump _FreeBSD_version to 1400078 to be able to detect this change. > diff --git a/cddl/usr.sbin/Makefile b/cddl/usr.sbin/Makefile > index 68dc735b3d1b..ef7878f41ade 100644 > --- a/cddl/usr.sbin/Makefile > +++ b/cddl/usr.sbin/Makefile > @@ -12,8 +12,7 @@ SUBDIR.${MK_TESTS}+=3D tests >=20 > SUBDIR.${MK_ZFS}+=3D \ > zdb \ > - zhack > -SUBDIR.${MK_ZFS}.${MK_CXX}+=3D \ > + zhack \ > zfsd >=20 > .if ${MACHINE_ARCH} =3D=3D "amd64" || ${MACHINE_ARCH} =3D=3D "i386" > diff --git a/lib/Makefile b/lib/Makefile > index 6b4b356707fe..8d4115d29602 100644 > --- a/lib/Makefile > +++ b/lib/Makefile > @@ -15,8 +15,9 @@ SUBDIR_BOOTSTRAP=3D \ > libc_nonshared \ > libcompiler_rt \ > ${_libclang_rt} \ > - ${_libcplusplus} \ > - ${_libcxxrt} \ > + libc++ \ > + libc++experimental \ > + libcxxrt \ > libelf \ > libssp \ > libssp_nonshared \ > @@ -47,6 +48,7 @@ SUBDIR=3D ${SUBDIR_BOOTSTRAP} \ > libcompat \ > libcrypt \ > libdevctl \ > + libdevdctl \ > libdevinfo \ > libdevstat \ > libdl \ > @@ -165,7 +167,6 @@ SUBDIR+=3D clang > .endif >=20 > SUBDIR.${MK_CUSE}+=3D libcuse > -SUBDIR.${MK_CXX}+=3D libdevdctl > SUBDIR.${MK_TOOLCHAIN}+=3Dlibpe > SUBDIR.${MK_DIALOG}+=3D libdpv libfigpar > SUBDIR.${MK_FILE}+=3D libmagic > @@ -176,20 +177,13 @@ SUBDIR.${MK_KERBEROS_SUPPORT}+=3D libcom_err > SUBDIR.${MK_LDNS}+=3D libldns > SUBDIR.${MK_STATS}+=3D libstats >=20 > -# The libraries under libclang_rt can only be built by clang and when = we enable > -# C++ support. > -.if ${COMPILER_TYPE} =3D=3D "clang" && ${MK_CXX} !=3D "no" > +# The libraries under libclang_rt can only be built by clang. > +.if ${COMPILER_TYPE} =3D=3D "clang" > _libclang_rt=3D libclang_rt > .elif (${MK_ASAN} !=3D "no" || ${MK_UBSAN} !=3D "no") && make(all) > .error Requested build with sanitizers but cannot build runtime = libraries! > .endif >=20 > -.if ${MK_CXX} !=3D "no" > -_libcxxrt=3D libcxxrt > -_libcplusplus=3D libc++ > -_libcplusplus+=3D libc++experimental > -.endif > - > SUBDIR.${MK_EFI}+=3D libefivar > SUBDIR.${MK_GOOGLETEST}+=3D googletest > SUBDIR.${MK_NETGRAPH}+=3D libnetgraph > @@ -221,7 +215,7 @@ SUBDIR.${MK_RADIUS_SUPPORT}+=3D libradius > SUBDIR.${MK_SENDMAIL}+=3D libmilter libsm libsmdb libsmutil > SUBDIR.${MK_TELNET}+=3D libtelnet > SUBDIR.${MK_TESTS_SUPPORT}+=3D atf > -SUBDIR.${MK_TESTS_SUPPORT}.${MK_CXX}+=3D liblutok > +SUBDIR.${MK_TESTS_SUPPORT}+=3D liblutok > SUBDIR.${MK_TESTS}+=3D tests > SUBDIR.${MK_UNBOUND}+=3D libunbound > SUBDIR.${MK_USB}+=3D libusbhid libusb > diff --git a/lib/atf/Makefile b/lib/atf/Makefile > index 05c7973fdc02..42f93f78a8aa 100644 > --- a/lib/atf/Makefile > +++ b/lib/atf/Makefile > @@ -28,7 +28,7 @@ > .include >=20 > SUBDIR=3D libatf-c > -SUBDIR.${MK_CXX}+=3D libatf-c++ > +SUBDIR+=3D libatf-c++ >=20 > SUBDIR.${MK_TESTS}+=3D tests >=20 > diff --git a/lib/libproc/Makefile b/lib/libproc/Makefile > index 37d550cb22e3..54b3701fa3f1 100644 > --- a/lib/libproc/Makefile > +++ b/lib/libproc/Makefile > @@ -15,13 +15,7 @@ INCS=3D libproc.h >=20 > CFLAGS+=3D -I${.CURDIR} >=20 > -.if ${MK_CXX} =3D=3D "no" > -CFLAGS+=3D -DNO_CXA_DEMANGLE > -.else > -LIBADD+=3D cxxrt > -.endif > - > -LIBADD+=3D elf procstat rtld_db util z > +LIBADD+=3D cxxrt elf procstat rtld_db util z >=20 > .if ${MK_CDDL} !=3D "no" > LIBADD+=3D ctf > diff --git a/sbin/Makefile b/sbin/Makefile > index 69cf51a83e26..69c5db1dba4b 100644 > --- a/sbin/Makefile > +++ b/sbin/Makefile > @@ -9,6 +9,7 @@ SUBDIR=3Dadjkerntz \ > comcontrol \ > conscontrol \ > ddb \ > + devd \ > devfs \ > devmatch \ > dhclient \ > @@ -72,7 +73,6 @@ SUBDIR+=3D ping > .endif >=20 > SUBDIR.${MK_CCD}+=3D ccdconfig > -SUBDIR.${MK_CXX}+=3D devd > SUBDIR.${MK_HAST}+=3D hastctl > SUBDIR.${MK_HAST}+=3D hastd > SUBDIR.${MK_INET6}+=3D rtsol > diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 > index 132a05065bd0..9b832b8b89f2 100644 > --- a/share/man/man5/src.conf.5 > +++ b/share/man/man5/src.conf.5 > @@ -1,6 +1,6 @@ > .\" DO NOT EDIT-- this file is @generated by = tools/build/options/makeman. > .\" $FreeBSD$ > -.Dd November 21, 2022 > +.Dd January 26, 2023 > .Dt SRC.CONF 5 > .Os > .Sh NAME > @@ -469,42 +469,6 @@ Build > .Pp > This is a default setting on > amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and = powerpc/powerpc64le. > -.It Va WITHOUT_CXX > -Do not build C++ headers and runtime libraries. > -It also prevents building binaries and libraries written in C++, = including > -.Xr devd 8 . > -When set, it enforces these options: > -.Pp > -.Bl -item -compact > -.It > -.Va WITHOUT_CLANG > -.It > -.Va WITHOUT_CLANG_EXTRAS > -.It > -.Va WITHOUT_CLANG_FORMAT > -.It > -.Va WITHOUT_CLANG_FULL > -.It > -.Va WITHOUT_DTRACE_TESTS > -.It > -.Va WITHOUT_GOOGLETEST > -.It > -.Va WITHOUT_LLD > -.It > -.Va WITHOUT_LLDB > -.It > -.Va WITHOUT_LLVM_COV > -.It > -.Va WITHOUT_OFED > -.It > -.Va WITHOUT_OFED_EXTRA > -.It > -.Va WITHOUT_OPENMP > -.It > -.Va WITHOUT_PMC > -.It > -.Va WITHOUT_TESTS > -.El > .It Va WITHOUT_DEBUG_FILES > Avoid building or installing standalone debug files for each > executable binary and shared library. > diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk > index db7c86651f96..dd1bc78b1f1a 100644 > --- a/share/mk/src.libnames.mk > +++ b/share/mk/src.libnames.mk > @@ -325,9 +325,7 @@ _DP_radius=3D crypto > .endif > _DP_rtld_db=3D elf procstat > _DP_procstat=3D kvm util elf > -.if ${MK_CXX} =3D=3D "yes" > _DP_proc=3D cxxrt > -.endif > .if ${MK_CDDL} !=3D "no" > _DP_proc+=3D ctf > .endif > diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk > index de36d672d20e..397af027e8e7 100644 > --- a/share/mk/src.opts.mk > +++ b/share/mk/src.opts.mk > @@ -86,7 +86,6 @@ __DEFAULT_YES_OPTIONS =3D \ > CROSS_COMPILER \ > CRYPT \ > CUSE \ > - CXX \ > CXGBETOOL \ > DIALOG \ > DICT \ > @@ -349,11 +348,6 @@ __DEFAULT_YES_OPTIONS+=3DOPENMP > __DEFAULT_NO_OPTIONS+=3DOPENMP > .endif >=20 > -# libc++ requires C++20 > -.if !${COMPILER_FEATURES:Mc++20} > -BROKEN_OPTIONS+=3DCXX > -.endif > - > .include >=20 > # > @@ -383,18 +377,6 @@ MK_KERBEROS:=3D no > MK_KERBEROS_SUPPORT:=3D no > .endif >=20 > -.if ${MK_CXX} =3D=3D "no" > -MK_CLANG:=3D no > -MK_LLD:=3D no > -MK_LLDB:=3D no > -MK_LLVM_BINUTILS:=3D no > -MK_GOOGLETEST:=3D no > -MK_OFED:=3D no > -MK_OPENMP:=3D no > -MK_PMC:=3D no > -MK_TESTS:=3D no > -.endif > - > .if ${MK_DIALOG} =3D=3D "no" > MK_BSDINSTALL:=3D no > .endif > diff --git a/tools/build/mk/OptionalObsoleteFiles.inc = b/tools/build/mk/OptionalObsoleteFiles.inc > index dacc89f9e78e..6e741dd06930 100644 > --- a/tools/build/mk/OptionalObsoleteFiles.inc > +++ b/tools/build/mk/OptionalObsoleteFiles.inc > @@ -3719,560 +3719,6 @@ OLD_LIBS+=3D${DEBUG_LIB32_LIBS} > . endif > .endif >=20 > -.if ${MK_CXX} =3D=3D no > -OLD_LIBS+=3Dlib/libcxxrt.so.1 > -OLD_FILES+=3Dusr/lib/libc++.a > -OLD_FILES+=3Dusr/lib/libc++_p.a > -OLD_FILES+=3Dusr/lib/libc++experimental.a > -OLD_FILES+=3Dusr/lib/libc++.so > -OLD_LIBS+=3Dusr/lib/libc++.so.1 > -OLD_FILES+=3Dusr/lib/libcxxrt.a > -OLD_FILES+=3Dusr/lib/libcxxrt.so > -OLD_FILES+=3Dusr/lib/libcxxrt_p.a > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/adjacent_find.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/all_of.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/any_of.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/binary_search.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/clamp.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/comp.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/comp_ref_type.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/copy_backward.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/copy_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/copy_n.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/count.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/count_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/equal.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/equal_range.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/fill.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/fill_n.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/find.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/find_end.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/find_first_of.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/find_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/find_if_not.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/for_each.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/for_each_n.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/generate.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/generate_n.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/half_positive.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/in_in_out_result.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/in_in_result.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/in_out_result.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/includes.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/inplace_merge.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/is_heap.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/is_heap_until.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/is_partitioned.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/is_permutation.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/is_sorted.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/is_sorted_until.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/iter_swap.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/lexicographical_compare.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/lower_bound.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/make_heap.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/max.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/max_element.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/merge.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/min.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/min_element.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/minmax.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/minmax_element.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/mismatch.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/move.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/move_backward.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/next_permutation.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/none_of.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/nth_element.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/partial_sort.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/partial_sort_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/partition.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/partition_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/partition_point.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/pop_heap.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/prev_permutation.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/push_heap.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/remove.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/remove_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/remove_copy_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/remove_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/replace.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/replace_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/replace_copy_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/replace_if.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/reverse.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/reverse_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/rotate.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/rotate_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/sample.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/search.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/search_n.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/set_difference.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/set_intersection.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/set_symmetric_difference.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/set_union.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/shift_left.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/shift_right.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/shuffle.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/sift_down.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/sort.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/sort_heap.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/stable_partition.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/stable_sort.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/swap_ranges.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/transform.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/unique.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/unique_copy.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/unwrap_iter.h > -OLD_FILES+=3Dusr/include/c++/v1/__algorithm/upper_bound.h > -OLD_DIRS+=3Dusr/include/c++/v1/__algorithm > -OLD_FILES+=3Dusr/include/c++/v1/__availability > -OLD_FILES+=3Dusr/include/c++/v1/__bit/bit_cast.h > -OLD_FILES+=3Dusr/include/c++/v1/__bit/byteswap.h > -OLD_DIRS+=3Dusr/include/c++/v1/__bit > -OLD_FILES+=3Dusr/include/c++/v1/__bit_reference > -OLD_FILES+=3Dusr/include/c++/v1/__bits > -OLD_FILES+=3Dusr/include/c++/v1/__bsd_locale_defaults.h > -OLD_FILES+=3Dusr/include/c++/v1/__bsd_locale_fallbacks.h > -OLD_FILES+=3Dusr/include/c++/v1/__charconv/chars_format.h > -OLD_FILES+=3Dusr/include/c++/v1/__charconv/from_chars_result.h > -OLD_FILES+=3Dusr/include/c++/v1/__charconv/to_chars_result.h > -OLD_DIRS+=3Dusr/include/c++/v1/__charconv > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/calendar.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/convert_to_timespec.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/duration.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/file_clock.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/high_resolution_clock.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/steady_clock.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/system_clock.h > -OLD_FILES+=3Dusr/include/c++/v1/__chrono/time_point.h > -OLD_DIRS+=3Dusr/include/c++/v1/__chrono > -OLD_FILES+=3Dusr/include/c++/v1/__compare/common_comparison_category.h > = -OLD_FILES+=3Dusr/include/c++/v1/__compare/compare_partial_order_fallback.= h > = -OLD_FILES+=3Dusr/include/c++/v1/__compare/compare_strong_order_fallback.h= > -OLD_FILES+=3Dusr/include/c++/v1/__compare/compare_three_way.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/compare_three_way_result.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/compare_weak_order_fallback.h= > -OLD_FILES+=3Dusr/include/c++/v1/__compare/is_eq.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/ordering.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/partial_order.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/strong_order.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/synth_three_way.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/three_way_comparable.h > -OLD_FILES+=3Dusr/include/c++/v1/__compare/weak_order.h > -OLD_DIRS+=3Dusr/include/c++/v1/__compare > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/arithmetic.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/assignable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/boolean_testable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/class_or_enum.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/common_reference_with.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/common_with.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/constructible.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/convertible_to.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/copyable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/derived_from.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/destructible.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/different_from.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/equality_comparable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/invocable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/movable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/predicate.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/regular.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/relation.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/same_as.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/semiregular.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/swappable.h > -OLD_FILES+=3Dusr/include/c++/v1/__concepts/totally_ordered.h > -OLD_DIRS+=3Dusr/include/c++/v1/__concepts > -OLD_FILES+=3Dusr/include/c++/v1/__config > -OLD_FILES+=3Dusr/include/c++/v1/__config_site > -OLD_FILES+=3Dusr/include/c++/v1/__coroutine/coroutine_handle.h > -OLD_FILES+=3Dusr/include/c++/v1/__coroutine/coroutine_traits.h > -OLD_FILES+=3Dusr/include/c++/v1/__coroutine/noop_coroutine_handle.h > -OLD_FILES+=3Dusr/include/c++/v1/__coroutine/trivial_awaitables.h > -OLD_DIRS+=3Dusr/include/c++/v1/__coroutine > -OLD_FILES+=3Dusr/include/c++/v1/__debug > -OLD_FILES+=3Dusr/include/c++/v1/__errc > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/copy_options.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/directory_entry.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/directory_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/directory_options.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/file_status.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/file_time_type.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/file_type.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/filesystem_error.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/operations.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/path.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/path_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/perm_options.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/perms.h > = -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/recursive_directory_iterator= .h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/space_info.h > -OLD_FILES+=3Dusr/include/c++/v1/__filesystem/u8path.h > -OLD_DIRS+=3Dusr/include/c++/v1/__filesystem > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_arg.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_args.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_context.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_error.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_fwd.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_parse_context.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_string.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/format_to_n_result.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_bool.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_char.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_floating_point.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_integer.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_integral.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_pointer.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/formatter_string.h > -OLD_FILES+=3Dusr/include/c++/v1/__format/parser_std_format_spec.h > -OLD_DIRS+=3Dusr/include/c++/v1/__format > -OLD_FILES+=3Dusr/include/c++/v1/__functional/binary_function.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/binary_negate.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/bind.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/bind_back.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/bind_front.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/binder1st.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/binder2nd.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/compose.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/default_searcher.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/function.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/hash.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/identity.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/invoke.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/is_transparent.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/mem_fn.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/mem_fun_ref.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/not_fn.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/operations.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/perfect_forward.h > = -OLD_FILES+=3Dusr/include/c++/v1/__functional/pointer_to_binary_function.h= > = -OLD_FILES+=3Dusr/include/c++/v1/__functional/pointer_to_unary_function.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/ranges_operations.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/reference_wrapper.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/unary_function.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/unary_negate.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/unwrap_ref.h > -OLD_FILES+=3Dusr/include/c++/v1/__functional/weak_result_type.h > -OLD_DIRS+=3Dusr/include/c++/v1/__functional > -OLD_FILES+=3Dusr/include/c++/v1/__functional_base > -OLD_FILES+=3Dusr/include/c++/v1/__hash_table > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/access.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/advance.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/back_insert_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/common_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/concepts.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/counted_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/data.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/default_sentinel.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/distance.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/empty.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/erase_if_container.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/front_insert_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/incrementable_traits.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/indirectly_comparable.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/insert_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/istream_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/istreambuf_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/iter_move.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/iter_swap.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/iterator_traits.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/move_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/next.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/ostream_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/ostreambuf_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/prev.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/projected.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/readable_traits.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/reverse_access.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/reverse_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/size.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/unreachable_sentinel.h > -OLD_FILES+=3Dusr/include/c++/v1/__iterator/wrap_iter.h > -OLD_DIRS+=3Dusr/include/c++/v1/__iterator > -OLD_FILES+=3Dusr/include/c++/v1/__libcpp_version > -OLD_FILES+=3Dusr/include/c++/v1/__locale > -OLD_FILES+=3Dusr/include/c++/v1/__mbstate_t.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/addressof.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/allocation_guard.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/allocator.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/allocator_arg_t.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/allocator_traits.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/auto_ptr.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/compressed_pair.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/concepts.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/construct_at.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/pointer_traits.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/ranges_construct_at.h > = -OLD_FILES+=3Dusr/include/c++/v1/__memory/ranges_uninitialized_algorithms.= h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/raw_storage_iterator.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/shared_ptr.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/temporary_buffer.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/uninitialized_algorithms.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/unique_ptr.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/uses_allocator.h > -OLD_FILES+=3Dusr/include/c++/v1/__memory/voidify.h > -OLD_DIRS+=3Dusr/include/c++/v1/__memory > -OLD_FILES+=3Dusr/include/c++/v1/__mutex_base > -OLD_FILES+=3Dusr/include/c++/v1/__node_handle > -OLD_FILES+=3Dusr/include/c++/v1/__nullptr > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/accumulate.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/adjacent_difference.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/exclusive_scan.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/gcd_lcm.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/inclusive_scan.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/inner_product.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/iota.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/midpoint.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/partial_sum.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/reduce.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/transform_exclusive_scan.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/transform_inclusive_scan.h > -OLD_FILES+=3Dusr/include/c++/v1/__numeric/transform_reduce.h > -OLD_DIRS+=3Dusr/include/c++/v1/__numeric > -OLD_FILES+=3Dusr/include/c++/v1/__random/bernoulli_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/binomial_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/cauchy_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/chi_squared_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/clamp_to_integral.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/default_random_engine.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/discard_block_engine.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/discrete_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/exponential_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/extreme_value_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/fisher_f_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/gamma_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/generate_canonical.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/geometric_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/independent_bits_engine.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/is_seed_sequence.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/knuth_b.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/linear_congruential_engine.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/log2.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/lognormal_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/mersenne_twister_engine.h > = -OLD_FILES+=3Dusr/include/c++/v1/__random/negative_binomial_distribution.h= > -OLD_FILES+=3Dusr/include/c++/v1/__random/normal_distribution.h > = -OLD_FILES+=3Dusr/include/c++/v1/__random/piecewise_constant_distribution.= h > = -OLD_FILES+=3Dusr/include/c++/v1/__random/piecewise_linear_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/poisson_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/random_device.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/ranlux.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/seed_seq.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/shuffle_order_engine.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/student_t_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/subtract_with_carry_engine.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/uniform_int_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/uniform_random_bit_generator.h= > -OLD_FILES+=3Dusr/include/c++/v1/__random/uniform_real_distribution.h > -OLD_FILES+=3Dusr/include/c++/v1/__random/weibull_distribution.h > -OLD_DIRS+=3Dusr/include/c++/v1/__random > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/access.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/all.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/common_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/concepts.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/copyable_box.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/counted.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/dangling.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/data.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/drop_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/empty.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/empty_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/enable_borrowed_range.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/enable_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/iota_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/join_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/non_propagating_cache.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/owning_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/range_adaptor.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/ref_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/reverse_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/single_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/size.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/subrange.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/take_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/transform_view.h > -OLD_FILES+=3Dusr/include/c++/v1/__ranges/view_interface.h > -OLD_DIRS+=3Dusr/include/c++/v1/__ranges > -OLD_FILES+=3Dusr/include/c++/v1/__split_buffer > -OLD_FILES+=3Dusr/include/c++/v1/__std_stream > -OLD_FILES+=3Dusr/include/c++/v1/__string > -OLD_FILES+=3Dusr/include/c++/v1/__thread/poll_with_backoff.h > -OLD_FILES+=3Dusr/include/c++/v1/__thread/timed_backoff_policy.h > -OLD_DIRS+=3Dusr/include/c++/v1/__thread > -OLD_FILES+=3Dusr/include/c++/v1/__threading_support > -OLD_FILES+=3Dusr/include/c++/v1/__tree > -OLD_FILES+=3Dusr/include/c++/v1/__tuple > -OLD_FILES+=3Dusr/include/c++/v1/__undef_macros > -OLD_FILES+=3Dusr/include/c++/v1/__utility/as_const.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/auto_cast.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/cmp.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/declval.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/exchange.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/forward.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/in_place.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/integer_sequence.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/move.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/pair.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/piecewise_construct.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/priority_tag.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/rel_ops.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/swap.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/to_underlying.h > -OLD_FILES+=3Dusr/include/c++/v1/__utility/transaction.h > -OLD_DIRS+=3Dusr/include/c++/v1/__utility > -OLD_FILES+=3Dusr/include/c++/v1/__variant/monostate.h > -OLD_DIRS+=3Dusr/include/c++/v1/__variant > -OLD_FILES+=3Dusr/include/c++/v1/algorithm > -OLD_FILES+=3Dusr/include/c++/v1/any > -OLD_FILES+=3Dusr/include/c++/v1/array > -OLD_FILES+=3Dusr/include/c++/v1/atomic > -OLD_FILES+=3Dusr/include/c++/v1/barrier > -OLD_FILES+=3Dusr/include/c++/v1/bit > -OLD_FILES+=3Dusr/include/c++/v1/bitset > -OLD_FILES+=3Dusr/include/c++/v1/cassert > -OLD_FILES+=3Dusr/include/c++/v1/ccomplex > -OLD_FILES+=3Dusr/include/c++/v1/cctype > -OLD_FILES+=3Dusr/include/c++/v1/cerrno > -OLD_FILES+=3Dusr/include/c++/v1/cfenv > -OLD_FILES+=3Dusr/include/c++/v1/cfloat > -OLD_FILES+=3Dusr/include/c++/v1/charconv > -OLD_FILES+=3Dusr/include/c++/v1/chrono > -OLD_FILES+=3Dusr/include/c++/v1/cinttypes > -OLD_FILES+=3Dusr/include/c++/v1/ciso646 > -OLD_FILES+=3Dusr/include/c++/v1/climits > -OLD_FILES+=3Dusr/include/c++/v1/clocale > -OLD_FILES+=3Dusr/include/c++/v1/cmath > -OLD_FILES+=3Dusr/include/c++/v1/codecvt > -OLD_FILES+=3Dusr/include/c++/v1/compare > -OLD_FILES+=3Dusr/include/c++/v1/complex > -OLD_FILES+=3Dusr/include/c++/v1/complex.h > -OLD_FILES+=3Dusr/include/c++/v1/concepts > -OLD_FILES+=3Dusr/include/c++/v1/condition_variable > -OLD_FILES+=3Dusr/include/c++/v1/coroutine > -OLD_FILES+=3Dusr/include/c++/v1/csetjmp > -OLD_FILES+=3Dusr/include/c++/v1/csignal > -OLD_FILES+=3Dusr/include/c++/v1/cstdarg > -OLD_FILES+=3Dusr/include/c++/v1/cstdbool > -OLD_FILES+=3Dusr/include/c++/v1/cstddef > -OLD_FILES+=3Dusr/include/c++/v1/cstdint > -OLD_FILES+=3Dusr/include/c++/v1/cstdio > -OLD_FILES+=3Dusr/include/c++/v1/cstdlib > -OLD_FILES+=3Dusr/include/c++/v1/cstring > -OLD_FILES+=3Dusr/include/c++/v1/ctgmath > -OLD_FILES+=3Dusr/include/c++/v1/ctime > -OLD_FILES+=3Dusr/include/c++/v1/ctype.h > -OLD_FILES+=3Dusr/include/c++/v1/cwchar > -OLD_FILES+=3Dusr/include/c++/v1/cwctype > -OLD_FILES+=3Dusr/include/c++/v1/cxxabi.h > -OLD_FILES+=3Dusr/include/c++/v1/deque > -OLD_FILES+=3Dusr/include/c++/v1/errno.h > -OLD_FILES+=3Dusr/include/c++/v1/exception > -OLD_FILES+=3Dusr/include/c++/v1/execution > -OLD_FILES+=3Dusr/include/c++/v1/experimental/__config > -OLD_FILES+=3Dusr/include/c++/v1/experimental/__memory > -OLD_FILES+=3Dusr/include/c++/v1/experimental/algorithm > -OLD_FILES+=3Dusr/include/c++/v1/experimental/coroutine > -OLD_FILES+=3Dusr/include/c++/v1/experimental/deque > -OLD_FILES+=3Dusr/include/c++/v1/experimental/filesystem > -OLD_FILES+=3Dusr/include/c++/v1/experimental/forward_list > -OLD_FILES+=3Dusr/include/c++/v1/experimental/functional > -OLD_FILES+=3Dusr/include/c++/v1/experimental/iterator > -OLD_FILES+=3Dusr/include/c++/v1/experimental/list > -OLD_FILES+=3Dusr/include/c++/v1/experimental/map > -OLD_FILES+=3Dusr/include/c++/v1/experimental/memory_resource > -OLD_FILES+=3Dusr/include/c++/v1/experimental/propagate_const > -OLD_FILES+=3Dusr/include/c++/v1/experimental/regex > -OLD_FILES+=3Dusr/include/c++/v1/experimental/set > -OLD_FILES+=3Dusr/include/c++/v1/experimental/simd > -OLD_FILES+=3Dusr/include/c++/v1/experimental/string > -OLD_FILES+=3Dusr/include/c++/v1/experimental/type_traits > -OLD_FILES+=3Dusr/include/c++/v1/experimental/unordered_map > -OLD_FILES+=3Dusr/include/c++/v1/experimental/unordered_set > -OLD_FILES+=3Dusr/include/c++/v1/experimental/utility > -OLD_FILES+=3Dusr/include/c++/v1/experimental/vector > -OLD_DIRS+=3Dusr/include/c++/v1/experimental > -OLD_FILES+=3Dusr/include/c++/v1/ext/__hash > -OLD_FILES+=3Dusr/include/c++/v1/ext/hash_map > -OLD_FILES+=3Dusr/include/c++/v1/ext/hash_set > -OLD_DIRS+=3Dusr/include/c++/v1/ext > -OLD_FILES+=3Dusr/include/c++/v1/fenv.h > -OLD_FILES+=3Dusr/include/c++/v1/filesystem > -OLD_FILES+=3Dusr/include/c++/v1/float.h > -OLD_FILES+=3Dusr/include/c++/v1/format > -OLD_FILES+=3Dusr/include/c++/v1/forward_list > -OLD_FILES+=3Dusr/include/c++/v1/fstream > -OLD_FILES+=3Dusr/include/c++/v1/functional > -OLD_FILES+=3Dusr/include/c++/v1/future > -OLD_FILES+=3Dusr/include/c++/v1/initializer_list > -OLD_FILES+=3Dusr/include/c++/v1/inttypes.h > -OLD_FILES+=3Dusr/include/c++/v1/iomanip > -OLD_FILES+=3Dusr/include/c++/v1/ios > -OLD_FILES+=3Dusr/include/c++/v1/iosfwd > -OLD_FILES+=3Dusr/include/c++/v1/iostream > -OLD_FILES+=3Dusr/include/c++/v1/istream > -OLD_FILES+=3Dusr/include/c++/v1/iterator > -OLD_FILES+=3Dusr/include/c++/v1/latch > -OLD_FILES+=3Dusr/include/c++/v1/limits > -OLD_FILES+=3Dusr/include/c++/v1/limits.h > -OLD_FILES+=3Dusr/include/c++/v1/list > -OLD_FILES+=3Dusr/include/c++/v1/locale > -OLD_FILES+=3Dusr/include/c++/v1/locale.h > -OLD_FILES+=3Dusr/include/c++/v1/map > -OLD_FILES+=3Dusr/include/c++/v1/math.h > -OLD_FILES+=3Dusr/include/c++/v1/memory > -OLD_FILES+=3Dusr/include/c++/v1/module.modulemap > -OLD_FILES+=3Dusr/include/c++/v1/mutex > -OLD_FILES+=3Dusr/include/c++/v1/new > -OLD_FILES+=3Dusr/include/c++/v1/numbers > -OLD_FILES+=3Dusr/include/c++/v1/numeric > -OLD_FILES+=3Dusr/include/c++/v1/optional > -OLD_FILES+=3Dusr/include/c++/v1/ostream > -OLD_FILES+=3Dusr/include/c++/v1/queue > -OLD_FILES+=3Dusr/include/c++/v1/random > -OLD_FILES+=3Dusr/include/c++/v1/ranges > -OLD_FILES+=3Dusr/include/c++/v1/ratio > -OLD_FILES+=3Dusr/include/c++/v1/regex > -OLD_FILES+=3Dusr/include/c++/v1/scoped_allocator > -OLD_FILES+=3Dusr/include/c++/v1/semaphore > -OLD_FILES+=3Dusr/include/c++/v1/set > -OLD_FILES+=3Dusr/include/c++/v1/setjmp.h > -OLD_FILES+=3Dusr/include/c++/v1/shared_mutex > -OLD_FILES+=3Dusr/include/c++/v1/span > -OLD_FILES+=3Dusr/include/c++/v1/sstream > -OLD_FILES+=3Dusr/include/c++/v1/stack > -OLD_FILES+=3Dusr/include/c++/v1/stdbool.h > -OLD_FILES+=3Dusr/include/c++/v1/stddef.h > -OLD_FILES+=3Dusr/include/c++/v1/stdexcept > -OLD_FILES+=3Dusr/include/c++/v1/stdint.h > -OLD_FILES+=3Dusr/include/c++/v1/stdio.h > -OLD_FILES+=3Dusr/include/c++/v1/stdlib.h > -OLD_FILES+=3Dusr/include/c++/v1/streambuf > -OLD_FILES+=3Dusr/include/c++/v1/string > -OLD_FILES+=3Dusr/include/c++/v1/string.h > -OLD_FILES+=3Dusr/include/c++/v1/string_view > -OLD_FILES+=3Dusr/include/c++/v1/strstream > -OLD_FILES+=3Dusr/include/c++/v1/system_error > -OLD_FILES+=3Dusr/include/c++/v1/tgmath.h > -OLD_FILES+=3Dusr/include/c++/v1/thread > -OLD_FILES+=3Dusr/include/c++/v1/tuple > -OLD_FILES+=3Dusr/include/c++/v1/type_traits > -OLD_FILES+=3Dusr/include/c++/v1/typeindex > -OLD_FILES+=3Dusr/include/c++/v1/typeinfo > -OLD_FILES+=3Dusr/include/c++/v1/unordered_map > -OLD_FILES+=3Dusr/include/c++/v1/unordered_set > -OLD_FILES+=3Dusr/include/c++/v1/utility > -OLD_FILES+=3Dusr/include/c++/v1/valarray > -OLD_FILES+=3Dusr/include/c++/v1/variant > -OLD_FILES+=3Dusr/include/c++/v1/vector > -OLD_FILES+=3Dusr/include/c++/v1/version > -OLD_FILES+=3Dusr/include/c++/v1/wchar.h > -OLD_FILES+=3Dusr/include/c++/v1/wctype.h > -OLD_DIRS+=3Dusr/include/c++/v1 > -.endif > - > .if ${MK_LLD} =3D=3D no > OLD_FILES+=3Dusr/bin/ld.lld > .endif > diff --git a/tools/build/options/WITHOUT_CXX = b/tools/build/options/WITHOUT_CXX > deleted file mode 100644 > index a600bb03df27..000000000000 > --- a/tools/build/options/WITHOUT_CXX > +++ /dev/null > @@ -1,4 +0,0 @@ > -.\" $FreeBSD$ > -Do not build C++ headers and runtime libraries. > -It also prevents building binaries and libraries written in C++, = including > -.Xr devd 8 . > diff --git a/usr.bin/Makefile b/usr.bin/Makefile > index 3ccc626bdfc8..a53d908d454b 100644 > --- a/usr.bin/Makefile > +++ b/usr.bin/Makefile > @@ -34,6 +34,7 @@ SUBDIR=3D alias \ > cut \ > diff \ > dirname \ > + dtc \ > du \ > elfctl \ > elfdump \ > @@ -125,6 +126,7 @@ SUBDIR=3D alias \ > rev \ > revoke \ > rpcinfo \ > + rs \ > rup \ > ruptime \ > rusers \ > @@ -210,8 +212,6 @@ SUBDIR.${MK_GAMES}+=3D number > SUBDIR.${MK_GAMES}+=3D pom > SUBDIR.${MK_GAMES}+=3D primes > SUBDIR.${MK_GAMES}+=3D random > -SUBDIR.${MK_CXX}+=3D dtc > -SUBDIR.${MK_CXX}+=3D rs > .if ${MK_GH_BC} =3D=3D "yes" > SUBDIR+=3D gh-bc > .else > @@ -248,7 +248,7 @@ SUBDIR.${MK_QUOTAS}+=3D quota > SUBDIR.${MK_SENDMAIL}+=3D vacation > SUBDIR.${MK_TALK}+=3D talk > SUBDIR.${MK_TELNET}+=3D telnet > -SUBDIR.${MK_TESTS_SUPPORT}.${MK_CXX}+=3D kyua > +SUBDIR.${MK_TESTS_SUPPORT}+=3D kyua > SUBDIR.${MK_TESTS}+=3D tests > SUBDIR.${MK_TEXTPROC}+=3D ul > SUBDIR.${MK_TFTP}+=3D tftp > @@ -281,9 +281,7 @@ SUBDIR.${MK_VT}+=3D vtfontcvt > SUBDIR.${MK_USB}+=3D usbhidaction > SUBDIR.${MK_USB}+=3D usbhidctl > SUBDIR.${MK_UTMPX}+=3D last > -.if ${MK_CXX} !=3D "no" > SUBDIR.${MK_UTMPX}+=3D users > -.endif > SUBDIR.${MK_UTMPX}+=3D who > SUBDIR.${MK_OFED}+=3D ofed >=20 From nobody Fri Jan 27 09:35:37 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 4P3C9j5zZxz3b8FZ; Fri, 27 Jan 2023 09:35:37 +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 4P3C9j5XScz3wYl; Fri, 27 Jan 2023 09:35:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812137; 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=cR8Rns42uLqRwdqlM6L8qdvhbQ5+c1MvF62uArD/V1o=; b=kCdC78UHzEWEnSAaZm1Wmc06qMfVAKWmDZ7rHJ2vW7lhfb1S+reW/sQywHPdX270cLTOCD SHLoa7FMh7noPBf4zhYl07TCl9llKsltHLCoWXFV4eRweWBgmJbImx7Ged+hICrG1FFaZ2 F+iducmuH3KZcaBCTdQfokC7+BW0mU/hPX1eTGfWaSCTIQw8jJKxTkl/teHCeq6vAIuNoB v0Paslnb+6vPiNSDCZsN+HELlEwbkgtI97OrpWzvRRPkOraeFaD8tr+Epqw/B6I0g+UkWU lahiHY7g6hKMm8XSG2UtZuEuBDMA5ToiDEJAz83HLpSkwHpC3jffHdgmKUUkig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812137; 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=cR8Rns42uLqRwdqlM6L8qdvhbQ5+c1MvF62uArD/V1o=; b=pOaHDS1e5HivR1Ceby9I/BOzgIlhmmr5QBrBN/q9Ax3FuUAcgZt2EgT7YgGXenkLoQ/19/ FfomVnehdU7xcfh7LQF6MMjMNvNlSqUKr3t2tGJSQv3pT6VudaAs82bz73/6w0A6ezUQ9d QRQIzk95C/pi8CbES6eKaJtRzj7OgjoIkroWpfKBtmZeGGA56Qt4Gb0UyFHWLD17IU/nki tNoqszmAfQx6hfrx6EZt0djhxKVjQ1CzPvIbzxZWmWC4y+43aDN2H3nKlQhWGwYAizRfJT G3EKaqqzfEkQHkuWJs1ZPsV4/7cK41lQdLF3Xpr3tfQPpivPlhvQxArqJInl8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674812137; a=rsa-sha256; cv=none; b=qWU6EPDaPDA/nRG7DT1OCAr9xv7zEjcyc7sUPVDGtZwz7+FuQTdvJN6S7AFXypEUE41Y5y AHEOB9Z2tbCYF7ECabmMxU80wTL3GuDz5B5YGAzQFWUGM9FDmFpqnYmifc5RSrr7xaNjVs n+ubGpI0+cKTdmlrXoiHiHkm+djcFJEgricsmHKqAi53bqW6ZP9IT+35oBFrZBRPdC/SJv 0ivP6FfcQU1vP1XQ5jigGzMS6KKD68lmoTJtXTJgxfuLQA8UgKyKu7deSaln9IYQtSGRCX EsCB7lpCJqDMK8GSoAB4IyvB5YAQBII4n9LFyqBsmt/uWLcCvgMOIL3Qhk3c3g== 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 4P3C9j4bycz14Rx; Fri, 27 Jan 2023 09:35:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R9ZbR8088231; Fri, 27 Jan 2023 09:35:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R9ZbXZ088230; Fri, 27 Jan 2023 09:35:37 GMT (envelope-from git) Date: Fri, 27 Jan 2023 09:35:37 GMT Message-Id: <202301270935.30R9ZbXZ088230@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: f0435696920b - main - rc.d: Put devd script in FreeBSD-devd package 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: f0435696920bd18d46a31c69105d8cbaa7d479e5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=f0435696920bd18d46a31c69105d8cbaa7d479e5 commit f0435696920bd18d46a31c69105d8cbaa7d479e5 Author: Emmanuel Vadot AuthorDate: 2022-10-28 07:31:17 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 09:35:32 +0000 rc.d: Put devd script in FreeBSD-devd package Differential Revision: https://reviews.freebsd.org/D37186 --- libexec/rc/rc.d/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index 703668ef4dd5..045b7cf2e67b 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -22,7 +22,6 @@ CONFS= DAEMON \ ctld \ ddb \ defaultroute \ - devd \ devfs \ devmatch \ dhclient \ @@ -116,6 +115,10 @@ CONFS= DAEMON \ var_run \ watchdogd +CONFGROUPS+= DEVD +DEVD= devd +DEVDPACKAGE= devd + .if ${MK_NIS} != "no" CONFS+= ypbind \ ypldap \ From nobody Fri Jan 27 09:35: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 4P3C9l6Rt6z3b8HK; Fri, 27 Jan 2023 09:35: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 4P3C9k60Nwz3wWf; Fri, 27 Jan 2023 09:35:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812138; 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=lychBwAw40PrV8h1jKHh+i7z0vIio1izYwxosxSPf8s=; b=RmDFrzPl+MliQh1uPr4LPGCRsAiY4LC3L5jltkUZ0NN9ZL5xUZSCxmvkj/BNx/KeawSvLa mdCYv6CZG91Lp2B8Prtcn03Y6O6W3J/W2AsFRc09wjyfb5LDpDknh2Qd3AAM5FREi4ZYpp pEgydU/iNicwbOUZMP59+sel2TNEV8qBjGtZmzk+E+fSwvsP6SVgcI6O4PdlBT8xW4sdvn GOafbUu6fPL4/CEh9LAYJiHg3RbFg+K+hOi9rMnYF51NuXxpLcf9XVTs6OtJTTIoyH6W/j G9kjc7TqyDFZac7E+HaRMphNsCIv/tBDY8CIAZgKDrntbgQt2PcTAuBPhyOVxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812138; 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=lychBwAw40PrV8h1jKHh+i7z0vIio1izYwxosxSPf8s=; b=A+1ldheGZYsbl4ke4vJwCvCW3+AOKfvMYud/qorVLLdzEaJ87SFR+HpLMCgBkJTM3IKOYf hp4FmPZuBseIbB7YISp9dFKcNGlccMDCBgEgwga87hE/sqU3JTEUJJ54TDiG5TYyQUtiti p1y/MHKUvbDPaCD1Ggh5y4qbr7R/KnksAg6f94yiKwYBl3A26BjqvGW5XYBH650xhER5HC lrnJ8ptzyAio1mFFr6Sk+2xT1T9Wuyst8vS7oa3+lFH8AZWycSae1OxcuTd6EraqGFBVSW 7+u29qdW4ZFbZlhZwYtjSzl1Fqh6TO9uJd2edXlmZTubfiCsGEqPw+ITFk/2vA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674812138; a=rsa-sha256; cv=none; b=SH6ut/2z20D9mjtUZbV9d0De92xfLkJDGS1eIqaqHufYVPL7fkY/1cijm99r6lvCWAX9tR /KzfY04cxYBJ2bKlpUJNjO9RT93DVyQz3Ybhfuus8zjQzjK/S+mVPP7dyzGp4Ks2AXXj4e S+YT+MkR0anJaMUcC/6OLF978X88u/TGOp0B5mw4Psz50FhbcXtwpZyDmgcUdlicyovYNa RZe0mCKzMfKp9Fg0n/SjNfi/1kHrdBbo3HNm1dt2P3C14yIdzIOzcxvgNOtzAw2M1XwsTs escTaQtad4UxXYNhLwDq3zx/0r+CL2SuA+owb2ZH65FrCeANM3t6f3Sd3xPTTQ== 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 4P3C9k55Nsz140L; Fri, 27 Jan 2023 09:35:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R9Zca5088263; Fri, 27 Jan 2023 09:35:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R9Zcw8088262; Fri, 27 Jan 2023 09:35:38 GMT (envelope-from git) Date: Fri, 27 Jan 2023 09:35:38 GMT Message-Id: <202301270935.30R9Zcw8088262@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: d8799160c2db - main - rc.d: Put devmatch script in FreeBSD-devmatch 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: d8799160c2db46ea0caa3752838808c3126e2a6c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=d8799160c2db46ea0caa3752838808c3126e2a6c commit d8799160c2db46ea0caa3752838808c3126e2a6c Author: Emmanuel Vadot AuthorDate: 2022-10-28 07:31:59 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 09:35:32 +0000 rc.d: Put devmatch script in FreeBSD-devmatch Differential Revision: https://reviews.freebsd.org/D37192 --- libexec/rc/rc.d/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index 045b7cf2e67b..b443cdc193d2 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -23,7 +23,6 @@ CONFS= DAEMON \ ddb \ defaultroute \ devfs \ - devmatch \ dhclient \ dmesg \ dumpon \ @@ -119,6 +118,10 @@ CONFGROUPS+= DEVD DEVD= devd DEVDPACKAGE= devd +CONFGROUPS+= DEVMATCH +DEVMATCH= devmatch +DEVMATCHPACKAGE= devmatch + .if ${MK_NIS} != "no" CONFS+= ypbind \ ypldap \ From nobody Fri Jan 27 09:35: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 4P3C9m0sylz3b8Br; Fri, 27 Jan 2023 09:35: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 4P3C9l6ypTz3wT4; Fri, 27 Jan 2023 09:35:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812140; 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=nRFd+us1JKvc1FSncxmQj/GRprtFXonUKgDhEWqz/HY=; b=I7wPqXD4BPO8SRGiBeEN8lAwPlG+EguJqXHmNazDOohF3J91sRTSfBUetLujLXkT27FeSL R/o3BohjmaScqbMjAX7Zk0RdS1hSEV8Bein0i/y9AFsOrNLHpRf6BzgWlRDBHO/IhZD6lw NBk5y5UuPNJ8MbO7+LFfmiJh6UEcen6iAip7eBLoLlIvZzzQYdayoMb2nlFiQTia2DYqw0 AgB4EQEuezJE3fVl2cOPyhjjRj5luP78X0YVSgkFbMOsw29O4BtV3wYlDQEt93WvhTXzpN KrRmv++6VcnG7jR1WZ+FZNIgXl07D5qGSxjqDOCOwdQey2f6E5JuY1/z4sYFkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812140; 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=nRFd+us1JKvc1FSncxmQj/GRprtFXonUKgDhEWqz/HY=; b=f28jUReT+0zRuYNV1LtKiEC0esgJ8ZeNgkbjYMYFSje3WKxUU5EcbGcvvKw5taQ54J87Dc TuQFlA9KvK40OW8qZ4BTTv1II4e9405emH8vYmGpxoRExLxlKgGMypcCKwwQ/s/C8e8erC 930fGdKYy4PzAcxgxHOcfFaWakEDacWN86HA5JZv/CNcM+x9ZuGt83Lf23iUmYzl7No5f4 mdevkMiD/HbwI72K5Jak06z6x6389+cCTeolc0AVMSjRWSRdVEkJkgPQBFiWM0t1Z2ZCjL lS+4Mq+U85tbeuzFrbSWwiGC9XYFJQ8x3CGlwFYMVs8U7t+g/zQo+dT5j9ui+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674812140; a=rsa-sha256; cv=none; b=vWeJ/IDCKy0eJWpeSkpt3tGaTvm/jNuUiNCSxw7z9CIOC5MpbdtSYRSyDa+nvYTVVD8c9j zrUkqVdzQYteoM40geM81dqtI4zUgJQaCJszkonI8hJ/kpfBRby92ytVAXXBe3TEgiAzvQ 1F34I2GITR5l4XSBZtyoQflScQCBG9v6+zTzsgsD+Y+7ODyHN+euiqCDpI6j2U2IyhGlR1 zr7xK/1jm9aU346HQq6uuACUvsKP1qcm1FgwmgeZgipJkpDBuVQ4JoXz47hYrtv5+Fi0fZ +TJ6U4Y5awI5zsdMlOa+dNai8ipdl96myk0nAq1lxNuSoy+LeNibLltwoGKbeQ== 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 4P3C9l5w0Mz14MR; Fri, 27 Jan 2023 09:35:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R9Zdb5088289; Fri, 27 Jan 2023 09:35:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R9ZdQT088288; Fri, 27 Jan 2023 09:35:39 GMT (envelope-from git) Date: Fri, 27 Jan 2023 09:35:39 GMT Message-Id: <202301270935.30R9ZdQT088288@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: 81b18bea0935 - main - rc.d: Put dhclient script in FreeBSD-dhclient 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: 81b18bea0935c33fc6aafb084ca72fd427d8364a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=81b18bea0935c33fc6aafb084ca72fd427d8364a commit 81b18bea0935c33fc6aafb084ca72fd427d8364a Author: Emmanuel Vadot AuthorDate: 2022-10-28 07:32:27 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 09:35:32 +0000 rc.d: Put dhclient script in FreeBSD-dhclient Differential Revision: https://reviews.freebsd.org/D37187 --- libexec/rc/rc.d/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index b443cdc193d2..4c1fc2e1f874 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -23,7 +23,6 @@ CONFS= DAEMON \ ddb \ defaultroute \ devfs \ - dhclient \ dmesg \ dumpon \ fsck \ @@ -122,6 +121,10 @@ CONFGROUPS+= DEVMATCH DEVMATCH= devmatch DEVMATCHPACKAGE= devmatch +CONFGROUPS+= DHCLIENT +DHCLIENT= dhclient +DHCLIENTPACKAGE= dhclient + .if ${MK_NIS} != "no" CONFS+= ypbind \ ypldap \ From nobody Fri Jan 27 09:35: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 4P3C9n0w8lz3b8By; Fri, 27 Jan 2023 09:35: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 4P3C9n0NRvz3wPZ; Fri, 27 Jan 2023 09:35:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812141; 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=WT0M9gYRQeK/YmJ7MWVeWLPZKBEfa/e6Y4f0acGZjPY=; b=eC8ICPlTqGlDj9awXOQ1ieCUG6O+nq0k48leo2I8XAwuwKH2MbpBz48EORmKMKC4QRuF4P YhfE2ne/dVoMukPLUnjFT0V1J9Ao7l97SwasVlFrYrikLgOqBJzQ+DtrFhX8FEHKsBgEYc Wq1s+cxZeGfbQ13V1cJ4dMFty0RbdGrNB1rmSboaQgHOaCQc8emfR8n6RFxPgMc9VxeKmc 8NSkYx/RkdYnjMg8plRioFLmcHFUAHO2q9VxMMZtOvugLCpBm0aO1PSK2gyIm8VKcqon0X o1E8Cpe3iI25GsQSedG7/6fPdNPKSWWL1E4V0IdAKLlIqP0OFkpFcMh2j5znJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812141; 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=WT0M9gYRQeK/YmJ7MWVeWLPZKBEfa/e6Y4f0acGZjPY=; b=ysv9dTpYfmvscpgozwnag9GZm4kgefS2HncwfJjomsLnkh8XPv2UU6XjH3n9I1t/Ms1K0h ZdOObnXc0Hnowkn0AKYBSB/ci41SIf8cgmc++oGc4+oDlgiEh78y/dAUiatbquvFTzoomU WzCoodmpM3ybH3u6iOsrSqBCQgJT1ZpDeGJeoWsTkkJ7RDQ+6JYhjR7UpIQqgsHoimH+rS WwMFv6/csdN7gMrCxeOVzYXxZAKWAJY3sCXqjkRlctDrBRp3kSjU45WZX/j4cqnY+vGAHt j94iniLWlGIkSFlGrApRzouoGOLSdEMYrCkGmbgoXB2ZEOkC6GCsmYB15tf/1A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674812141; a=rsa-sha256; cv=none; b=AHPGy7Notnejy8Onw9Ku6F5esBthJkucyefn7NXFhJab7L0fdhaz9TFYYiCrzxTabb9JwN rNlPXibydKGpKZh/YrkfdrGLbQjQUw90roW3GwHasM5prfE9irvuoGFdyClc/SbgujzqDO 5EMCSqctaW/SKlIulm19JwEsHutBM0I/msOMnR0oeB7oOb9fZ11btku0s7zPCwVUduiUr2 oSx3+I+mK9pE1nRrzywhIgpPydaNZglFXboAXrS+cHOhnAPkxIfkKEDBmWSkoE81WCBIYM 5Lgeesul7ImOHhliz2iXdxRHhHBPT2f1zP6FkGO8F7ScFvnbV5KyfUcNH1nFoQ== 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 4P3C9m6c4yz147S; Fri, 27 Jan 2023 09:35:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R9Zeci088313; Fri, 27 Jan 2023 09:35:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R9ZeWK088312; Fri, 27 Jan 2023 09:35:40 GMT (envelope-from git) Date: Fri, 27 Jan 2023 09:35:40 GMT Message-Id: <202301270935.30R9ZeWK088312@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: 91314ca2ff9c - main - rc.d: Put ggated script in FreeBSD-ggate 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: 91314ca2ff9c5efb3dcfc20ee1976c8fdc0c1de4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=91314ca2ff9c5efb3dcfc20ee1976c8fdc0c1de4 commit 91314ca2ff9c5efb3dcfc20ee1976c8fdc0c1de4 Author: Emmanuel Vadot AuthorDate: 2022-10-28 07:33:02 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 09:35:32 +0000 rc.d: Put ggated script in FreeBSD-ggate Differential Revision: https://reviews.freebsd.org/D37188 --- libexec/rc/rc.d/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index 4c1fc2e1f874..ae6e220df277 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -29,7 +29,6 @@ CONFS= DAEMON \ gbde \ geli \ geli2 \ - ggated \ gptboot \ growfs \ growfs_fstab \ @@ -125,6 +124,10 @@ CONFGROUPS+= DHCLIENT DHCLIENT= dhclient DHCLIENTPACKAGE= dhclient +CONFGROUPS+= GGATED +GGATED= ggated +GGATEDPACKAGE= ggate + .if ${MK_NIS} != "no" CONFS+= ypbind \ ypldap \ From nobody Fri Jan 27 09:35: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 4P3C9p2Cp9z3b88Y; Fri, 27 Jan 2023 09:35: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 4P3C9p1dvHz3wjC; Fri, 27 Jan 2023 09:35:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812142; 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=Q0+mA/0AUtAfInXsp6nb+P3OpvzmbYQScjQr0/JbDNg=; b=P7Wpaa0KodvSvXyiu6LFsvUhkeMgISxwYUP0RnmMBitL4fhxsVP7np+XowpNL3lsh2DX1O WftqTfSIT7Kc5xHz6nyfzAh87Lgec6svAKL2f9ISMosV4pSV11iYKLqLhgealNfGCHAMct /tPLWfLMAoTpfoFSc7UW5mykFwk1NfTkuiK5qW5wQsLfa38H5TtenJNP6Thp1EX+SNIOl8 royt6flVu+ZqFZ6Nnyvd4SSDK/8r9qiPRYyJhB8VmBXLZqt1CVBDYed8lJhJPRuNdAP4z/ EKXVo3H5Qgkhqp9DmR4k/WIBFq3nVS9teyBs5IdCbf3eWQ8zlhTpw6xl9WPpDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812142; 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=Q0+mA/0AUtAfInXsp6nb+P3OpvzmbYQScjQr0/JbDNg=; b=vyi1FXZHXKgyM7kroDV5f3IKCOjJM969j2C+qQ7ATTlPTgRH1Osnmaj4CEi1I0vmL71l/1 7++w6CGH7jIWIbBsm+7rLGeisBTDjI7hnxl2Qi1NB5+WgY6SMRfBw8Y49rd+yKbWaNdfM4 xGShomt7o1z3AaRqFJAdxpAxx4wvaiSVuQjrUMdVLNBZsDMFpnhT6U77sgmvcng0xhokke +H4m6ElAroXXMB0haykobM+fX56/QJfN0bGOwBSxaNkvzIybyFHfhPxs78k9n27HYhEStO vrYd0yGSik6Y9uiKP6hO6P5KguDTvyAI0gYIVi/WJQ9rzJk+GpK0XqnFToVDQg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674812142; a=rsa-sha256; cv=none; b=k/Y2zbEqRUtC/m4+nWzPyW4hmXEm8Ng9EYO8Udm0RdITEzoItNcv02746F5sRvN7OJFbgO ocyIfhViCi5UdzKwuGqrj35QtZFc/StdkhuBZCJAX5fE3PmcB1gy9M4SVK2NVuUObQqP8w MlxIVmK+4eLYPK/mgHC2vthQHIhjdHSAknY/pIUdyWNNHC8i0p2HdJlB78ei/iGmMUc+pA xCVWCMNfoKQ5gMBUSChniDoGEc2jyEm8qBT7yuoNpR8qGE5MW4aBOv9rPkE9e/66YcaorB ogj2cJO7YDrKBzFiVkhQWzA28mrbA7sSlZ0ckTVrKPSFtfUZvg5iXSxCIe2fjw== 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 4P3C9p0jQ8z147T; Fri, 27 Jan 2023 09:35:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R9ZgmI088339; Fri, 27 Jan 2023 09:35:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R9Zgg9088338; Fri, 27 Jan 2023 09:35:42 GMT (envelope-from git) Date: Fri, 27 Jan 2023 09:35:42 GMT Message-Id: <202301270935.30R9Zgg9088338@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: 36a7fa1e16a0 - main - rc.d: Put growfs script in FreeBSD-ufs 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: 36a7fa1e16a0b4446f2cb618fc84a6bc1a2cbf86 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=36a7fa1e16a0b4446f2cb618fc84a6bc1a2cbf86 commit 36a7fa1e16a0b4446f2cb618fc84a6bc1a2cbf86 Author: Emmanuel Vadot AuthorDate: 2022-10-28 07:33:20 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 09:35:32 +0000 rc.d: Put growfs script in FreeBSD-ufs Differential Revision: https://reviews.freebsd.org/D37189 --- libexec/rc/rc.d/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index ae6e220df277..ffb1e48095de 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -30,8 +30,6 @@ CONFS= DAEMON \ geli \ geli2 \ gptboot \ - growfs \ - growfs_fstab \ hostid \ hostid_save \ hostname \ @@ -128,6 +126,10 @@ CONFGROUPS+= GGATED GGATED= ggated GGATEDPACKAGE= ggate +CONFGROUPS+= GROWFS +GROWFS= growfs growfs_fstab +GROWFSPACKAGE= ufs + .if ${MK_NIS} != "no" CONFS+= ypbind \ ypldap \ From nobody Fri Jan 27 09:35: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 4P3C9q4kvYz3b88c; Fri, 27 Jan 2023 09:35: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 4P3C9q2Y8Lz3wpj; Fri, 27 Jan 2023 09:35:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812143; 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=A/+i5AytpsFUODSbtWdYvL9e/5zi7YmVGDj75cEsuWY=; b=EhIsjwu1QjkPUI6sWAcZr+o96jwFpJQIDx5lPHG8PZ3jYni+r1IJjKD3L+xvupOweEpJ8g 1ycVeh5XnlWvxxiiFzNn+mTL65dRottyJdmiqOZfyJ358SyJM0GWL+OzyXi/yPzmGPEKm6 pAw/xNkAFnmdfvPrVF9JKPPfwOEgIy8AcH1ul/pv+aKpwlCWcOwTdRw4FEfeXQcFU4zSEC cuQJ67V7e20G30ZALvWVvsbM4REJEOGpKyg7pFl1ki2vyHQr+sxnyyywoFUL+VNKsHAAyv NqQcF8tWo4lCXJ3EdKtdCPT9+kMk+b/8U5F/bItY4KYdWoVzqIKttxO8LXEFJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674812143; 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=A/+i5AytpsFUODSbtWdYvL9e/5zi7YmVGDj75cEsuWY=; b=IG6pUuZ9ozowXfxUWx8NPebogk1rudLVXWon/7SpKMMPXSI5lQ+Ewivh7L4C+fkR6PxRzS vNiPjsYKJIthhd6C5GHl2K5EK4WmwmFLRdY87MVAuX+taoL2drx7YK5FcW4wjzJme0uTCP kydcXD+bNDS9rPRRafvKLOzF5nRTFkLVOmFRaIE8ZrgWMwUSt0/2c5TFYwrSpwjlIgdQ5v iewFpz74UMRh41nADcHaJ9CbMtaiE8Xs49PxWPVyD0tnIgTdPrn6G09dTTz5KdG3Azjm0U oyytJKCbXfa46u+z6c9oc8I8KZ4uANlxhFBgKq3iUNRAVF9rDQDM6zbeWNJl5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674812143; a=rsa-sha256; cv=none; b=A8ubC8R7ewiLLNshd7n3/npe9oxy8mlBQQmszqz7r6bi4mwGow4kagjZ7xbBYzzs4CeDtr yV3nG00hNcSBtL29LpQGeda7uIsqvEw/OLwI7pKT2NshEbER2l5CEmM8bqkJ4KDa0QtluP VtC9DVjd4gHkbfwadOYMo4Sqs70KV9EkXxBFIfuc7m3qlj+6/V2EUadwe2/uhwo6EmMOQF xYn/vH38KYirvhuuulOzMNNQSUy3pMMAnp695hdBwNc3bNyrehqygNXgQhaxzp971Fun6j VhzGD0q8vFhsQ7lMrFejWrrIHqjiHOaNpxqTMFSzpLJOrKGNfCh1+KUnFW9dog== 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 4P3C9q1f3cz14Ry; Fri, 27 Jan 2023 09:35:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30R9ZhoO088369; Fri, 27 Jan 2023 09:35:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30R9Zhio088368; Fri, 27 Jan 2023 09:35:43 GMT (envelope-from git) Date: Fri, 27 Jan 2023 09:35:43 GMT Message-Id: <202301270935.30R9Zhio088368@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: a6a21bbedc74 - main - rc.d: Put resolv script in FreeBSD-resolvconf 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: a6a21bbedc744bae9ce7b20948b53a6d4033adcf Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=a6a21bbedc744bae9ce7b20948b53a6d4033adcf commit a6a21bbedc744bae9ce7b20948b53a6d4033adcf Author: Emmanuel Vadot AuthorDate: 2022-10-28 07:33:38 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 09:35:32 +0000 rc.d: Put resolv script in FreeBSD-resolvconf Differential Revision: https://reviews.freebsd.org/D37190 --- libexec/rc/rc.d/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index ffb1e48095de..ff966eb17349 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -82,7 +82,6 @@ CONFS= DAEMON \ random \ rarpd \ rctl \ - resolv \ root \ route6d \ routing \ @@ -130,6 +129,10 @@ CONFGROUPS+= GROWFS GROWFS= growfs growfs_fstab GROWFSPACKAGE= ufs +CONFGROUPS+= RESOLVCONF +RESOLVCONF= resolv +RESOLVCONFPACKAGE= resolvconf + .if ${MK_NIS} != "no" CONFS+= ypbind \ ypldap \ From nobody Fri Jan 27 10:31: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 4P3DPq0RWzz3bHXP; Fri, 27 Jan 2023 10:31: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 4P3DPq00vvz44vK; Fri, 27 Jan 2023 10:31:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674815471; 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=cxqxHrsaA3qNYYdqIJjrFmaC3kXURj9ua2UZiHxRGKI=; b=WZZkCS27anuhm4Rl8w/h9AyyED57kg2l6v+xSm1eIXnsOTIxU5nm40PAyiMalz/ytvBHLq s1creEUKZRnrsKq52wkGXalR2eI5yAXwgaha6m0BJ7kbA0l8mPzFSeEqoq0eZEbG836IV6 Ptj3viRgECIa8DZIUqvZWo+1wkwyXZUbWxBeC0ZuoY1nRGRPcN/25p+8raS2EUAIu0StN5 Gnop0GMlVLNOmyTWzPjT1DTiphcqvrMCfm61/Tu8KeVtxwSWgFbr/NL9Ab7z8DzTExX2tb hBPofQqHjVzBYZ8zkhn3sw3aBjjS6f18IStH5tkuT2uS23Lyv4RyUAS9lPRDvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674815471; 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=cxqxHrsaA3qNYYdqIJjrFmaC3kXURj9ua2UZiHxRGKI=; b=w68ReiTVzx6wmHRvhEsx/vjoqvirvGol8atv7exTsnEqZ0D8v4a3fZAaQjOl+eP9kPpcvT bigAqM5Z2/7WFmbP/4fPXo0wanS4eM4dcw6Ezp8CYz1CWHzUeg/W+oDuR0rCvtyJxCR5OP ld4QOKf2sUT7SS/DykODCQygWNBJ7KKAaZ7GO2fnihhoViVqLRhRY9vpyK/IAoL7Yg7VuZ yX+l273P6r8cQZMjkBnXu+Gqb6VvQHOlqNEzrBxa4db+L4t062Dw+F6e2zwwpp1gaVjnLc O3l7udSNhf/mvztv0SZbnlrRNkerPxqqqtY8QdJQSPNGiHMgOdYl9dZIhIXIDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674815471; a=rsa-sha256; cv=none; b=DHLc68SysdtZMyniN9nf04K1lNOpFaIFxjIG/2KpTKBtYDnxeDo/m1wEWtS7eHJa+nHP08 d66gI0iUJCdegQD8ikb/lC696nzLpTYFjAn7FFi22tgqPUJM1WIuwT6KJYoEpe5JJ/pgBn q6m3Z6Tv3LSCT/G5zC4LRwHYcts5iRzjf+U98+6BJsJpYHNfPMZ8l+ov4YAxZ3hvkQRsqy v//w2zVWkkU8KYzAklqynnVerIu8nUTKuXk8D/WmemPh4uXxkkGufAmKuzIPdPPrCb+VVK 50VmuEU/hb5cInXGoDcHFgfTrEfid/GfnkOMFdSbpYbX8tg6bYcu5ymjJrw1uw== 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 4P3DPp6Bywz15CQ; Fri, 27 Jan 2023 10:31:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RAVAow071922; Fri, 27 Jan 2023 10:31:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RAVAt3071921; Fri, 27 Jan 2023 10:31:10 GMT (envelope-from git) Date: Fri, 27 Jan 2023 10:31:10 GMT Message-Id: <202301271031.30RAVAt3071921@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: cc9b2b58e2c5 - main - Revert "rc.d: Put growfs script in FreeBSD-ufs" 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: cc9b2b58e2c5fa3a1a21e741155daf1609e53773 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=cc9b2b58e2c5fa3a1a21e741155daf1609e53773 commit cc9b2b58e2c5fa3a1a21e741155daf1609e53773 Author: Emmanuel Vadot AuthorDate: 2023-01-27 10:30:24 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 10:30:24 +0000 Revert "rc.d: Put growfs script in FreeBSD-ufs" The growfs script also support zfs. This reverts commit 36a7fa1e16a0b4446f2cb618fc84a6bc1a2cbf86. Reported by: emaste, Mina Galić --- libexec/rc/rc.d/Makefile | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index ff966eb17349..56ee41a8316d 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -30,6 +30,8 @@ CONFS= DAEMON \ geli \ geli2 \ gptboot \ + growfs \ + growfs_fstab \ hostid \ hostid_save \ hostname \ @@ -125,10 +127,6 @@ CONFGROUPS+= GGATED GGATED= ggated GGATEDPACKAGE= ggate -CONFGROUPS+= GROWFS -GROWFS= growfs growfs_fstab -GROWFSPACKAGE= ufs - CONFGROUPS+= RESOLVCONF RESOLVCONF= resolv RESOLVCONFPACKAGE= resolvconf From nobody Fri Jan 27 13:49: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 4P3Jpv5SBHz3c0bt; Fri, 27 Jan 2023 13:49:43 +0000 (UTC) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from mx1.sbone.de (mx1.sbone.de [IPv6:2a01:4f8:13b:39f::9f:25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE Root Certificate Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4P3Jpt3Djjz4P7F; Fri, 27 Jan 2023 13:49:42 +0000 (UTC) (envelope-from bzeeb-lists@lists.zabbadoz.net) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of bzeeb-lists@lists.zabbadoz.net designates 2a01:4f8:13b:39f::9f:25 as permitted sender) smtp.mailfrom=bzeeb-lists@lists.zabbadoz.net; dmarc=none Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id C20998D4A142; Fri, 27 Jan 2023 13:49:32 +0000 (UTC) Received: from content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id ED4F65C3A833; Fri, 27 Jan 2023 13:49:30 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) by content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (amavisd-new, port 10024) with ESMTP id jHmEtBAK3qxI; Fri, 27 Jan 2023 13:49:29 +0000 (UTC) Received: from strong-iwl0.sbone.de (strong-iwl0.sbone.de [IPv6:fde9:577b:c1a9:4902:b66b:fcff:fef3:e3d2]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id B525A5C3A830; Fri, 27 Jan 2023 13:49:28 +0000 (UTC) Date: Fri, 27 Jan 2023 13:49:27 +0000 (UTC) From: "Bjoern A. Zeeb" To: Kirk McKusick cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 906c312bbf74 - main - Document the mntopts(3) functions. In-Reply-To: <202301151821.30FILnsY011391@gitrepo.freebsd.org> Message-ID: <9126pq56-345-1r1n-4o93-89nq26p6p07n@mnoonqbm.arg> References: <202301151821.30FILnsY011391@gitrepo.freebsd.org> X-OpenPGP-Key-Id: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 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; format=flowed X-Spamd-Result: default: False [-3.11 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.81)[-0.810]; R_SPF_ALLOW(-0.20)[+ip6:2a01:4f8:13b:39f::9f:25:c]; MIME_GOOD(-0.10)[text/plain]; TO_DN_SOME(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@FreeBSD.org,dev-commits-src-main@FreeBSD.org]; R_DKIM_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; DMARC_NA(0.00)[zabbadoz.net]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:24940, ipnet:2a01:4f8::/32, country:DE]; RCVD_COUNT_FIVE(0.00)[5]; RCPT_COUNT_THREE(0.00)[4]; FROM_HAS_DN(0.00)[]; RCVD_TLS_LAST(0.00)[] X-Rspamd-Queue-Id: 4P3Jpt3Djjz4P7F X-Spamd-Bar: --- X-ThisMailContainsUnwantedMimeParts: N On Sun, 15 Jan 2023, Kirk McKusick wrote: Hi Kirk, > The branch main has been updated by mckusick: > > URL: https://cgit.FreeBSD.org/src/commit/?id=906c312bbf7493ccbcce883936d67e5c66a9c3c2 > > commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2 > Author: Kirk McKusick > AuthorDate: 2023-01-15 18:20:48 +0000 > Commit: Kirk McKusick > CommitDate: 2023-01-15 18:21:31 +0000 > > Document the mntopts(3) functions. > > The mntopts(3) functions support operations associated with a mount > point. The main purpose of this commit is to document the mntopts(3) > functions that now appear in 18 utilities in the base system. See > mntopts(3) for the documentation details. > > The getmntopts() function appeared in 4.4BSD. The build_iovec(), > build_iovec_argf(), free_iovec(), checkpath(), and rmslashes() > functions were added with nmount(8) in FreeBSD 5.0. The getmntpoint() > and chkdoreload() functions are being added in this commit. > > These functions should be in a library but for historic reasons are > in a file in the sources for the mount(8) program. Thus, to access > them the following lines need to be added to the Makefile of the > program wanting to use them: > > SRCS+= getmntopts.c > MOUNT= ${SRCTOP}/sbin/mount > CFLAGS+= -I${MOUNT} > .PATH: ${MOUNT} > > Once these changes have been MFC'ed to 13 they may be made into > a library. > > Reviewed by: kib, gbe > MFC after: 2 weeks > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D37907 Could this change be the cause for (I'll try to back it out and the follow-up to see but it'll be a few hours...) https://lists.freebsd.org/archives/freebsd-fs/2023-January/001789.html > --- > sbin/fsck/Makefile | 4 + > sbin/fsck/fsck.c | 5 +- > sbin/fsck/fsutil.c | 44 ------ > sbin/fsck/fsutil.h | 1 - > sbin/fsck_ffs/main.c | 96 +----------- > sbin/growfs/growfs.c | 110 ++------------ > sbin/mount/Makefile | 11 +- > sbin/mount/getmntopts.3 | 181 ----------------------- > sbin/mount/getmntopts.c | 95 +++++++++++- > sbin/mount/mntopts.3 | 381 ++++++++++++++++++++++++++++++++++++++++++++++++ > sbin/mount/mntopts.h | 2 + > sbin/mount/mount.c | 18 +-- > sbin/tunefs/tunefs.c | 33 +---- > 13 files changed, 513 insertions(+), 468 deletions(-) -- Bjoern A. Zeeb r15:7 From nobody Fri Jan 27 14:26: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 4P3Kdr09w5z3c5CL; Fri, 27 Jan 2023 14:26:56 +0000 (UTC) (envelope-from bz@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 4P3Kdq6gXzz3GFC; Fri, 27 Jan 2023 14:26:55 +0000 (UTC) (envelope-from bz@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674829615; 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=ts8z7/Sw7BkBeyX7/F77j2BywBFP4vyOW3LaB2M6d/8=; b=k56wx0dB2VOt9+8tRdU3E6F+LP6CiOx6NtlDEAKKEhRwBsuqvHnpB0/8oVxJTz1rS3VBRp bh1BNyLcF7+Z9H+XGXQHGb+cHZUAA2ec5N066/3Wij9tALS8q7lGYiRt5FNVz/BK3+WEWj hP4pFkL9Uy3kf5WZMEvactmMHb0t8e3AOtD8YKbZWH7bRlNMPzjeLbTAZuqMNO3gEczmwq H2MRrJ0f6gaK3hHiSlzBykPDNeZbBD+O8ShNIj9gwSJgji/Ptjbrai3GBaDtDADwo6Waxa wnjBaI2wHXdC7FXqK3zHNTbAlXpt4n3DqoogpVHtLGzFDp8C90UOcKydqi2L/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674829615; 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=ts8z7/Sw7BkBeyX7/F77j2BywBFP4vyOW3LaB2M6d/8=; b=wORWaGNUBLtYe9HCYdoFSMYeFB+k9BT3q8vd+iFn0zj2v4yzRzyCluI1lN+Av1Kb8wrHOy osY+iDhlgl7T8sqn4wbqbVWzAAHDCaNqcTZp/GbDTR+fBxLbxs7Ub2UE/sNFmKLsmLUbHA oFQcEexlKvDLwoKRlVA4bmSB0v7cRAyg/mu9Fg9R23PMWh4567OvFdZB6xWbY+UMFP5tLd JUQ6pQkyQLRPPFpXZ28z2R0e6JB6/O03KpdOdATX1TL9dmYjcoUMC+9Hm6WsVSqXX0hs8F DyoEv26azR9jnSEvzEwSVRSGQwwTuxFBenUO/7Yqjaxcqjh+flG/v5Qv7/oK2g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674829615; a=rsa-sha256; cv=none; b=YZGUg5HbKY8c8ymIBhY2htow2IH0tVBADQ/uAMncJMMiLlTPjtr+MD6s7uTUgK3ouYD+iR pHDDQpoQCBNQ6DMpRLKbfy6zFhLKrVxvZpn2iIdbkFRb9BeyfhpFZIvaRZjBzcpU+6WV2L SuYMtCmQiGdv0KIbt3BUL6k1EnvjQ0V3a9IJzzgxnirvdDeqXUa6KpqENuJXHRmCZXO1Ln JClkYEvxnnJCPWb7nHekMbLpbfM9w2guuW5UGddqaeAvFDgEliyWfqmefKUl6E/zcG06uL SRzV6eo+8eSv+n1kEp1dPkOkSiHrt7PaWjDESaXeTXUgikBsnlelReHaLYj6rg== Received: from mx1.sbone.de (cross.sbone.de [195.201.62.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE Root Certificate Authority" (not verified)) (Authenticated sender: bz/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4P3Kdq4Gjcz15b8; Fri, 27 Jan 2023 14:26:55 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id 5E0768D4A142; Fri, 27 Jan 2023 14:26:54 +0000 (UTC) Received: from content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id D27FF5C3A833; Fri, 27 Jan 2023 14:26:53 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) by content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (amavisd-new, port 10024) with ESMTP id PO0ibnooI9Aw; Fri, 27 Jan 2023 14:26:52 +0000 (UTC) Received: from strong-iwl0.sbone.de (strong-iwl0.sbone.de [IPv6:fde9:577b:c1a9:4902:b66b:fcff:fef3:e3d2]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id 014065C3A830; Fri, 27 Jan 2023 14:26:51 +0000 (UTC) Date: Fri, 27 Jan 2023 14:26:51 +0000 (UTC) From: "Bjoern A. Zeeb" To: Kirk McKusick cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 906c312bbf74 - main - Document the mntopts(3) functions. In-Reply-To: <9126pq56-345-1r1n-4o93-89nq26p6p07n@mnoonqbm.arg> Message-ID: <44q75o23-n3r-551-7r58-9sp3rq4qr393@mnoonqbm.arg> References: <202301151821.30FILnsY011391@gitrepo.freebsd.org> <9126pq56-345-1r1n-4o93-89nq26p6p07n@mnoonqbm.arg> X-OpenPGP-Key-Id: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 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; format=flowed X-ThisMailContainsUnwantedMimeParts: N On Fri, 27 Jan 2023, Bjoern A. Zeeb wrote: > On Sun, 15 Jan 2023, Kirk McKusick wrote: > > Hi Kirk, > >> The branch main has been updated by mckusick: >> >> URL: >> https://cgit.FreeBSD.org/src/commit/?id=906c312bbf7493ccbcce883936d67e5c66a9c3c2 >> >> commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2 >> Author: Kirk McKusick >> AuthorDate: 2023-01-15 18:20:48 +0000 >> Commit: Kirk McKusick >> CommitDate: 2023-01-15 18:21:31 +0000 >> >> Document the mntopts(3) functions. >> >> The mntopts(3) functions support operations associated with a mount >> point. The main purpose of this commit is to document the mntopts(3) >> functions that now appear in 18 utilities in the base system. See >> mntopts(3) for the documentation details. >> >> The getmntopts() function appeared in 4.4BSD. The build_iovec(), >> build_iovec_argf(), free_iovec(), checkpath(), and rmslashes() >> functions were added with nmount(8) in FreeBSD 5.0. The getmntpoint() >> and chkdoreload() functions are being added in this commit. >> >> These functions should be in a library but for historic reasons are >> in a file in the sources for the mount(8) program. Thus, to access >> them the following lines need to be added to the Makefile of the >> program wanting to use them: >> >> SRCS+= getmntopts.c >> MOUNT= ${SRCTOP}/sbin/mount >> CFLAGS+= -I${MOUNT} >> .PATH: ${MOUNT} >> >> Once these changes have been MFC'ed to 13 they may be made into >> a library. >> >> Reviewed by: kib, gbe >> MFC after: 2 weeks >> Sponsored by: The FreeBSD Foundation >> Differential Revision: https://reviews.freebsd.org/D37907 > > > Could this change be the cause for (I'll try to back it out and the > follow-up to see but it'll be a few hours...) This reverts commit 0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14. This reverts commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2. And NFS ROOT works again. Please don't MFC until this is fixed. PS: I am also always surprised how little netboot setup breakage shows up these days (or how long it takes to be reported). We probably need better test cases for this... > https://lists.freebsd.org/archives/freebsd-fs/2023-January/001789.html > > >> --- >> sbin/fsck/Makefile | 4 + >> sbin/fsck/fsck.c | 5 +- >> sbin/fsck/fsutil.c | 44 ------ >> sbin/fsck/fsutil.h | 1 - >> sbin/fsck_ffs/main.c | 96 +----------- >> sbin/growfs/growfs.c | 110 ++------------ >> sbin/mount/Makefile | 11 +- >> sbin/mount/getmntopts.3 | 181 ----------------------- >> sbin/mount/getmntopts.c | 95 +++++++++++- >> sbin/mount/mntopts.3 | 381 >> ++++++++++++++++++++++++++++++++++++++++++++++++ >> sbin/mount/mntopts.h | 2 + >> sbin/mount/mount.c | 18 +-- >> sbin/tunefs/tunefs.c | 33 +---- >> 13 files changed, 513 insertions(+), 468 deletions(-) > > -- Bjoern A. Zeeb r15:7 From nobody Fri Jan 27 14:34: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 4P3Kpl2dY8z3c62l; Fri, 27 Jan 2023 14:34:39 +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 4P3Kpk5SBcz3GtD; Fri, 27 Jan 2023 14:34:38 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.16.1/8.16.1) with ESMTPS id 30REYUmr000032 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Fri, 27 Jan 2023 16:34:33 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 30REYUmr000032 Received: (from kostik@localhost) by tom.home (8.16.1/8.16.1/Submit) id 30REYUC8000031; Fri, 27 Jan 2023 16:34:30 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 27 Jan 2023 16:34:30 +0200 From: Konstantin Belousov To: "Bjoern A. Zeeb" Cc: Kirk McKusick , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 906c312bbf74 - main - Document the mntopts(3) functions. Message-ID: References: <202301151821.30FILnsY011391@gitrepo.freebsd.org> <9126pq56-345-1r1n-4o93-89nq26p6p07n@mnoonqbm.arg> <44q75o23-n3r-551-7r58-9sp3rq4qr393@mnoonqbm.arg> 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: <44q75o23-n3r-551-7r58-9sp3rq4qr393@mnoonqbm.arg> 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-Rspamd-Queue-Id: 4P3Kpk5SBcz3GtD X-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Fri, Jan 27, 2023 at 02:26:51PM +0000, Bjoern A. Zeeb wrote: > On Fri, 27 Jan 2023, Bjoern A. Zeeb wrote: > > > On Sun, 15 Jan 2023, Kirk McKusick wrote: > > > > Hi Kirk, > > > > > The branch main has been updated by mckusick: > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=906c312bbf7493ccbcce883936d67e5c66a9c3c2 > > > > > > commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2 > > > Author: Kirk McKusick > > > AuthorDate: 2023-01-15 18:20:48 +0000 > > > Commit: Kirk McKusick > > > CommitDate: 2023-01-15 18:21:31 +0000 > > > > > > Document the mntopts(3) functions. > > > > > > The mntopts(3) functions support operations associated with a mount > > > point. The main purpose of this commit is to document the mntopts(3) > > > functions that now appear in 18 utilities in the base system. See > > > mntopts(3) for the documentation details. > > > > > > The getmntopts() function appeared in 4.4BSD. The build_iovec(), > > > build_iovec_argf(), free_iovec(), checkpath(), and rmslashes() > > > functions were added with nmount(8) in FreeBSD 5.0. The getmntpoint() > > > and chkdoreload() functions are being added in this commit. > > > > > > These functions should be in a library but for historic reasons are > > > in a file in the sources for the mount(8) program. Thus, to access > > > them the following lines need to be added to the Makefile of the > > > program wanting to use them: > > > > > > SRCS+= getmntopts.c > > > MOUNT= ${SRCTOP}/sbin/mount > > > CFLAGS+= -I${MOUNT} > > > .PATH: ${MOUNT} > > > > > > Once these changes have been MFC'ed to 13 they may be made into > > > a library. > > > > > > Reviewed by: kib, gbe > > > MFC after: 2 weeks > > > Sponsored by: The FreeBSD Foundation > > > Differential Revision: https://reviews.freebsd.org/D37907 > > > > > > Could this change be the cause for (I'll try to back it out and the > > follow-up to see but it'll be a few hours...) > > This reverts commit 0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14. > This reverts commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2. > > And NFS ROOT works again. > > Please don't MFC until this is fixed. This is really strange, since the changes are purely user-space. You cannot get to that before root is mounted. > > PS: I am also always surprised how little netboot setup breakage shows > up these days (or how long it takes to be reported). We probably need > better test cases for this... > > > > https://lists.freebsd.org/archives/freebsd-fs/2023-January/001789.html > > > > > > > --- > > > sbin/fsck/Makefile | 4 + > > > sbin/fsck/fsck.c | 5 +- > > > sbin/fsck/fsutil.c | 44 ------ > > > sbin/fsck/fsutil.h | 1 - > > > sbin/fsck_ffs/main.c | 96 +----------- > > > sbin/growfs/growfs.c | 110 ++------------ > > > sbin/mount/Makefile | 11 +- > > > sbin/mount/getmntopts.3 | 181 ----------------------- > > > sbin/mount/getmntopts.c | 95 +++++++++++- > > > sbin/mount/mntopts.3 | 381 > > > ++++++++++++++++++++++++++++++++++++++++++++++++ > > > sbin/mount/mntopts.h | 2 + > > > sbin/mount/mount.c | 18 +-- > > > sbin/tunefs/tunefs.c | 33 +---- > > > 13 files changed, 513 insertions(+), 468 deletions(-) > > > > > > -- > Bjoern A. Zeeb r15:7 From nobody Fri Jan 27 14:38: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 4P3KvY3f4Bz3c6MZ; Fri, 27 Jan 2023 14:38:49 +0000 (UTC) (envelope-from bz@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 4P3KvY30rkz3HhD; Fri, 27 Jan 2023 14:38:49 +0000 (UTC) (envelope-from bz@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674830329; 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=gzF+Kz4KYs+1ZLqjGfVYj0ZZKGNAzNe6Pl9ocNyEhlU=; b=tu86qYFROs2seWO6tHrGA+UOY5d1QzbfvyvXCAcGTzfmVirUPOOQCBHq3qcWnM2mpuFzCk nst85F6tcwvT/RLFriVO2VuOFkDUQxQ/lOD9DqITQtk81uzbDzY/jUSPRyQE8bzSviKlQp kp6UvRpdvsNaqghper+eoTNd7/FsqTKhDcgoSdNnWSQUWfVUI1FX16yVlt925XrcvUcgCv juCliI3c1n+OQKw+0ObqBhVkFV/3GAC8LmYyUQ12fybXdC72k1oncenR81lD1h89uXwXhQ /HXTx7BDeG/xF08cjbwHfQqMgwoeCjLth03QQCuCVAUJCD9xg9mTNaRGHf8UEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674830329; 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=gzF+Kz4KYs+1ZLqjGfVYj0ZZKGNAzNe6Pl9ocNyEhlU=; b=vdV2GUo862eMIVv6vCKBfl2ClCdeYSMbrZTLc0kmpmcxtM0mJymFoSPU51MqEFNHr317KH Mhpht7V43DGPm33/ZIc0HD+sb8PkfWSpE04GR47EwHlMAV9kcGFsrSeLccskhHswDu6EdM jTBsyzAfzS5FiWD9WsLm8lsJF3mr8Juky8/hGDZQyfL3VqjlumZKkEvhnqiIGH63K3RDvt BKlcmKvddU7o2p0k4cn/iUNA2znCYcx2hkYVHK2LesA1vUNLMZbjBXYN1qed4ol5CmHNio xm4O1lLTvCd8V1Aru/3hNc40r/jjucDzavhuFuhEy6EwWyKSAuKmh4vzZvUwwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674830329; a=rsa-sha256; cv=none; b=HbTaFG+aeLtk1RoqzY4Lj9NBL+cBkvPuZOvVMWbVySc51aTCTOxYjyIjVrn2v93f4FmQiX G7YrdsSLtfXKNU4j4t4+xrCW/QxExo/z2gziTmXUs6qx2jKUGqPxmAwLEnhY+iRyhNidC8 +C6IAuHQXwZcxpjc2w8m1WumZFUWTbqlDbbG+tJBSN05k2OyryIFeVXANyCMGWEzKn4ozR +pIEZY4AJgFrqTHClIfnYS05nCc/xPJFCKeroOAosJsVh3WaYcXbXiLM+lL7B+NwUZt6ML cVG3eKkdg5TFHJcZQzAa0txWOMdS78lDQQoOFNcZoDWeS9sNge7/SChD/HHcMA== Received: from mx1.sbone.de (cross.sbone.de [195.201.62.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE Root Certificate Authority" (not verified)) (Authenticated sender: bz/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4P3KvY1KNYz1560; Fri, 27 Jan 2023 14:38:48 +0000 (UTC) (envelope-from bz@freebsd.org) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id 922218D4A142; Fri, 27 Jan 2023 14:38:47 +0000 (UTC) Received: from content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id 62DCE5C3A833; Fri, 27 Jan 2023 14:38:46 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) by content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (amavisd-new, port 10024) with ESMTP id cgrUlgZr91UQ; Fri, 27 Jan 2023 14:38:44 +0000 (UTC) Received: from strong-iwl0.sbone.de (strong-iwl0.sbone.de [IPv6:fde9:577b:c1a9:4902:b66b:fcff:fef3:e3d2]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id 489685C3A830; Fri, 27 Jan 2023 14:38:44 +0000 (UTC) Date: Fri, 27 Jan 2023 14:38:43 +0000 (UTC) From: "Bjoern A. Zeeb" To: Konstantin Belousov cc: Kirk McKusick , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 906c312bbf74 - main - Document the mntopts(3) functions. In-Reply-To: Message-ID: <12422132-p4oq-40r-62q-9qqr354ssq6o@serrofq.bet> References: <202301151821.30FILnsY011391@gitrepo.freebsd.org> <9126pq56-345-1r1n-4o93-89nq26p6p07n@mnoonqbm.arg> <44q75o23-n3r-551-7r58-9sp3rq4qr393@mnoonqbm.arg> X-OpenPGP-Key-Id: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 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; format=flowed X-ThisMailContainsUnwantedMimeParts: N On Fri, 27 Jan 2023, Konstantin Belousov wrote: > On Fri, Jan 27, 2023 at 02:26:51PM +0000, Bjoern A. Zeeb wrote: >> On Fri, 27 Jan 2023, Bjoern A. Zeeb wrote: >> >>> On Sun, 15 Jan 2023, Kirk McKusick wrote: >>> >>> Hi Kirk, >>> >>>> The branch main has been updated by mckusick: >>>> >>>> URL: https://cgit.FreeBSD.org/src/commit/?id=906c312bbf7493ccbcce883936d67e5c66a9c3c2 >>>> >>>> commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2 >>>> Author: Kirk McKusick >>>> AuthorDate: 2023-01-15 18:20:48 +0000 >>>> Commit: Kirk McKusick >>>> CommitDate: 2023-01-15 18:21:31 +0000 >>>> >>>> Document the mntopts(3) functions. >>>> >>>> The mntopts(3) functions support operations associated with a mount >>>> point. The main purpose of this commit is to document the mntopts(3) >>>> functions that now appear in 18 utilities in the base system. See >>>> mntopts(3) for the documentation details. >>>> >>>> The getmntopts() function appeared in 4.4BSD. The build_iovec(), >>>> build_iovec_argf(), free_iovec(), checkpath(), and rmslashes() >>>> functions were added with nmount(8) in FreeBSD 5.0. The getmntpoint() >>>> and chkdoreload() functions are being added in this commit. >>>> >>>> These functions should be in a library but for historic reasons are >>>> in a file in the sources for the mount(8) program. Thus, to access >>>> them the following lines need to be added to the Makefile of the >>>> program wanting to use them: >>>> >>>> SRCS+= getmntopts.c >>>> MOUNT= ${SRCTOP}/sbin/mount >>>> CFLAGS+= -I${MOUNT} >>>> .PATH: ${MOUNT} >>>> >>>> Once these changes have been MFC'ed to 13 they may be made into >>>> a library. >>>> >>>> Reviewed by: kib, gbe >>>> MFC after: 2 weeks >>>> Sponsored by: The FreeBSD Foundation >>>> Differential Revision: https://reviews.freebsd.org/D37907 >>> >>> >>> Could this change be the cause for (I'll try to back it out and the >>> follow-up to see but it'll be a few hours...) >> >> This reverts commit 0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14. >> This reverts commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2. >> >> And NFS ROOT works again. >> >> Please don't MFC until this is fixed. > This is really strange, since the changes are purely user-space. > You cannot get to that before root is mounted. Yout is long mounted, the mount -uw from /etc/rc.d/root is failing (see the posting to freebsd-fs). And the (silly call to) fsck in single user confirms that there is a problem. >> >> PS: I am also always surprised how little netboot setup breakage shows >> up these days (or how long it takes to be reported). We probably need >> better test cases for this... >> >> >>> https://lists.freebsd.org/archives/freebsd-fs/2023-January/001789.html >>> >>> >>>> --- >>>> sbin/fsck/Makefile | 4 + >>>> sbin/fsck/fsck.c | 5 +- >>>> sbin/fsck/fsutil.c | 44 ------ >>>> sbin/fsck/fsutil.h | 1 - >>>> sbin/fsck_ffs/main.c | 96 +----------- >>>> sbin/growfs/growfs.c | 110 ++------------ >>>> sbin/mount/Makefile | 11 +- >>>> sbin/mount/getmntopts.3 | 181 ----------------------- >>>> sbin/mount/getmntopts.c | 95 +++++++++++- >>>> sbin/mount/mntopts.3 | 381 >>>> ++++++++++++++++++++++++++++++++++++++++++++++++ >>>> sbin/mount/mntopts.h | 2 + >>>> sbin/mount/mount.c | 18 +-- >>>> sbin/tunefs/tunefs.c | 33 +---- >>>> 13 files changed, 513 insertions(+), 468 deletions(-) >>> >>> >> >> -- >> Bjoern A. Zeeb r15:7 > -- Bjoern A. Zeeb r15:7 From nobody Fri Jan 27 15:10: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 4P3Lbr3nRPz3cB2N; Fri, 27 Jan 2023 15:10:16 +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 4P3Lbr3781z3Knh; Fri, 27 Jan 2023 15:10:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674832216; 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=NC+JUVOpcm18CTHi1m94XBQZIl90Xc0CkotQ2CxRbmU=; b=NlLTqHkO9EVyzE/7bkqibf1vgD+sCRwyZQR71u/nEHqMy/eJ+G1mwrroaZY2YPMd48tHVO AHMO5VhtPSKDKM9DZ8abKor9GaC/flhYiG6HcpdEWfSyxy2B23qwyigluVRsALtaTXO3M4 Wc+5MpyPztmGMZF66zJ6UgqOvo5QaSYyaX+fOzfWYhzUV3oinBowhRzF8OsE1jeVxxLf32 xoCBKdfVdgTSdVBscz3HSV2FbRNl1nsV6C1dezawMLJGvj+GJsfkAEq+KBb0GeMvsvbohz MKKXIMAqmehZR2H7I8tGYbTaDnrC4PnZ79DtDvyJB3DktjtxY298xtJeHgVF3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674832216; 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=NC+JUVOpcm18CTHi1m94XBQZIl90Xc0CkotQ2CxRbmU=; b=IiPk8o9ewnrhKu8DAPdaVEc1oPAsJ2KboAcVuOdPdEWuNHHr48etsgWLlU/I9NRpFuAlLv AuPCIDUqpBLivuLIiNYBqQ7+BWRFtQPeLRhnQgiGx8tJIktqj74/aQasq6k6K5hyCqYVuc oGztPT9MktopCd/nrpcj8xiMcV+Lm//ncrJWsYDJvze57NqLjg71Jc99SIAkhJb3RCpPrP 3ootZkHoTsg6tHpSPkeTElvW8ctQ4XEpdTaMQQ1rDYUVIz4R3h6Uk9spnd/F8dELnSRRLi y3K1ZdYVWKYiyUyUmR0we81KrRUVKkTuH4x00ZtfFAZqZytdlLDrDz91Guan4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674832216; a=rsa-sha256; cv=none; b=bP4S5qq8Pmxbelsp0L93U+IgHefh0EIwm+XvEov8Wj9cQupcufcwKWAPpOHSVsGzc/VjRQ NFv6Bql7W4TFgPFu4rHGhH1JrLg+iCuceMARR8/w2CWO63KMAwWBO9181hexoRBtcOdvlL tUN2qVKhMbu+LqLKA7riCL1AK34ZUsa/x1k9AOhmvpb3PUVUUr9LvcsLwqsMKXkpoHu9o7 hguqd6kbgql6uRRH9AiyJYipWmAXsX13V5JOjLaWYXUo3DAyuHale++1/uT+Lgc6RK7MPP 6B6uOuZHOlAn3JdWsXiD6rYpSXRveu4Tpnw4VOAu/VinH9AtyYFM+jNqNOPvXQ== 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 4P3Lbr22kjz1CWb; Fri, 27 Jan 2023 15:10:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RFAGi7065464; Fri, 27 Jan 2023 15:10:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RFAGEJ065453; Fri, 27 Jan 2023 15:10:16 GMT (envelope-from git) Date: Fri, 27 Jan 2023 15:10:16 GMT Message-Id: <202301271510.30RFAGEJ065453@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: f394d9c0a40f - main - sysctl: use correct types and names in sysctl_*sec_to_sbintime 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: f394d9c0a40f038facc2b96083e094230aa2d608 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=f394d9c0a40f038facc2b96083e094230aa2d608 commit f394d9c0a40f038facc2b96083e094230aa2d608 Author: Gleb Smirnoff AuthorDate: 2023-01-27 15:09:22 +0000 Commit: Gleb Smirnoff CommitDate: 2023-01-27 15:09:22 +0000 sysctl: use correct types and names in sysctl_*sec_to_sbintime The functions are intended to report kernel variables that are stored as sbintime_t (pointed to by arg1) as human readable nanoseconds or milliseconds (reported via sysctl_handle_64). The variable types and names were reversed. I guess there is no functional change here, as all types flipped around were signed 64. Note that these function aren't used yet anywhere in the kernel. Reviewed by: mav Differential revision: https://reviews.freebsd.org/D38217 --- sys/kern/kern_sysctl.c | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c index 6427ff0c7ecf..430fa87ef0eb 100644 --- a/sys/kern/kern_sysctl.c +++ b/sys/kern/kern_sysctl.c @@ -1889,47 +1889,41 @@ retry: } /* - * Based on on sysctl_handle_int() convert microseconds to a sbintime. + * Based on on sysctl_handle_64() convert microseconds to a sbintime. */ int sysctl_usec_to_sbintime(SYSCTL_HANDLER_ARGS) { int error; - int64_t tt; - sbintime_t sb; + int64_t usec; - tt = *(int64_t *)arg1; - sb = sbttous(tt); + usec = sbttous(*(sbintime_t *)arg1); - error = sysctl_handle_64(oidp, &sb, 0, req); + error = sysctl_handle_64(oidp, &usec, 0, req); if (error || !req->newptr) return (error); - tt = ustosbt(sb); - *(int64_t *)arg1 = tt; + *(sbintime_t *)arg1 = ustosbt(usec); return (0); } /* - * Based on on sysctl_handle_int() convert milliseconds to a sbintime. + * Based on on sysctl_handle_64() convert milliseconds to a sbintime. */ int sysctl_msec_to_sbintime(SYSCTL_HANDLER_ARGS) { int error; - int64_t tt; - sbintime_t sb; + int64_t msec; - tt = *(int64_t *)arg1; - sb = sbttoms(tt); + msec = sbttoms(*(sbintime_t *)arg1); - error = sysctl_handle_64(oidp, &sb, 0, req); + error = sysctl_handle_64(oidp, &msec, 0, req); if (error || !req->newptr) return (error); - tt = mstosbt(sb); - *(int64_t *)arg1 = tt; + *(sbintime_t *)arg1 = mstosbt(msec); return (0); } From nobody Fri Jan 27 15:24: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 4P3Lwp2Zwsz3cCk1; Fri, 27 Jan 2023 15:24:58 +0000 (UTC) (envelope-from bz@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 4P3Lwp21zwz3MM9; Fri, 27 Jan 2023 15:24:58 +0000 (UTC) (envelope-from bz@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674833098; 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=sW09Eor7NCIR6yoMhDMSO/HRcgpc3IxiC33Zy6j3fgU=; b=lca3DlsWmCficTjqhurkn/KMq7BgtWbdzIL3HhiU/i8l5DlR7saLFdPlXAFJAvRoruxkR/ RIzzLRIcLzB9362UYFHacBChQXSSBgHVQFVmgTcEQ7FWAM0OCSMMVcwG/gSlmWNQfEE9WO 9plbdFC4qT0jKOG8uTkUds5r9+qs0shyRT7iA4v2bF7q/1vp754FL2oZqc1BKmXMxWqehS yWftLSRcE/M/tlT1EnQSP8073G8w0uHMbsnxtodcTK2/00lhDTFaM1xudjgsxSIzEDxBhs 1zLIdC9mBrrn8VMFNL+fIz1C0mbTmQeNTFq+NzmEHVFTaibiNMbAnlVRPPadcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674833098; 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=sW09Eor7NCIR6yoMhDMSO/HRcgpc3IxiC33Zy6j3fgU=; b=jb/TcyCbgRKrZaSnso1XZE2q+hnXhuJDkkJlvTI5SlKIg4mYJoXNsPGRXM7CB6eEyLOGHk SUBG8kMErN+XLBbm1R/1RV0u4sbR+uMuv2F1RqOYFkfTZ/joBdQNhyex8FYkdrPBzuVwhU 7wGNAHoHyHh20xPMG8fMvnxwGCZkCL7m43fzUetxtvI3JnJ3iSlUCIXlGv/dZQp+3+zuVr xvdofAZhHmOXgjuImkftHdcRYdh3bI8wP5ZMSfY+cI1zdBLIm23KtmUhkwWf+LtRIjUNaJ 9V6o8sAzILwkyUHOvM2IvIrDpfJE+MH3sDq/t7JNGMl1nUJduPVSn6OBz4kdGA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674833098; a=rsa-sha256; cv=none; b=jD9nPkOUSHhQ1poXxO0mUGN3z4Ggku8HVUJWRJWV3bZxFu+43ohyGBB0g1thkEdNifNs7L Prv4mw03ZyJvQMjSztYZx3DVpsrsckoFDxCmQRZ8kXAxOM4LP1ib/yOxvNWjGKAJoh9kHD xmjIaJ7nB4z9RsrHpn8OT68TVb25iJX0uO489+rkEiVVBQoT1mi11bIXogQaASvTchVWIk 3lAICfO60WRzD4ytZ3s8CO4RdFpYHtkYyvRQAT+TjtrjPTPxIsyY0RIZuFZo+rd+gSPxoa duIvzvukbFOcPRBT+oef6p7GV+0FuCEMMmqWi+buemH598MXzZTYKkyGbrljSw== Received: from mx1.sbone.de (mx1.sbone.de [IPv6:2a01:4f8:13b:39f::9f:25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE Root Certificate Authority" (not verified)) (Authenticated sender: bz/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4P3Lwn6lhmz16fr; Fri, 27 Jan 2023 15:24:57 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id 69EBF8D4A142; Fri, 27 Jan 2023 15:24:56 +0000 (UTC) Received: from content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id 4BCB05C3A833; Fri, 27 Jan 2023 15:24:55 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) by content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (amavisd-new, port 10024) with ESMTP id f6Ij0EhuxyGN; Fri, 27 Jan 2023 15:24:53 +0000 (UTC) Received: from strong-iwl0.sbone.de (strong-iwl0.sbone.de [IPv6:fde9:577b:c1a9:4902:b66b:fcff:fef3:e3d2]) (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) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id 5C88B5C3A830; Fri, 27 Jan 2023 15:24:53 +0000 (UTC) Date: Fri, 27 Jan 2023 15:24:52 +0000 (UTC) From: "Bjoern A. Zeeb" To: Ed Maste cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 247e03ed8b83 - main - Add git-blame ignore file In-Reply-To: <202301232027.30NKRckV060051@gitrepo.freebsd.org> Message-ID: <1o40rq5-n1pr-ss27-q14-qo845q26398@mnoonqbm.arg> References: <202301232027.30NKRckV060051@gitrepo.freebsd.org> X-OpenPGP-Key-Id: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 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; format=flowed X-ThisMailContainsUnwantedMimeParts: N On Mon, 23 Jan 2023, Ed Maste wrote: > The branch main has been updated by emaste: > > URL: https://cgit.FreeBSD.org/src/commit/?id=247e03ed8b8341cf25dc3d9ecb846612d984f424 > > commit 247e03ed8b8341cf25dc3d9ecb846612d984f424 > Author: Ed Maste > AuthorDate: 2023-01-23 20:27:25 +0000 > Commit: Ed Maste > CommitDate: 2023-01-23 20:27:25 +0000 > > Add git-blame ignore file > > .git-blame-ignore-revs lists commit hashes that should be skipped by > `git blame` e.g. non-functional whitespace or style cleanup. > > The file is populated with a few sample entries. How is this file to be used? 1. Do a non-functional commit? 2. And then do another commit to add the hash? And do we really need the comments? I am wondering if a flag in the original commit message could automatically populate the file on push/commit or something? (I don't know the git internals...) > Reviewed by: brooks, imp > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D36525 > > fixup ignore revs > --- > .git-blame-ignore-revs | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs > new file mode 100644 > index 000000000000..2a4ab51f89c1 > --- /dev/null > +++ b/.git-blame-ignore-revs > @@ -0,0 +1,16 @@ > +# List of hashes of non-functional changes to be ignored by git-blame. > +# This includes whitespace, style(9), comment typos, etc. Changes that affect > +# built objects must not be included. > +# > +# Use `git blame --ignore-revs-file .git-blame-ignore-revs` or configure via > +# `git config --global blame.ignoreRevsFile .git-blame-ignore-revs`. GitHub's > +# blame view also uses this by default. > +# > +# For consistency this file is sorted by hash. > + > +# regen syscall files after d51198d63b63 > +2c9764f36b6f20e9a6c71ce64a21988a394050b6 > +# Remove whitespace at EOL. > +7ebcc426efefea9cd16ac6f565e72030c608f7a4 > +# elfctl whitespace > +828e50092ac84f50247fb3f400027fc7510d8141 > -- Bjoern A. Zeeb r15:7 From nobody Fri Jan 27 15:28: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 4P3M0p2z63z3cDM6; Fri, 27 Jan 2023 15:28: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 4P3M0p2V8vz3NCB; Fri, 27 Jan 2023 15:28:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674833306; 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=X5rCp5kxaA6lKkxXP4DxwwJMedXMwPjcrNhxmRhaNms=; b=ZO3R4syJhHX2U/+z/QWRVxVN+4xRyImhPL1Vfv49wYcxCGVQ80CTxNIPVsQ6uiiEUlSoHV dzC9hySu7KlyuYOec/NizzwmCAoDHk0JYWMffIINLWP43d+tX9RuPTbypHYrxrdsEMQtrn /qOBy19k7MhN9Gz4roipZT4D0aJfprY0mAEyIxtp49wtgWvvxTY6k+YLnEfzJiFmcPcJ8x OF9bXGGMPRyetL0ZHlgLxjqC/FpUirY0fz9uKmHa0oKOXi7u5PLqCir1MXbWkFx8lQOOVl bdIMqUXQX8Nwsn5xiq/jTfrNS1smP72EXw2SQ3UGzenQrRw+B481JgmgeI1wfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674833306; 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=X5rCp5kxaA6lKkxXP4DxwwJMedXMwPjcrNhxmRhaNms=; b=maHH5dQze2Wty9aBERvF0phBiMsRNB20TEfeeEQoQXkhjAKwFxEUNyzdMnidGcz549RXDe WlUhkfqcUPs96+rN09H/ovEOljMvDBCReJYUFwRlkOwNoPEAdz/uZLFUjMbLyiRp1cCgLv TJDojvnbqz8gWsnGjkEnilRlDiLgnzgr65+VJSiQ5W1uGLn9mcbfDFXu83go+s+vkhao6T /V4YqiUobfPSNhE9tgtwMeteQMFyqrY3wIhnxOefBoyqb6mZ8dIEP2ZJi4s80VHccb9EBm bEFGwiQvjZEEt9fY6cDhbD8GAU6mBdApgVsUcUDNOQ43cUcFjCqyObPQLiNq6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674833306; a=rsa-sha256; cv=none; b=Ssj8zBR1/NJGHxSWzTd9zO0SHQ0BL7xk5C58fHeTtKRn3P4WqUMh8Cb8CfbGhCH6pZIVBk LUGLDZTHlkpRJe0Jt5j4XuGsck5LkV4O4JQXjYUpdqb32rcYSIo9PiJQc0uRM2jz0izlke OevjD6K2uHpVX+gI8NKe8NUwqX5GBiYp6X3YbhJ5+yhvcMIkjdSh1i4q0q4N7zDQhzdbi+ R8IZ4rapaElevG/3yw1F13zT+mxcSJi4JSZkDDT4sIGBmrpZ8RVYXVLfFmieEcBAEb2AMP Q0ZWBRTsyZ3ZeSE1koPCZjxaZkQyGRJl8WFDumLCJ93goeQwKk4oY69Fp8OWPQ== 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 4P3M0p1XYdz1CZF; Fri, 27 Jan 2023 15:28:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RFSQJ5085670; Fri, 27 Jan 2023 15:28:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RFSQ6g085669; Fri, 27 Jan 2023 15:28:26 GMT (envelope-from git) Date: Fri, 27 Jan 2023 15:28:26 GMT Message-Id: <202301271528.30RFSQ6g085669@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 68b1d1625051 - main - LinuxKPI: linux_pci.c: fix whitespace 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: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 68b1d162505149b8629f7e22cecf298cea2ff1f9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=68b1d162505149b8629f7e22cecf298cea2ff1f9 commit 68b1d162505149b8629f7e22cecf298cea2ff1f9 Author: Bjoern A. Zeeb AuthorDate: 2023-01-27 15:18:44 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-01-27 15:27:42 +0000 LinuxKPI: linux_pci.c: fix whitespace Properly indent a line. No functional change. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_pci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index aa29d0654cd1..0d5b3ce52ff5 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -1228,7 +1228,7 @@ linuxkpi_dmam_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_ha struct lkpi_devres_dmam_coherent *dr; dr = lkpi_devres_alloc(lkpi_dmam_free_coherent, - sizeof(*dr), GFP_KERNEL | __GFP_ZERO); + sizeof(*dr), GFP_KERNEL | __GFP_ZERO); if (dr == NULL) return (NULL); From nobody Fri Jan 27 15:36: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 4P3M9w0TkKz3cFJ5; Fri, 27 Jan 2023 15:36: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 4P3M9v72HKz3PRW; Fri, 27 Jan 2023 15:36:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674833780; 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=Al4OaKu7vFhMp7A4vZrcnoaIwYRn4dQmCYM4rdMXs04=; b=mbP8peRMMTVTuwTcl22b2SN341WBAoQRpqAwdsL3FyQjl/OC0hx6Fdm8n6aWtqvqQr9ZQI MabwrBx8svjnwLdoT/30vrtz+ZLJ1Z605XhhJVeBvvx1Jl+EM4iUKSPCl6YYcWzqAhPzRM DLHGOM+hOyEJruge7W04XiBJqOPQAHEBciviNWIOFE3NdP0DD0pL0g08yE5rtzdI5Uv2Yu i13xLt3QLZGTAkmLhHV+0Uv6q6EDgDGC/OJDePxebjw9kzABJHfWUmB1bUMoHYYd93FEe9 BZQfwOKB4/l54vyRkojSsZ5zD5vqC0OWX232WL5oil6OqogXa+5/e93xZwRWCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674833780; 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=Al4OaKu7vFhMp7A4vZrcnoaIwYRn4dQmCYM4rdMXs04=; b=va7D+cN2SBEiKAfOpdJ34O63zeGDajD+yrw0ljd7wwNjQbSHDbTMg9GxG6TwC9yak/4Vb2 ByyFH53BB3vPYHHUbTssTjvGfW+7HFb5n3NyX3HTwhAZzV4JtFgJwf7eaLVbpo5AsjXl84 FpGw5GLhYN0MhlVMg9j/6tX8uV/E8NusXDAzvE+f29vLHu7xfXCgm8pNb49+23ASO5cBcW 6HNTsTh0mndH7mBnmkGCPssKe3C9YexkB8caM1MUTKGoitA6x6VBA3DFJLRPu518mka9M7 RB+LJ4Fp3hnoLgbsaPrdAAA+gRr+Gad0n3WRAHnNQnw51MWx5gKQIrEr4nGYTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674833780; a=rsa-sha256; cv=none; b=UKae3qEOAFv74BdNpUkb5jtroh/eMRMnAXlm+p9/1N2PXcAUNf7XcZ7AOSOUjDDaUamM8B WfwSD+aVutkEW5G0yijUlv57G6i/Cc9eESPRsOyjCcbB8OgLc80idW2sAoNzhzFOeg/jTR 6zp82AUGU12k/JDP13LvJRFU0OaJvay6/4OVgfUN+6GjboSFXQJklCKmGiJVRDCx7ooNHG ceKgvIULQVDal0Cc/a2afAkYH9vTjcTScOmYaeQql2tfXuG4DAf5bbYTuUwPvXD7Aulliy G2vkcAnG1ja0wmTtHkXBze9A9OKaxBiHbaC1rfn08mYYz2YTCnHhGnn1RfNT8g== 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 4P3M9v63KszDrZ; Fri, 27 Jan 2023 15:36:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RFaJA1000147; Fri, 27 Jan 2023 15:36:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RFaJTH000146; Fri, 27 Jan 2023 15:36:19 GMT (envelope-from git) Date: Fri, 27 Jan 2023 15:36:19 GMT Message-Id: <202301271536.30RFaJTH000146@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 68636dcb6fde - main - netstat: make netstat -rn use netlink instead of rtsock 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: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 68636dcb6fded1058318052454eabe35d1f65cb2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=68636dcb6fded1058318052454eabe35d1f65cb2 commit 68636dcb6fded1058318052454eabe35d1f65cb2 Author: Alexander V. Chernikov AuthorDate: 2023-01-27 15:14:39 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-01-27 15:36:10 +0000 netstat: make netstat -rn use netlink instead of rtsock This change switches route listing in netstat to netlink, with fallback to rtsock. The outputs are mostly identical, with an exception of not showing kernel nexthop indexes for multipath routes. Differential Revision: https://reviews.freebsd.org/D36529 --- usr.bin/netstat/Makefile | 1 + usr.bin/netstat/common.h | 21 +- usr.bin/netstat/route.c | 79 ++++--- usr.bin/netstat/route_netlink.c | 491 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 550 insertions(+), 42 deletions(-) diff --git a/usr.bin/netstat/Makefile b/usr.bin/netstat/Makefile index febab940be4a..e2c9ca09eea5 100644 --- a/usr.bin/netstat/Makefile +++ b/usr.bin/netstat/Makefile @@ -6,6 +6,7 @@ PROG= netstat SRCS= if.c inet.c main.c mbuf.c mroute.c netisr.c nl_symbols.c route.c \ unix.c mroute6.c ipsec.c bpf.c pfkey.c sctp.c common.c nhops.c nhgrp.c \ + route_netlink.c \ nl_defs.h nl_symbols.c: nlist_symbols diff --git a/usr.bin/netstat/common.h b/usr.bin/netstat/common.h index da058c97d910..d5aadd50b34e 100644 --- a/usr.bin/netstat/common.h +++ b/usr.bin/netstat/common.h @@ -45,11 +45,28 @@ extern struct bits rt_bits[]; const char *fmt_flags(const struct bits *p, int f); void print_flags_generic(int flags, const struct bits *pbits, const char *format, const char *tag_name); -int print_sockaddr(const char *name, struct sockaddr *sa, - struct sockaddr *mask, int flags, int width); +int p_sockaddr(const char *name, struct sockaddr *sa, struct sockaddr *mask, + int flags, int width); + +struct _wid { + int dst; + int gw; + int flags; + int pksent; + int mtu; + int iface; + int expire; +}; +void set_wid(int fam); +void pr_rthdr(int af1 __unused); +extern struct _wid wid; +void p_flags(int f, const char *format); + +bool p_rtable_netlink(int fibnum, int af); struct ifmap_entry { char ifname[IFNAMSIZ]; + uint32_t mtu; }; struct ifmap_entry *prepare_ifmap(size_t *ifmap_size); diff --git a/usr.bin/netstat/route.c b/usr.bin/netstat/route.c index c2a68cae87e8..0026ee924854 100644 --- a/usr.bin/netstat/route.c +++ b/usr.bin/netstat/route.c @@ -106,7 +106,6 @@ static const char *netname6(struct sockaddr_in6 *, struct sockaddr_in6 *); #endif static void p_rtable_sysctl(int, int); static void p_rtentry_sysctl(const char *name, struct rt_msghdr *); -static void p_flags(int, const char *); static void domask(char *, size_t, u_long); @@ -143,7 +142,8 @@ routepr(int fibnum, int af) if (fibnum) xo_emit(" ({L:fib}: {:fib/%d})", fibnum); xo_emit("\n"); - p_rtable_sysctl(fibnum, af); + if (!p_rtable_netlink(fibnum, af)) + p_rtable_sysctl(fibnum, af); xo_close_container("route-information"); } @@ -197,42 +197,48 @@ pr_family(int af1) #define WID_IF_DEFAULT(af) ((af) == AF_INET6 ? 8 : (Wflag ? 10 : 8)) #endif /*INET6*/ -static int wid_dst; -static int wid_gw; -static int wid_flags; -static int wid_pksent; -static int wid_mtu; -static int wid_if; -static int wid_expire; +struct _wid wid; /* * Print header for routing table columns. */ -static void +void pr_rthdr(int af1 __unused) { if (Wflag) { xo_emit("{T:/%-*.*s} {T:/%-*.*s} {T:/%-*.*s} {T:/%*.*s} " "{T:/%*.*s} {T:/%*.*s} {T:/%*s}\n", - wid_dst, wid_dst, "Destination", - wid_gw, wid_gw, "Gateway", - wid_flags, wid_flags, "Flags", - wid_mtu, wid_mtu, "Nhop#", - wid_mtu, wid_mtu, "Mtu", - wid_if, wid_if, "Netif", - wid_expire, "Expire"); + wid.dst, wid.dst, "Destination", + wid.gw, wid.gw, "Gateway", + wid.flags, wid.flags, "Flags", + wid.mtu, wid.mtu, "Nhop#", + wid.mtu, wid.mtu, "Mtu", + wid.iface, wid.iface, "Netif", + wid.expire, "Expire"); } else { xo_emit("{T:/%-*.*s} {T:/%-*.*s} {T:/%-*.*s} {T:/%*.*s} " "{T:/%*s}\n", - wid_dst, wid_dst, "Destination", - wid_gw, wid_gw, "Gateway", - wid_flags, wid_flags, "Flags", - wid_if, wid_if, "Netif", - wid_expire, "Expire"); + wid.dst, wid.dst, "Destination", + wid.gw, wid.gw, "Gateway", + wid.flags, wid.flags, "Flags", + wid.iface, wid.iface, "Netif", + wid.expire, "Expire"); } } +void +set_wid(int fam) +{ + wid.dst = WID_DST_DEFAULT(fam); + wid.gw = WID_GW_DEFAULT(fam); + wid.flags = 6; + wid.pksent = 8; + wid.mtu = 6; + wid.iface = WID_IF_DEFAULT(fam); + wid.expire = 6; +} + static void p_rtable_sysctl(int fibnum, int af) { @@ -278,15 +284,8 @@ p_rtable_sysctl(int fibnum, int af) xo_close_instance("rt-family"); } need_table_close = true; - fam = sa->sa_family; - wid_dst = WID_DST_DEFAULT(fam); - wid_gw = WID_GW_DEFAULT(fam); - wid_flags = 6; - wid_pksent = 8; - wid_mtu = 6; - wid_if = WID_IF_DEFAULT(fam); - wid_expire = 6; + set_wid(fam); xo_open_instance("rt-family"); pr_family(fam); xo_open_list("rt-entry"); @@ -323,22 +322,22 @@ p_rtentry_sysctl(const char *name, struct rt_msghdr *rtm) protrusion = p_sockaddr("destination", addr[RTAX_DST], addr[RTAX_NETMASK], - rtm->rtm_flags, wid_dst); + rtm->rtm_flags, wid.dst); protrusion = p_sockaddr("gateway", addr[RTAX_GATEWAY], NULL, RTF_HOST, - wid_gw - protrusion); + wid.gw - protrusion); snprintf(buffer, sizeof(buffer), "{[:-%d}{:flags/%%s}{]:} ", - wid_flags - protrusion); + wid.flags - protrusion); p_flags(rtm->rtm_flags, buffer); /* Output path weight as non-visual property */ xo_emit("{e:weight/%u}", rtm->rtm_rmx.rmx_weight); if (Wflag) { /* XXX: use=0? */ - xo_emit("{t:nhop/%*lu} ", wid_mtu, rtm->rtm_rmx.rmx_nhidx); + xo_emit("{t:nhop/%*lu} ", wid.mtu, rtm->rtm_rmx.rmx_nhidx); if (rtm->rtm_rmx.rmx_mtu != 0) - xo_emit("{t:mtu/%*lu} ", wid_mtu, rtm->rtm_rmx.rmx_mtu); + xo_emit("{t:mtu/%*lu} ", wid.mtu, rtm->rtm_rmx.rmx_mtu); else - xo_emit("{P:/%*s} ", wid_mtu, ""); + xo_emit("{P:/%*s} ", wid.mtu, ""); } memset(prettyname, 0, sizeof(prettyname)); @@ -350,15 +349,15 @@ p_rtentry_sysctl(const char *name, struct rt_msghdr *rtm) } if (Wflag) - xo_emit("{t:interface-name/%*s}", wid_if, prettyname); + xo_emit("{t:interface-name/%*s}", wid.iface, prettyname); else - xo_emit("{t:interface-name/%*.*s}", wid_if, wid_if, + xo_emit("{t:interface-name/%*.*s}", wid.iface, wid.iface, prettyname); if (rtm->rtm_rmx.rmx_expire) { time_t expire_time; if ((expire_time = rtm->rtm_rmx.rmx_expire - uptime.tv_sec) > 0) - xo_emit(" {:expire-time/%*d}", wid_expire, + xo_emit(" {:expire-time/%*d}", wid.expire, (int)expire_time); } @@ -472,7 +471,7 @@ fmt_sockaddr(struct sockaddr *sa, struct sockaddr *mask, int flags) return (cp); } -static void +void p_flags(int f, const char *format) { diff --git a/usr.bin/netstat/route_netlink.c b/usr.bin/netstat/route_netlink.c new file mode 100644 index 000000000000..7c0ac8fea30c --- /dev/null +++ b/usr.bin/netstat/route_netlink.c @@ -0,0 +1,491 @@ +/*- + * SPDX-License-Identifier: BSD-3-Clause + * + * Copyright (c) 1983, 1988, 1993 + * The Regents of the University of California. 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 University 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 BY THE REGENTS 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 REGENTS 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 +__FBSDID("$FreeBSD$"); + +#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 +#include +#include +#include "netstat.h" +#include "common.h" +#include "nl_defs.h" + + +static void p_rtentry_netlink(struct snl_state *ss, const char *name, struct nlmsghdr *hdr); + +static struct ifmap_entry *ifmap; +static size_t ifmap_size; + +struct nl_parsed_link { + uint32_t ifi_index; + uint32_t ifla_mtu; + char *ifla_ifname; +}; + +#define _IN(_field) offsetof(struct ifinfomsg, _field) +#define _OUT(_field) offsetof(struct nl_parsed_link, _field) +static struct snl_attr_parser ap_link[] = { + { .type = IFLA_IFNAME, .off = _OUT(ifla_ifname), .cb = snl_attr_get_string }, + { .type = IFLA_MTU, .off = _OUT(ifla_mtu), .cb = snl_attr_get_uint32 }, +}; +static struct snl_field_parser fp_link[] = { + {.off_in = _IN(ifi_index), .off_out = _OUT(ifi_index), .cb = snl_field_get_uint32 }, +}; +#undef _IN +#undef _OUT +SNL_DECLARE_PARSER(link_parser, struct ifinfomsg, fp_link, ap_link); + +/* Generate ifmap using netlink */ +static struct ifmap_entry * +prepare_ifmap_netlink(struct snl_state *ss, size_t *pifmap_size) +{ + struct { + struct nlmsghdr hdr; + struct ifinfomsg ifmsg; + } msg = { + .hdr.nlmsg_type = RTM_GETLINK, + .hdr.nlmsg_flags = NLM_F_DUMP | NLM_F_REQUEST, + .hdr.nlmsg_seq = snl_get_seq(ss), + }; + msg.hdr.nlmsg_len = sizeof(msg); + + if (!snl_send(ss, &msg, sizeof(msg))) { + snl_free(ss); + return (NULL); + } + + struct ifmap_entry *ifmap = NULL; + uint32_t ifmap_size = 0; + struct nlmsghdr *hdr; + while ((hdr = snl_read_message(ss)) != NULL && hdr->nlmsg_type != NLMSG_DONE) { + if (hdr->nlmsg_seq != msg.hdr.nlmsg_seq) + continue; +/* + if (hdr->nlmsg_type == NLMSG_ERROR) + break; +*/ + struct nl_parsed_link link = {}; + if (!snl_parse_nlmsg(ss, hdr, &link_parser, &link)) + continue; + if (link.ifi_index >= ifmap_size) { + size_t size = roundup2(link.ifi_index + 1, 32) * sizeof(struct ifmap_entry); + if ((ifmap = realloc(ifmap, size)) == NULL) + errx(2, "realloc(%lu) failed", size); + memset(&ifmap[ifmap_size], 0, + size - ifmap_size * + sizeof(struct ifmap_entry)); + ifmap_size = roundup2(link.ifi_index + 1, 32); + } + if (*ifmap[link.ifi_index].ifname != '\0') + continue; + strlcpy(ifmap[link.ifi_index].ifname, link.ifla_ifname, IFNAMSIZ); + ifmap[link.ifi_index].mtu = link.ifla_mtu; + } + *pifmap_size = ifmap_size; + return (ifmap); +} + +struct rta_mpath_nh { + struct sockaddr *gw; + uint32_t ifindex; + uint8_t rtnh_flags; + uint8_t rtnh_weight; + uint32_t rtax_mtu; + uint32_t rta_knh_id; + uint32_t rta_rtflags; +}; + +#define _IN(_field) offsetof(struct rtnexthop, _field) +#define _OUT(_field) offsetof(struct rta_mpath_nh, _field) +static const struct snl_attr_parser nla_p_mp_rtmetrics[] = { + { .type = NL_RTAX_MTU, .off = _OUT(rtax_mtu), .cb = snl_attr_get_uint32 }, +}; +SNL_DECLARE_ATTR_PARSER(metrics_mp_parser, nla_p_mp_rtmetrics); + +static const struct snl_attr_parser psnh[] = { + { .type = NL_RTA_GATEWAY, .off = _OUT(gw), .cb = snl_attr_get_ip }, + { .type = NL_RTA_METRICS, .arg = &metrics_mp_parser, .cb = snl_attr_get_nested }, + { .type = NL_RTA_KNH_ID, .off = _OUT(rta_knh_id), .cb = snl_attr_get_uint32 }, + { .type = NL_RTA_RTFLAGS, .off = _OUT(gw), .cb = snl_attr_get_uint32 }, + { .type = NL_RTA_VIA, .off = _OUT(gw), .cb = snl_attr_get_ipvia }, +}; + +static const struct snl_field_parser fpnh[] = { + { .off_in = _IN(rtnh_flags), .off_out = _OUT(rtnh_flags), .cb = snl_field_get_uint8 }, + { .off_in = _IN(rtnh_hops), .off_out = _OUT(rtnh_weight), .cb = snl_field_get_uint8 }, + { .off_in = _IN(rtnh_ifindex), .off_out = _OUT(ifindex), .cb = snl_field_get_uint32 }, +}; +#undef _IN +#undef _OUT + +SNL_DECLARE_PARSER(mpath_parser, struct rtnexthop, fpnh, psnh); + +struct rta_mpath { + int num_nhops; + struct rta_mpath_nh nhops[0]; +}; + +static bool +nlattr_get_multipath(struct snl_state *ss, struct nlattr *nla, const void *arg, void *target) +{ + int data_len = nla->nla_len - sizeof(struct nlattr); + struct rtnexthop *rtnh; + + int max_nhops = data_len / sizeof(struct rtnexthop); + size_t sz = (max_nhops + 2) * sizeof(struct rta_mpath_nh); + + struct rta_mpath *mp = snl_allocz(ss, sz); + mp->num_nhops = 0; + + for (rtnh = (struct rtnexthop *)(nla + 1); data_len > 0; ) { + struct rta_mpath_nh *mpnh = &mp->nhops[mp->num_nhops++]; + + if (!snl_parse_header(ss, rtnh, rtnh->rtnh_len, &mpath_parser, mpnh)) + return (false); + + int len = NL_ITEM_ALIGN(rtnh->rtnh_len); + data_len -= len; + rtnh = (struct rtnexthop *)((char *)rtnh + len); + } + if (data_len != 0 || mp->num_nhops == 0) { + return (false); + } + + *((struct rta_mpath **)target) = mp; + return (true); +} + + +struct nl_parsed_route { + struct sockaddr *rta_dst; + struct sockaddr *rta_gw; + struct nlattr *rta_metrics; + struct rta_mpath *rta_multipath; + uint32_t rta_expires; + uint32_t rta_oif; + uint32_t rta_expire; + uint32_t rta_table; + uint32_t rta_knh_id; + uint32_t rta_rtflags; + uint32_t rtax_mtu; + uint32_t rtax_weight; + uint8_t rtm_family; + uint8_t rtm_type; + uint8_t rtm_protocol; + uint8_t rtm_dst_len; +}; + +#define _IN(_field) offsetof(struct rtmsg, _field) +#define _OUT(_field) offsetof(struct nl_parsed_route, _field) +static const struct snl_attr_parser nla_p_rtmetrics[] = { + { .type = NL_RTAX_MTU, .off = _OUT(rtax_mtu), .cb = snl_attr_get_uint32 }, +}; +SNL_DECLARE_ATTR_PARSER(metrics_parser, nla_p_rtmetrics); + +static const struct snl_attr_parser ps[] = { + { .type = NL_RTA_DST, .off = _OUT(rta_dst), .cb = snl_attr_get_ip }, + { .type = NL_RTA_OIF, .off = _OUT(rta_oif), .cb = snl_attr_get_uint32 }, + { .type = NL_RTA_GATEWAY, .off = _OUT(rta_gw), .cb = snl_attr_get_ip }, + { .type = NL_RTA_METRICS, .arg = &metrics_parser, .cb = snl_attr_get_nested }, + { .type = NL_RTA_MULTIPATH, .off = _OUT(rta_multipath), .cb = nlattr_get_multipath }, + { .type = NL_RTA_KNH_ID, .off = _OUT(rta_knh_id), .cb = snl_attr_get_uint32 }, + { .type = NL_RTA_RTFLAGS, .off = _OUT(rta_rtflags), .cb = snl_attr_get_uint32 }, + { .type = NL_RTA_TABLE, .off = _OUT(rta_table), .cb = snl_attr_get_uint32 }, + { .type = NL_RTA_VIA, .off = _OUT(rta_gw), .cb = snl_attr_get_ipvia }, + { .type = NL_RTA_EXPIRES, .off = _OUT(rta_expire), .cb = snl_attr_get_uint32 }, +}; + +static const struct snl_field_parser fprt[] = { + {.off_in = _IN(rtm_family), .off_out = _OUT(rtm_family), .cb = snl_field_get_uint8 }, + {.off_in = _IN(rtm_type), .off_out = _OUT(rtm_type), .cb = snl_field_get_uint8 }, + {.off_in = _IN(rtm_protocol), .off_out = _OUT(rtm_protocol), .cb = snl_field_get_uint8 }, + {.off_in = _IN(rtm_dst_len), .off_out = _OUT(rtm_dst_len), .cb = snl_field_get_uint8 }, +}; +#undef _IN +#undef _OUT +SNL_DECLARE_PARSER(rtm_parser, struct rtmsg, fprt, ps); + +#define RTF_UP 0x1 +#define RTF_GATEWAY 0x2 +#define RTF_HOST 0x4 +#define RTF_REJECT 0x8 +#define RTF_DYNAMIC 0x10 +#define RTF_STATIC 0x800 +#define RTF_BLACKHOLE 0x1000 +#define RTF_PROTO2 0x4000 +#define RTF_PROTO1 0x8000 +#define RTF_PROTO3 0x40000 +#define RTF_FIXEDMTU 0x80000 +#define RTF_PINNED 0x100000 + +static void +ip6_writemask(struct in6_addr *addr6, uint8_t mask) +{ + uint32_t *cp; + + for (cp = (uint32_t *)addr6; mask >= 32; mask -= 32) + *cp++ = 0xFFFFFFFF; + if (mask > 0) + *cp = htonl(mask ? ~((1 << (32 - mask)) - 1) : 0); +} + +static void +gen_mask(int family, int plen, struct sockaddr *sa) +{ + if (family == AF_INET6) { + struct sockaddr_in6 sin6 = { + .sin6_family = AF_INET6, + .sin6_len = sizeof(struct sockaddr_in6), + }; + ip6_writemask(&sin6.sin6_addr, plen); + *((struct sockaddr_in6 *)sa) = sin6; + } else if (family == AF_INET) { + struct sockaddr_in sin = { + .sin_family = AF_INET, + .sin_len = sizeof(struct sockaddr_in), + .sin_addr.s_addr = htonl(plen ? ~((1 << (32 - plen)) - 1) : 0), + }; + *((struct sockaddr_in *)sa) = sin; + } +} + +struct sockaddr_dl_short { + u_char sdl_len; /* Total length of sockaddr */ + u_char sdl_family; /* AF_LINK */ + u_short sdl_index; /* if != 0, system given index for interface */ + u_char sdl_type; /* interface type */ + u_char sdl_nlen; /* interface name length, no trailing 0 reqd. */ + u_char sdl_alen; /* link level address length */ + u_char sdl_slen; /* link layer selector length */ + char sdl_data[8]; /* unused */ +}; + +static void +p_path(struct nl_parsed_route *rt) +{ + struct sockaddr_in6 mask6; + struct sockaddr *pmask = (struct sockaddr *)&mask6; + char buffer[128]; + char prettyname[128]; + int protrusion; + + gen_mask(rt->rtm_family, rt->rtm_dst_len, pmask); + protrusion = p_sockaddr("destination", rt->rta_dst, pmask, rt->rta_rtflags, wid.dst); + protrusion = p_sockaddr("gateway", rt->rta_gw, NULL, RTF_HOST, + wid.gw - protrusion); + snprintf(buffer, sizeof(buffer), "{[:-%d}{:flags/%%s}{]:} ", + wid.flags - protrusion); + p_flags(rt->rta_rtflags | RTF_UP, buffer); + /* Output path weight as non-visual property */ + xo_emit("{e:weight/%u}", rt->rtax_weight); + + memset(prettyname, 0, sizeof(prettyname)); + if (rt->rta_oif < ifmap_size) { + strlcpy(prettyname, ifmap[rt->rta_oif].ifname, + sizeof(prettyname)); + if (*prettyname == '\0') + strlcpy(prettyname, "---", sizeof(prettyname)); + if (rt->rtax_mtu == 0) + rt->rtax_mtu = ifmap[rt->rta_oif].mtu; + } + + if (Wflag) { + /* XXX: use=0? */ + xo_emit("{t:nhop/%*lu} ", wid.mtu, rt->rta_knh_id); + + if (rt->rtax_mtu != 0) + xo_emit("{t:mtu/%*lu} ", wid.mtu, rt->rtax_mtu); + else { + /* use interface mtu */ + xo_emit("{P:/%*s} ", wid.mtu, ""); + } + + } + + if (Wflag) + xo_emit("{t:interface-name/%*s}", wid.iface, prettyname); + else + xo_emit("{t:interface-name/%*.*s}", wid.iface, wid.iface, + prettyname); + if (rt->rta_expires > 0) { + xo_emit(" {:expire-time/%*u}", wid.expire, rt->rta_expires); + } +} + +static void +p_rtentry_netlink(struct snl_state *ss, const char *name, struct nlmsghdr *hdr) +{ + + struct nl_parsed_route rt = {}; + if (!snl_parse_nlmsg(ss, hdr, &rtm_parser, &rt)) + return; + + if (rt.rta_multipath != NULL) { + uint32_t orig_rtflags = rt.rta_rtflags; + uint32_t orig_mtu = rt.rtax_mtu; + for (int i = 0; i < rt.rta_multipath->num_nhops; i++) { + struct rta_mpath_nh *nhop = &rt.rta_multipath->nhops[i]; + + rt.rta_gw = nhop->gw; + rt.rta_oif = nhop->ifindex; + rt.rtax_weight = nhop->rtnh_weight; + rt.rta_rtflags = nhop->rta_rtflags ? nhop->rta_rtflags : orig_rtflags; + rt.rta_knh_id = nhop->rta_knh_id; + rt.rtax_mtu = nhop->rtax_mtu ? nhop->rtax_mtu : orig_mtu; + + xo_open_instance(name); + p_path(&rt); + xo_emit("\n"); + xo_close_instance(name); + } + return; + } + + struct sockaddr_dl_short sdl_gw = { + .sdl_family = AF_LINK, + .sdl_len = sizeof(struct sockaddr_dl_short), + .sdl_index = rt.rta_oif, + }; + if (rt.rta_gw == NULL) + rt.rta_gw = (struct sockaddr *)&sdl_gw; + + xo_open_instance(name); + p_path(&rt); + xo_emit("\n"); + xo_close_instance(name); +} + +static const struct snl_hdr_parser *all_parsers[] = { + &link_parser, &metrics_mp_parser, &mpath_parser, &metrics_parser, &rtm_parser +}; + +bool +p_rtable_netlink(int fibnum, int af) +{ + int fam = AF_UNSPEC; + int need_table_close = false; + struct nlmsghdr *hdr; + + struct snl_state ss = {}; + + SNL_VERIFY_PARSERS(all_parsers); + + if (!snl_init(&ss, NETLINK_ROUTE)) + return (false); + + ifmap = prepare_ifmap_netlink(&ss, &ifmap_size); + + struct { + struct nlmsghdr hdr; + struct rtmsg rtmsg; + struct nlattr nla_fibnum; + uint32_t fibnum; + } msg = { + .hdr.nlmsg_type = RTM_GETROUTE, + .hdr.nlmsg_flags = NLM_F_DUMP | NLM_F_REQUEST, + .hdr.nlmsg_seq = snl_get_seq(&ss), + .rtmsg.rtm_family = af, + .nla_fibnum.nla_len = sizeof(struct nlattr) + sizeof(uint32_t), + .nla_fibnum.nla_type = RTA_TABLE, + .fibnum = fibnum, + }; + msg.hdr.nlmsg_len = sizeof(msg); + + if (!snl_send(&ss, &msg, sizeof(msg))) { + snl_free(&ss); + return (false); + } + + xo_open_container("route-table"); + xo_open_list("rt-family"); + while ((hdr = snl_read_message(&ss)) != NULL && hdr->nlmsg_type != NLMSG_DONE) { + if (hdr->nlmsg_seq != msg.hdr.nlmsg_seq) + continue; + struct rtmsg *rtm = (struct rtmsg *)(hdr + 1); + /* Only print family first time. */ + if (fam != rtm->rtm_family) { + if (need_table_close) { + xo_close_list("rt-entry"); + xo_close_instance("rt-family"); + } + need_table_close = true; + fam = rtm->rtm_family; + set_wid(fam); + xo_open_instance("rt-family"); + pr_family(fam); + xo_open_list("rt-entry"); + pr_rthdr(fam); + } + p_rtentry_netlink(&ss, "rt-entry", hdr); + snl_clear_lb(&ss); + } + if (need_table_close) { + xo_close_list("rt-entry"); + xo_close_instance("rt-family"); + } + xo_close_list("rt-family"); + xo_close_container("route-table"); + snl_free(&ss); + return (true); +} + + From nobody Fri Jan 27 17:09: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 4P3PFL32g3z3bFyB; Fri, 27 Jan 2023 17:09:26 +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 4P3PFL2Y5bz3r2J; Fri, 27 Jan 2023 17:09:26 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674839366; 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=bJ7A2kLv1PeY76fBVOeKLUtkEpqv0jDyh43d7Don078=; b=n0anohQRD47fWV4iKC4hGBBdzRfpNdIJ1aFzOe6yDKdPqXWSR1XT3tnSMOwiRnUTXFephw rIwp+XE+1HOkWQKO+fJtG8FMj+5X5ofifmKS2ZBVsycdpJNyda8nkmW5HUodLosA3cpBlc bOcJwN2iEgdLb0E91E/Q+Jm5/85jM9SGvr/r+BG4f4LHlxfgf3rkJMxwZ6YL+DDXR8oyuO eUoo1rs5HnY0RpFozbP7Fgp1cLnjrJjlv2YpSPXVgAChvMSvyiNltPcYVCrWcwM31xzfhW SwUC2/w0Z9ZDMqOy6PAZ0QGeWIZprpD7ZZKQCpXjbNx1m7HGuyYK+/1nDXSG5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674839366; 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=bJ7A2kLv1PeY76fBVOeKLUtkEpqv0jDyh43d7Don078=; b=fV49dsayV4s6CvrmpBBx9t0IrlwNEMqc2PWg2fPHCGYRoieJkl+ZrtdYDaO7EPdPSKxf7O TM4e5fqGEawQN4T+VifU/BxGle1X4n0v+bpyjv0f++eum05BKwj3eg2fyFJ7CE1aVMgMSG TrKEhuspT5HlVGqXVLG6OPBRbEeIfNvAC3bSiY040XqItPdVD+h0P0XTwBnR0LtvvsLfdZ 5dW9WyhqNzzh18D+MDmtQEw/DGAJcn1UKpTo/q9+oIFeK8ccbmg/1A235hZ5yYGkS3mFpu bW5MM8MjKLktA1FG7JyztnUkGJjsXfK/4ooHr+v48rL60BhsEiLV92d7FtnyUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674839366; a=rsa-sha256; cv=none; b=jmYFSqpyb4THQC31bRNwYRf8hEpC4tEKM5IUDu1680xQ/aQTGeCbw4WiW5Nwlh7tPU15AJ IXd0mmfbL1+vyAeCZMgDDtGfHpP5aQKgy28MxVS0tFXd1kUeb3rM/6eg0ODHz5Bp3yFz3g YHlQaJHsOfyhaqMrCq/dUamuw0CGHiId3K30w1F7p9Azf/dQGPkdk97PmbI+qn8bHIstOs 7eJna6SD/QZVc0frMRK1LC+nVv5CgINtw80N2BMH4OYosGzxXEmDyDPNq1Gx5Ahpltx85G 0mPXJi9z1bw8l5ChSKmG+LkGIiP5xYFvtqnSU+KPR+22E5S0eXOGGXqkt5smRw== Received: from [IPV6:2601:642:4c00:5960:c134:7831:8137:8389] (unknown [IPv6:2601:642:4c00:5960:c134:7831:8137:8389]) (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 4P3PFK5LLLz17wG; Fri, 27 Jan 2023 17:09:25 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: Date: Fri, 27 Jan 2023 09:09:23 -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/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 Subject: Re: git: ac4c695ad61e - main - Retire WITHOUT_CXX option Content-Language: en-US To: Ed Maste , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202301270214.30R2EJqI063420@gitrepo.freebsd.org> From: John Baldwin In-Reply-To: <202301270214.30R2EJqI063420@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ThisMailContainsUnwantedMimeParts: N On 1/26/23 6:14 PM, Ed Maste wrote: > The branch main has been updated by emaste: > > URL: https://cgit.FreeBSD.org/src/commit/?id=ac4c695ad61e81d00cff2a03202a4afe94a92513 > > commit ac4c695ad61e81d00cff2a03202a4afe94a92513 > Author: Ed Maste > AuthorDate: 2022-11-16 14:20:39 +0000 > Commit: Ed Maste > CommitDate: 2023-01-27 02:13:16 +0000 > > Retire WITHOUT_CXX option > > Several important base system components are written in C++, and the > WITHOUT_CXX option produced a system that was not fully functional. > Just accept this, and remove the option to build without C++ support. > > This reverts commit adc3c128c6603054586a993d117e5dd808deac17. > > Reviewed by: brooks, kevans, jhb (earlier) > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D33108 We should be able to revert commit b9cb80883bce now as well. -- John Baldwin From nobody Fri Jan 27 17:30: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 4P3Pjz0rJgz3bJyk; Fri, 27 Jan 2023 17:30:47 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-lj1-f173.google.com (mail-lj1-f173.google.com [209.85.208.173]) (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 4P3Pjy5tyXz3ssx; Fri, 27 Jan 2023 17:30:46 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-lj1-f173.google.com with SMTP id a37so6327727ljq.0; Fri, 27 Jan 2023 09:30:46 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=WhfGwUx/ZB1RWV7c0McMClXC4tpPJ3una82LYLP7PhU=; b=Yr55mCMtA72P5lx7zLRopd37NpmE26z1+mTUMbdtbd5o8zTSMXmU6XNO/1+6f+sJi7 rHzFipCPIx1EdO/10z59h6KjMCQtvPggybKWYcqOGnV2aWU/mFGAwdUDAXjsg4RkwQE7 83k3n3VN6Fj1GA7I6OSj9aZfRiX9cF428+cPVEb3hTMIIp+4oSc+lbpAmq/ZbkpFGQai y4R4aVkhaxUAiQj+BPNHdzBJKkIPGX/672nL3izWcBmKxVOi2bgbWRbnoa3dYeHzNfRH 4XQJTbMYC+zlWVmjOCEp46aurARe2YoLojHxDN9iHEvvCbkpy0vuOLb2jiTsigCC7PNl PDTA== X-Gm-Message-State: AO0yUKVlpyIEsAm1z+qYKDJerqk/phNT23CKn+9BRXoVX89YXyZln2C/ Gevfc37k4ksY7UJ7BAxNNOfxEwvu6Qkd5ogj26bssKCo9K8= X-Google-Smtp-Source: AK7set8VpdK6mczJqipaNIs5d8OM0hugr/tjjx0B8um8/RTUSpnElElWYtmi1shnga7OX6uicapqvck6R2px/qMftd8= X-Received: by 2002:a2e:8898:0:b0:28f:3b6:f84a with SMTP id k24-20020a2e8898000000b0028f03b6f84amr614626lji.41.1674840643204; Fri, 27 Jan 2023 09:30:43 -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: <202301270214.30R2EJqI063420@gitrepo.freebsd.org> In-Reply-To: From: Ed Maste Date: Fri, 27 Jan 2023 12:30:30 -0500 Message-ID: Subject: Re: git: ac4c695ad61e - main - Retire WITHOUT_CXX option To: Alexander Chernikov 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-Rspamd-Queue-Id: 4P3Pjy5tyXz3ssx X-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Fri, 27 Jan 2023 at 04:19, Alexander Chernikov wrote: > > > On 27 Jan 2023, at 02:14, Ed Maste wrote: > > > > The branch main has been updated by emaste: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=ac4c695ad61e81d00cff2a03202a4afe94a92513 > > > > commit ac4c695ad61e81d00cff2a03202a4afe94a92513 > > Author: Ed Maste > > AuthorDate: 2022-11-16 14:20:39 +0000 > > Commit: Ed Maste > > CommitDate: 2023-01-27 02:13:16 +0000 > > > > Retire WITHOUT_CXX option > > Nice. Does that imply more openness in writing (or re-writing) userland core tools in C++? This was prompted by WITHOUT_CXX producing a subtly broken system, as we already have a few base system components written in C++. I don't think large-scale conversion of existing tools to C++ makes a lot of sense, but it can in individual cases. From nobody Fri Jan 27 17:31: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 4P3Pkw5ZT9z3bJh7; Fri, 27 Jan 2023 17:31:36 +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 4P3Pkw5JjJz3tH5; Fri, 27 Jan 2023 17:31:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674840696; 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=cu092MFBAjd21j6h4mMYYdMWXtDlQYNpDIq2bWoDRq8=; b=ohZ2nIWzje2ErfNSfW9JvHLp/EI2Rv0vs4kmBSqCUG+5ej2gIU8N1qwpF8MrE++KyUiL9q C2CRwoMp0yOnCtFfKPfExFRHHyD5l4XpHnjumObHQLrPPDFk6P1RIVHlqCPYPAXGJw/W5m cuUL9fOhTniJIzX14tRxt0HwCTGOZzK6PZ3pKmMrFIC/236OD1dkjr/RP6ec8ynLpemHyt zzQKRiAGW1Yv9zSLZVs7v7SDohWk4VFkFcUMcBK7tken2XVmDsyvZu9hwcHOS3zbDB0esW 7JnfDDpmTj/oEcP38MM7APZpXX7W7wuzJYgdI7nyQO45YEDWQ1s08Hfc7V/O8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674840696; 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=cu092MFBAjd21j6h4mMYYdMWXtDlQYNpDIq2bWoDRq8=; b=mdK6CRqvRQKKeQAL8QCwo4nnQyLGA0PIVGlbUMT8M36nEQiW7H2S2yVFb9F2369reyh2Q8 b+tMo15gGKOdfl6SXbyfxVthVRniA2s/dCglzbq45h+QLTq3PcuIPPSfI2N2zh03O/gFjw 8K8ClA2w/rDfDBprVYaqbDPKFc49ueXplMLPvycczEVkpiIBqOAe3zuMEbENSdShmXfxOb F4TO23hvolaxmg+0g1EoAiA1nyRzF4BknGOKDzs6YQZvWoZOzqVQTLLSoeJf6MqPr4TDTJ lqlAgRjmdP3gIgSkNhcwYZ33Y9tYL2fAh16Nyt6dGrTJLivDqAZK6+FvxFWYeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674840696; a=rsa-sha256; cv=none; b=HxyiwHKqgv91Wu0ZUQNaHY1WV3v0Pa9gS+mJgJcW1XNQ+D4G0kyD+dJWQYKbRbdBS01UaP NYagHlgpi7aowSRxFFvJ6n8ExCvxxygyL6+vjbTH9DI8mfLgoW3/Og11ggpIiL4sCskprr 8j9vuoVu4zxXVcqcCWihBi40tbwmEjVP78BAmpWV9Nns7qDwWxrCLTj9kcnv3zTVW4LHo/ ZpYyJodM8GrAD9/J75w6izqecvNaii5rOv/qhMcuFB+s1xkyLYJctR+/9dILs4tDbiiIWi HIz5kR/vNs35RKdbnsNdaIRR0U6LsuOpmTnJ28O/1hbt+oNcbdC12DgPoLUC9g== 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 4P3Pkw4PCGzHwX; Fri, 27 Jan 2023 17:31:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RHVaTD068993; Fri, 27 Jan 2023 17:31:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RHVVeh068980; Fri, 27 Jan 2023 17:31:31 GMT (envelope-from git) Date: Fri, 27 Jan 2023 17:31:31 GMT Message-Id: <202301271731.30RHVVeh068980@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Allan Jude Subject: git: 5ff13fbc199b - main - MFV: zstd 1.5.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: allanjude X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5ff13fbc199bdf5f0572845351c68ee5ca828e71 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by allanjude: URL: https://cgit.FreeBSD.org/src/commit/?id=5ff13fbc199bdf5f0572845351c68ee5ca828e71 commit 5ff13fbc199bdf5f0572845351c68ee5ca828e71 Merge: 68636dcb6fde b3392d84da5b Author: Allan Jude AuthorDate: 2023-01-27 17:22:31 +0000 Commit: Allan Jude CommitDate: 2023-01-27 17:22:31 +0000 MFV: zstd 1.5.2 Merge commit 'b3392d84da5bf2162baf937c77e0557f3fd8a52b' into zstd_1.5.2 full changelog: https://github.com/facebook/zstd/compare/v1.4.8...v1.5.2 Updated sys/kern/subr_compressor.c to new API MFC after: 3 days Relnotes: yes Sponsored by: Klara, Inc. sys/contrib/zstd/CHANGELOG | 105 + sys/contrib/zstd/CONTRIBUTING.md | 211 +- sys/contrib/zstd/Makefile | 87 +- sys/contrib/zstd/README.md | 40 +- sys/contrib/zstd/TESTING.md | 1 - sys/contrib/zstd/appveyor.yml | 171 +- sys/contrib/zstd/doc/educational_decoder/Makefile | 2 +- sys/contrib/zstd/doc/educational_decoder/harness.c | 2 +- .../zstd/doc/educational_decoder/zstd_decompress.c | 4 +- .../zstd/doc/educational_decoder/zstd_decompress.h | 2 +- sys/contrib/zstd/doc/zstd_compression_format.md | 6 +- sys/contrib/zstd/doc/zstd_manual.html | 336 +- sys/contrib/zstd/examples/Makefile | 2 +- sys/contrib/zstd/examples/common.h | 4 +- sys/contrib/zstd/examples/dictionary_compression.c | 2 +- .../zstd/examples/dictionary_decompression.c | 2 +- .../zstd/examples/multiple_simple_compression.c | 2 +- .../zstd/examples/multiple_streaming_compression.c | 2 +- sys/contrib/zstd/examples/simple_compression.c | 2 +- sys/contrib/zstd/examples/simple_decompression.c | 2 +- sys/contrib/zstd/examples/streaming_compression.c | 32 +- .../examples/streaming_compression_thread_pool.c | 10 +- .../zstd/examples/streaming_decompression.c | 2 +- sys/contrib/zstd/examples/streaming_memory_usage.c | 2 +- sys/contrib/zstd/lib/BUCK | 12 +- sys/contrib/zstd/lib/Makefile | 266 +- sys/contrib/zstd/lib/README.md | 20 +- sys/contrib/zstd/lib/common/bitstream.h | 35 +- sys/contrib/zstd/lib/common/compiler.h | 135 +- sys/contrib/zstd/lib/common/cpu.h | 2 +- sys/contrib/zstd/lib/common/debug.c | 2 +- sys/contrib/zstd/lib/common/debug.h | 2 +- sys/contrib/zstd/lib/common/entropy_common.c | 18 +- sys/contrib/zstd/lib/common/error_private.c | 2 +- sys/contrib/zstd/lib/common/error_private.h | 85 +- sys/contrib/zstd/lib/common/fse.h | 7 +- sys/contrib/zstd/lib/common/fse_decompress.c | 42 +- sys/contrib/zstd/lib/common/huf.h | 51 +- sys/contrib/zstd/lib/common/mem.h | 26 +- sys/contrib/zstd/lib/common/pool.c | 19 +- sys/contrib/zstd/lib/common/pool.h | 6 +- sys/contrib/zstd/lib/common/portability_macros.h | 137 + sys/contrib/zstd/lib/common/xxhash.c | 814 +-- sys/contrib/zstd/lib/common/xxhash.h | 5739 +++++++++++++++++++- sys/contrib/zstd/lib/common/zstd_common.c | 2 +- sys/contrib/zstd/lib/common/zstd_deps.h | 2 +- sys/contrib/zstd/lib/common/zstd_internal.h | 215 +- sys/contrib/zstd/lib/common/zstd_trace.h | 163 + sys/contrib/zstd/lib/compress/clevels.h | 134 + sys/contrib/zstd/lib/compress/fse_compress.c | 92 +- sys/contrib/zstd/lib/compress/hist.c | 2 +- sys/contrib/zstd/lib/compress/hist.h | 2 +- sys/contrib/zstd/lib/compress/huf_compress.c | 712 ++- sys/contrib/zstd/lib/compress/zstd_compress.c | 2249 ++++++-- .../zstd/lib/compress/zstd_compress_internal.h | 443 +- .../zstd/lib/compress/zstd_compress_literals.c | 15 +- .../zstd/lib/compress/zstd_compress_literals.h | 6 +- .../zstd/lib/compress/zstd_compress_sequences.c | 43 +- .../zstd/lib/compress/zstd_compress_sequences.h | 2 +- .../zstd/lib/compress/zstd_compress_superblock.c | 296 +- .../zstd/lib/compress/zstd_compress_superblock.h | 2 +- sys/contrib/zstd/lib/compress/zstd_cwksp.h | 241 +- sys/contrib/zstd/lib/compress/zstd_double_fast.c | 417 +- sys/contrib/zstd/lib/compress/zstd_double_fast.h | 2 +- sys/contrib/zstd/lib/compress/zstd_fast.c | 445 +- sys/contrib/zstd/lib/compress/zstd_fast.h | 2 +- sys/contrib/zstd/lib/compress/zstd_lazy.c | 1352 +++-- sys/contrib/zstd/lib/compress/zstd_lazy.h | 40 +- sys/contrib/zstd/lib/compress/zstd_ldm.c | 474 +- sys/contrib/zstd/lib/compress/zstd_ldm.h | 5 +- sys/contrib/zstd/lib/compress/zstd_ldm_geartab.h | 106 + sys/contrib/zstd/lib/compress/zstd_opt.c | 399 +- sys/contrib/zstd/lib/compress/zstd_opt.h | 2 +- sys/contrib/zstd/lib/compress/zstdmt_compress.c | 146 +- sys/contrib/zstd/lib/compress/zstdmt_compress.h | 15 +- sys/contrib/zstd/lib/decompress/huf_decompress.c | 961 +++- .../zstd/lib/decompress/huf_decompress_amd64.S | 585 ++ sys/contrib/zstd/lib/decompress/zstd_ddict.c | 2 +- sys/contrib/zstd/lib/decompress/zstd_ddict.h | 2 +- sys/contrib/zstd/lib/decompress/zstd_decompress.c | 354 +- .../zstd/lib/decompress/zstd_decompress_block.c | 1038 +++- .../zstd/lib/decompress/zstd_decompress_block.h | 12 +- .../zstd/lib/decompress/zstd_decompress_internal.h | 56 +- sys/contrib/zstd/lib/deprecated/zbuff.h | 2 +- sys/contrib/zstd/lib/deprecated/zbuff_common.c | 2 +- sys/contrib/zstd/lib/deprecated/zbuff_compress.c | 28 +- sys/contrib/zstd/lib/deprecated/zbuff_decompress.c | 2 +- sys/contrib/zstd/lib/dictBuilder/cover.c | 44 +- sys/contrib/zstd/lib/dictBuilder/cover.h | 11 +- sys/contrib/zstd/lib/dictBuilder/divsufsort.c | 2 +- sys/contrib/zstd/lib/dictBuilder/fastcover.c | 38 +- sys/contrib/zstd/lib/dictBuilder/zdict.c | 165 +- sys/contrib/zstd/lib/legacy/zstd_legacy.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v01.c | 10 +- sys/contrib/zstd/lib/legacy/zstd_v01.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v02.c | 12 +- sys/contrib/zstd/lib/legacy/zstd_v02.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v03.c | 12 +- sys/contrib/zstd/lib/legacy/zstd_v03.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v04.c | 12 +- sys/contrib/zstd/lib/legacy/zstd_v04.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v05.c | 20 +- sys/contrib/zstd/lib/legacy/zstd_v05.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v06.c | 20 +- sys/contrib/zstd/lib/legacy/zstd_v06.h | 2 +- sys/contrib/zstd/lib/legacy/zstd_v07.c | 20 +- sys/contrib/zstd/lib/legacy/zstd_v07.h | 2 +- sys/contrib/zstd/lib/libzstd.mk | 203 + sys/contrib/zstd/lib/libzstd.pc.in | 1 + sys/contrib/zstd/lib/module.modulemap | 25 + sys/contrib/zstd/lib/{dictBuilder => }/zdict.h | 159 +- sys/contrib/zstd/lib/zstd.h | 576 +- sys/contrib/zstd/lib/{common => }/zstd_errors.h | 2 +- sys/contrib/zstd/programs/Makefile | 180 +- sys/contrib/zstd/programs/README.md | 6 +- sys/contrib/zstd/programs/benchfn.c | 2 +- sys/contrib/zstd/programs/benchfn.h | 2 +- sys/contrib/zstd/programs/benchzstd.c | 64 +- sys/contrib/zstd/programs/benchzstd.h | 5 +- sys/contrib/zstd/programs/datagen.c | 2 +- sys/contrib/zstd/programs/datagen.h | 2 +- sys/contrib/zstd/programs/dibio.c | 253 +- sys/contrib/zstd/programs/dibio.h | 10 +- sys/contrib/zstd/programs/fileio.c | 440 +- sys/contrib/zstd/programs/fileio.h | 11 +- sys/contrib/zstd/programs/platform.h | 3 +- sys/contrib/zstd/programs/timefn.c | 2 +- sys/contrib/zstd/programs/timefn.h | 2 +- sys/contrib/zstd/programs/util.c | 284 +- sys/contrib/zstd/programs/util.h | 39 +- sys/contrib/zstd/programs/zstd.1 | 36 +- sys/contrib/zstd/programs/zstd.1.md | 62 +- sys/contrib/zstd/programs/zstdcli.c | 203 +- sys/contrib/zstd/programs/zstdcli_trace.c | 172 + sys/contrib/zstd/programs/zstdcli_trace.h | 24 + sys/contrib/zstd/programs/zstdgrep.1 | 7 +- sys/contrib/zstd/programs/zstdgrep.1.md | 6 +- sys/contrib/zstd/programs/zstdless.1 | 2 +- sys/contrib/zstd/zlibWrapper/Makefile | 44 +- sys/contrib/zstd/zlibWrapper/examples/fitblk.c | 2 +- .../zstd/zlibWrapper/examples/fitblk_original.c | 2 +- sys/contrib/zstd/zlibWrapper/examples/zwrapbench.c | 27 +- sys/contrib/zstd/zlibWrapper/gzcompatibility.h | 2 +- sys/contrib/zstd/zlibWrapper/zstd_zlibwrapper.c | 40 +- sys/contrib/zstd/zlibWrapper/zstd_zlibwrapper.h | 2 +- sys/kern/subr_compressor.c | 7 +- usr.bin/zstd/Makefile | 3 +- 147 files changed, 17337 insertions(+), 5480 deletions(-) diff --cc sys/contrib/zstd/Makefile index 2832fb4752b8,000000000000..9b5451d3d748 mode 100644,000000..100644 --- a/sys/contrib/zstd/Makefile +++ b/sys/contrib/zstd/Makefile @@@ -1,420 -1,0 +1,439 @@@ +# ################################################################ - # Copyright (c) 2015-2020, Yann Collet, Facebook, Inc. ++# Copyright (c) 2015-2021, Yann Collet, Facebook, Inc. +# All rights reserved. +# +# This source code is licensed under both the BSD-style license (found in the +# LICENSE file in the root directory of this source tree) and the GPLv2 (found +# in the COPYING file in the root directory of this source tree). +# You may select, at your option, one of the above-listed licenses. +# ################################################################ + +# verbose mode (print commands) on V=1 or VERBOSE=1 +Q = $(if $(filter 1,$(V) $(VERBOSE)),,@) + +PRGDIR = programs +ZSTDDIR = lib +BUILDIR = build +ZWRAPDIR = zlibWrapper +TESTDIR = tests +FUZZDIR = $(TESTDIR)/fuzz + +# Define nul output +VOID = /dev/null + +# When cross-compiling from linux to windows, you might +# need to specify this as "Windows." Fedora build fails +# without it. +# +# Note: mingw-w64 build from linux to windows does not +# fail on other tested distros (ubuntu, debian) even +# without manually specifying the TARGET_SYSTEM. +TARGET_SYSTEM ?= $(OS) ++CP ?= cp + +ifneq (,$(filter Windows%,$(TARGET_SYSTEM))) + EXT =.exe +else + EXT = +endif + +## default: Build lib-release and zstd-release +.PHONY: default +default: lib-release zstd-release + +.PHONY: all +all: allmost examples manual contrib + +.PHONY: allmost +allmost: allzstd zlibwrapper + +# skip zwrapper, can't build that on alternate architectures without the proper zlib installed +.PHONY: allzstd - allzstd: lib-all ++allzstd: lib + $(Q)$(MAKE) -C $(PRGDIR) all + $(Q)$(MAKE) -C $(TESTDIR) all + +.PHONY: all32 +all32: + $(MAKE) -C $(PRGDIR) zstd32 + $(MAKE) -C $(TESTDIR) all32 + - .PHONY: lib lib-release libzstd.a - lib-all : lib - lib lib-release lib-all : ++.PHONY: lib lib-release lib-mt lib-nomt ++lib lib-release lib-mt lib-nomt: + $(Q)$(MAKE) -C $(ZSTDDIR) $@ + +.PHONY: zstd zstd-release +zstd zstd-release: + $(Q)$(MAKE) -C $(PRGDIR) $@ + $(Q)ln -sf $(PRGDIR)/zstd$(EXT) zstd$(EXT) + +.PHONY: zstdmt +zstdmt: + $(Q)$(MAKE) -C $(PRGDIR) $@ - $(Q)cp $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT) ++ $(Q)$(CP) $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT) + +.PHONY: zlibwrapper +zlibwrapper: lib + $(MAKE) -C $(ZWRAPDIR) all + +## test: run long-duration tests +.PHONY: test +DEBUGLEVEL ?= 1 +test: MOREFLAGS += -g -Werror +test: + DEBUGLEVEL=$(DEBUGLEVEL) MOREFLAGS="$(MOREFLAGS)" $(MAKE) -j -C $(PRGDIR) allVariants + $(MAKE) -C $(TESTDIR) $@ + ZSTD=../../programs/zstd $(MAKE) -C doc/educational_decoder $@ + +## shortest: same as `make check` +.PHONY: shortest +shortest: + $(Q)$(MAKE) -C $(TESTDIR) $@ + +## check: run basic tests for `zstd` cli +.PHONY: check +check: shortest + +.PHONY: automated_benchmarking +automated_benchmarking: + $(MAKE) -C $(TESTDIR) $@ + +.PHONY: benchmarking +benchmarking: automated_benchmarking + +## examples: build all examples in `examples/` directory +.PHONY: examples +examples: lib + $(MAKE) -C examples all + +## manual: generate API documentation in html format +.PHONY: manual +manual: + $(MAKE) -C contrib/gen_html $@ + +## man: generate man page +.PHONY: man +man: + $(MAKE) -C programs $@ + +## contrib: build all supported projects in `/contrib` directory +.PHONY: contrib +contrib: lib + $(MAKE) -C contrib/pzstd all + $(MAKE) -C contrib/seekable_format/examples all + $(MAKE) -C contrib/seekable_format/tests test + $(MAKE) -C contrib/largeNbDicts all - cd contrib/single_file_libs/ ; ./build_decoder_test.sh - cd contrib/single_file_libs/ ; ./build_library_test.sh ++ cd build/single_file_libs/ ; ./build_decoder_test.sh ++ cd build/single_file_libs/ ; ./build_library_test.sh + +.PHONY: cleanTabs +cleanTabs: + cd contrib; ./cleanTabs + +.PHONY: clean +clean: + $(Q)$(MAKE) -C $(ZSTDDIR) $@ > $(VOID) + $(Q)$(MAKE) -C $(PRGDIR) $@ > $(VOID) + $(Q)$(MAKE) -C $(TESTDIR) $@ > $(VOID) + $(Q)$(MAKE) -C $(ZWRAPDIR) $@ > $(VOID) + $(Q)$(MAKE) -C examples/ $@ > $(VOID) + $(Q)$(MAKE) -C contrib/gen_html $@ > $(VOID) + $(Q)$(MAKE) -C contrib/pzstd $@ > $(VOID) + $(Q)$(MAKE) -C contrib/seekable_format/examples $@ > $(VOID) + $(Q)$(MAKE) -C contrib/seekable_format/tests $@ > $(VOID) + $(Q)$(MAKE) -C contrib/largeNbDicts $@ > $(VOID) + $(Q)$(RM) zstd$(EXT) zstdmt$(EXT) tmp* + $(Q)$(RM) -r lz4 + @echo Cleaning completed + +#------------------------------------------------------------------------------ +# make install is validated only for Linux, macOS, Hurd and some BSD targets +#------------------------------------------------------------------------------ - ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU OpenBSD FreeBSD DragonFly NetBSD MSYS_NT Haiku)) ++ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU OpenBSD FreeBSD DragonFly NetBSD MSYS_NT Haiku AIX)) + +HOST_OS = POSIX - CMAKE_PARAMS = -DZSTD_BUILD_CONTRIB:BOOL=ON -DZSTD_BUILD_STATIC:BOOL=ON -DZSTD_BUILD_TESTS:BOOL=ON -DZSTD_ZLIB_SUPPORT:BOOL=ON -DZSTD_LZMA_SUPPORT:BOOL=ON -DCMAKE_BUILD_TYPE=Release ++ ++MKDIR ?= mkdir -p + +HAVE_COLORNEVER = $(shell echo a | egrep --color=never a > /dev/null 2> /dev/null && echo 1 || echo 0) +EGREP_OPTIONS ?= +ifeq ($HAVE_COLORNEVER, 1) +EGREP_OPTIONS += --color=never +endif +EGREP = egrep $(EGREP_OPTIONS) + +# Print a two column output of targets and their description. To add a target description, put a +# comment in the Makefile with the format "## : ". For example: +# +## list: Print all targets and their descriptions (if provided) +.PHONY: list +list: + $(Q)TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \ + | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' \ + | $(EGREP) -v -e '^[^[:alnum:]]' | sort); \ + { \ + printf "Target Name\tDescription\n"; \ + printf "%0.s-" {1..16}; printf "\t"; printf "%0.s-" {1..40}; printf "\n"; \ + for target in $$TARGETS; do \ + line=$$($(EGREP) "^##[[:space:]]+$$target:" $(lastword $(MAKEFILE_LIST))); \ + description=$$(echo $$line | awk '{i=index($$0,":"); print substr($$0,i+1)}' | xargs); \ + printf "$$target\t$$description\n"; \ + done \ + } | column -t -s $$'\t' + - .PHONY: install armtest usan asan uasan ++.PHONY: install armtest usan asan uasan msan asan32 +install: + $(Q)$(MAKE) -C $(ZSTDDIR) $@ + $(Q)$(MAKE) -C $(PRGDIR) $@ + +.PHONY: uninstall +uninstall: + $(Q)$(MAKE) -C $(ZSTDDIR) $@ + $(Q)$(MAKE) -C $(PRGDIR) $@ + +.PHONY: travis-install +travis-install: + $(MAKE) install PREFIX=~/install_test_dir + - .PHONY: gcc5build ++.PHONY: gcc5build gcc6build gcc7build clangbuild m32build armbuild aarch64build ppcbuild ppc64build +gcc5build: clean + gcc-5 -v + CC=gcc-5 $(MAKE) all MOREFLAGS="-Werror" + - .PHONY: gcc6build +gcc6build: clean + gcc-6 -v + CC=gcc-6 $(MAKE) all MOREFLAGS="-Werror" + - .PHONY: gcc7build +gcc7build: clean + gcc-7 -v + CC=gcc-7 $(MAKE) all MOREFLAGS="-Werror" + - .PHONY: clangbuild +clangbuild: clean + clang -v + CXX=clang++ CC=clang CFLAGS="-Werror -Wconversion -Wno-sign-conversion -Wdocumentation" $(MAKE) all + +m32build: clean + gcc -v + $(MAKE) all32 + +armbuild: clean + CC=arm-linux-gnueabi-gcc CFLAGS="-Werror" $(MAKE) allzstd + +aarch64build: clean - CC=aarch64-linux-gnu-gcc CFLAGS="-Werror" $(MAKE) allzstd ++ CC=aarch64-linux-gnu-gcc CFLAGS="-Werror -O0" $(MAKE) allzstd + +ppcbuild: clean - CC=powerpc-linux-gnu-gcc CFLAGS="-m32 -Wno-attributes -Werror" $(MAKE) allzstd ++ CC=powerpc-linux-gnu-gcc CFLAGS="-m32 -Wno-attributes -Werror" $(MAKE) -j allzstd + +ppc64build: clean - CC=powerpc-linux-gnu-gcc CFLAGS="-m64 -Werror" $(MAKE) allzstd ++ CC=powerpc-linux-gnu-gcc CFLAGS="-m64 -Werror" $(MAKE) -j allzstd + ++.PHONY: armfuzz aarch64fuzz ppcfuzz ppc64fuzz +armfuzz: clean + CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static MOREFLAGS="-static" FUZZER_FLAGS=--no-big-tests $(MAKE) -C $(TESTDIR) fuzztest + +aarch64fuzz: clean + ld -v + CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static MOREFLAGS="-static" FUZZER_FLAGS=--no-big-tests $(MAKE) -C $(TESTDIR) fuzztest + +ppcfuzz: clean + CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static MOREFLAGS="-static" FUZZER_FLAGS=--no-big-tests $(MAKE) -C $(TESTDIR) fuzztest + +ppc64fuzz: clean + CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static MOREFLAGS="-m64 -static" FUZZER_FLAGS=--no-big-tests $(MAKE) -C $(TESTDIR) fuzztest + - .PHONY: cxxtest ++.PHONY: cxxtest gcc5test gcc6test armtest aarch64test ppctest ppc64test +cxxtest: CXXFLAGS += -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror +cxxtest: clean + $(MAKE) -C $(PRGDIR) all CC="$(CXX) -Wno-deprecated" CFLAGS="$(CXXFLAGS)" # adding -Wno-deprecated to avoid clang++ warning on dealing with C files directly + +gcc5test: clean + gcc-5 -v + $(MAKE) all CC=gcc-5 MOREFLAGS="-Werror" + +gcc6test: clean + gcc-6 -v + $(MAKE) all CC=gcc-6 MOREFLAGS="-Werror" + +armtest: clean + $(MAKE) -C $(TESTDIR) datagen # use native, faster + $(MAKE) -C $(TESTDIR) test CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static ZSTDRTTEST= MOREFLAGS="-Werror -static" FUZZER_FLAGS=--no-big-tests + +aarch64test: + $(MAKE) -C $(TESTDIR) datagen # use native, faster + $(MAKE) -C $(TESTDIR) test CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static ZSTDRTTEST= MOREFLAGS="-Werror -static" FUZZER_FLAGS=--no-big-tests + +ppctest: clean + $(MAKE) -C $(TESTDIR) datagen # use native, faster + $(MAKE) -C $(TESTDIR) test CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static ZSTDRTTEST= MOREFLAGS="-Werror -Wno-attributes -static" FUZZER_FLAGS=--no-big-tests + +ppc64test: clean + $(MAKE) -C $(TESTDIR) datagen # use native, faster + $(MAKE) -C $(TESTDIR) test CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static ZSTDRTTEST= MOREFLAGS="-m64 -static" FUZZER_FLAGS=--no-big-tests + ++.PHONY: arm-ppc-compilation +arm-ppc-compilation: + $(MAKE) -C $(PRGDIR) clean zstd CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static ZSTDRTTEST= MOREFLAGS="-Werror -static" + $(MAKE) -C $(PRGDIR) clean zstd CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static ZSTDRTTEST= MOREFLAGS="-Werror -static" + $(MAKE) -C $(PRGDIR) clean zstd CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static ZSTDRTTEST= MOREFLAGS="-Werror -Wno-attributes -static" + $(MAKE) -C $(PRGDIR) clean zstd CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static ZSTDRTTEST= MOREFLAGS="-m64 -static" + +regressiontest: + $(MAKE) -C $(FUZZDIR) regressiontest + +uasanregressiontest: + $(MAKE) -C $(FUZZDIR) regressiontest CC=clang CXX=clang++ CFLAGS="-O3 -fsanitize=address,undefined" CXXFLAGS="-O3 -fsanitize=address,undefined" + +msanregressiontest: + $(MAKE) -C $(FUZZDIR) regressiontest CC=clang CXX=clang++ CFLAGS="-O3 -fsanitize=memory" CXXFLAGS="-O3 -fsanitize=memory" + - # run UBsan with -fsanitize-recover=signed-integer-overflow - # due to a bug in UBsan when doing pointer subtraction - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63303 - ++update_regressionResults : REGRESS_RESULTS_DIR := /tmp/regress_results_dir/ ++update_regressionResults: ++ $(MAKE) -C programs zstd ++ $(MAKE) -C tests/regression test ++ $(RM) -rf $(REGRESS_RESULTS_DIR) ++ $(MKDIR) $(REGRESS_RESULTS_DIR) ++ ./tests/regression/test \ ++ --cache tests/regression/cache \ ++ --output $(REGRESS_RESULTS_DIR)/results.csv \ ++ --zstd programs/zstd ++ echo "Showing results differences" ++ ! diff tests/regression/results.csv $(REGRESS_RESULTS_DIR)/results.csv ++ echo "Updating results.csv" ++ $(CP) $(REGRESS_RESULTS_DIR)/results.csv tests/regression/results.csv ++ ++ ++# run UBsan with -fsanitize-recover=pointer-overflow ++# this only works with recent compilers such as gcc 8+ +usan: clean - $(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=signed-integer-overflow -fsanitize=undefined -Werror" ++ $(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=pointer-overflow -fsanitize=undefined -Werror" + +asan: clean + $(MAKE) test CC=clang MOREFLAGS="-g -fsanitize=address -Werror" + +asan-%: clean + LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize=address -Werror" $(MAKE) -C $(TESTDIR) $* + +msan: clean + $(MAKE) test CC=clang MOREFLAGS="-g -fsanitize=memory -fno-omit-frame-pointer -Werror" HAVE_LZMA=0 # datagen.c fails this test for no obvious reason + +msan-%: clean + LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize=memory -fno-omit-frame-pointer -Werror" FUZZER_FLAGS=--no-big-tests $(MAKE) -C $(TESTDIR) HAVE_LZMA=0 $* + +asan32: clean + $(MAKE) -C $(TESTDIR) test32 CC=clang MOREFLAGS="-g -fsanitize=address" + +uasan: clean - $(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=signed-integer-overflow -fsanitize=address,undefined -Werror" ++ $(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=pointer-overflow -fsanitize=address,undefined -Werror" + +uasan-%: clean - LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=signed-integer-overflow -fsanitize=address,undefined -Werror" $(MAKE) -C $(TESTDIR) $* ++ LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=pointer-overflow -fsanitize=address,undefined -Werror" $(MAKE) -C $(TESTDIR) $* + +tsan-%: clean + LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize=thread -Werror" $(MAKE) -C $(TESTDIR) $* FUZZER_FLAGS=--no-big-tests + ++.PHONY: apt-install +apt-install: + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install $(APT_PACKAGES) + ++.PHONY: apt-add-repo +apt-add-repo: + sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test + sudo apt-get update -y -qq + ++.PHONY: ppcinstall arminstall valgrindinstall libc6install gcc6install gcc7install gcc8install gpp6install clang38install lz4install +ppcinstall: + APT_PACKAGES="qemu-system-ppc qemu-user-static gcc-powerpc-linux-gnu" $(MAKE) apt-install + +arminstall: + APT_PACKAGES="qemu-system-arm qemu-user-static gcc-arm-linux-gnueabi libc6-dev-armel-cross gcc-aarch64-linux-gnu libc6-dev-arm64-cross" $(MAKE) apt-install + +valgrindinstall: + APT_PACKAGES="valgrind" $(MAKE) apt-install + +libc6install: + APT_PACKAGES="libc6-dev-i386 gcc-multilib" $(MAKE) apt-install + +gcc6install: apt-add-repo + APT_PACKAGES="libc6-dev-i386 gcc-multilib gcc-6 gcc-6-multilib" $(MAKE) apt-install + +gcc7install: apt-add-repo + APT_PACKAGES="libc6-dev-i386 gcc-multilib gcc-7 gcc-7-multilib" $(MAKE) apt-install + +gcc8install: apt-add-repo + APT_PACKAGES="libc6-dev-i386 gcc-multilib gcc-8 gcc-8-multilib" $(MAKE) apt-install + +gpp6install: apt-add-repo + APT_PACKAGES="libc6-dev-i386 g++-multilib gcc-6 g++-6 g++-6-multilib" $(MAKE) apt-install + +clang38install: + APT_PACKAGES="clang-3.8" $(MAKE) apt-install + +# Ubuntu 14.04 ships a too-old lz4 +lz4install: + [ -e lz4 ] || git clone https://github.com/lz4/lz4 && sudo $(MAKE) -C lz4 install + +endif + + ++CMAKE_PARAMS = -DZSTD_BUILD_CONTRIB:BOOL=ON -DZSTD_BUILD_STATIC:BOOL=ON -DZSTD_BUILD_TESTS:BOOL=ON -DZSTD_ZLIB_SUPPORT:BOOL=ON -DZSTD_LZMA_SUPPORT:BOOL=ON -DCMAKE_BUILD_TYPE=Release ++ +ifneq (,$(filter MSYS%,$(shell uname))) +HOST_OS = MSYS +CMAKE_PARAMS = -G"MSYS Makefiles" -DCMAKE_BUILD_TYPE=Debug -DZSTD_MULTITHREAD_SUPPORT:BOOL=OFF -DZSTD_BUILD_STATIC:BOOL=ON -DZSTD_BUILD_TESTS:BOOL=ON +endif + - +#------------------------------------------------------------------------ +# target specific tests +#------------------------------------------------------------------------ +ifneq (,$(filter $(HOST_OS),MSYS POSIX)) ++.PHONY: cmakebuild c89build gnu90build c99build gnu99build c11build bmix64build bmix32build bmi32build staticAnalyze +cmakebuild: + cmake --version + $(RM) -r $(BUILDIR)/cmake/build - mkdir $(BUILDIR)/cmake/build ++ $(MKDIR) $(BUILDIR)/cmake/build + cd $(BUILDIR)/cmake/build; cmake -DCMAKE_INSTALL_PREFIX:PATH=~/install_test_dir $(CMAKE_PARAMS) .. + $(MAKE) -C $(BUILDIR)/cmake/build -j4; + $(MAKE) -C $(BUILDIR)/cmake/build install; + $(MAKE) -C $(BUILDIR)/cmake/build uninstall; + cd $(BUILDIR)/cmake/build; ctest -V -L Medium + +c89build: clean + $(CC) -v - CFLAGS="-std=c89 -Werror" $(MAKE) allmost # will fail, due to missing support for `long long` ++ CFLAGS="-std=c89 -Werror -O0" $(MAKE) allmost # will fail, due to missing support for `long long` + +gnu90build: clean + $(CC) -v - CFLAGS="-std=gnu90 -Werror" $(MAKE) allmost ++ CFLAGS="-std=gnu90 -Werror -O0" $(MAKE) allmost + +c99build: clean + $(CC) -v - CFLAGS="-std=c99 -Werror" $(MAKE) allmost ++ CFLAGS="-std=c99 -Werror -O0" $(MAKE) allmost + +gnu99build: clean + $(CC) -v - CFLAGS="-std=gnu99 -Werror" $(MAKE) allmost ++ CFLAGS="-std=gnu99 -Werror -O0" $(MAKE) allmost + +c11build: clean + $(CC) -v - CFLAGS="-std=c11 -Werror" $(MAKE) allmost ++ CFLAGS="-std=c11 -Werror -O0" $(MAKE) allmost + +bmix64build: clean + $(CC) -v + CFLAGS="-O3 -mbmi -Werror" $(MAKE) -C $(TESTDIR) test + +bmix32build: clean + $(CC) -v + CFLAGS="-O3 -mbmi -mx32 -Werror" $(MAKE) -C $(TESTDIR) test + +bmi32build: clean + $(CC) -v + CFLAGS="-O3 -mbmi -m32 -Werror" $(MAKE) -C $(TESTDIR) test + +# static analyzer test uses clang's scan-build +# does not analyze zlibWrapper, due to detected issues in zlib source code +staticAnalyze: SCANBUILD ?= scan-build +staticAnalyze: + $(CC) -v - CC=$(CC) CPPFLAGS=-g $(SCANBUILD) --status-bugs -v $(MAKE) allzstd examples contrib ++ CC=$(CC) CPPFLAGS=-g $(SCANBUILD) --status-bugs -v $(MAKE) zstd +endif diff --cc sys/contrib/zstd/README.md index dcca7662d2ff,000000000000..69720ba2ccf8 mode 100644,000000..100644 --- a/sys/contrib/zstd/README.md +++ b/sys/contrib/zstd/README.md @@@ -1,199 -1,0 +1,199 @@@ +

Zstandard

+ +__Zstandard__, or `zstd` as short version, is a fast lossless compression algorithm, +targeting real-time compression scenarios at zlib-level and better compression ratios. +It's backed by a very fast entropy stage, provided by [Huff0 and FSE library](https://github.com/Cyan4973/FiniteStateEntropy). + - The project is provided as an open-source dual [BSD](LICENSE) and [GPLv2](COPYING) licensed **C** library, ++Zstandard's format is stable and documented in [RFC8878](https://datatracker.ietf.org/doc/html/rfc8878). Multiple independent implementations are already available. ++This repository represents the reference implementation, provided as an open-source dual [BSD](LICENSE) and [GPLv2](COPYING) licensed **C** library, +and a command line utility producing and decoding `.zst`, `.gz`, `.xz` and `.lz4` files. +Should your project require another programming language, +a list of known ports and bindings is provided on [Zstandard homepage](http://www.zstd.net/#other-languages). + +**Development branch status:** + +[![Build Status][travisDevBadge]][travisLink] +[![Build status][AppveyorDevBadge]][AppveyorLink] +[![Build status][CircleDevBadge]][CircleLink] +[![Build status][CirrusDevBadge]][CirrusLink] +[![Fuzzing Status][OSSFuzzBadge]][OSSFuzzLink] + - [travisDevBadge]: https://travis-ci.org/facebook/zstd.svg?branch=dev "Continuous Integration test suite" - [travisLink]: https://travis-ci.org/facebook/zstd ++[travisDevBadge]: https://api.travis-ci.com/facebook/zstd.svg?branch=dev "Continuous Integration test suite" ++[travisLink]: https://travis-ci.com/facebook/zstd +[AppveyorDevBadge]: https://ci.appveyor.com/api/projects/status/xt38wbdxjk5mrbem/branch/dev?svg=true "Windows test suite" +[AppveyorLink]: https://ci.appveyor.com/project/YannCollet/zstd-p0yf0 +[CircleDevBadge]: https://circleci.com/gh/facebook/zstd/tree/dev.svg?style=shield "Short test suite" +[CircleLink]: https://circleci.com/gh/facebook/zstd +[CirrusDevBadge]: https://api.cirrus-ci.com/github/facebook/zstd.svg?branch=dev +[CirrusLink]: https://cirrus-ci.com/github/facebook/zstd +[OSSFuzzBadge]: https://oss-fuzz-build-logs.storage.googleapis.com/badges/zstd.svg +[OSSFuzzLink]: https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:zstd + +## Benchmarks + +For reference, several fast compression algorithms were tested and compared - on a server running Arch Linux (`Linux version 5.5.11-arch1-1`), - with a Core i9-9900K CPU @ 5.0GHz, ++on a desktop running Ubuntu 20.04 (`Linux 5.11.0-41-generic`), ++with a Core i7-9700K CPU @ 4.9GHz, +using [lzbench], an open-source in-memory benchmark by @inikep +compiled with [gcc] 9.3.0, +on the [Silesia compression corpus]. + +[lzbench]: https://github.com/inikep/lzbench +[Silesia compression corpus]: http://sun.aei.polsl.pl/~sdeor/index.php?page=silesia +[gcc]: https://gcc.gnu.org/ + +| Compressor name | Ratio | Compression| Decompress.| +| --------------- | ------| -----------| ---------- | - | **zstd 1.4.5 -1** | 2.884 | 500 MB/s | 1660 MB/s | - | zlib 1.2.11 -1 | 2.743 | 90 MB/s | 400 MB/s | - | brotli 1.0.7 -0 | 2.703 | 400 MB/s | 450 MB/s | - | **zstd 1.4.5 --fast=1** | 2.434 | 570 MB/s | 2200 MB/s | - | **zstd 1.4.5 --fast=3** | 2.312 | 640 MB/s | 2300 MB/s | - | quicklz 1.5.0 -1 | 2.238 | 560 MB/s | 710 MB/s | - | **zstd 1.4.5 --fast=5** | 2.178 | 700 MB/s | 2420 MB/s | - | lzo1x 2.10 -1 | 2.106 | 690 MB/s | 820 MB/s | - | lz4 1.9.2 | 2.101 | 740 MB/s | 4530 MB/s | - | **zstd 1.4.5 --fast=7** | 2.096 | 750 MB/s | 2480 MB/s | - | lzf 3.6 -1 | 2.077 | 410 MB/s | 860 MB/s | - | snappy 1.1.8 | 2.073 | 560 MB/s | 1790 MB/s | ++| **zstd 1.5.1 -1** | 2.887 | 530 MB/s | 1700 MB/s | ++| [zlib] 1.2.11 -1 | 2.743 | 95 MB/s | 400 MB/s | ++| brotli 1.0.9 -0 | 2.702 | 395 MB/s | 450 MB/s | ++| **zstd 1.5.1 --fast=1** | 2.437 | 600 MB/s | 2150 MB/s | ++| **zstd 1.5.1 --fast=3** | 2.239 | 670 MB/s | 2250 MB/s | ++| quicklz 1.5.0 -1 | 2.238 | 540 MB/s | 760 MB/s | ++| **zstd 1.5.1 --fast=4** | 2.148 | 710 MB/s | 2300 MB/s | ++| lzo1x 2.10 -1 | 2.106 | 660 MB/s | 845 MB/s | ++| [lz4] 1.9.3 | 2.101 | 740 MB/s | 4500 MB/s | ++| lzf 3.6 -1 | 2.077 | 410 MB/s | 830 MB/s | ++| snappy 1.1.9 | 2.073 | 550 MB/s | 1750 MB/s | + +[zlib]: http://www.zlib.net/ - [LZ4]: http://www.lz4.org/ ++[lz4]: http://www.lz4.org/ + +The negative compression levels, specified with `--fast=#`, - offer faster compression and decompression speed in exchange for some loss in - compression ratio compared to level 1, as seen in the table above. ++offer faster compression and decompression speed ++at the cost of compression ratio (compared to level 1). + +Zstd can also offer stronger compression ratios at the cost of compression speed. +Speed vs Compression trade-off is configurable by small increments. +Decompression speed is preserved and remains roughly the same at all settings, +a property shared by most LZ compression algorithms, such as [zlib] or lzma. + +The following tests were run +on a server running Linux Debian (`Linux version 4.14.0-3-amd64`) +with a Core i7-6700K CPU @ 4.0GHz, +using [lzbench], an open-source in-memory benchmark by @inikep +compiled with [gcc] 7.3.0, +on the [Silesia compression corpus]. + +Compression Speed vs Ratio | Decompression Speed +---------------------------|-------------------- +![Compression Speed vs Ratio](doc/images/CSpeed2.png "Compression Speed vs Ratio") | ![Decompression Speed](doc/images/DSpeed3.png "Decompression Speed") + +A few other algorithms can produce higher compression ratios at slower speeds, falling outside of the graph. +For a larger picture including slow modes, [click on this link](doc/images/DCspeed5.png). + + +## The case for Small Data compression + +Previous charts provide results applicable to typical file and stream scenarios (several MB). Small data comes with different perspectives. + +The smaller the amount of data to compress, the more difficult it is to compress. This problem is common to all compression algorithms, and reason is, compression algorithms learn from past data how to compress future data. But at the beginning of a new data set, there is no "past" to build upon. + +To solve this situation, Zstd offers a __training mode__, which can be used to tune the algorithm for a selected type of data. +Training Zstandard is achieved by providing it with a few samples (one file per sample). The result of this training is stored in a file called "dictionary", which must be loaded before compression and decompression. +Using this dictionary, the compression ratio achievable on small data improves dramatically. + +The following example uses the `github-users` [sample set](https://github.com/facebook/zstd/releases/tag/v1.1.3), created from [github public API](https://developer.github.com/v3/users/#get-all-users). +It consists of roughly 10K records weighing about 1KB each. + +Compression Ratio | Compression Speed | Decompression Speed +------------------|-------------------|-------------------- +![Compression Ratio](doc/images/dict-cr.png "Compression Ratio") | ![Compression Speed](doc/images/dict-cs.png "Compression Speed") | ![Decompression Speed](doc/images/dict-ds.png "Decompression Speed") + + +These compression gains are achieved while simultaneously providing _faster_ compression and decompression speeds. + +Training works if there is some correlation in a family of small data samples. The more data-specific a dictionary is, the more efficient it is (there is no _universal dictionary_). +Hence, deploying one dictionary per type of data will provide the greatest benefits. +Dictionary gains are mostly effective in the first few KB. Then, the compression algorithm will gradually use previously decoded content to better compress the rest of the file. + +### Dictionary compression How To: + +1. Create the dictionary + + `zstd --train FullPathToTrainingSet/* -o dictionaryName` + +2. Compress with dictionary + + `zstd -D dictionaryName FILE` + +3. Decompress with dictionary + + `zstd -D dictionaryName --decompress FILE.zst` + + +## Build instructions + +### Makefile + +If your system is compatible with standard `make` (or `gmake`), +invoking `make` in root directory will generate `zstd` cli in root directory. + +Other available options include: +- `make install` : create and install zstd cli, library and man pages +- `make check` : create and run `zstd`, tests its behavior on local platform + +### cmake + +A `cmake` project generator is provided within `build/cmake`. +It can generate Makefiles or other build scripts +to create `zstd` binary, and `libzstd` dynamic and static libraries. + +By default, `CMAKE_BUILD_TYPE` is set to `Release`. + +### Meson + +A Meson project is provided within [`build/meson`](build/meson). Follow +build instructions in that directory. + +You can also take a look at [`.travis.yml`](.travis.yml) file for an +example about how Meson is used to build this project. + +Note that default build type is **release**. + +### VCPKG +You can build and install zstd [vcpkg](https://github.com/Microsoft/vcpkg/) dependency manager: + + git clone https://github.com/Microsoft/vcpkg.git + cd vcpkg + ./bootstrap-vcpkg.sh + ./vcpkg integrate install + ./vcpkg install zstd + +The zstd port in vcpkg is kept up to date by Microsoft team members and community contributors. +If the version is out of date, please [create an issue or pull request](https://github.com/Microsoft/vcpkg) on the vcpkg repository. + +### Visual Studio (Windows) + +Going into `build` directory, you will find additional possibilities: +- Projects for Visual Studio 2005, 2008 and 2010. + + VS2010 project is compatible with VS2012, VS2013, VS2015 and VS2017. +- Automated build scripts for Visual compiler by [@KrzysFR](https://github.com/KrzysFR), in `build/VS_scripts`, + which will build `zstd` cli and `libzstd` library without any need to open Visual Studio solution. + +### Buck + +You can build the zstd binary via buck by executing: `buck build programs:zstd` from the root of the repo. +The output binary will be in `buck-out/gen/programs/`. + +## Testing + +You can run quick local smoke tests by executing the `playTest.sh` script from the `src/tests` directory. +Two env variables `$ZSTD_BIN` and `$DATAGEN_BIN` are needed for the test script to locate the zstd and datagen binary. +For information on CI testing, please refer to TESTING.md + +## Status + +Zstandard is currently deployed within Facebook. It is used continuously to compress large amounts of data in multiple formats and use cases. +Zstandard is considered safe for production environments. + +## License + +Zstandard is dual-licensed under [BSD](LICENSE) and [GPLv2](COPYING). + +## Contributing + +The `dev` branch is the one where all contributions are merged before reaching `release`. +If you plan to propose a patch, please commit into the `dev` branch, or its own feature branch. +Direct commit to `release` are not permitted. +For more information, please read [CONTRIBUTING](CONTRIBUTING.md). diff --cc sys/contrib/zstd/lib/Makefile index 869d76630e68,000000000000..ef202183d843 mode 100644,000000..100644 --- a/sys/contrib/zstd/lib/Makefile +++ b/sys/contrib/zstd/lib/Makefile @@@ -1,451 -1,0 +1,357 @@@ +# ################################################################ - # Copyright (c) 2015-2020, Yann Collet, Facebook, Inc. ++# Copyright (c) Yann Collet, Facebook, Inc. +# All rights reserved. +# +# This source code is licensed under both the BSD-style license (found in the +# LICENSE file in the root directory of this source tree) and the GPLv2 (found +# in the COPYING file in the root directory of this source tree). +# You may select, at your option, one of the above-listed licenses. +# ################################################################ + - .PHONY: default - default: lib-release - - # define silent mode as default (verbose mode with V=1 or VERBOSE=1) - $(V)$(VERBOSE).SILENT: - - # When cross-compiling from linux to windows, - # one might need to specify TARGET_SYSTEM as "Windows." - # Building from Fedora fails without it. - # (but Ubuntu and Debian don't need to set anything) - TARGET_SYSTEM ?= $(OS) - - # Version numbers - LIBVER_MAJOR_SCRIPT:=`sed -n '/define ZSTD_VERSION_MAJOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < ./zstd.h` - LIBVER_MINOR_SCRIPT:=`sed -n '/define ZSTD_VERSION_MINOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < ./zstd.h` - LIBVER_PATCH_SCRIPT:=`sed -n '/define ZSTD_VERSION_RELEASE/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < ./zstd.h` - LIBVER_SCRIPT:= $(LIBVER_MAJOR_SCRIPT).$(LIBVER_MINOR_SCRIPT).$(LIBVER_PATCH_SCRIPT) - LIBVER_MAJOR := $(shell echo $(LIBVER_MAJOR_SCRIPT)) - LIBVER_MINOR := $(shell echo $(LIBVER_MINOR_SCRIPT)) - LIBVER_PATCH := $(shell echo $(LIBVER_PATCH_SCRIPT)) - LIBVER := $(shell echo $(LIBVER_SCRIPT)) - VERSION?= $(LIBVER) - CCVER := $(shell $(CC) --version) - - # ZSTD_LIB_MINIFY is a helper variable that - # configures a bunch of other variables to space-optimized defaults. - ZSTD_LIB_MINIFY ?= 0 - ifneq ($(ZSTD_LIB_MINIFY), 0) - HAVE_CC_OZ ?= $(shell echo "" | $(CC) -Oz -x c -c - -o /dev/null 2> /dev/null && echo 1 || echo 0) - ZSTD_LEGACY_SUPPORT ?= 0 - ZSTD_LIB_DEPRECATED ?= 0 - HUF_FORCE_DECOMPRESS_X1 ?= 1 - ZSTD_FORCE_DECOMPRESS_SHORT ?= 1 - ZSTD_NO_INLINE ?= 1 - ZSTD_STRIP_ERROR_STRINGS ?= 1 - ifneq ($(HAVE_CC_OZ), 0) - # Some compilers (clang) support an even more space-optimized setting. - CFLAGS += -Oz - else - CFLAGS += -Os - endif - CFLAGS += -fno-stack-protector -fomit-frame-pointer -fno-ident \ - -DDYNAMIC_BMI2=0 -DNDEBUG - else - CFLAGS += -O3 - endif - - DEBUGLEVEL ?= 0 - CPPFLAGS += -DXXH_NAMESPACE=ZSTD_ -DDEBUGLEVEL=$(DEBUGLEVEL) - ifeq ($(TARGET_SYSTEM),Windows_NT) # MinGW assumed - CPPFLAGS += -D__USE_MINGW_ANSI_STDIO # compatibility with %zu formatting - endif - DEBUGFLAGS= -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow \ - -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement \ - -Wstrict-prototypes -Wundef -Wpointer-arith \ - -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings \ - -Wredundant-decls -Wmissing-prototypes -Wc++-compat - CFLAGS += $(DEBUGFLAGS) $(MOREFLAGS) - FLAGS = $(CPPFLAGS) $(CFLAGS) - - HAVE_COLORNEVER = $(shell echo a | grep --color=never a > /dev/null 2> /dev/null && echo 1 || echo 0) - GREP_OPTIONS ?= - ifeq ($HAVE_COLORNEVER, 1) - GREP_OPTIONS += --color=never - endif - GREP = grep $(GREP_OPTIONS) - SED_ERE_OPT ?= -E - - ZSTDCOMMON_FILES := $(sort $(wildcard common/*.c)) - ZSTDCOMP_FILES := $(sort $(wildcard compress/*.c)) - ZSTDDECOMP_FILES := $(sort $(wildcard decompress/*.c)) - ZDICT_FILES := $(sort $(wildcard dictBuilder/*.c)) - ZDEPR_FILES := $(sort $(wildcard deprecated/*.c)) - ZSTD_FILES := $(ZSTDCOMMON_FILES) - - ifeq ($(findstring GCC,$(CCVER)),GCC) - decompress/zstd_decompress_block.o : CFLAGS+=-fno-tree-vectorize - endif - +# Modules +ZSTD_LIB_COMPRESSION ?= 1 +ZSTD_LIB_DECOMPRESSION ?= 1 +ZSTD_LIB_DICTBUILDER ?= 1 - ZSTD_LIB_DEPRECATED ?= 1 - - # Legacy support - ZSTD_LEGACY_SUPPORT ?= 5 - ZSTD_LEGACY_MULTITHREADED_API ?= 0 - - # Build size optimizations - HUF_FORCE_DECOMPRESS_X1 ?= 0 - HUF_FORCE_DECOMPRESS_X2 ?= 0 - ZSTD_FORCE_DECOMPRESS_SHORT ?= 0 - ZSTD_FORCE_DECOMPRESS_LONG ?= 0 *** 1832 LINES SKIPPED *** From nobody Fri Jan 27 17:41: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 4P3Pyw1DG5z3bKsN; Fri, 27 Jan 2023 17:42: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 4P3Pyw0fZvz3v9k; Fri, 27 Jan 2023 17:42:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841320; 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=ybDlZMl8MQNxUMWv+HhHfdgALCS+gnfN4gV1mYokrxY=; b=hHp42leloGndnzjskhwwW08Kr0iwTaT3O1PlhlfAXdklfHOWVw5lbAvD6Oql2sryuRcMoS ol+hkWvB8EY3VubF+dLEcfNKUK5B03kTheXR+yeWV3/6esbDuAVqgkRXikRT1hl+CtUXW7 gYbdhVLrZVCZl/wZtrmC/yFVh173v4dybnFr941eUf9I3Wl6xGQhfMHeEaMS+XF6C7kj2K h9c1grFEiqch+uyjklavu/n6F+1E2CWrx2VL0/RSg/HSF78zcHENh1ZaZATag4E5lJyDHQ xguiwj1l7sawhfIIMKCD6IGRicJPFzZDjJ0GZ2TswzSphL7iKl+0gowh+TeFiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841320; 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=ybDlZMl8MQNxUMWv+HhHfdgALCS+gnfN4gV1mYokrxY=; b=ERgKVItutk6YQrs5khhMiWc2yhn9MU5LN7NAF/RG4ykNdIGMjsvd9Sws1QLuRm3spOu1jC 2k++Sx5NCXvCEYL6hOh9eQ/qF0xjqL+Qj1cTIXEutinwTh4xzyT3fr3Xfjju+oH5CWt+GG 6JDoZmdiBeUKjUvyYAaf38OQ7kIxNHrMm7gO5lutqF+aFD0OPG7qurOWd05Sazg7vFbBVS GQcSsg4SZUSMuWDE9OtsnsFZCLJ99LKK8yJE/pZo0QWdgtUaXaf2wsnqkP6kAJfrt78U/F cQx8Ss7nt3iT6b8ThWlxzXyKsdiFSYdzxSOeHgjfFKD8xvir+pOq0Nw5n4pMLA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674841320; a=rsa-sha256; cv=none; b=fCs0GGqhIx9vYtjqQuzZyLIfUvyl3r0RXa9TtXFA+IiBYwDewl7Nuo4Eqq/mGfk77MvmGb wAUgHcKiUm4CHx3IZjGtBoHnFMxLbQLSj9nO0lmLJRHlUixhDpgyLvlopLLHPLIgHYbmxv PqPq5BbNmIvMeffQ2DTMH2v2EKfJ+GkPj0c7INRLwLmQQZK+h8NySucMuZVR/LGGbTnfPV mIHsnThkNJijNd/9Nu5oazM6MaTlPDzF5ddnlWSp+BZn8i1iFg+mWWhj1lG7hte7yzuenZ JyGlZKI6G6Ntnw3RnUzwUc5sJ4XHwAblAoys9CDiHNqKY4pKTXP/tYIC7elFYw== 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 4P3Pyv6pytzHxb; Fri, 27 Jan 2023 17:41:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RHfxim085338; Fri, 27 Jan 2023 17:41:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RHfxH3085337; Fri, 27 Jan 2023 17:41:59 GMT (envelope-from git) Date: Fri, 27 Jan 2023 17:41:59 GMT Message-Id: <202301271741.30RHfxH3085337@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: 9501683925b2 - main - Revert "Don't omit bsd.compiler.mk for the nested delete-old in buildworld." 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: 9501683925b217b38d332f4dc13f9fe8f9ea0c29 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=9501683925b217b38d332f4dc13f9fe8f9ea0c29 commit 9501683925b217b38d332f4dc13f9fe8f9ea0c29 Author: John Baldwin AuthorDate: 2023-01-27 17:41:47 +0000 Commit: John Baldwin CommitDate: 2023-01-27 17:41:47 +0000 Revert "Don't omit bsd.compiler.mk for the nested delete-old in buildworld." The original motivation (src.opts.mk needing bsd.comppiler.mk to determine if CXX is supported) is no longer relevant now that CXX is non-optional. This reverts commit b9cb80883bce6dc992cf05ae2e59089a60d311ec. --- Makefile.inc1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index dac412559716..ae50cdda508f 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1024,7 +1024,7 @@ _worldtmp: .PHONY ${_+_}@if [ -e "${WORLDTMP}" ]; then \ echo ">>> Deleting stale files in build tree..."; \ cd ${.CURDIR}; env PATH=${TMPPATH:Q}:${PATH:Q} ${WMAKE:NPATH=*} \ - -DBATCH_DELETE_OLD_FILES delete-old \ + _NO_INCLUDE_COMPILERMK=t -DBATCH_DELETE_OLD_FILES delete-old \ delete-old-libs >/dev/null; \ fi rm -rf ${WORLDTMP}/legacy/usr/include From nobody Fri Jan 27 17:45: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 4P3Q2d5382z3bLc5; Fri, 27 Jan 2023 17:45: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 4P3Q2d4bmmz3vwH; Fri, 27 Jan 2023 17:45:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841513; 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=yLP8sN46yC1K9b8JmIGEoF3fVfPcHU1PiJ7ZgrQ3CSU=; b=onyIQEsa7xwtEQ50jwGYp19hi2QJFfDkJUEGWaIUubDEBDE+KtQdlVioNiRb0xEMXJOtxu /JVUh87SAO7m9j49nXryIAwL3XZWtRApNytCAdPJ6OVcSQ/wYQmjUMYJLDrs4UvfwXKXKm UBZ4mjT50gw22c4V+0+4Pqxy3B0UTcJEr814ZXoCrdlxmhi54ipu8jV61NFg14DN2BdbxM /eJwrINkToQ3UVNazjE4FkO/T87QDg0VerEbBhjh2UcKxR5iGTcqs1CbCIYiyxp9uuR0lT HkJbI7vfwcUvWRdOUFsTWi09Gv6Vz8wkk7YPuOSZUEgEMHZSZdLmKbMeVVm3Kg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841513; 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=yLP8sN46yC1K9b8JmIGEoF3fVfPcHU1PiJ7ZgrQ3CSU=; b=y3rDP9f/7mmDFuH4vNzFR84CHD7RXutRqnISiu9D1E6MS+B+b3GD/4VFPK6Q2KsLTlKpzp 9rhK5C+uE0gYP66Vbzec9VS4B3rYyRLGp08gU/3d8GbuCxMxVHgkCS/6o0voBwj9hgl70f 89UD2HUKfZ2oGREUfjC03d71rrRxui+cZgrPDro3b+WkKLXqGPhyDC85f4M5y8B70qGJoR lr+ngf4y1XKNjYHGJfDw4xmvpmlAy4aux6ueLbsyopFfWkrPBqiIhDXXj8fBGbN1mEYtaz kViKeXugcwksNO/AO1dpWt00A9jg520pXFXOHLMsfY6UFIHI3YtRepyl7rVVVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674841513; a=rsa-sha256; cv=none; b=VhyBE/vVGCDnnzHyT5HoCOFeS9IhSMS00d0kcsQSJSPot5ttbYpn+/PiK1a0lReznYBZII y9uRV9Qw5k+WwKxQoaCSTuiDgmEp2kGfJH/svGbLvYsgtXIH33V3R7P4BO5qL1G3W8ofif h15Ztqx0XyYDwa1xnBVAWqqHm+fz5ceFSBD/6lOdlnuFoAYABdLqcGFj98BE8tidoIbd4i mmb4GG5NQlfyciqYaX5ksQTO+oMqPGOD+n6uIT5q40TLmGGWeb0FjqFRrSuN77kHtOpbbO 7NThJSh0u8C4aSIn40X1vfZXT9MVVoHnVOkTmpL361vadS6MeMUWCn8mCM4Y/Q== 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 4P3Q2d3g4dzJBZ; Fri, 27 Jan 2023 17:45:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RHjDuj085873; Fri, 27 Jan 2023 17:45:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RHjD4i085872; Fri, 27 Jan 2023 17:45:13 GMT (envelope-from git) Date: Fri, 27 Jan 2023 17:45:13 GMT Message-Id: <202301271745.30RHjD4i085872@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: 11989314dc4a - main - x86: add more definitions for XCR0 bits 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: 11989314dc4a62c82193b6727d33625f2269e511 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=11989314dc4a62c82193b6727d33625f2269e511 commit 11989314dc4a62c82193b6727d33625f2269e511 Author: Konstantin Belousov AuthorDate: 2023-01-27 10:43:56 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-27 17:44:49 +0000 x86: add more definitions for XCR0 bits This covers all currently defined bits, adding PKRU and TILE. Reviewed by: jhb, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D38219 --- sys/x86/include/specialreg.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index 395338b4a4b4..1b109b48818b 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -108,6 +108,9 @@ #define XFEATURE_ENABLED_OPMASK 0x00000020 #define XFEATURE_ENABLED_ZMM_HI256 0x00000040 #define XFEATURE_ENABLED_HI16_ZMM 0x00000080 +#define XFEATURE_ENABLED_PKRU 0x00000200 +#define XFEATURE_ENABLED_TILECONFIG 0x00020000 +#define XFEATURE_ENABLED_TILEDATA 0x00040000 #define XFEATURE_AVX \ (XFEATURE_ENABLED_X87 | XFEATURE_ENABLED_SSE | XFEATURE_ENABLED_AVX) From nobody Fri Jan 27 17:45: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 4P3Q2f6GZYz3bLc8; Fri, 27 Jan 2023 17:45:14 +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 4P3Q2f5kq6z3vt7; Fri, 27 Jan 2023 17:45:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841514; 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=vrx+CpygeF9lgba1Jvw7JVm1l4c2zlqCS275Xjc6LMc=; b=XIgD2aqfBSf7zdW+nsanLAQOjoBWcq3Wz6Kwi8JDDsJ3ZFhUbhR9d2IITuBzeGMHVAkKKf W6ubL3XRKKIU936g2bPrFhGcP4YUlepyn11ymSvoGl1C4dqCOY0dGbdPsqfecwpeJ8sw/Y GpLe36TR2wu0aslraJnqPlhwbtjQ07IZM6DsS43PXAsOZzX93kocS/sDEmzZEXsYKczCIn 8oNPJGnk+mJaQqKukCe8/UzREenQa98TfXgR49wmWoq/QEh7thKlRn5ZOapAG+azM9TDUm nI1Unqc7pCU98EKGZiL4L+Z6rA/DFee9F+FQbXgAZRNhP14TFfpnShm4MkER2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841514; 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=vrx+CpygeF9lgba1Jvw7JVm1l4c2zlqCS275Xjc6LMc=; b=rUE6UWgxR3no7Rw8O3rJC6yCnoW/1beJ+p/axvgZyANV5crHY+p3wwmwhP0gfrqJFd+/Om qlNF0mbHpx/dLP3HyPUKTK0HZkWNUtWKPiv9yN8PBaKc56/5roZvgtnc6yOR9a3uSyBdSf WscdCg3SEduzrHsmbpylI1l97dox8an+iYJgSQ7zaKvuDpn7zgOQWoSnNe8tNWsIbSaOCi nCd+ZUM0RSbMivAwVtb7zRFN7ZyMx9+L1je1Np5Mj6fBW6yaYYcmcFRbSfCxvGgMOPQ0ky 6ZQt7dN3aAf161gCrAlMC9IZOgIU3NKxex/8Oos410fnH16E4eBevZHY6WqL5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674841514; a=rsa-sha256; cv=none; b=BPXRDLBkGZMt647gGdwmiB0kn8whcHtQMSQkB6hN5f7SiiAQcPUBIjZ+R+kxQ0ceTMsCnA qWfFqwY+baCNOGZZxrmG4V/cpaKCzGbImnjFN7GFS1DkoVnoHl33EPUrq50P79OlGAIUC+ lTRIGhqQPbzNTYXsocM+GQSNFcJbDk3NBQRvvzGTXxYG7fV8Ga5E+kVDAheXPNB2qtR8S0 pphSAn3OlXchwnBCMoLUs0TBk1popJGgqrFrbCe41ftXLt/bdpOoohsV0RUs4PZV4eM5En t+mB91/HmnTAyhrqyUCcU/31OZeTpXw+Kq67/pzTuxMqDCvGyyWcVfDyH9nqJQ== 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 4P3Q2f4rNKzJBb; Fri, 27 Jan 2023 17:45:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RHjES9085898; Fri, 27 Jan 2023 17:45:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RHjEnq085897; Fri, 27 Jan 2023 17:45:14 GMT (envelope-from git) Date: Fri, 27 Jan 2023 17:45:14 GMT Message-Id: <202301271745.30RHjEnq085897@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: 153643a5bc8a - main - amd64: do not enable PKRU if user disabled saving PKRU register in xsave mask 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: 153643a5bc8ac3b1d47fc8e4de18d8c8a59817da Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=153643a5bc8ac3b1d47fc8e4de18d8c8a59817da commit 153643a5bc8ac3b1d47fc8e4de18d8c8a59817da Author: Konstantin Belousov AuthorDate: 2023-01-27 10:45:02 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-27 17:44:49 +0000 amd64: do not enable PKRU if user disabled saving PKRU register in xsave mask This is done by reverting CR4_PKE bit, because we perform %CR4 initialization in initializecpu(), and the function is called before xsave_mask is read. To not redo the whole early initialization sequence for the corner case, this should be good enough. Reported by: jhb Reviewed by: jhb, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D38219 --- sys/amd64/amd64/fpu.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/sys/amd64/amd64/fpu.c b/sys/amd64/amd64/fpu.c index e9b058f175b0..64974a7210a9 100644 --- a/sys/amd64/amd64/fpu.c +++ b/sys/amd64/amd64/fpu.c @@ -372,6 +372,7 @@ void fpuinit(void) { register_t saveintr; + uint64_t cr4; u_int mxcsr; u_short control; @@ -379,7 +380,22 @@ fpuinit(void) fpuinit_bsp1(); if (use_xsave) { - load_cr4(rcr4() | CR4_XSAVE); + cr4 = rcr4(); + + /* + * Revert enablement of PKRU if user disabled its + * saving on context switches by clearing the bit in + * the xsave mask. Also redundantly clear the bit in + * cpu_stdext_feature2 to prevent pmap from ever + * trying to set the page table bits. + */ + if ((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0 && + (xsave_mask & XFEATURE_ENABLED_PKRU) == 0) { + cr4 &= ~CR4_PKE; + cpu_stdext_feature2 &= ~CPUID_STDEXT2_PKU; + } + + load_cr4(cr4 | CR4_XSAVE); load_xcr(XCR0, xsave_mask); } From nobody Fri Jan 27 17:45: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 4P3Q3S2y42z3bLRP; Fri, 27 Jan 2023 17:45: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 4P3Q3S2RlVz3wPJ; Fri, 27 Jan 2023 17:45:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841556; 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=t95fYWpW8EYpuaQy8xdSSk+kgUe8DpSKiV1Dkdj+nDU=; b=Ju6IXZ4pkiuUaPyaoW0kfS29CsLpnoIKoIaKZ5op/rwFF9z68sxEvsgRkYxWJN+Dw7p4Ar NNqChdAW1exCUxERPirpL/o7kVmTM8jgm+AryW9UwMU7lFV6+6SPcT3QSyyEEfkocyNuuc m9VoaHuIA/P4CXxeTVxE4dR0vT6MYWUfyxSPdipkXlYgL98DABpF5C977zHQptf9WD2xCd jcVX+wgeGOac6odde3EneaUyyi7jotIuNjC+j01wb24J4rte9bahkH4H5UhKkxrRFUyMD0 TxD+rQt38ovpe8/dYoaT2mXxRGvn2fFxEs3a5fqiJCKUDMtSMXd5AprAfArIAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674841556; 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=t95fYWpW8EYpuaQy8xdSSk+kgUe8DpSKiV1Dkdj+nDU=; b=xpi90+HH9x4cVv2/3n+P06vmXfx1i+Y+wp0UOwkmKlbxPajKW5BRTeBeFGUYomOegGprYT 46rIIudDgN6qyU3WdZAhGsCLC6al94YjM+I+IeTIvYepICJ1F8PpKnhzlsyc87QkA/bN9s mXZ8x9zwy4FyoLzA6z1rc3f5y37kP0QBKiInHE4oZLSLnHS8uCYjtJ7X0LCkAqpG6y6TTQ 5pGdzuNn/sEfm2BXqcShVSrvxvyx1QHJTUMMIxXRshrc6OGhcVBmyhOOcjZtDuD3rF+Aag JRqpYiuE3DQWElVTwPsO/Kq//y3c9ZQZouHQw9JNA3VswbnlF5Ufx6t9CsDT4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674841556; a=rsa-sha256; cv=none; b=Ky3VI3cod1Ui5jEgobmBh1OhPKR30KUCqkxvZXPP8W7OTWL1zftheAo1YdLz28Vgb1uQ9N 3SnCJCAW+CPm72b1MXpOkfWIy8QKUPkNqa3ymOPLpm20/V4rD0jj2vDdgOiWPnkFY6OUh5 wTip5piWiLeFgCdwwKgSvAKABsRdiK/2wO+Nwh0V1NT/U159HSJimZwW7UidQ5qBMpJZP9 7sTYUabYj0FCZ/RBktYKEHrRn5TZq52vJSbPRR4FlLXNkTjd7sF4nPYe82td0W5cdfylv2 K3gORYIEjJs5edNoWe+GjJyIlJLf0j8utTxCyP9JUnsooXqjY2OM2ROog40siw== 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 4P3Q3S1WXJzJQs; Fri, 27 Jan 2023 17:45:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RHjusn086146; Fri, 27 Jan 2023 17:45:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RHjuep086145; Fri, 27 Jan 2023 17:45:56 GMT (envelope-from git) Date: Fri, 27 Jan 2023 17:45:56 GMT Message-Id: <202301271745.30RHjuep086145@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 79111aa26f8b - main - netstat: fix format string on 32-bit archs 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: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 79111aa26f8b33a6f4870d2666aa6e9b9d2fdc15 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=79111aa26f8b33a6f4870d2666aa6e9b9d2fdc15 commit 79111aa26f8b33a6f4870d2666aa6e9b9d2fdc15 Author: Alexander V. Chernikov AuthorDate: 2023-01-27 17:45:19 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-01-27 17:45:49 +0000 netstat: fix format string on 32-bit archs --- usr.bin/netstat/route_netlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/netstat/route_netlink.c b/usr.bin/netstat/route_netlink.c index 7c0ac8fea30c..e4a56af4b8a9 100644 --- a/usr.bin/netstat/route_netlink.c +++ b/usr.bin/netstat/route_netlink.c @@ -129,7 +129,7 @@ prepare_ifmap_netlink(struct snl_state *ss, size_t *pifmap_size) if (link.ifi_index >= ifmap_size) { size_t size = roundup2(link.ifi_index + 1, 32) * sizeof(struct ifmap_entry); if ((ifmap = realloc(ifmap, size)) == NULL) - errx(2, "realloc(%lu) failed", size); + errx(2, "realloc(%zu) failed", size); memset(&ifmap[ifmap_size], 0, size - ifmap_size * sizeof(struct ifmap_entry)); From nobody Fri Jan 27 18:06: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 4P3QWd6gTLz3bPJN; Fri, 27 Jan 2023 18:06: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 4P3QWd639Mz3y0Z; Fri, 27 Jan 2023 18:06:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674842813; 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=FnI6Nh4yxahRACt9/BhrYD1eDxDek1LhFHiMXSD7pk0=; b=XutMt475qTDtLatu2AUin3vU2K6OeK4VMFt6RoAH8oq5uMVs9+eHlGbWvQcnP6Cr8BcSYc ORJcVJbRsb1Lz0FooVgzekpMQ8/z+X6BhHWK1V10FdErAJZFjcJH4+Q9Pqb3VVyyCXwSFp rQVMOTndCXHs+wDTd4FmhN20WanELCpKmVwDCSoEusOzKydcknMfPVVBlR/lJojFWjuMt6 oPmZ4f6bm9EcMEqvk2PkEzmhKSFcWdiDp53I1WEbsCZvj5YD14pbq01oYypHc1obmp+RVn 08jM+4kXatrIVgApOjMAUJFbRnb7Q/k2CVHKxXyMcF6e6A2hV0RX/pEjZGC0FQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674842813; 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=FnI6Nh4yxahRACt9/BhrYD1eDxDek1LhFHiMXSD7pk0=; b=e1AsuAvgUsH73yo84ar2xixT6ZRgmbB46eFQcFIr9rDpNmmjaBCaJm7EdzcgXJD43s6su0 ISS/QCJev14mYxfgML0sFB9815kHNKMVSUGfydPeeQPm5K4B1Hos7UxORM+hbNXU+A4GKW h2ptmWg/ivGaTYiSGvwXoPWbS2v5vSP1vdmuwMpWm3pKVqVYGMxq8N9+bvbrOzONDWXuKL 84k7HiFAd44A3XG6iuRKgHgbonVuONf4gU0vdRjX866oJQfr5qYYGrejsArkyWM26hO1FS G3EICQ1dYHfypn37SuLZs2atli5AVvKrRHqMYZEyolS7hBo3Eux6jjoSNhsZ4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674842813; a=rsa-sha256; cv=none; b=YHDAqek39N98eOwU6Vy7lgynnD8YpEcc6EGMO7D8wyZVEvx3WsBi1APm0rO5pmILMH7TwM wNxFbb8SzMOEDonFlPB0wE/qNXFABlCtCFmIDYGFsp8WnZYpI69HcIIjP0E0PVSXj/3coD hZ8n/MN224GJMXBHOlJ/EJ/cjOJ0GH9EvKWUfdkQOJDCz31AIgD9NwoYLEkRvIY1a/qdOb NXDsUHrQLnhg6iDEvIOGKch9eMEemCI9kiPoEfQRJ0LFotWO3FnTbm8VklWjtX943u04uV d1lWnOq8M8y5f8uUE0SCNNC/YaEScJNyfmbRMCZBU8Ee4NuTKwrfXx3ddwrCBA== 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 4P3QWd4zdYzJ9B; Fri, 27 Jan 2023 18:06:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RI6rjK015693; Fri, 27 Jan 2023 18:06:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RI6rIM015692; Fri, 27 Jan 2023 18:06:53 GMT (envelope-from git) Date: Fri, 27 Jan 2023 18:06:53 GMT Message-Id: <202301271806.30RI6rIM015692@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: 04afa8cc370e - main - loader: md: Use default func for fmtdev and parsedev 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: 04afa8cc370e6bb7302b6fe09c8d27a606fe414e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=04afa8cc370e6bb7302b6fe09c8d27a606fe414e commit 04afa8cc370e6bb7302b6fe09c8d27a606fe414e Author: Emmanuel Vadot AuthorDate: 2023-01-27 06:34:02 +0000 Commit: Emmanuel Vadot CommitDate: 2023-01-27 18:06:25 +0000 loader: md: Use default func for fmtdev and parsedev The default function are enough for md so use them instead of the disks ones that doesn't work for it anymore. Reviewed by: imp Sponsored by: Beckhoff Automation GmbH & Co. KG MFC after: now Differential Revision: https://reviews.freebsd.org/D38218 --- stand/common/md.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/stand/common/md.c b/stand/common/md.c index a3243beb17dd..61db56ece7ae 100644 --- a/stand/common/md.c +++ b/stand/common/md.c @@ -75,8 +75,6 @@ struct devsw md_dev = { .dv_ioctl = noioctl, .dv_print = md_print, .dv_cleanup = nullsys, - .dv_fmtdev = disk_fmtdev, - .dv_parsedev = disk_parsedev, }; static int From nobody Fri Jan 27 19:01: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 4P3Rky4jRxz3bnTX; Fri, 27 Jan 2023 19:01: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 4P3Rky49mcz43yR; Fri, 27 Jan 2023 19:01:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674846106; 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=RauQ2tepi9gxVKq95PGGQ5pDYWkAnnzyq1FMCZoC4R0=; b=g4QSeJN3D1OGpEdpVgz37SoZ8IuG8nPHFb4D5FB0t13egAvGf+gN20KaaIzo/wtwltUWib pNpuAW1v0J0UWr3pwkg+/RbUSwfz2uOqueqCoIJDb7MNmMQYUh8C8KVeiMI1X1Anf8XQ61 jRZh0aDY+iDYFFWI989DKX6yGGGLvLjo+B9uq/B0MUum6oJ9+M6MOXi6Wrvt3uztwuWtKH vuMUvdiqliPVv1mixNr5ccr7XFYyUhj2l1cxpHY8XGyJfyuY6ivRUA+wDQxWtHU5n9ln/x BTEkh8XH43dx+WsN3YBrgUmevxjw5On5oV3hZZ8ai8ZYlSu6BBlE14MeTxSeBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674846106; 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=RauQ2tepi9gxVKq95PGGQ5pDYWkAnnzyq1FMCZoC4R0=; b=ymg92z7fvmbmJlKcXZkTh1aK5MfLA1fugcz3j+O73u0HL4hg0U9YX2MJx3d8UaCiwnifgD TjwaU+YgcKccm4JTsXoXKQ3bDpwdH1sLSNDgzCnHc909o8PwxWCXZEgiieIiWdTzDOG8m3 zlfultwwn2HhrtoGzkdeODwMpJZrPeibYJBw4klfBpinTppLAN/T3lVN+a3IOOSYICh8m4 uuj+Q8Z/RzpvWLOzXXxEG2M8b302WC6IKUXMxR27xOakyK7BiWU7G3LrUKAhzUccoLzI5Q dWE1cscJpyxGsTZ1cEbkViKsSN4oli5SUKNR6qwfDJgtteBwzubI6Zf/4Nwfmw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674846106; a=rsa-sha256; cv=none; b=RAkKfaRJlHfXjtAouKw0zf9FbFLDqYjGRpCE/wZZ+GMTx+cSLKqLjDDtKd4P5Gngu9pN/B Y1JLNBM/+cuZNcVlbFzlDFfAkesKhzg3XQpNmSlyCRejePDbkswM5TB5tOKklIC+kpLUTi 5ATrtPjUqIZ3bGH21H1x5iYWJ7xMKJs0rYt/pN8YZ+CxUA3a7VerfwPhnFUWK69kL2Lrkc qmQBTtCVEfbkFlupEO3tKaC7spxmsWyJhILdAEtYg4Yj1Jf0kn2aP0WyFm4AhM0ot1Q3NA k5xVImDrFtEYZRmYmSP0Dau+dummsDTYIZHDpSfAhxuwXDUHWZnjCm0SluhAhg== 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 4P3Rky3DhYzL6Z; Fri, 27 Jan 2023 19:01:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RJ1kLp095743; Fri, 27 Jan 2023 19:01:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RJ1kmF095742; Fri, 27 Jan 2023 19:01:46 GMT (envelope-from git) Date: Fri, 27 Jan 2023 19:01:46 GMT Message-Id: <202301271901.30RJ1kmF095742@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: 96bc40f4dfae - main - release.7: Correct a variable 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 96bc40f4dfae4bb40b2512436f58cd2183e42886 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=96bc40f4dfae4bb40b2512436f58cd2183e42886 commit 96bc40f4dfae4bb40b2512436f58cd2183e42886 Author: Mark Johnston AuthorDate: 2023-01-27 19:00:23 +0000 Commit: Mark Johnston CommitDate: 2023-01-27 19:01:12 +0000 release.7: Correct a variable name MFC after: 1 week --- share/man/man7/release.7 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/man/man7/release.7 b/share/man/man7/release.7 index 855cf91697a1..8ce2cf47b4fd 100644 --- a/share/man/man7/release.7 +++ b/share/man/man7/release.7 @@ -511,7 +511,7 @@ Displays the list of valid values. .It Cm list-vmtargets Displays the list of valid -.Va VMFORMAT +.Va VMFORMATS and .Va CLOUDWARE values. From nobody Fri Jan 27 19:59: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 4P3T1K4Ynfz3bwLb; Fri, 27 Jan 2023 19:59:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-lf1-f41.google.com (mail-lf1-f41.google.com [209.85.167.41]) (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 4P3T1K2QBlz4CMJ; Fri, 27 Jan 2023 19:59:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-lf1-f41.google.com with SMTP id y25so9800848lfa.9; Fri, 27 Jan 2023 11:59:17 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=/vPQTgzDb5oHuXIbB/yOEN5yblGkQ78gDG57LB5rSbc=; b=Qmh3Q1aynayl0fa+/tkUglnwyI0o/06n6DK8BE5QMp/l6fyyXnxa3RnA1YrrD1FG6C D4Rym5sDLs6b8UbT/NeJOvWzf90VX0rSkIcouwJX9PG2dTTmusqem3mSF9YTA1jcFqHN XvQyYHjGEukEpczlyt9R3sQU5DTSPsBwlUDz85HzmYGzFM60OSr8NzR/o//XmYrNp6ZT z8WjPmZreIc+22vgw7ZDrKGDke7BBN56pjFzReFtX4aIJK7hh25RnXisUT49ZDqmBHAM 1XLGc5+zD1Y/08OYWD+4t/TJwMYy+v4nuLMw0O+wp0uOb08PKb+ZGEO8NYyqx5AwxxZw +GFg== X-Gm-Message-State: AO0yUKUBOVKBWZs94T+zphDDv0pyS0nPD8S7DGEztehEdiPzlPWo3plx 6xvVeeri2i7y65OOGnGShm/rhFwh9TkRqYruslClmuiPGsw= X-Google-Smtp-Source: AK7set/GEwWFjn4x/TOaIflnaxqPbyRZppRLx9S/cpZzuphvgr9mHWW9mvoC5u+f9rd0WQtOt97l2FWX4N+on+q/jO0= X-Received: by 2002:ac2:4841:0:b0:4d7:bda4:e6af with SMTP id 1-20020ac24841000000b004d7bda4e6afmr1347198lfy.184.1674849554155; Fri, 27 Jan 2023 11:59:14 -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: <202301232027.30NKRckV060051@gitrepo.freebsd.org> <1o40rq5-n1pr-ss27-q14-qo845q26398@mnoonqbm.arg> In-Reply-To: <1o40rq5-n1pr-ss27-q14-qo845q26398@mnoonqbm.arg> From: Ed Maste Date: Fri, 27 Jan 2023 14:59:00 -0500 Message-ID: Subject: Re: git: 247e03ed8b83 - main - Add git-blame ignore file To: "Bjoern A. Zeeb" 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-Rspamd-Queue-Id: 4P3T1K2QBlz4CMJ X-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Fri, 27 Jan 2023 at 10:24, Bjoern A. Zeeb wrote: > > On Mon, 23 Jan 2023, Ed Maste wrote: > > > The branch main has been updated by emaste: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=247e03ed8b8341cf25dc3d9ecb846612d984f424 > > > > commit 247e03ed8b8341cf25dc3d9ecb846612d984f424 > > Author: Ed Maste > > AuthorDate: 2023-01-23 20:27:25 +0000 > > Commit: Ed Maste > > CommitDate: 2023-01-23 20:27:25 +0000 > > > > Add git-blame ignore file > > > > .git-blame-ignore-revs lists commit hashes that should be skipped by > > `git blame` e.g. non-functional whitespace or style cleanup. > > > > The file is populated with a few sample entries. > > How is this file to be used? > > 1. Do a non-functional commit? > 2. And then do another commit to add the hash? Yes, although there's no need to list every non-functional change here. It's useful mainly for changes that would otherwise obscure the history/blame - for example, re-indenting libexec/rtld-elf/rtld.c to use standard indentation would be a good use. We could omit the comments, but I don't think it's worth the effort to try to automate this. From nobody Fri Jan 27 20:03: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 4P3T5d13dtz3bx2l; Fri, 27 Jan 2023 20:03: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 4P3T5d0Xmbz4FCj; Fri, 27 Jan 2023 20:03:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674849781; 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=C8rhxvsk7/bcRDqMsZmJEcV4jVe8+3PT5O23tggTUp0=; b=KYCV3T4djmsNTM6153q3Dc/6XhYK0ckfzijU6kcogdDT/aeDkcWvcpQjm5RksbduyiYp0z s321OX08DDKx+f6s/IP6ftgfOWC65qRJsqvThzTQ/qjsBSRQCPBr1e+X82uOwUjaHGnlcS 7aiEa0rhO2fZTkruQjiLH5HM9XmJVPLTiXOXUIjnFMzr+Y/pfzI2jgyiQhTUB9x4SLExML 4lqi3QHRbojTgI0qXr49onc6Ivi9oHAQpxqgaF2yXz7nNTYmRJJjKtBGQ1AGNtbKA4EDEB 7fCvM/YJ+a2OwjQKb+Ft+TRwCBlklNDRU4kVWUpwCMREy8s9AaNvu1Lqlw4mXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674849781; 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=C8rhxvsk7/bcRDqMsZmJEcV4jVe8+3PT5O23tggTUp0=; b=VEp/MARoz1LfcNhCWjh+M21tCtiVjLAW7dKQww/97oz0/ZcgGrdorPzXNF7T+5eWhCUBcD LsVQnzlU4BuHsBCe1HJjxjkVyAitYZXy5Oq7rdiZohbcMMK8zRgHUPeSE4O2ToVIQp+X1H H+43vf3VXYa0wyIAvOFnNDa41FEOEud8R9WtwKoKAnut66zCDfE1pHBNI1/c9oPNxVqY74 g9VKjX/80wuR+AS7XTTiV4+titQClZURPgwSKewiu61A2Yaf84oBrAOPSFf3WLv3/j3dXF 2KafF8xJnsX2BxZq+Saea1DRdIebAUMTp58Ckq+73KfkdhX5J9kE8WPkyXgJ5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674849781; a=rsa-sha256; cv=none; b=V0/q7TGBsfoD+9tZ10XQY759DhIBUgI9ZOeAh7stCYQ8Q13NhBQH1XETt0ZNhHEePzE5q4 3qrDM1zZU9klVZIJgWAlZF9llUmDjvOhrjr4Z1w0Y/wNjT7glmqPsQkDckzK2xSws8Ewin YRJiK9jocuE5TRabk5yLD5SpvHIwgsHImlN8w8Jjp5zvyNVqq9M3rQrm1RvO+6pN5xRSKH 4100P+WgbUr+u1ZO77TJ9SfddOlPb0oTO/yIql1XeVjCYf/ZLrF1sOu01/4snJCULhM3Ua gAbPJLMX+BmSSZU/n64j7krJ1c4tRCZ5NvDJizl8n3jYbM/PDYDJUAAMR90WcA== 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 4P3T5c6kDyzMRR; Fri, 27 Jan 2023 20:03:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RK30m6086047; Fri, 27 Jan 2023 20:03:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RK303Q086046; Fri, 27 Jan 2023 20:03:00 GMT (envelope-from git) Date: Fri, 27 Jan 2023 20:03:00 GMT Message-Id: <202301272003.30RK303Q086046@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: e7f9bdb4a6fb - main - Cirrus-CI: switch GCC job to GCC 12 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: e7f9bdb4a6fb976770c0d2bbe31d34e964dc167f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=e7f9bdb4a6fb976770c0d2bbe31d34e964dc167f commit e7f9bdb4a6fb976770c0d2bbe31d34e964dc167f Author: Ed Maste AuthorDate: 2023-01-27 17:15:01 +0000 Commit: Ed Maste CommitDate: 2023-01-27 20:02:34 +0000 Cirrus-CI: switch GCC job to GCC 12 We need a C++20 or later compiler. Sponsored by: The FreeBSD Foundation --- .cirrus.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 85a32d148723..272032aa05fc 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -23,12 +23,12 @@ task: TARGET: arm64 TARGET_ARCH: aarch64 TOOLCHAIN_PKG: llvm14 - - name: World and kernel gcc9 amd64 build and boot smoke test + - name: World and kernel gcc12 amd64 build and boot smoke test trigger_type: manual env: TARGET: amd64 TARGET_ARCH: amd64 - TOOLCHAIN_PKG: amd64-gcc9 + TOOLCHAIN_PKG: amd64-gcc12 timeout_in: 120m install_script: - sh .cirrus-ci/pkg-install.sh ${TOOLCHAIN_PKG} From nobody Fri Jan 27 20:03: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 4P3T6f1dN3z3bx3G for ; Fri, 27 Jan 2023 20:03:54 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com [IPv6:2a00:1450:4864:20::629]) (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 4P3T6d6Tgpz4FLC for ; Fri, 27 Jan 2023 20:03:53 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x629.google.com with SMTP id kt14so16687553ejc.3 for ; Fri, 27 Jan 2023 12:03:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20210112.gappssmtp.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=0Z9L5qIvfNts7TmtSAzcKj/xBpqDWafRMYTbVu/BpDE=; b=rc3zs0Y/LvVxYuEywipFLqwHveEBbL6Z90oSgdEhkLOMCTkwGYcfQ52W69QbQNUKOX 64ssngzHOFlYwDdZUCnQKuIyuV9burbdsGM8dPaD5/+rra1TXqL+K847tzRPen1yjY+z yw3E0faRtJvcL+WLIdWRDh+x7QoZKcErXP7GhJHAH0s7+0ipg0AOmMaG6+Ixp0yWtuQ7 6V8+NYSPq3cMi7pyAE8mMeto+k6R5IcOihSkNgnyu7Ifal4DWXZkMFavy9Ukd8UYM6+2 lL4QUwURg//MzJezVeO0ZZh18u+Hzc1j7azSOOwqORc4sTp5rCaIBk2MXfTS/soXLroc huaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=0Z9L5qIvfNts7TmtSAzcKj/xBpqDWafRMYTbVu/BpDE=; b=ySHoOPGXs2s7IfwdnK05xsU242rHXfQ25bugUeo5wIuMB4E2/KG60WN7eUag87hu3E cKt6eH7bC/dOc4fAPuE23JPI3IW1nz4UsoVYc/wREC40h20h5kHPBTMezlc99ro6P6HG AHWwlvfOppP5kRrGjmun6nPYAyQHo9KTd5qku3/ByDX1nxih09OrlpDzjkNw2c2s9zSK yFapg65QkheC1Qb73Ib4BRfULXEqEXBOgcF/L/hSh+0rU2hc4+FAjkMYIuEcCrG9xOFA wT2xJYU5xO1odjSzHFryQEAAKzv1Xne5jhUPioovbRS+40WhqZtTinx/crAqP2UMdvRp FSTw== X-Gm-Message-State: AO0yUKXMxnnLQkwNcgAo/HvtdTSBeG8xaLz+h8vkL1nv6Dbqra99qq+z 44TIvAPr7rOZ9nCdDzw5xGbL1bYhsfwtHwSupykn2Q== X-Google-Smtp-Source: AMrXdXslfGfgDW0O9WDNhoQ2vhs6yGO1msnws8ZCbaOrQBO6QAIm+GqsJqVtCtT5zfR5zV1dqw5XbqTQFF5sM7hUqeI= X-Received: by 2002:a17:906:3042:b0:877:ec5e:87ce with SMTP id d2-20020a170906304200b00877ec5e87cemr3506320ejd.262.1674849831915; Fri, 27 Jan 2023 12:03:51 -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: <202301232027.30NKRckV060051@gitrepo.freebsd.org> <1o40rq5-n1pr-ss27-q14-qo845q26398@mnoonqbm.arg> In-Reply-To: From: Warner Losh Date: Fri, 27 Jan 2023 13:03:40 -0700 Message-ID: Subject: Re: git: 247e03ed8b83 - main - Add git-blame ignore file To: Ed Maste Cc: "Bjoern A. Zeeb" , src-committers , "" , dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="00000000000048a3e805f3445d5e" X-Rspamd-Queue-Id: 4P3T6d6Tgpz4FLC X-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N --00000000000048a3e805f3445d5e Content-Type: text/plain; charset="UTF-8" On Fri, Jan 27, 2023, 12:59 PM Ed Maste wrote: > On Fri, 27 Jan 2023 at 10:24, Bjoern A. Zeeb wrote: > > > > On Mon, 23 Jan 2023, Ed Maste wrote: > > > > > The branch main has been updated by emaste: > > > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=247e03ed8b8341cf25dc3d9ecb846612d984f424 > > > > > > commit 247e03ed8b8341cf25dc3d9ecb846612d984f424 > > > Author: Ed Maste > > > AuthorDate: 2023-01-23 20:27:25 +0000 > > > Commit: Ed Maste > > > CommitDate: 2023-01-23 20:27:25 +0000 > > > > > > Add git-blame ignore file > > > > > > .git-blame-ignore-revs lists commit hashes that should be skipped by > > > `git blame` e.g. non-functional whitespace or style cleanup. > > > > > > The file is populated with a few sample entries. > > > > How is this file to be used? > > > > 1. Do a non-functional commit? > > 2. And then do another commit to add the hash? > > Yes, although there's no need to list every non-functional change > here. It's useful mainly for changes that would otherwise obscure the > history/blame - for example, re-indenting libexec/rtld-elf/rtld.c to > use standard indentation would be a good use. > > We could omit the comments, but I don't think it's worth the effort to > try to automate this. > Yea, we need a hash to put in the file which suggests that at most we could do automatically is add a new commit at the end of the push... and that's going to cause extra friction if we do it too much. And if we do it rarely, there's little benefit to automation. And reformatting is very rare.... Warner > --00000000000048a3e805f3445d5e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Fri, Jan 27, 2023, 12:59 PM Ed Maste <emaste@freebsd.org> wrote:
On Fri, 27 Jan 2023 at 10:24, Bjoern A. Zeeb <= ;bz@= freebsd.org> wrote:
>
> On Mon, 23 Jan 2023, Ed Maste wrote:
>
> > The branch main has been updated by emaste:
> >
> > URL: https://cgit.FreeBSD.org/src/commit/?id=3D247e03ed8b8341cf25dc3d9ec= b846612d984f424
> >
> > commit 247e03ed8b8341cf25dc3d9ecb846612d984f424
> > Author:=C2=A0 =C2=A0 =C2=A0Ed Maste <emaste@FreeBSD.org> > > AuthorDate: 2023-01-23 20:27:25 +0000
> > Commit:=C2=A0 =C2=A0 =C2=A0Ed Maste <emaste@FreeBSD.org> > > CommitDate: 2023-01-23 20:27:25 +0000
> >
> >=C2=A0 =C2=A0 Add git-blame ignore file
> >
> >=C2=A0 =C2=A0 .git-blame-ignore-revs lists commit hashes that shou= ld be skipped by
> >=C2=A0 =C2=A0 `git blame` e.g. non-functional whitespace or style = cleanup.
> >
> >=C2=A0 =C2=A0 The file is populated with a few sample entries.
>
> How is this file to be used?
>
> 1. Do a non-functional commit?
> 2. And then do another commit to add the hash?

Yes, although there's no need to list every non-functional change
here. It's useful mainly for changes that would otherwise obscure the history/blame - for example, re-indenting libexec/rtld-elf/rtld.c to
use standard indentation would be a good use.

We could omit the comments, but I don't think it's worth the effort= to
try to automate this.

Yea, we need a hash to put in the file which suggests = that at most we could do automatically is add a new commit at the end of th= e push... and that's going to cause extra friction if we do it too much= . And if we do it rarely, there's little benefit to automation. And ref= ormatting is very rare....

Warner
--00000000000048a3e805f3445d5e-- From nobody Fri Jan 27 21:27: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 4P3VzR4mRKz3c8KY; Fri, 27 Jan 2023 21:27: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 4P3VzR49rVz4N5Z; Fri, 27 Jan 2023 21:27:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674854867; 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=Y7CNDev8dOZnAe75DqP+8BzvyFh/oHsGHxouJEcKfms=; b=fA8y/MHqHmnTokAGhxnjhvNDiuyXVPV6uE8bRsjn4ywqq8e7Zki9ig6rddLHaSmDICx8DV SWLp9GWEwskLIzGRfK40gguPQ3KH7slK5uqpXqmQJdkRmJ9uAkT1fhDaKQma6Kg9YJeMKx 2SjYdIOdKPW4qbrYQC0MpVs7FBDxXGHRorw07891JoltOW3T8nCFnql+esA219Fq/g3P1q ZhNGrPmuSpSGkvqpyjlxaSHpqPyx3UOuBHPAAha9NO4zUtuOtBnPAWfarMXIefYeOP2H9i h2SQhuu9b3kB4WBSXZ1mXI+luWKMgfMuA1retfuC3SNdtSRn0FxRzpfVyPZdfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674854867; 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=Y7CNDev8dOZnAe75DqP+8BzvyFh/oHsGHxouJEcKfms=; b=W7DOrdkINt1XuurAyLlFwxdHYf20MnLRWe5fHYviDlk4TLJr7tw8djwtm9l4DOaEeZdsfW 3X/iu7b1G5G+dCyXKRHLV3seA42S7YJw7HzmoZaqv8v7dm7Xn03BNnZvfArmV0+VEwz+CQ 7qk6XSGGOedHpOgiao0lbkuDZq+pxMe6NzmHUXUC6pAnZ0192IOK6Ig49Q7aiTaLaQBW/X bBSHubnrYVDgDMW3zseHhC6NMPXAb0FjHGhr6tfbo3It/bF3cVUE5jVgKdUtyyCmKpL4i9 NjDiAYZoCgJ+Vr1r8iyGaUCsuOM4NOg2dm3thTq0FzVY7CbXXtbjfTUZvJqulA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674854867; a=rsa-sha256; cv=none; b=Dd+CE+vGcM1aAfe9WcHgCW2Kqkh52DL4CaBKbWwKoVozY2FWI0AxcSZzkr0v1QT/G/iPQU TcV2DNkz8lxQGzV4eZbDa/g5wFB0zyw3qqnIf0wGn2tcE2ZdsHpgUIMc4c7wjxQd9y0qdo JVRS4Y4RLUduz3U+GPOlu5JSQGmBM0Sd4fWEoDSnFqndaZw1adIK+Q1cDUuI7N/40wnZ+f ZRU5NYhQGB0k6G98vkTMo48tgTDdswzDE4GBlvn6Ym4ZWhv3rx4RRGVhHBTDq/jST4gbJM Sof4GVyJNvuoThuVkfHbx2/qoI3RlOsq7Iw9ZMQZJO4/nWegXdSA0N3BHqS8vg== 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 4P3VzR3C5GzPLt; Fri, 27 Jan 2023 21:27:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RLRlSX000479; Fri, 27 Jan 2023 21:27:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RLRlZi000478; Fri, 27 Jan 2023 21:27:47 GMT (envelope-from git) Date: Fri, 27 Jan 2023 21:27:47 GMT Message-Id: <202301272127.30RLRlZi000478@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=20P=C3=A9dron?= Subject: git: 8c46bd9f8691 - main - linuxkpi: Include `linux/sched/mm.h` from `linux/sched.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: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c46bd9f86911c11c42f780fb233db0505ea94ee Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=8c46bd9f86911c11c42f780fb233db0505ea94ee commit 8c46bd9f86911c11c42f780fb233db0505ea94ee Author: Jean-Sébastien Pédron AuthorDate: 2022-12-30 09:52:54 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-27 20:53:44 +0000 linuxkpi: Include `linux/sched/mm.h` from `linux/sched.h` At least one file in the DRM drivers benefits from some namespace pollution to use `fs_reclaim_acquire()`/`fs_reclaim_release()`. They are defined in `linux/sched/mm.h` and this header must be included indirectly into the DRM drivers' source file. I couldn't find how it was included. Therefore this commit includes `linux/sched/mm.h` from `linux/sched.h`. This is not the case in Linux but fixes the issue with the DRM drivers. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D37912 --- sys/compat/linuxkpi/common/include/linux/sched.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/sched.h b/sys/compat/linuxkpi/common/include/linux/sched.h index 24014e71cda6..fee27ef7c9c0 100644 --- a/sys/compat/linuxkpi/common/include/linux/sched.h +++ b/sys/compat/linuxkpi/common/include/linux/sched.h @@ -50,6 +50,8 @@ #include #include +#include + #include #define MAX_SCHEDULE_TIMEOUT INT_MAX From nobody Fri Jan 27 21:27: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 4P3VzS67Ccz3c8N6; Fri, 27 Jan 2023 21:27: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 4P3VzS5MrSz4NYD; Fri, 27 Jan 2023 21:27:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674854868; 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=tKcTPVnFjH3lfLApZU2awB5KMgSRZAPbsb7IB6ilbW4=; b=eY8M/YJu9q2nzpe1nfHVYSnqh6aCFv5kGZ5N0R5FOqvfEG2b6UNlEPHa5n3XToZDA8q8nQ n0O9EBvPPKZwL3Ukx2oqnDY137GLgUejx9JhesEEsmE2htGigxSozANeS51/cOUCF3wAE7 jHbsiP+JTXCCzO5Odu4ZOIMOPVbbKInwaNs1e0Wec74wigJxQWC8dBkeUq2KlW+Flf6VgY EyRahbYmL3MNuAQ3o/b3B7FG5QtBYpAJ7M26gTgnR8wtEZdAFL1y95lkcQSoXcFGjyPGpM K4/gH1E/Xb7vXc0kj4rli9Cr/V545XEjHmFjvxtGOlJAIcp1iLUSykU5VLfE8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674854868; 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=tKcTPVnFjH3lfLApZU2awB5KMgSRZAPbsb7IB6ilbW4=; b=KG10B+KXT/T9JADrPrUm/I42nzZMIbFSHzPNoxpLLvZ5RFXsTbwjpyWYeY0bJ6/PL/xwL9 4cWCoX6rIUK1HR7lMdU7/MWw9pM9rVxBlHdLD5m2CySmRfKEg4GR9QIJcO2Zx0X1QSppuf Zi0xzV624VhBrZkLOuRhKceEc+spm6CkxUmlhVPRZ7QmkDBrnKcBGGvNE2alZ+ng9pUXV4 u82NtWJfPJuHm8Exk9xSD+ZLkcor/yj5ZBT8UCWALzmhosqYgyjSHCBUz3bZTdHhBddiP4 ekyiY0rD/Ubohvr2OGsctdpjmzHJuPpxInMQ6+ssnwkeyTaqdAjaY523uD2sTg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674854868; a=rsa-sha256; cv=none; b=joWmD+y/6QJ6oRevQ/S/5cDb3RYaoI0r0gG0R+35SvLW7xZUAMn4SNaQqdgWwXf0EeOzil /wyYSLPpN42LLKaM3pV5Azc1oxup2jcAhzEhYcAusXgWOnKLfQ31Z5pMmmpxIjJO7mJ9x0 uQ/K/BsWTdlTTGYuNpe7DbnXrLufN4r82tMSA1UnCmp4cwnKLJDaQU2Zu4Zn2M19hgVC6w RjiK10QpmEbvl+1VaupOPz2s0hQIcvi4w2EDwMqzvtKpl87SnYFP561+qqLc5xBQLadgXq +cyRki4agrspJSg0qDSDkd6xGR3O3T5xHYmDiudayomHB7LOj3lqY8EhRXpHrw== 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 4P3VzS46hSzNx0; Fri, 27 Jan 2023 21:27:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RLRmC6000508; Fri, 27 Jan 2023 21:27:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RLRm6K000507; Fri, 27 Jan 2023 21:27:48 GMT (envelope-from git) Date: Fri, 27 Jan 2023 21:27:48 GMT Message-Id: <202301272127.30RLRm6K000507@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=20P=C3=A9dron?= Subject: git: 3e0856b63fe0 - main - linuxkpi: Fix `sg_alloc_table_from_pages()` to have the same API as Linux 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: 3e0856b63fe0e375a0951e05c2ef98bb2ebd9421 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=3e0856b63fe0e375a0951e05c2ef98bb2ebd9421 commit 3e0856b63fe0e375a0951e05c2ef98bb2ebd9421 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-10 10:10:30 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-27 20:53:59 +0000 linuxkpi: Fix `sg_alloc_table_from_pages()` to have the same API as Linux It now returns a `struct scatterlist *` pointer instead of an error code only. The implementation is incomplete because it doesn't use the `prv` argument. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38077 --- .../linuxkpi/common/include/linux/scatterlist.h | 44 +++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/scatterlist.h b/sys/compat/linuxkpi/common/include/linux/scatterlist.h index 86aeefafb501..d1a71258c27d 100644 --- a/sys/compat/linuxkpi/common/include/linux/scatterlist.h +++ b/sys/compat/linuxkpi/common/include/linux/scatterlist.h @@ -327,18 +327,40 @@ sg_alloc_table(struct sg_table *table, unsigned int nents, gfp_t gfp_mask) return (ret); } +#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 +static inline struct scatterlist * +__sg_alloc_table_from_pages(struct sg_table *sgt, + struct page **pages, unsigned int count, + unsigned long off, unsigned long size, + unsigned int max_segment, + struct scatterlist *prv, unsigned int left_pages, + gfp_t gfp_mask) +#else static inline int __sg_alloc_table_from_pages(struct sg_table *sgt, struct page **pages, unsigned int count, unsigned long off, unsigned long size, unsigned int max_segment, gfp_t gfp_mask) +#endif { unsigned int i, segs, cur, len; int rc; struct scatterlist *s; +#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 + if (prv != NULL) { + panic( + "Support for prv != NULL not implemented in " + "__sg_alloc_table_from_pages()"); + } +#endif + if (__predict_false(!max_segment || offset_in_page(max_segment))) +#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 + return (ERR_PTR(-EINVAL)); +#else return (-EINVAL); +#endif len = 0; for (segs = i = 1; i < count; ++i) { @@ -350,13 +372,19 @@ __sg_alloc_table_from_pages(struct sg_table *sgt, } } if (__predict_false((rc = sg_alloc_table(sgt, segs, gfp_mask)))) +#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 + return (ERR_PTR(rc)); +#else return (rc); +#endif cur = 0; - for_each_sg(sgt->sgl, s, sgt->orig_nents, i) { + for (i = 0, s = sgt->sgl; i < sgt->orig_nents; i++) { unsigned long seg_size; unsigned int j; + s = sg_next(s); + len = 0; for (j = cur + 1; j < count; ++j) { len += PAGE_SIZE; @@ -371,7 +399,16 @@ __sg_alloc_table_from_pages(struct sg_table *sgt, off = 0; cur = j; } + KASSERT(s != NULL, ("s is NULL after loop in __sg_alloc_table_from_pages()")); + +#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 + if (left_pages == 0) + sg_mark_end(s); + + return (s); +#else return (0); +#endif } static inline int @@ -381,8 +418,13 @@ sg_alloc_table_from_pages(struct sg_table *sgt, gfp_t gfp_mask) { +#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 + return (PTR_ERR_OR_ZERO(__sg_alloc_table_from_pages(sgt, pages, count, off, size, + SCATTERLIST_MAX_SEGMENT, NULL, 0, gfp_mask))); +#else return (__sg_alloc_table_from_pages(sgt, pages, count, off, size, SCATTERLIST_MAX_SEGMENT, gfp_mask)); +#endif } static inline int From nobody Fri Jan 27 21:27: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 4P3VzV0ZkPz3c87v; Fri, 27 Jan 2023 21:27:50 +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 4P3VzT5XpWz4NYV; Fri, 27 Jan 2023 21:27:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674854869; 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=ym4/QkxLjxbX4ia6h3iGn6vxhQxHu4G8dHCzeBLR+J0=; b=ICwhBgI3PLcEhLPGlJ/DeL88SzWwdPzWotak/Tbeqml5aYNyc1vO2PT/4t6P/dmblGOC2q fL01BAjp38PKMK2yxqrRN1vnh1ziQbJ/XkdHV4jl0zSXpXvC/dcnvXsVmXNIXMXkz0l0P6 Cnab7mqmGYH9JtxqJ7liHga2rls/LsLpBiAFRVZFg3Owqf/XmSQMI3Rl4WBaRSU4L+HZ1f Y/V6MgUMCdABxLhwccP0RMmVoitDmknwt9rhicCo17YS1pVcENuiyT0jtq+J88eLJ+mnoc 6muHviwF62iDGE99kpS89j7VUzOXjHvLp9HJgcDQKWFeUBAbvDzxCHOIeLEnLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674854869; 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=ym4/QkxLjxbX4ia6h3iGn6vxhQxHu4G8dHCzeBLR+J0=; b=LpIdvGILtj7lbga6clDXqLTTnm8ZITzzF5hmwDIZSNq2omkUxopFqhg/BrOA8wKKiBPLqd p+dGo1iSwfhhvvQ048/oG4GCjpd+c2fs6Z5hfRguXOggD1WwxJpABpp//pY4kzuygT8gAA EOV8WfkMaPAciXNQEfBSap8Kn4861QVgHqkZIHk9kgkCN3FxjIib3zjLzueSa51rogW/4E IN8/XxvUd2qykxDPVZRoux2cVg98AyLthivd4mLZuoX2X+eIi5gsRUbY9mJVo2IbnCIUXX rkI8dlPzSHCgxTvwO5zl6kddt0kazJYrSVBqdTdXvwVElQjVvespl3CoN3zbsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674854869; a=rsa-sha256; cv=none; b=kz9hFcQRmYus5JYXIo1XGcf1XZOuxlMRbj6ZCLabSy2tnMCgPnHIOKx0XloBkInkFkl5i9 WbJAerJHRsUBv35bQnxvm7cqJ8rEGJgnyb7dBQOcJn/bLj/QNYRdbEo0r3VNZHEz5tB+tc RGRLg9fMXQdopO9TyrGmXNl2phIAnMRuwH19T5IvwfkH4l4VjGnqLmJHSxcdjGcwGo2gUx lMtCqq0nuD25DbzStp8TgRoLlwn4MqTZgFW7h8nXhLi+bHpM7pViNRuUmJLblDycEp5FcO NIwF9vSlYbP//nEPyKfyZjZg3sCTnFX2QG9szD4HdiPqVlD7iReupBE+oW742Q== 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 4P3VzT4dg5zPW5; Fri, 27 Jan 2023 21:27:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RLRnE5000544; Fri, 27 Jan 2023 21:27:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RLRnP1000543; Fri, 27 Jan 2023 21:27:49 GMT (envelope-from git) Date: Fri, 27 Jan 2023 21:27:49 GMT Message-Id: <202301272127.30RLRnP1000543@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=20P=C3=A9dron?= Subject: git: 3d751b7a719f - main - linuxkpi: Add `pin_user_pages*()` functions 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: 3d751b7a719fd7934e902a34285ce4e5bbaf1e16 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dumbbell (ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=3d751b7a719fd7934e902a34285ce4e5bbaf1e16 commit 3d751b7a719fd7934e902a34285ce4e5bbaf1e16 Author: Jean-Sébastien Pédron AuthorDate: 2023-01-10 10:09:56 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2023-01-27 20:54:39 +0000 linuxkpi: Add `pin_user_pages*()` functions They were defined in the i915 DRM driver. I move the code in linuxkpi so it can benefit other drivers. Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D38078 --- sys/compat/linuxkpi/common/include/linux/mm.h | 33 +++++++++++++++++++++++++-- sys/compat/linuxkpi/common/src/linux_page.c | 6 ++--- 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index 2e0e47f774be..542d0c874b43 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -257,25 +257,54 @@ get_page(struct vm_page *page) extern long get_user_pages(unsigned long start, unsigned long nr_pages, - int gup_flags, struct page **, + unsigned int gup_flags, struct page **, struct vm_area_struct **); +static inline long +pin_user_pages(unsigned long start, unsigned long nr_pages, + unsigned int gup_flags, struct page **pages, + struct vm_area_struct **vmas) +{ + return get_user_pages(start, nr_pages, gup_flags, pages, vmas); +} + extern int __get_user_pages_fast(unsigned long start, int nr_pages, int write, struct page **); +static inline int +pin_user_pages_fast(unsigned long start, int nr_pages, + unsigned int gup_flags, struct page **pages) +{ + return __get_user_pages_fast( + start, nr_pages, !!(gup_flags & FOLL_WRITE), pages); +} + extern long get_user_pages_remote(struct task_struct *, struct mm_struct *, unsigned long start, unsigned long nr_pages, - int gup_flags, struct page **, + unsigned int gup_flags, struct page **, struct vm_area_struct **); +static inline long +pin_user_pages_remote(struct task_struct *task, struct mm_struct *mm, + unsigned long start, unsigned long nr_pages, + unsigned int gup_flags, struct page **pages, + struct vm_area_struct **vmas) +{ + return get_user_pages_remote( + task, mm, start, nr_pages, gup_flags, pages, vmas); +} + static inline void put_page(struct vm_page *page) { vm_page_unwire(page, PQ_ACTIVE); } +#define unpin_user_page(page) put_page(page) +#define unpin_user_pages(pages, npages) release_pages(pages, npages) + #define copy_highpage(to, from) pmap_copy_page(from, to) static inline pgprot_t diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index c4d0d332af14..9b3dac96081f 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -249,7 +249,7 @@ __get_user_pages_fast(unsigned long start, int nr_pages, int write, long get_user_pages_remote(struct task_struct *task, struct mm_struct *mm, - unsigned long start, unsigned long nr_pages, int gup_flags, + unsigned long start, unsigned long nr_pages, unsigned int gup_flags, struct page **pages, struct vm_area_struct **vmas) { vm_map_t map; @@ -260,8 +260,8 @@ get_user_pages_remote(struct task_struct *task, struct mm_struct *mm, } long -get_user_pages(unsigned long start, unsigned long nr_pages, int gup_flags, - struct page **pages, struct vm_area_struct **vmas) +get_user_pages(unsigned long start, unsigned long nr_pages, + unsigned int gup_flags, struct page **pages, struct vm_area_struct **vmas) { vm_map_t map; From nobody Fri Jan 27 21:35: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 4P3W8F6yK3z3c9JH; Fri, 27 Jan 2023 21:35: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 4P3W8F6PJxz4Q9X; Fri, 27 Jan 2023 21:35:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674855325; 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=q9nT88csJVvFhkuQTv+25Qo1JUtU1C9e5NXPf6kxHPw=; b=L+ArYe6Mzekk6lCG9ndK8jNTIFwCUQeRu2dmy8dAJFdZIfu8PCrVhZHY9cWfLjHq9HSrCP OXdFtE5TO70P0yvaQfPQo2JDPfua6mKLZiGhv1kYneVCEa5Rf/Z5jQdudLCosI/igvlPOy 5NSGDkkyO5M4FBY4aKOf6WHCQ+r/5v14A+M5eWQbRnonPRMurszM1JUJoOpRZSMvXktX1E swuIK4kTsVbapHOgZLQPHgwNHEROy1bJgqxUvweI95g5bQQo8gCPAPRf8BZakGmK+9zkWn mLRuXRzZ0ErqttXPFCmk3J4VmAuc5Si/xU5OiQLQD9/oe3F2DLvRJ92+MX3SDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674855325; 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=q9nT88csJVvFhkuQTv+25Qo1JUtU1C9e5NXPf6kxHPw=; b=mJNbHyHTnPOiEIeCFlNctK7H/X3WVH+DGdT865Wtly08SnjTfom0OqvAlFBTashDOrfpKM m9/NjSAtFMflHVZj4DeVIQrjYg3ROqQpk3wkBHlGdMcvC81p4AhjkNQ8Wq7ingoFwDq64A iIyb+6q8oOIVRQaExrFqTf+AgvafiM756kse9ypzejCNmjU5a4ghntz+qhdMi/vbU614Fw o9qYw8be7VDliSTDXFt2gVM6jUxOh1ACI/alh8j/ij0KNcKVgTjZh1lCLfkQgaDBz/Ejoh lxcqHPygF7Ggi0A7ihwkoZ6H/li1xOV+6gl2UEh/RfNjqvGsJz3fY4v/L44YtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674855325; a=rsa-sha256; cv=none; b=ROQ2HYDM6OWY7IuDi86r+n/KIlX4pEGaczK719ym06NWkRoZ9jRE+8K1MuF7w+HnxwvP/I g9Du/unIMrDsoJpSeYgnjvVVWeeQEZH+ZBwnEBi4q47F3uY+dAk1DwGqemukQufburpAPh BHXzJaCVh5nxOpp6vQIyK1MAnhe5Axw79bQQAxMMUn/MkQFHHiIgZwlAMDUYWURlBwRaGV LzV8RG33CdNLEo+EXbCjNPFwxv1YFndW86tDHVtCz8+wKE5ACGjLrLh7+DA++OcJfkkCiu LN4pYk4pZdvmdWp+iFhDmjBFifYOwP4oDsAxQ1Usy2HoUoFfScLdvtRVlH3Ehw== 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 4P3W8F5SH0zPjf; Fri, 27 Jan 2023 21:35:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RLZP3x014533; Fri, 27 Jan 2023 21:35:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RLZPrm014532; Fri, 27 Jan 2023 21:35:25 GMT (envelope-from git) Date: Fri, 27 Jan 2023 21:35:25 GMT Message-Id: <202301272135.30RLZPrm014532@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: 370110fd571c - main - universe: Switch GCC toolchains to GCC 12. 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: 370110fd571cfb655a80b4d4786b77f4a94a5d96 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=370110fd571cfb655a80b4d4786b77f4a94a5d96 commit 370110fd571cfb655a80b4d4786b77f4a94a5d96 Author: John Baldwin AuthorDate: 2023-01-27 21:35:13 +0000 Commit: John Baldwin CommitDate: 2023-01-27 21:35:13 +0000 universe: Switch GCC toolchains to GCC 12. Reviewed by: imp, emaste Differential Revision: https://reviews.freebsd.org/D38230 --- Makefile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 2860b31a043c..4e474ad04e61 100644 --- a/Makefile +++ b/Makefile @@ -531,14 +531,14 @@ TARGET_ARCHES_${target}?= ${target} .endfor .if defined(USE_GCC_TOOLCHAINS) -TOOLCHAINS_amd64= amd64-gcc9 -TOOLCHAINS_arm= armv6-gcc9 armv7-gcc9 -TOOLCHAIN_armv7= armv7-gcc9 -TOOLCHAINS_arm64= aarch64-gcc9 -TOOLCHAINS_i386= i386-gcc9 -TOOLCHAINS_powerpc= powerpc-gcc9 powerpc64-gcc9 -TOOLCHAIN_powerpc64= powerpc64-gcc9 -TOOLCHAINS_riscv= riscv64-gcc9 +TOOLCHAINS_amd64= amd64-gcc12 +TOOLCHAINS_arm= armv6-gcc12 armv7-gcc12 +TOOLCHAIN_armv7= armv7-gcc12 +TOOLCHAINS_arm64= aarch64-gcc12 +TOOLCHAINS_i386= i386-gcc12 +TOOLCHAINS_powerpc= powerpc-gcc12 powerpc64-gcc12 +TOOLCHAIN_powerpc64= powerpc64-gcc12 +TOOLCHAINS_riscv= riscv64-gcc12 .endif # If a target is using an external toolchain, set MAKE_PARAMS to enable use From nobody Fri Jan 27 22:02: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 4P3WlN00Ftz3cF5x; Fri, 27 Jan 2023 22:02: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 4P3WlM6Z9vz3Crg; Fri, 27 Jan 2023 22:02:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674856943; 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=9Wzu29Wyz+yL3xqQQF+T6rqI9mu+WaqFtZFypIybFSM=; b=kjb0myABm/+O6n6Qseki8FR/Y9aApvd16mcaQYIbN9pSU1ywC3avWFJj7yj+d6Qw48IQ8U peUUa/v5SvlQyzh1bsqm7bzWtF4NLRsLH1naLbfesIWHwBpjuKC4mMctfAuTUKrg90cenL RaQ7MTWzMeS7d8lZ+xJ9uO6LwsCFI4VjMO6ZByrMSe5+2co5+XaNSlpBAUkSe6EjcxOQUQ gGOK90jU3sRmxiYaMELLJNdt5a8NfYbmeAU04UVAdKCQTHcapwlPHmtxGTUH9ftKOdMe5e uRk8nneel1lgYIJ5d3klprM4lZzWyb8vBRL1IE0iyyQVR/GSehCrvfhnt/pXyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674856943; 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=9Wzu29Wyz+yL3xqQQF+T6rqI9mu+WaqFtZFypIybFSM=; b=GA7hFTZ+3QAWB2mIcwSTso/E+Z8oiZUvdkDnu4y4znfbo1EYWLWIk6oVzIplqxy5e4oQhc Vn7w3Fa5AYuliP5vbAvKDD2L0LwykIlCsKiqSH/cV/k1xeNC4asw4cI9ylKH7pUXoBvqzg NmieskB/pp4s3j0KI71sDhRJxO3kkipExFDsixvKndcVVwc+cGiaFYRyzhTiS3Z5I0ezkv vnw7GsDOvJxk+BoYc6fqFiu6ySlKU86KiAgjv9KdIvkTW5ZVuQzEfgdaF3M/EomjYhQmv3 9eIfQiARqqxlE/e4zKzNQmxdo0lY6MxgF5/qcKqfO9hY1FJQQJc7lechp8bLJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674856943; a=rsa-sha256; cv=none; b=ASEf+l1KYJTgw+9Mg/dKTY/yrZACDwCRPERNmBe+tiU6fkJG2DSD7uRi+r5aCXKL3XhAXR 3frn8RvxWG2I5OW0QZbtCOn3GOR5hRP8yy0m9TiO6IqVENppi9vHsEpsmRxY11M77/4Sjo okQaOtLN3/Rk7QrHW3Ba/aeCLSUWiqNa6lGggoAdFk93b+fIyeurR9RhS3daI8UAi9VYbj Jf4kywrBTQHjQBvTkBXH0sTnBYkRbt8WHW0MvzoZtZ/1zkZTkkgNHM5fMhSNYL1Q0amA6s /PjABoNujgpQBvn/khx/Jjn19kF8yB3gn8cYSexSWkWHJBOy+tIdyNCnEgOiug== 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 4P3WlM5dJjzPmb; Fri, 27 Jan 2023 22:02:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RM2NAX057176; Fri, 27 Jan 2023 22:02:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RM2Npf057175; Fri, 27 Jan 2023 22:02:23 GMT (envelope-from git) Date: Fri, 27 Jan 2023 22:02:23 GMT Message-Id: <202301272202.30RM2Npf057175@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: d1c7405ef68a - main - PCBGROUP.9: remove obsolete man page 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: d1c7405ef68af7950cf1fda94a789e601bd0b858 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=d1c7405ef68af7950cf1fda94a789e601bd0b858 commit d1c7405ef68af7950cf1fda94a789e601bd0b858 Author: Mitchell Horne AuthorDate: 2023-01-27 21:59:07 +0000 Commit: Mitchell Horne CommitDate: 2023-01-27 22:01:47 +0000 PCBGROUP.9: remove obsolete man page The PCBGROUP option and KPI were removed entirely in 93c67567e015. Reviewed by: pauamma (manpages), glebius, melifaro Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38187 --- ObsoleteFiles.inc | 3 + lib/librss/librss.3 | 2 - share/man/man9/Makefile | 10 --- share/man/man9/PCBGROUP.9 | 221 ---------------------------------------------- 4 files changed, 3 insertions(+), 233 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 2a60f587397b..e51f0b50f713 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -52,6 +52,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20230123: PCBGROUP.9 removed +OLD_FILES+=usr/share/man/man9/PCBGROUP.9.gz + # 20221214: TCPDEBUG removed OLD_FILES+=usr/include/netinet/tcp_debug.h diff --git a/lib/librss/librss.3 b/lib/librss/librss.3 index 2ac5804746b2..5e52482db5ed 100644 --- a/lib/librss/librss.3 +++ b/lib/librss/librss.3 @@ -143,8 +143,6 @@ and the option indicating the 32 bit RSS bucket id as a uint32_t. .Sh ERRORS The functions return either <0 or NULL as appropriate upon error. -.Sh SEE ALSO -.Xr PCBGROUP 9 .Sh HISTORY The .Xr librss.3 diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 4d80fa770f52..e6c4c8f7886b 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -246,7 +246,6 @@ MAN= accept_filter.9 \ owll.9 \ own.9 \ panic.9 \ - PCBGROUP.9 \ p_candebug.9 \ p_cansee.9 \ pci.9 \ @@ -1731,15 +1730,6 @@ MLINKS+=osd.9 osd_call.9 \ osd.9 osd_set.9 \ osd.9 osd_set_reserved.9 MLINKS+=panic.9 vpanic.9 -MLINKS+=PCBGROUP.9 in_pcbgroup_byhash.9 \ - PCBGROUP.9 in_pcbgroup_byinpcb.9 \ - PCBGROUP.9 in_pcbgroup_destroy.9 \ - PCBGROUP.9 in_pcbgroup_enabled.9 \ - PCBGROUP.9 in_pcbgroup_init.9 \ - PCBGROUP.9 in_pcbgroup_remove.9 \ - PCBGROUP.9 in_pcbgroup_update.9 \ - PCBGROUP.9 in_pcbgroup_update_mbuf.9 \ - PCBGROUP.9 in6_pcbgroup_byhash.9 MLINKS+=pci.9 pci_alloc_msi.9 \ pci.9 pci_alloc_msix.9 \ pci.9 pci_disable_busmaster.9 \ diff --git a/share/man/man9/PCBGROUP.9 b/share/man/man9/PCBGROUP.9 deleted file mode 100644 index 85d1bc011f36..000000000000 --- a/share/man/man9/PCBGROUP.9 +++ /dev/null @@ -1,221 +0,0 @@ -.\" Copyright (c) 2014 Adrian Chadd -.\" 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. The name of the author may not be used to endorse or promote products -.\" derived from this software without specific prior written permission. -.\" -.\" 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. -.\" -.\" $FreeBSD$ -.\" -.Dd July 23, 2014 -.Dt PCBGROUP 9 -.Os -.Sh NAME -.Nm PCBGROUP -.Nd Distributed Protocol Control Block Groups -.Sh SYNOPSIS -.Cd "options PCBGROUP" -.Pp -.In sys/param.h -.In netinet/in.h -.In netinet/in_pcb.h -.Ft void -.Fo in_pcbgroup_init -.Fa "struct inpcbinfo *pcbinfo" "u_int hashfields" "int hash_nelements" -.Fc -.Ft void -.Fn in_pcbgroup_destroy "struct inpcbinfo *pcbinfo" -.Ft struct inpcbgroup * -.Fo in_pcbgroup_byhash -.Fa "struct inpcbinfo *pcbinfo" "u_int hashtype" "uint32_t hash" -.Fc -.Ft struct inpcbgroup * -.Fn in_pcbgroup_byinpcb "struct inpcb *inp" -.Ft void -.Fn in_pcbgroup_update "struct inpcb *inp" -.Ft void -.Fn in_pcbgroup_update_mbuf "struct inpcb *inp" "struct mbuf *m" -.Ft void -.Fn in_pcbgroup_remove "struct inpcb *inp" -.Ft int -.Fn in_pcbgroup_enabled "struct inpcbinfo *pcbinfo" -.In netinet6/in6_pcb.h -.Ft struct inpcbgroup * -.Fo in6_pcbgroup_byhash -.Fa "struct inpcbinfo *pcbinfo" "u_int hashtype" "uint32_t hash" -.Fc -.Sh DESCRIPTION -This implementation introduces notions of affinity -for connections and distribute work so as to reduce lock contention, -with hardware work distribution strategies -such as RSS. -In this construction, connection groups supplement, rather than replace, -existing reservation tables for protocol 4-tuples, offering CPU-affine -lookup tables with minimal cache line migration and lock contention -during steady state operation. -.Pp -Internet protocols like UDP and TCP register to use connection groups -by providing an ipi_hashfields value other than IPI_HASHFIELDS_NONE. -This indicates to the connection group code whether a 2-tuple or -4-tuple is used as an argument to hashes that assign a connection to -a particular group. -This must be aligned with any hardware-offloaded distribution model, -such as RSS or similar approaches taken in embedded network boards. -Wildcard sockets require special handling, as in Willmann 2006, and -are shared between connection groups while being protected by -group-local locks. -Connection establishment and teardown can be signficantly more -expensive than without connection groups, but that steady-state -processing can be significantly faster. -.Pp -Enabling PCBGROUP in the kernel only provides the infrastructure -required to create and manage multiple PCB groups. -An implementation needs to fill in a few functions to provide PCB -group hash information in order for PCBs to be placed in a PCB group. -.Ss Operation -By default, each PCB info block (struct pcbinfo) has a single hash for -all PCB entries for the given protocol with a single lock protecting it. -This can be a significant source of lock contention on SMP hardware. -When a PCBGROUP is created, an array of separate hash tables are -created, each with its own lock. -A separate table for wildcard PCBs is provided. -By default, a PCBGROUP table is created for each available CPU. -The PCBGROUP code attempts to calculate a hash value from the given -PCB or mbuf when looking up a PCBGROUP. -While processing a received frame, -.Fn in_pcbgroup_byhash -can be used in conjunction with either a hardware-provided hash -value -.Po -eg the -.Xr RSS 9 -calculated hash value provided by some NICs -.Pc -or a software-provided hash value in order to choose a PCBGROUP -table to query. -A single table lock is held while performing a wildcard match. -However, all of the table locks are acquired before modifying the -wildcard table. -The PCBGROUP tables operate in conjunction with the normal single PCB list -in a PCB info block. -Thus, inserting and removing a PCB will still incur the same costs -as without PCBGROUP. -A protocol which uses PCBGROUP should fall back to the normal PCB list -lookup if a call to the PCBGROUP layer does not yield a lookup hit. -.Ss Usage -Initialize a PCBGROUP in a PCB info block -.Pq Vt "struct pcbinfo" -by calling -.Fn in_pcbgroup_init . -.Pp -Add a connection to a PCBGROUP with -.Fn in_pcbgroup_update . -Connections are removed by with -.Fn in_pcbgroup_remove . -These in turn will determine which PCBGROUP bucket the given PCB -is placed into and calculate the hash value appropriately. -.Pp -Wildcard PCBs are hashed differently and placed in a single wildcard -PCB list. -If -.Xr RSS 9 -is enabled and in use, RSS-aware wildcard PCBs are placed in a single -PCBGROUP based on RSS information. -Protocols may look up the PCB entry in a PCBGROUP by using the lookup -functions -.Fn in_pcbgroup_byhash -and -.Fn in_pcbgroup_byinpcb . -.Sh IMPLEMENTATION NOTES -The PCB code in -.Pa sys/netinet -and -.Pa sys/netinet6 -is aware of PCBGROUP and will call into the PCBGROUP code to do -PCBGROUP assignment and lookup, preferring a PCBGROUP lookup to the -default global PCB info table. -.Pp -An implementor wishing to experiment or modify the PCBGROUP assignment -should modify this set of functions: -.Bl -tag -width "12345678" -offset indent -.It Fn in_pcbgroup_getbucket No and Fn in6_pcbgroup_getbucket -Map a given 32 bit hash value to a PCBGROUP. -By default this is hash % number_of_pcbgroups. -However, this distribution may not align with NIC receive queues or -the -.Xr netisr 9 -configuration. -.It Fn in_pcbgroup_byhash No and Fn in6_pcbgroup_byhash -Map a 32 bit hash value and a hash type identifier to a PCBGROUP. -By default, this simply returns NULL. -This function is used by the -.Xr mbuf 9 -receive path in -.Pa sys/netinet/in_pcb.c -to map an mbuf to a PCBGROUP. -.It Fn in_pcbgroup_bytuple No and Fn in6_pcbgroup_bytuple -Map the source and destination address and port details to a PCBGROUP. -By default, this does a very simple XOR hash. -This function is used by both the PCB lookup code and as a fallback in -the -.Xr mbuf 9 -receive path in -.Pa sys/netinet/in_pcb.c . -.El -.Sh SEE ALSO -.Xr mbuf 9 , -.Xr netisr 9 , -.Xr RSS 9 -.Rs -.%A Paul Willmann -.%A Scott Rixner -.%A Alan L. Cox -.%T "An Evaluation of Network Stack Parallelization Strategies in Modern Operating Systems" -.%J "2006 USENIX Annual Technical Conference" -.%D 2006 -.%U http://www.ece.rice.edu/~willmann/pubs/paranet_usenix.pdf -.Re -.Sh HISTORY -PCBGROUP first appeared in -.Fx 9.0 . -.Sh AUTHORS -.An -nosplit -The PCBGROUP implementation was written by -.An Robert N. M. Watson Aq Mt rwatson@FreeBSD.org -under contract to Juniper Networks, Inc. -.Pp -This manual page written by -.An Adrian Chadd Aq Mt adrian@FreeBSD.org . -.Sh NOTES -The -.Xr RSS 9 -implementation currently uses -.Ic #ifdef -blocks to tie into PCBGROUP. -This is a sign that a more abstract programming API is needed. -.Pp -There is currently no support for re-balancing the PCBGROUP assignment, -nor is there any support for overriding which PCBGROUP a socket/PCB -should be in. -.Pp -No statistics are kept to indicate how often PCBGROUP lookups -succeed or fail. From nobody Fri Jan 27 22:02:24 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 4P3WlP1qRYz3cF80; Fri, 27 Jan 2023 22:02: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 4P3WlP0jLdz3D5w; Fri, 27 Jan 2023 22:02:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674856945; 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=JGVQicqCGFIDERXISOFjf3CFyktrfebcv5AhhbEvaKU=; b=GSttCc5CzH0Ad28IqP/K3CcVZJtnJfDxbOZUPZiJMPa9R5+UP4aKv+Tzg9aCgnMUN6Mev5 4qZDM6Ngvo8NQJ0zBAIOUu3p2cT1N53cCXClMvafE7TuCreOsA015eYI79Dl0/EtcViD0e Za7AiRtBbhf1odBejYRi2z8MSr//+J7P3M+SKhRuC96u4ApS9LcBxEn47qElpv0sr10I8m 3pBCU7fd0rvyrh83VXZ8Qp+4q6nILlRRhhpmsk4dPGLAu4/H72yEA2+psbZjZOjjkt+da0 AxMlno/waVPsOC97rf6pyoUD7kU173ifWpsbebHW3DwHG4Rhkw9PY+vepGIH+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674856945; 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=JGVQicqCGFIDERXISOFjf3CFyktrfebcv5AhhbEvaKU=; b=tDOODE/nmWH0/l0cWAbbfr2f9Ls6XVFowcSQ/zj2/hV8MvP7hAEdXZ7rzKHXrxCySSQMxa les6VFPbXB64Z1gNaTyvQeApg5fm9hE2CBDQ0LZ18lFAj7WMJNtB+41b6DLHdf/tvWy9cz sTOMlRSV0s/B7hEHEafcWXh8nR84g2Sagvshr4CqJLXXAMci5sDJl7EFmlDDeNF9QCX0lz ezbPo6/xgXrG0s9aZfefsA1J9vwFgJ6r4eZ48Nd5RtxonOCQtYruAhEEAxUTLHn8MKHA8X SCq7shNjk8sIYkat9lRDBQsKRp4rS1usK4gTe1Q8mgLry59xY52Ho/zBEekrkg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674856945; a=rsa-sha256; cv=none; b=PKLCsYnKO/Hw5/fhI+QRq+3N3tjRnA/BEGfnbVJ29JaG9QOVEksvekHJI6HqaWsQQ4pH+O uGUvUaiEejWMnXyJO4XvknVkgkiWulOcAFGfzoEODGiiY62h39g/0JljaXZly3heX7d6Wt tQcJHvkvKcX1UVTlQNwjUevczdaIKWI8xgmpzrrdcX7DXluk8Xsn5j/fAKO4HeqfX3Tema pqsBod1/qbWK1ixgpzMONF6zwA82KozOB0lch7aZn/aiiYDMqPJu+7/H7O+DibOfdbkpC1 0o0e3m3QTEgvqXksuPGDGcgr6qZ++XBR8DOCjlx1uiHwKPNkAvmE379YUkY77A== 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 4P3WlN6kSLzPy4; Fri, 27 Jan 2023 22:02:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30RM2OqH057200; Fri, 27 Jan 2023 22:02:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30RM2OtG057199; Fri, 27 Jan 2023 22:02:24 GMT (envelope-from git) Date: Fri, 27 Jan 2023 22:02:24 GMT Message-Id: <202301272202.30RM2OtG057199@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: 52f9a2823c64 - main - rtalloc.9: remove obsolete man page 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: 52f9a2823c64650c773dadf2d47c451e985f8389 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=52f9a2823c64650c773dadf2d47c451e985f8389 commit 52f9a2823c64650c773dadf2d47c451e985f8389 Author: Mitchell Horne AuthorDate: 2023-01-27 22:00:07 +0000 Commit: Mitchell Horne CommitDate: 2023-01-27 22:01:47 +0000 rtalloc.9: remove obsolete man page This KPI was removed in d22337254564. Note that there are a handful of references remaining in the src tree to these rtalloc functions that could be cleaned up by someone with more domain knowledge. Reviewed by: pauamma (manpages), glebius, melifaro Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38188 --- ObsoleteFiles.inc | 3 + share/man/man9/Makefile | 14 --- share/man/man9/rtalloc.9 | 282 ----------------------------------------------- share/man/man9/rtentry.9 | 1 - 4 files changed, 3 insertions(+), 297 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index e51f0b50f713..bf96963c3e73 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -52,6 +52,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20230124: rtalloc.9 removed +OLD_FILES+=usr/share/man/man9/rtalloc.9.gz + # 20230123: PCBGROUP.9 removed OLD_FILES+=usr/share/man/man9/PCBGROUP.9.gz diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index e6c4c8f7886b..d7d5b10f13d5 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -302,7 +302,6 @@ MAN= accept_filter.9 \ rijndael.9 \ rman.9 \ rmlock.9 \ - rtalloc.9 \ rtentry.9 \ runqueue.9 \ rwlock.9 \ @@ -1879,19 +1878,6 @@ MLINKS+=rmlock.9 rm_assert.9 \ rmlock.9 rm_wlock.9 \ rmlock.9 rm_wowned.9 \ rmlock.9 rm_wunlock.9 -MLINKS+=rtalloc.9 rtalloc1.9 \ - rtalloc.9 rtalloc_ign.9 \ - rtalloc.9 RT_ADDREF.9 \ - rtalloc.9 RT_LOCK.9 \ - rtalloc.9 RT_REMREF.9 \ - rtalloc.9 RT_RTFREE.9 \ - rtalloc.9 RT_UNLOCK.9 \ - rtalloc.9 RTFREE_LOCKED.9 \ - rtalloc.9 RTFREE.9 \ - rtalloc.9 rtfree.9 \ - rtalloc.9 rtalloc1_fib.9 \ - rtalloc.9 rtalloc_ign_fib.9 \ - rtalloc.9 rtalloc_fib.9 MLINKS+=runqueue.9 choosethread.9 \ runqueue.9 procrunnable.9 \ runqueue.9 remrunqueue.9 \ diff --git a/share/man/man9/rtalloc.9 b/share/man/man9/rtalloc.9 deleted file mode 100644 index ea22f8717d4a..000000000000 --- a/share/man/man9/rtalloc.9 +++ /dev/null @@ -1,282 +0,0 @@ -.\" -.\" Copyright 1996 Massachusetts Institute of Technology -.\" -.\" Permission to use, copy, modify, and distribute this software and -.\" its documentation for any purpose and without fee is hereby -.\" granted, provided that both the above copyright notice and this -.\" permission notice appear in all copies, that both the above -.\" copyright notice and this permission notice appear in all -.\" supporting documentation, and that the name of M.I.T. not be used -.\" in advertising or publicity pertaining to distribution of the -.\" software without specific, written prior permission. M.I.T. makes -.\" no representations about the suitability of this software for any -.\" purpose. It is provided "as is" without express or implied -.\" warranty. -.\" -.\" THIS SOFTWARE IS PROVIDED BY M.I.T. ``AS IS''. M.I.T. DISCLAIMS -.\" ALL EXPRESS OR IMPLIED WARRANTIES WITH REGARD TO THIS SOFTWARE, -.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT -.\" SHALL M.I.T. 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. -.\" -.\" $FreeBSD$ -.\" -.Dd July 4, 2012 -.Dt RTALLOC 9 -.Os -.Sh NAME -.Nm rtalloc1_fib , -.Nm rtalloc_ign_fib , -.Nm rtalloc_fib -.Nd look up a route in the kernel routing table -.Sh SYNOPSIS -.In sys/types.h -.In sys/socket.h -.In net/route.h -.Ft "struct rtentry *" -.Fn rtalloc1_fib "struct sockaddr *dst" "int report" "u_long flags" "u_int fibnum" -.Ft void -.Fn rtalloc_fib "struct route *ro" "u_int fibnum" -.Ft void -.Fn rtalloc_ign_fib "struct route *ro" "u_long flags" "u_int fibnum" -.Fn RTFREE_LOCKED "struct rt_entry *rt" -.Fn RTFREE "struct rt_entry *rt" -.Fn RT_LOCK "struct rt_entry *rt" -.Fn RT_UNLOCK "struct rt_entry *rt" -.Fn RT_ADDREF "struct rt_entry *rt" -.Fn RT_REMREF "struct rt_entry *rt" -.Fn RO_RTFREE "struct route *ro" -.Ft void -.Fn rtfree "struct rt_entry *rt" -.Ft "struct rtentry *" -.Fn rtalloc1 "struct sockaddr *dst" "int report" "u_long flags" -.Ft void -.Fn rtalloc "struct route *ro" -.Ft void -.Fn rtalloc_ign "struct route *ro" "u_long flags" -.Pp -.Cd options RADIX_MPATH -.Sh DESCRIPTION -The kernel uses a radix tree structure to manage routes for the -networking subsystem. -If compiled with -.Cd options RADIX_MPATH -kernel may maintain several independent forwarding information databases (FIBs). -The -.Fn rtalloc -family of routines is used by protocols to query these structures for a -route corresponding to a particular end-node address, and to cause -certain protocol\- and interface-specific actions to take place. -.Pp -The -.Fn rtalloc1_fib -function is the most general form of -.Fn rtalloc , -and all of the other forms are implemented as calls to it. -It takes a -.Fa "struct sockaddr *" -directly as the -.Fa dst -argument. -The second argument, -.Fa report , -controls whether the routing sockets are notified when a lookup fails. -The third argument, -.Fa flags , -is a combination of -the following values: -.Bl -item -offset indent -.It -.Dv RTF_RNH_LOCKED -indicates that the radix tree lock is already held -.El -.Pp -The last argument -.Fa fibnum -specifies number of forwarding information database (FIB) on which -the lookup should be performed. -In case of success the -.Fn rtalloc1_fib -function returns a pointer to a locked -.Vt "struct rtentry" -with an additional reference. -.Pp -The -.Fn rtalloc_fib -is the most simple variant. -Its main argument is -.Fa ro , -a pointer to a -.Fa "struct route" , -which is defined as follows: -.Bd -literal -offset indent -struct route { - struct rtentry *ro_rt; - struct llentry *ro_lle; - struct sockaddr ro_dst; -}; -.Ed -.Pp -Thus, this function can only be used for address families which are -smaller than the default -.Ft "struct sockaddr" . -Before calling -.Fn rtalloc_fib -for the first time, callers should ensure that unused bits of the -structure are set to zero. -The second argument -.Fa fibnum -is FIB number. -In case of success of the -.Fn rtalloc_fib -the -.Fa ro_rt -points to a valid and unlocked -.Xr rtentry 9 , -which has an additional reference put on it, freeing which is -responsibility of the caller. -On subsequent calls, -.Fn rtalloc_fib -returns without performing a lookup if -.Fa ro->ro_rt -is non-null and the -.Dv RTF_UP -flag is set in the rtentry's -.Fa rt_flags -field. -.Pp -The -.Fn rtalloc_ign_fib -function is the same as the -.Fn rtalloc_fib , -but there is additional -.Fa flags -argument, which is same as in -.Fn rtalloc1_fib . -.Pp -The -.Fn RTFREE_LOCKED -macro is used to unref and possibly free a locked routing entry -with one our reference, for example previously allocated by -.Fn rtalloc1_fib . -.Pp -The -.Fn RTFREE -macro is used to unref and possibly free an unlocked route entries with -one our reference, for example previously allocated by -.Fn rtalloc_fib -or -.Fn rtalloc_ign_fib . -.Pp -Both -.Fn RTFREE_LOCKED -and -.Fn RTFREE -macros decrement the reference count on the routing table entry, -and proceed with actual freeing if the reference count has reached zero. -.Pp -The -.Fn RT_LOCK -macro is used to lock a routing table entry. -.Pp -The -.Fn RT_UNLOCK -macro is used to unlock a routing table entry. -.Pp -The -.Fn RT_ADDREF -macro increments the reference count on a previously locked route entry. -It should be used whenever a reference to an -.Xr rtentry 9 -is going to be stored outside the routing table. -.Pp -The -.Fn RT_REMREF -macro decrements the reference count on a previously locked route entry. -Its usage is contrary to -.Fn RT_ADDREF . -.Pp -The -.Fn RO_RTFREE -macro is used to free route entry that is referenced by struct route. -At certain circumstances the latter may not hold a reference on rtentry, -and -.Fn RO_RTFREE -treats such routes correctly. -.Pp -The -.Fn rtfree -function does the actual free of the routing table entry, and shouldn't -be called directly by facilities, that just perform routing table lookups. -.Sh LEGACY INTERFACE -Prior to introduction of multiple routing tables functions did not -require the -.Fa "u_int fibnum" -argument. -Legacy -.Fn rtalloc1 , -.Fn rtalloc -and -.Fn rtalloc_ign -functions are kept for compatibility, and are equivalent to -calling new interface with -.Fa fibnum -argument equal to -.Va 0 , -which implies default forwarding table. -.Sh RETURN VALUES -The -.Fn rtalloc1_fib -function returns a pointer to a locked routing-table entry if it succeeds, -otherwise a null pointer. -The -.Fn rtalloc_fib -and -.Fn rtalloc_ign_fib -functions do not return a value, but they fill in the -.Fa *ro_rt -member of the -.Fa *ro -argument with a pointer to an unlocked routing-table entry if they -succeed, otherwise a null pointer. -In a case of success all functions put a reference on the -routing-table entry, freeing of which is responsibility of the caller. -Lack of a route should in most cases be -translated to the -.Xr errno 2 -value -.Er EHOSTUNREACH . -.Sh SEE ALSO -.Xr route 4 , -.Xr rtentry 9 -.Sh HISTORY -The -.Nm rtalloc -facility first appeared in -.Bx 4.2 , -although with much different internals. -The -.Fn rtalloc_ign -function and the -.Fa flags -argument to -.Fn rtalloc1 -first appeared in -.Fx 2.0 . -Routing table locking was introduced in -.Fx 5.2 . -Multiple routing tables were introduced in -.Fx 8.0 . -.Sh AUTHORS -The original version of this manual page was written by -.An -nosplit -.An "Garrett Wollman" . -It was significantly updated by -.An "Gleb Smirnoff" . diff --git a/share/man/man9/rtentry.9 b/share/man/man9/rtentry.9 index 65a63e481c4b..35ff59eb8433 100644 --- a/share/man/man9/rtentry.9 +++ b/share/man/man9/rtentry.9 @@ -230,7 +230,6 @@ Empty space available for protocol-specific information. .Sh SEE ALSO .Xr route 4 , .Xr route 8 , -.Xr rtalloc 9 .Sh HISTORY The .Vt rtentry From nobody Sat Jan 28 00:33: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 4P3b6K6CB4z3bPZW; Sat, 28 Jan 2023 00:34: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 4P3b6K5x6Gz3QSd; Sat, 28 Jan 2023 00:34:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674866041; 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=BH48O+pu4wJqCMWrhjEslk0k2EQZDDIs2U0rpr6bB+c=; b=Zlm53XRxQXMeDUiG8ObHh1UjZVElG132qpMlEuvJ4RANCGJtEeo+/bgX9YfFeCVtljWvTB xCH4Q9R92EOyMKkUL8wjBvQtV9AqOOw0OBPSBhFfSxcVGB+9Yw7vZjSFgT0sMevSHgAlu1 T6BAuumahHWUZVKUSHw5Z46v9UKpG0cPbyPIhFFJQSGhzQdaPWi5E29/pWLBWs6ZTVBcON lWiv5JbqNfZIL1mTEEqdlJMHtQEi0NiGMJC2Ne3kUnmoPHy9ZQz7WF5yU1/v3NcesNAj6Y zIx2BEi3ptA2cFSRL0s5evGAOfp0ovntw/HfVEzfK2qHiH6n1efLb3ewcP2+1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674866041; 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=BH48O+pu4wJqCMWrhjEslk0k2EQZDDIs2U0rpr6bB+c=; b=oTg5uvPv9yhmeS3+6U45QP7DecpIy1I46IKd7yx9fBDboU7SeXle4m8qEooMtHU9yj9v+Q kfEjjrgwpjBU7JwVlbX1wu+96xX125UMrvbjBSYxzd4SvrZbrOXpxtO++/81EVbvVPHyqP 8YfnGCnlx4LV5PEida+p0YJ5/YUxg7dgclwzw0eR5MDfRxuzFhULo/FN5r6HrxssCV1+Q/ cEDgmg8NMJqOqcyBzGmNiXcMkig9M+C+NSxHGZGcSC1yeCwsVziC3Eou9ElyiwgaSUNXhf LPEz/n2MS6wGre6PKQqAgByjnpTVj2c7URoRNCdVY7Bf3Hb9G5WDX4We43uEbQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674866041; a=rsa-sha256; cv=none; b=FBDGqWc5eXtxQOl5O0/4TNVHGS/ldfMLAPeLhQKsWxbqsTZM6aEJq8LJcea0MisDgagOFK tOQ408fP8exNMMIEEa1HdJsACncD/15yrsXArobtxed09cFTr5T06qOai5zPK/BQ2uzgex juDRIv5HpF73ZjunUBG9gJnpodEVHbZDfSATDsmXI4R86HZfzrhq3D4Bbq3CkXgZjks2Q6 ZXMzyVNFQcAMeazb9eiwyQaQAQ846DV2FJUnVpJ3L2u8sZ8X4Pp9ODHEQmvHOdggn8GEe6 GvOKHyLGW6JbfZWt9S6zb/cfRo2+VJsz5Ah+8jL/rLVS7IxuUVUWgepYA+cO8Q== 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 4P3b6K51MvzVFr; Sat, 28 Jan 2023 00:34:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30S0Y1mJ069980; Sat, 28 Jan 2023 00:34:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30S0XuLo069970; Sat, 28 Jan 2023 00:33:56 GMT (envelope-from git) Date: Sat, 28 Jan 2023 00:33:56 GMT Message-Id: <202301280033.30S0XuLo069970@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: 4fde40d9b540 - main - Merge/update to bmake-20230126 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: 4fde40d9b540ea1a544cb4378a14f2f6da85ca6d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=4fde40d9b540ea1a544cb4378a14f2f6da85ca6d commit 4fde40d9b540ea1a544cb4378a14f2f6da85ca6d Merge: 52f9a2823c64 2e36ab236364 Author: Simon J. Gerraty AuthorDate: 2023-01-28 00:33:01 +0000 Commit: Simon J. Gerraty CommitDate: 2023-01-28 00:33:01 +0000 Merge/update to bmake-20230126 contrib/bmake/ChangeLog | 129 + contrib/bmake/FILES | 8 +- contrib/bmake/Makefile | 4 +- contrib/bmake/Makefile.config.in | 1 + contrib/bmake/VERSION | 2 +- contrib/bmake/arch.c | 18 +- contrib/bmake/bmake.1 | 1692 ++++--- contrib/bmake/bmake.cat1 | 1787 +++---- contrib/bmake/compat.c | 15 +- contrib/bmake/cond.c | 51 +- contrib/bmake/config.h.in | 113 +- contrib/bmake/configure | 5323 +++++++++++--------- contrib/bmake/configure.in | 37 +- contrib/bmake/dir.c | 19 +- contrib/bmake/dir.h | 3 +- contrib/bmake/find_lib.sh | 7 + contrib/bmake/for.c | 11 +- contrib/bmake/job.c | 39 +- contrib/bmake/machine.sh | 81 +- contrib/bmake/main.c | 43 +- contrib/bmake/make.1 | 1692 ++++--- contrib/bmake/make.c | 30 +- contrib/bmake/make.h | 17 +- contrib/bmake/meta.c | 34 +- contrib/bmake/mk/ChangeLog | 32 + contrib/bmake/mk/compiler.mk | 4 +- contrib/bmake/mk/dirdeps-options.mk | 9 +- contrib/bmake/mk/dirdeps.mk | 4 +- contrib/bmake/mk/gendirdeps.mk | 4 +- contrib/bmake/mk/install-mk | 14 +- contrib/bmake/mk/meta.autodep.mk | 4 +- contrib/bmake/mk/meta.stage.mk | 4 +- contrib/bmake/mk/meta2deps.py | 17 +- contrib/bmake/mk/meta2deps.sh | 26 +- contrib/bmake/mk/sys.clean-env.mk | 6 +- contrib/bmake/mk/sys.mk | 5 +- contrib/bmake/mk/sys.vars.mk | 52 +- contrib/bmake/mk/sys/Linux.mk | 6 +- contrib/bmake/mkdeps.sh | 9 +- contrib/bmake/os.sh | 20 +- contrib/bmake/parse.c | 130 +- contrib/bmake/sigcompat.c | 4 +- contrib/bmake/str.c | 8 +- contrib/bmake/str.h | 14 +- contrib/bmake/strlcpy.c | 5 +- contrib/bmake/targ.c | 28 +- contrib/bmake/unit-tests/Makefile | 41 +- contrib/bmake/unit-tests/Makefile.config.in | 3 +- contrib/bmake/unit-tests/cmd-errors-jobs.exp | 10 +- contrib/bmake/unit-tests/cmd-errors-jobs.mk | 12 +- contrib/bmake/unit-tests/cmd-errors.exp | 10 +- contrib/bmake/unit-tests/cmd-errors.mk | 12 +- contrib/bmake/unit-tests/cond-cmp-numeric.exp | 6 +- contrib/bmake/unit-tests/cond-cmp-numeric.mk | 4 +- contrib/bmake/unit-tests/cond-cmp-string.exp | 8 +- contrib/bmake/unit-tests/cond-cmp-unary.mk | 22 +- contrib/bmake/unit-tests/cond-op-parentheses.exp | 8 +- contrib/bmake/unit-tests/cond-op-parentheses.mk | 7 +- contrib/bmake/unit-tests/cond-token-plain.exp | 8 +- contrib/bmake/unit-tests/cond-token-plain.mk | 6 +- contrib/bmake/unit-tests/deptgt.exp | 4 +- contrib/bmake/unit-tests/deptgt.mk | 4 +- contrib/bmake/unit-tests/dir.mk | 6 +- contrib/bmake/unit-tests/directive-for-break.exp | 4 + contrib/bmake/unit-tests/directive-for-break.mk | 60 + contrib/bmake/unit-tests/directive-for.mk | 18 +- contrib/bmake/unit-tests/export.mk | 4 +- contrib/bmake/unit-tests/hanoi-include.mk | 18 +- contrib/bmake/unit-tests/include-main.exp | 16 +- contrib/bmake/unit-tests/include-main.mk | 4 +- .../unit-tests/{include-sub.mk => include-sub.inc} | 4 +- contrib/bmake/unit-tests/include-subsub.inc | 9 + contrib/bmake/unit-tests/include-subsub.mk | 9 - contrib/bmake/unit-tests/job-output-null.exp | 6 +- contrib/bmake/unit-tests/job-output-null.mk | 36 +- contrib/bmake/unit-tests/make-exported.mk | 4 +- contrib/bmake/unit-tests/opt-env.exp | 6 +- contrib/bmake/unit-tests/opt-query.exp | 24 +- contrib/bmake/unit-tests/opt-query.mk | 69 +- contrib/bmake/unit-tests/parse-var.exp | 6 +- contrib/bmake/unit-tests/parse-var.mk | 132 +- contrib/bmake/unit-tests/sh-leading-at.exp | 1 + contrib/bmake/unit-tests/sh-leading-at.mk | 6 +- contrib/bmake/unit-tests/sh-leading-hyphen.exp | 10 + contrib/bmake/unit-tests/sh-leading-hyphen.mk | 19 +- contrib/bmake/unit-tests/sh-leading-plus.exp | 2 + contrib/bmake/unit-tests/sh-leading-plus.mk | 6 +- contrib/bmake/unit-tests/var-op-expand.exp | 8 +- contrib/bmake/unit-tests/var-op-expand.mk | 13 +- contrib/bmake/unit-tests/var-readonly.exp | 1 + contrib/bmake/unit-tests/var-readonly.mk | 20 + .../bmake/unit-tests/var-scope-local-legacy.exp | 5 + contrib/bmake/unit-tests/var-scope-local-legacy.mk | 19 +- contrib/bmake/unit-tests/varmod-defined.mk | 14 +- contrib/bmake/unit-tests/varmod-ifelse.exp | 6 +- contrib/bmake/unit-tests/varmod-ifelse.mk | 4 +- contrib/bmake/unit-tests/varmod-loop.exp | 6 + contrib/bmake/unit-tests/varmod-loop.mk | 47 +- contrib/bmake/unit-tests/varmod-match.mk | 12 +- contrib/bmake/unit-tests/varmod-order-numeric.mk | 8 +- contrib/bmake/unit-tests/varmod-to-lower.mk | 15 +- contrib/bmake/unit-tests/varmod-undefined.mk | 4 +- contrib/bmake/unit-tests/varmod.exp | 10 +- contrib/bmake/unit-tests/varmod.mk | 56 +- contrib/bmake/unit-tests/varname-dot-newline.exp | 3 +- contrib/bmake/unit-tests/varname-dot-newline.mk | 32 +- contrib/bmake/unit-tests/varparse-errors.exp | 14 + contrib/bmake/unit-tests/varparse-errors.mk | 21 +- contrib/bmake/var.c | 132 +- usr.bin/bmake/Makefile | 2 +- usr.bin/bmake/Makefile.config | 3 +- usr.bin/bmake/config.h | 117 +- usr.bin/bmake/unit-tests/Makefile | 41 +- usr.bin/bmake/unit-tests/Makefile.config | 3 +- 114 files changed, 7387 insertions(+), 5434 deletions(-) diff --cc contrib/bmake/Makefile index 201e4869dc3f,000000000000..ad78883ff890 mode 100644,000000..100644 --- a/contrib/bmake/Makefile +++ b/contrib/bmake/Makefile @@@ -1,238 -1,0 +1,238 @@@ - # $Id: Makefile,v 1.120 2022/07/26 23:02:54 sjg Exp $ ++# $Id: Makefile,v 1.122 2022/10/08 02:53:30 sjg Exp $ + +PROG= bmake + +SRCS= \ + arch.c \ + buf.c \ + compat.c \ + cond.c \ + dir.c \ + for.c \ + hash.c \ + job.c \ + lst.c \ + main.c \ + make.c \ + make_malloc.c \ + meta.c \ + metachar.c \ + parse.c \ + str.c \ + suff.c \ + targ.c \ + trace.c \ + util.c \ + var.c + +.-include "VERSION" +.-include "Makefile.inc" + +# this file gets generated by configure +.-include "Makefile.config" + +.if !empty(LIBOBJS) +SRCS+= ${LIBOBJS:T:.o=.c} +.endif + +# just in case +prefix?= /usr +srcdir?= ${.CURDIR} + +DEFAULT_SYS_PATH?= ${prefix}/share/mk + +CPPFLAGS+= -DUSE_META +CFLAGS+= ${CPPFLAGS} +CFLAGS+= -D_PATH_DEFSYSPATH=\"${DEFAULT_SYS_PATH}\" +CFLAGS+= -I. -I${srcdir} ${XDEFS} -DMAKE_NATIVE +CFLAGS+= ${COPTS.${.ALLSRC:M*.c:T:u}} +COPTS.main.c+= "-DMAKE_VERSION=\"${_MAKE_VERSION}\"" + +.for x in FORCE_MACHINE FORCE_MACHINE_ARCH +.ifdef $x +COPTS.main.c+= "-D$x=\"${$x}\"" +.endif +.endfor + +# meta mode can be useful even without filemon +# should be set by now +USE_FILEMON ?= no +.if ${USE_FILEMON:tl} != "no" +.PATH: ${srcdir}/filemon +SRCS+= filemon_${USE_FILEMON}.c +COPTS.meta.c+= -DUSE_FILEMON -DUSE_FILEMON_${USE_FILEMON:tu} +COPTS.job.c+= ${COPTS.meta.c} + +.if ${USE_FILEMON} == "dev" +FILEMON_H ?= /usr/include/dev/filemon/filemon.h +.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h" +COPTS.filemon_dev.c += -DHAVE_FILEMON_H -I${FILEMON_H:H} +.endif +.endif # USE_FILEMON == dev + +.endif # USE_FILEMON + +.PATH: ${srcdir} + +.if make(obj) || make(clean) +SUBDIR+= unit-tests +.endif + +# start-delete1 for bsd.after-import.mk +# we skip a lot of this when building as part of FreeBSD etc. + +# list of OS's which are derrived from BSD4.4 +BSD44_LIST= NetBSD FreeBSD OpenBSD DragonFly MirBSD Bitrig +# we are... +OS := ${.MAKE.OS:U${uname -s:L:sh}} +# are we 4.4BSD ? +isBSD44:=${BSD44_LIST:M${OS}} + - .if ${isBSD44} == "" ++.if ${isBSD44} == "" && ${OS:NDarwin:NLinux} != "" +MANTARGET= cat +INSTALL?=${srcdir}/install-sh +.if ${MACHINE} == "sun386" +# even I don't have one of these anymore :-) +CFLAGS+= -DPORTAR +.elif ${OS} != "SunOS" +# assume the worst +SRCS+= sigcompat.c +CFLAGS+= -DSIGNAL_FLAGS=SA_RESTART +.endif +.else +MANTARGET?= man +.endif + +# turn this on by default - ignored if we are root +WITH_INSTALL_AS_USER= + +# suppress with -DWITHOUT_* +OPTIONS_DEFAULT_YES+= \ + AUTOCONF_MK \ + INSTALL_MK \ + PROG_LINK + +OPTIONS_DEFAULT_NO+= \ + PROG_VERSION + +# process options now +.include + +.if ${MK_PROG_VERSION} == "yes" +PROG_NAME= ${PROG}-${_MAKE_VERSION} +.if ${MK_PROG_LINK} == "yes" +SYMLINKS+= ${PROG_NAME} ${BINDIR}/${PROG} +.endif +.endif + +EXTRACT_MAN=no +# end-delete1 + +MAN= ${PROG}.1 +MAN1= ${MAN} + +.if ${PROG} != "make" +CLEANFILES+= my.history +.if make(${MAN}) || !exists(${srcdir}/${MAN}) +my.history: + @(echo ".Nm"; \ + echo "is derived from NetBSD"; \ + echo ".Xr make 1 ."; \ + echo "It uses autoconf to facilitate portability to other platforms."; \ + echo ".Pp") > $@ + +.NOPATH: ${MAN} +${MAN}: make.1 my.history + @echo making $@ + @sed \ + -e '/^.Dt/s/MAKE/${PROG:tu}/' \ + -e 's/^.Nx/NetBSD/' \ + -e '/^.Nm/s/make/${PROG}/' \ + -e '/^.Sh HISTORY/rmy.history' \ + -e '/^.Sh HISTORY/,$$s,^.Nm,make,' ${srcdir}/make.1 > $@ + +all beforeinstall: ${MAN} +_mfromdir=. +.endif +.endif + +MANTARGET?= cat +MANDEST?= ${MANDIR}/${MANTARGET}1 + +.if ${MANTARGET} == "cat" +_mfromdir=${srcdir} +.endif + +.include + +CPPFLAGS+= -DMAKE_NATIVE -DHAVE_CONFIG_H +COPTS.var.c += -Wno-cast-qual +COPTS.job.c += -Wno-format-nonliteral +COPTS.parse.c += -Wno-format-nonliteral +COPTS.var.c += -Wno-format-nonliteral + +# Force these +SHAREDIR= ${SHAREDIR.bmake:U${prefix}/share} +BINDIR= ${BINDIR.bmake:U${prefix}/bin} +MANDIR= ${MANDIR.bmake:U${SHAREDIR}/man} + +.if !exists(.depend) +${OBJS}: config.h +.endif + +# start-delete2 for bsd.after-import.mk + +# make sure that MAKE_VERSION gets updated. +main.o: ${srcdir}/VERSION + +.if ${MK_AUTOCONF_MK} == "yes" +CONFIGURE_DEPS += ${.CURDIR}/VERSION +# we do not need or want the generated makefile +CONFIGURE_ARGS += --without-makefile +AUTOCONF_GENERATED_MAKEFILE = Makefile.config +.include +.endif +SHARE_MK ?= ${SHAREDIR}/mk +MKSRC = ${srcdir}/mk +INSTALL ?= ${srcdir}/install-sh + +.if ${MK_INSTALL_MK} == "yes" +install: install-mk +.endif + +beforeinstall: + test -d ${DESTDIR}${BINDIR} || ${INSTALL} -m 775 -d ${DESTDIR}${BINDIR} + test -d ${DESTDIR}${MANDEST} || ${INSTALL} -m 775 -d ${DESTDIR}${MANDEST} + +install-mk: +.if exists(${MKSRC}/install-mk) + test -d ${DESTDIR}${SHARE_MK} || ${INSTALL} -m 775 -d ${DESTDIR}${SHARE_MK} + sh ${MKSRC}/install-mk -v -m 644 ${DESTDIR}${SHARE_MK} +.else + @echo need to unpack mk.tar.gz under ${srcdir} or set MKSRC; false +.endif +# end-delete2 + +# A simple unit-test driver to help catch regressions +TEST_MAKE ?= ${.OBJDIR}/${PROG:T} +accept test: .NOMETA + cd ${.CURDIR}/unit-tests && \ + MAKEFLAGS= ${TEST_MAKE} -r -m / ${.TARGET} ${TESTS:DTESTS=${TESTS:Q}} + + +.if make(test) && ${MK_AUTO_OBJ} == "yes" +# The test target above visits unit-tests with -r -m / +# which prevents MK_AUTO_OBJ doing its job +# so do it here +.if defined(MAKEOBJDIRPREFIX) || ${MAKEOBJDIR:U:M*/*} != "" +_utobj = ${.OBJDIR}/unit-tests +.else +_utobj = ${.CURDIR}/unit-tests/${MAKEOBJDIR:Uobj} +.endif +utobj: .NOMETA + @test -d ${_utobj} && exit 0; \ + echo "[Creating ${_utobj}...]"; \ + umask ${OBJDIR_UMASK:U002}; \ + mkdir -p ${_utobj} +test: utobj +.endif diff --cc contrib/bmake/make.1 index 9accbaae9f61,73b86e91e002..5a28d2f83ca3 --- a/contrib/bmake/make.1 +++ b/contrib/bmake/make.1 @@@ -837,27 -891,16 +891,27 @@@ The name tha .Nm was executed with .Pq Va argv[0] . - For compatibility - .Nm - also sets - .Va .MAKE - with the same value. + .It Va .MAKE + The same as + .Va MAKE , + for compatibility. The preferred variable to use is the environment variable .Ev MAKE - because it is more compatible with other versions of - .Nm + because it is more compatible with other make variants and cannot be confused with the special target with the same name. +.It Va .MAKE.ALWAYS_PASS_JOB_QUEUE +Tells +.Nm +whether to pass the descriptors of the job token queue +even if the target is not tagged with +.Ic .MAKE +The default is +.Ql Pa yes +for backwards compatability with +.Fx 9.0 +and earlier. + .\" '.MAKE.cmd_filtered' is intentionally undocumented, + .\" as it is an internal implementation detail. .It Va .MAKE.DEPENDFILE Names the makefile (default .Sq Pa .depend ) diff --cc contrib/bmake/os.sh index 1fc66ecc6a63,6bf52420c90f..6bf52420c90f mode 100755,100644..100644 --- a/contrib/bmake/os.sh +++ b/contrib/bmake/os.sh diff --cc contrib/bmake/unit-tests/directive-for-break.exp index 000000000000,b036ebfeb661..b036ebfeb661 mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/directive-for-break.exp +++ b/contrib/bmake/unit-tests/directive-for-break.exp diff --cc contrib/bmake/unit-tests/directive-for-break.mk index 000000000000,a86acfa8bde0..a86acfa8bde0 mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/directive-for-break.mk +++ b/contrib/bmake/unit-tests/directive-for-break.mk diff --cc contrib/bmake/unit-tests/include-subsub.inc index 000000000000,79a6a3770090..79a6a3770090 mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/include-subsub.inc +++ b/contrib/bmake/unit-tests/include-subsub.inc diff --cc contrib/bmake/unit-tests/var-readonly.exp index 000000000000,39a9383953dd..39a9383953dd mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/var-readonly.exp +++ b/contrib/bmake/unit-tests/var-readonly.exp diff --cc contrib/bmake/unit-tests/var-readonly.mk index 000000000000,43799e4adb5c..43799e4adb5c mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/var-readonly.mk +++ b/contrib/bmake/unit-tests/var-readonly.mk diff --cc usr.bin/bmake/Makefile index c8d2dbd63b2b,000000000000..722de897acbb mode 100644,000000..100644 --- a/usr.bin/bmake/Makefile +++ b/usr.bin/bmake/Makefile @@@ -1,181 -1,0 +1,181 @@@ +# This is a generated file, do NOT edit! +# See contrib/bmake/bsd.after-import.mk +# +# $FreeBSD$ + +SRCTOP?= ${.CURDIR:H:H} + +# look here first for config.h +CFLAGS+= -I${.CURDIR} + +# for after-import +CLEANDIRS+= FreeBSD +CLEANFILES+= bootstrap + - # $Id: Makefile,v 1.120 2022/07/26 23:02:54 sjg Exp $ ++# $Id: Makefile,v 1.122 2022/10/08 02:53:30 sjg Exp $ + +PROG?= ${.CURDIR:T} + +SRCS= \ + arch.c \ + buf.c \ + compat.c \ + cond.c \ + dir.c \ + for.c \ + hash.c \ + job.c \ + lst.c \ + main.c \ + make.c \ + make_malloc.c \ + meta.c \ + metachar.c \ + parse.c \ + str.c \ + suff.c \ + targ.c \ + trace.c \ + util.c \ + var.c + +.sinclude "Makefile.inc" + +# this file gets generated by configure +.sinclude "Makefile.config" + +.if !empty(LIBOBJS) +SRCS+= ${LIBOBJS:T:.o=.c} +.endif + +# just in case +prefix?= /usr +srcdir?= ${.CURDIR} + +DEFAULT_SYS_PATH?= ${prefix}/share/mk + +CPPFLAGS+= -DUSE_META +CFLAGS+= ${CPPFLAGS} +CFLAGS+= -D_PATH_DEFSYSPATH=\"${DEFAULT_SYS_PATH}\" +CFLAGS+= -I. -I${srcdir} ${XDEFS} -DMAKE_NATIVE +CFLAGS+= ${COPTS.${.ALLSRC:M*.c:T:u}} +COPTS.main.c+= "-DMAKE_VERSION=\"${_MAKE_VERSION}\"" + +.for x in FORCE_MACHINE FORCE_MACHINE_ARCH +.ifdef $x +COPTS.main.c+= "-D$x=\"${$x}\"" +.endif +.endfor + +# meta mode can be useful even without filemon +# should be set by now +USE_FILEMON ?= no +.if ${USE_FILEMON:tl} != "no" +.PATH: ${srcdir}/filemon +SRCS+= filemon_${USE_FILEMON}.c +COPTS.meta.c+= -DUSE_FILEMON -DUSE_FILEMON_${USE_FILEMON:tu} +COPTS.job.c+= ${COPTS.meta.c} + +.if ${USE_FILEMON} == "dev" +FILEMON_H ?= /usr/include/dev/filemon/filemon.h +.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h" +COPTS.filemon_dev.c += -DHAVE_FILEMON_H -I${FILEMON_H:H} +.endif +.endif # USE_FILEMON == dev + +.endif # USE_FILEMON + +.PATH: ${srcdir} + +.if make(obj) || make(clean) +SUBDIR+= unit-tests +.endif + + +MAN= ${PROG}.1 +MAN1= ${MAN} + +.if ${PROG} != "make" +CLEANFILES+= my.history +.if make(${MAN}) || !exists(${srcdir}/${MAN}) +my.history: + @(echo ".Nm"; \ + echo "is derived from NetBSD"; \ + echo ".Xr make 1 ."; \ + echo "It uses autoconf to facilitate portability to other platforms."; \ + echo ".Pp") > $@ + +.NOPATH: ${MAN} +${MAN}: make.1 my.history + @echo making $@ + @sed \ + -e '/^.Dt/s/MAKE/${PROG:tu}/' \ + -e 's/^.Nx/NetBSD/' \ + -e '/^.Nm/s/make/${PROG}/' \ + -e '/^.Sh HISTORY/rmy.history' \ + -e '/^.Sh HISTORY/,$$s,^.Nm,make,' ${srcdir}/make.1 > $@ + +all beforeinstall: ${MAN} +_mfromdir=. +.endif +.endif + +MANTARGET?= cat +MANDEST?= ${MANDIR}/${MANTARGET}1 + +.if ${MANTARGET} == "cat" +_mfromdir=${srcdir} +.endif + +.include + +CPPFLAGS+= -DMAKE_NATIVE -DHAVE_CONFIG_H +COPTS.var.c += -Wno-cast-qual +COPTS.job.c += -Wno-format-nonliteral +COPTS.parse.c += -Wno-format-nonliteral +COPTS.var.c += -Wno-format-nonliteral + +# Force these +SHAREDIR= ${SHAREDIR.bmake:U${prefix}/share} +BINDIR= ${BINDIR.bmake:U${prefix}/bin} +MANDIR= ${MANDIR.bmake:U${SHAREDIR}/man} + +.if !exists(.depend) +${OBJS}: config.h +.endif + + +# A simple unit-test driver to help catch regressions +TEST_MAKE ?= ${.OBJDIR}/${PROG:T} +accept test: .NOMETA + cd ${.CURDIR}/unit-tests && \ + MAKEFLAGS= ${TEST_MAKE} -r -m / ${.TARGET} ${TESTS:DTESTS=${TESTS:Q}} + + +.if make(test) && ${MK_AUTO_OBJ} == "yes" +# The test target above visits unit-tests with -r -m / +# which prevents MK_AUTO_OBJ doing its job +# so do it here +.if defined(MAKEOBJDIRPREFIX) || ${MAKEOBJDIR:U:M*/*} != "" +_utobj = ${.OBJDIR}/unit-tests +.else +_utobj = ${.CURDIR}/unit-tests/${MAKEOBJDIR:Uobj} +.endif +utobj: .NOMETA + @test -d ${_utobj} && exit 0; \ + echo "[Creating ${_utobj}...]"; \ + umask ${OBJDIR_UMASK:U002}; \ + mkdir -p ${_utobj} +test: utobj +.endif + +# override some simple things +BINDIR= /usr/bin +MANDIR= /usr/share/man/man + +# make sure we get this +CFLAGS+= ${COPTS.${.IMPSRC:T}} + +after-import: ${SRCTOP}/contrib/bmake/bsd.after-import.mk + cd ${.CURDIR} && ${.MAKE} -f ${SRCTOP}/contrib/bmake/bsd.after-import.mk + diff --cc usr.bin/bmake/Makefile.config index f92abbc61dbf,000000000000..fab0991419ff mode 100644,000000..100644 --- a/usr.bin/bmake/Makefile.config +++ b/usr.bin/bmake/Makefile.config @@@ -1,27 -1,0 +1,28 @@@ +# This is a generated file, do NOT edit! +# See contrib/bmake/bsd.after-import.mk +# +# $FreeBSD$ + +SRCTOP?= ${.CURDIR:H:H} + +# things set by configure + - _MAKE_VERSION?=20220726 ++_MAKE_VERSION?=20230126 + +prefix?= /usr +srcdir= ${SRCTOP}/contrib/bmake +CC?= cc +DEFAULT_SYS_PATH?= .../share/mk:/usr/share/mk + ++EGREP = egrep +CPPFLAGS+= +CFLAGS+= ${CPPFLAGS} -DHAVE_CONFIG_H +LDFLAGS+= +LIBOBJS+= ${LIBOBJDIR}stresep$U.o +LDADD+= +USE_META?= yes +USE_FILEMON?= dev +FILEMON_H?= /usr/include/dev/filemon/filemon.h +BMAKE_PATH_MAX?= 1024 +# used if MAXPATHLEN not defined +CPPFLAGS+= -DBMAKE_PATH_MAX=${BMAKE_PATH_MAX} diff --cc usr.bin/bmake/config.h index 6c053cf96cfd,000000000000..baaa1f38ea54 mode 100644,000000..100644 --- a/usr.bin/bmake/config.h +++ b/usr.bin/bmake/config.h @@@ -1,395 -1,0 +1,446 @@@ +/* $FreeBSD$ */ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.in by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Path of default shell */ +/* #undef DEFSHELL_CUSTOM */ + +/* Shell spec to use by default */ +/* #undef DEFSHELL_INDEX */ + +/* Path of default shell */ +/* #undef DEFSHELL_PATH */ + +/* Define to 1 if you have the header file. */ +#define HAVE_AR_H 1 + +/* Define to 1 if you have the declaration of `sys_siglist', and to 0 if you + don't. */ +#define HAVE_DECL_SYS_SIGLIST 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the `dirname' function. */ +#define HAVE_DIRNAME 1 + +/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ +/* #undef HAVE_DOPRNT */ + +/* Define to 1 if you have the `err' function. */ +#define HAVE_ERR 1 + +/* Define to 1 if you have the `errx' function. */ +#define HAVE_ERRX 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_ERR_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `fork' function. */ +#define HAVE_FORK 1 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getenv' function. */ +#define HAVE_GETENV 1 + +/* Define to 1 if you have the `getopt' function. */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the `getwd' function. */ +#define HAVE_GETWD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `killpg' function. */ +#define HAVE_KILLPG 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIBGEN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if the system has the type `long long int'. */ +#define HAVE_LONG_LONG_INT 1 + - /* Define to 1 if you have the header file. */ - #define HAVE_MEMORY_H 1 ++/* Define to 1 if you have the header file. */ ++/* #undef HAVE_MINIX_CONFIG_H */ + +/* Define to 1 if you have the `mmap' function. */ +#define HAVE_MMAP 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PATHS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_POLL_H 1 + +/* Define to 1 if you have the `putenv' function. */ +#define HAVE_PUTENV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RANLIB_H 1 + +/* Define to 1 if you have the `realpath' function. */ +#define HAVE_REALPATH 1 + +/* Define to 1 if you have the `select' function. */ +#define HAVE_SELECT 1 + +/* Define to 1 if you have the `setenv' function. */ +#define HAVE_SETENV 1 + +/* Define to 1 if you have the `setpgid' function. */ +#define HAVE_SETPGID 1 + +/* Define to 1 if you have the `setrlimit' function. */ +#define HAVE_SETRLIMIT 1 + +/* Define to 1 if you have the `setsid' function. */ +#define HAVE_SETSID 1 + +/* Define to 1 if you have the `sigaction' function. */ +#define HAVE_SIGACTION 1 + +/* Define to 1 if you have the `sigaddset' function. */ +#define HAVE_SIGADDSET 1 + +/* Define to 1 if you have the `sigpending' function. */ +#define HAVE_SIGPENDING 1 + +/* Define to 1 if you have the `sigprocmask' function. */ +#define HAVE_SIGPROCMASK 1 + +/* Define to 1 if you have the `sigsetmask' function. */ +#define HAVE_SIGSETMASK 1 + +/* Define to 1 if you have the `sigsuspend' function. */ +#define HAVE_SIGSUSPEND 1 + +/* Define to 1 if you have the `sigvec' function. */ +#define HAVE_SIGVEC 1 + +/* Define to 1 if the system has the type `sig_atomic_t'. */ +#define HAVE_SIG_ATOMIC_T 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* 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 `strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the `stresep' function. */ +/* #undef HAVE_STRESEP */ + +/* Define to 1 if you have the `strftime' function. */ +#define HAVE_STRFTIME 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 `strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* Define to 1 if you have the `strsep' function. */ +#define HAVE_STRSEP 1 + +/* Define to 1 if you have the `strtod' function. */ +#define HAVE_STRTOD 1 + +/* Define to 1 if you have the `strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the `strtoll' function. */ +#define HAVE_STRTOLL 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + - /* Define to 1 if `st_rdev' is a member of `struct stat'. */ - #define HAVE_STRUCT_STAT_ST_RDEV 1 - - /* Define to 1 if your `struct stat' has `st_rdev'. Deprecated, use - `HAVE_STRUCT_STAT_ST_RDEV' instead. */ - #define HAVE_ST_RDEV 1 - +/* Define to 1 if you have the `sysctl' function. */ +#define HAVE_SYSCTL 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MMAN_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* 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_SYSCTL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `unsetenv' function. */ +#define HAVE_UNSETENV 1 + +/* Define to 1 if the system has the type `unsigned long long int'. */ +#define HAVE_UNSIGNED_LONG_LONG_INT 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UTIME_H 1 + +/* Define to 1 if you have the `vfork' function. */ +#define HAVE_VFORK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VFORK_H */ + +/* Define to 1 if you have the `vprintf' function. */ +#define HAVE_VPRINTF 1 + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the `wait3' function. */ +#define HAVE_WAIT3 1 + +/* Define to 1 if you have the `wait4' function. */ +#define HAVE_WAIT4 1 + +/* Define to 1 if you have the `waitpid' function. */ +#define HAVE_WAITPID 1 + +/* Define to 1 if you have the `warn' function. */ +#define HAVE_WARN 1 + +/* Define to 1 if you have the `warnx' function. */ +#define HAVE_WARNX 1 + ++/* Define to 1 if you have the header file. */ ++#define HAVE_WCHAR_H 1 ++ +/* Define to 1 if `fork' works. */ +#define HAVE_WORKING_FORK 1 + +/* Define to 1 if `vfork' works. */ +#define HAVE_WORKING_VFORK 1 + +/* define if your compiler has __attribute__ */ +#define HAVE___ATTRIBUTE__ 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "sjg@NetBSD.org" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "bmake" + +/* Define to the full name and version of this package. */ - #define PACKAGE_STRING "bmake 20211020" ++#define PACKAGE_STRING "bmake 20220909" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "bmake" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ - #define PACKAGE_VERSION "20211020" - - /* Define as the return type of signal handlers (`int' or `void'). */ - #define RETSIGTYPE void ++#define PACKAGE_VERSION "20220909" + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + - /* Define to 1 if you have the ANSI C header files. */ ++/* Define to 1 if all of the C90 standard headers exist (not just the ones ++ required in a freestanding environment). This macro is provided for ++ backward compatibility; new code need not use it. */ *** 1052 LINES SKIPPED *** From nobody Sat Jan 28 03:41: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 4P3gGy1641z3c6wF; Sat, 28 Jan 2023 03:41: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 4P3gGy0WKHz43r7; Sat, 28 Jan 2023 03:41:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674877306; 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=IPH9N+sJCFHDY7iZxFiR/ORZZJZx9xlxBH5wefDi4X0=; b=fbRpkh2Mp87+P4JSpYnR5qDsAhSljHkUdOXknBhv98KAgtPC1v6ObzuolIoTbCPTL4hb92 AbstMe0uzXeK5+hBZ+w86dCtPizCvzSXrI65vWVRUDoi3zyJhYgY40bwPHjElK6tjp3k23 V20jnCAQJTI/HI2uv4jDV6UwIe2H0i24qOuMeOLvlMEcRQDkNvgpW+Q2OJrryj7UjvP6vb zL7EgBmHXAUew7/ufwwzpZkEXz06bC0Xypj0QX0Am6hG/uJui0yLxAKJiA+gp+GKiX4//c 5kMnhhOnNoUxHEt2+s8i7IfpMftrQfCxUN+Y6He7zuiuE+U7hIwumxr3seFC7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674877306; 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=IPH9N+sJCFHDY7iZxFiR/ORZZJZx9xlxBH5wefDi4X0=; b=o8jEDFzt5GvVQNtHfiyt1A7IELH6mheUOMZFdsafhgsu/CSwOGhTVvlM5wiusZqn66p6pF eEi75Biug62nuHzLZE1zjScfIBYpgvSAlA7eYheB2aSp7kawvGwWBQ5wgvtGUcReq3+V8u B0byfg+tJfUjFNftFjUT3zxK7jKV4nyrcLjlJHqT034+K/jdlAyLA54YorC/YPJ3rL29in +F6UAsNiQ1rnvUq/8Oj1YRN5jLyaFn3tJaKUckH4nt3MzqbbfShWAj4lq7EEQLRMkA+8H1 GXsoCbUufaiDtF+1fPXmzoLWu/0t49F81TnNhN0iFhhSbx5BCjDW9XdlKgUujQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674877306; a=rsa-sha256; cv=none; b=fxBlpAicrhl71pMsxIsV4US2DkzdVQwo4akNL2umz4OoIBWfjWaDK3TO55Fwh+jTV9KMBt xJR3kdo8WkVDqiqF5gOPFmGv30CupXlBWCH7W05xq6IXCOEGvA/7JT9WRLLDwsnQHFYk2m 4g9Hu3UhgF0w08sPU5ij+mCfWBLG9BmCU1bBJ2Vzdqa/8AkdArKUvD5+bLspn9UUbttUzD hj+9kdjBzaDKdx93aOZ0dycKK5c7DHqZrmOlv2uB3dfQZ3xM5SgFx7xIU/THL98r2QE4Lb FqRLKXMpCw1+zEsKXZ6hqE/FGsRtF4+w6zdHY8kUQ8p5eK7K/pY4uII/azLwTg== 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 4P3gGx6hQfzZ9t; Sat, 28 Jan 2023 03:41:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30S3fjv6039546; Sat, 28 Jan 2023 03:41:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30S3fjDo039545; Sat, 28 Jan 2023 03:41:45 GMT (envelope-from git) Date: Sat, 28 Jan 2023 03:41:45 GMT Message-Id: <202301280341.30S3fjDo039545@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: 4d77927e2af3 - main - linuxkpi: Use a proper declaration for pm_suspend_via_firmware. 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: 4d77927e2af3a991c5b07071b7fe18673d7742f2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=4d77927e2af3a991c5b07071b7fe18673d7742f2 commit 4d77927e2af3a991c5b07071b7fe18673d7742f2 Author: John Baldwin AuthorDate: 2023-01-28 03:29:39 +0000 Commit: John Baldwin CommitDate: 2023-01-28 03:41:35 +0000 linuxkpi: Use a proper declaration for pm_suspend_via_firmware. Reported by: GCC -Wstrict-prototypes --- sys/compat/linuxkpi/common/include/linux/suspend.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/suspend.h b/sys/compat/linuxkpi/common/include/linux/suspend.h index 8458a6f6d4c5..9bd6c2c55875 100644 --- a/sys/compat/linuxkpi/common/include/linux/suspend.h +++ b/sys/compat/linuxkpi/common/include/linux/suspend.h @@ -11,7 +11,7 @@ extern suspend_state_t pm_suspend_target_state; #define PM_SUSPEND_TO_IDLE 1 static inline int -pm_suspend_via_firmware() +pm_suspend_via_firmware(void) { return 0; } From nobody Sat Jan 28 10:20: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 4P3r7L4pHFz3brns; Sat, 28 Jan 2023 10:20: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 4P3r7L4NG9z3CG9; Sat, 28 Jan 2023 10:20:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674901246; 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=/hau6f7e61YG31VH2O2D8WWF4qn5UqElzYxzY4oK4kg=; b=mZDRWSt+a1oHPMy1ecFIOJY1JEiVaVXt9UvvIQe22AOHgjvzvrk/FI2EAN5ufLuhCVW45C yBcmxoWbGnuGqNf3Zlokh4Tcsh688cWDPsvmff8AxMoX03bYa0AIERyohm+algo15NGDZg cDbOLzhtwzxWwyiwQljNEp2mqr+ZFSq2bzxWxjNYeIRRs48UMlVFzsASI3s1xeOPbGbj3Y 1drw/h9VgMJlG7pQf1V1gKULmvj3cdH/jVJiXpuVNO+nvIAcj4zksjL8PJXvMlIjlYrGSP 6c5ewgnVFIu3z11Ie1RLThBeXza+iANpMgXwRdLsBN48DrCGFC5fX+rQOpQfSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674901246; 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=/hau6f7e61YG31VH2O2D8WWF4qn5UqElzYxzY4oK4kg=; b=eaxXgPQmm3/XHYFzUnl9gVsHvg/TZCWADZR68vmrnKMrFinN8yJaEX6al8ymTYrR6lk+rJ vAtwsVrk9xrUVwlzER0KxZQu36GYezGwUqKb3RSvH1owzWNT2Eq0H6zJ2X2Ke9kePbGDGO sjJWNWlv1t4LYMo74v6A9BJJEwi7IAJbUm8fv1wgj37W6WFfvbQr/bGdfeRM8+7+iwvJ39 x0cfCmdsmivQVOC+/j8oD9opxyMkR08Cd7huiLX69aXoP/XwaiFbGelFTJ6WXpBv6A4e6N jjdI8uKIop6bSGRs1DbLNtRiN8KXxOS4vY3U8H5fseArWuIQ5v9RjaWV4JjlJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674901246; a=rsa-sha256; cv=none; b=bG0mIgrL2a9fgmUw2zd5x8Yj7HdJ2ESKeKpviLDU8/mV8DQt2JijwtCYMK45x8DqS63eHU IA1RA4HnRzOwAjG3rLt7Z499EID2T2l1GIpIx8eNJydtdEU3wLXKTTnEdQk50N5CaHYKP/ PvZUxFBdu1Tu5bQ4mMHG5i79mh4uXxpsZzQavBokfbVEi20lROHaDe/rfL596EMTZgdS3t jV5e5isQ2mnvLdvYoID6WieScRtIis8nwnQf2xWUyMmHdQhE/Ys+nM3b2ff77pfCMiv7rE 808gw6kJMjBzT8PicgVAwboTSm35hhYV1khtZAfBevTLrhH4a9sCu20T5FtlGQ== 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 4P3r7L3Rxgzlm2; Sat, 28 Jan 2023 10:20:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SAKkc9004494; Sat, 28 Jan 2023 10:20:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SAKkMB004493; Sat, 28 Jan 2023 10:20:46 GMT (envelope-from git) Date: Sat, 28 Jan 2023 10:20:46 GMT Message-Id: <202301281020.30SAKkMB004493@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dmitry Chagin Subject: git: 953688e823a6 - main - linux(4): Rework statfs conversion routine. 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: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 953688e823a67c3e9c0096252c33b1e7ecf9a095 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=953688e823a67c3e9c0096252c33b1e7ecf9a095 commit 953688e823a67c3e9c0096252c33b1e7ecf9a095 Author: Dmitry Chagin AuthorDate: 2023-01-28 10:19:41 +0000 Commit: Dmitry Chagin CommitDate: 2023-01-28 10:19:41 +0000 linux(4): Rework statfs conversion routine. Rework the routines to convert a native statfs structure (with fixed-size 64-bit counters) to a Linux statfs structure (with long-sized counters) for 32-bit apps. Instead of following Linux and return an EOVERFLOW error from statfs() family of syscalls when actual fs stat value(s) are large enough to not fit into 32 bits, apply scale logics used by FreeBSD to convert a 5.x statfs structure to a 4.x statfs structure. For more details see cc479dda. Tested by: glebius MFC after: 1 week --- sys/compat/linux/linux_stats.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index fb2dd2fe01ef..63a5c37e1acf 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -413,26 +413,22 @@ bsd_to_linux_ftype(const char *fstypename) static int bsd_to_linux_statfs(struct statfs *bsd_statfs, struct l_statfs *linux_statfs) { -#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) - uint64_t tmp; - -#define LINUX_HIBITS 0xffffffff00000000ULL - tmp = bsd_statfs->f_blocks | bsd_statfs->f_bfree | bsd_statfs->f_files | - bsd_statfs->f_bsize; - if ((bsd_statfs->f_bavail != -1 && (bsd_statfs->f_bavail & LINUX_HIBITS)) || - (bsd_statfs->f_ffree != -1 && (bsd_statfs->f_ffree & LINUX_HIBITS)) || - (tmp & LINUX_HIBITS)) - return (EOVERFLOW); -#undef LINUX_HIBITS +#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) + statfs_scale_blocks(bsd_statfs, INT32_MAX); #endif linux_statfs->f_type = bsd_to_linux_ftype(bsd_statfs->f_fstypename); linux_statfs->f_bsize = bsd_statfs->f_bsize; linux_statfs->f_blocks = bsd_statfs->f_blocks; linux_statfs->f_bfree = bsd_statfs->f_bfree; linux_statfs->f_bavail = bsd_statfs->f_bavail; +#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) + linux_statfs->f_ffree = MIN(bsd_statfs->f_ffree, INT32_MAX); + linux_statfs->f_files = MIN(bsd_statfs->f_files, INT32_MAX); +#else linux_statfs->f_ffree = bsd_statfs->f_ffree; linux_statfs->f_files = bsd_statfs->f_files; +#endif linux_statfs->f_fsid.val[0] = bsd_statfs->f_fsid.val[0]; linux_statfs->f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; linux_statfs->f_namelen = MAXNAMLEN; From nobody Sat Jan 28 10:20: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 4P3r7M69ZZz3brtT; Sat, 28 Jan 2023 10:20: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 4P3r7M5RLbz3C65; Sat, 28 Jan 2023 10:20:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674901247; 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=+mJyQBUaMWqGc3lmPSJEtj4yJl8mv74HVqJlYtALV2M=; b=YJECa6J5MnXSIDdUIUqIthsT8mUDR3Qw1YdwLry6FpsgXzsg4UbA0zy1oEBtLLW3Vwu/2n pG8OvqQ3wFRjs8AV4E4hy2Yb/9a9uXJ9BAVMta9rQLLRGmaX0cCnXAKuNJkRi9d9YWGbel hMtTKWLVRmyySTj7PwC5M8mkkNLi+yQh8fIn1u4MPq9ECngwfNh78ZzBVq0ncnhmyuygFP gpmD7jL9lXvNGPN/gzGzDexPLpjJkBP/PJXO69mI9p7l/O4WXdgdvmpUqE5jOq1wxKzSgO q0UkgdSSs9ch5VDKrpFvO/1csKCIhJBoGb92iqKrFwrBwA9rJnYWshuIPrV/0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674901247; 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=+mJyQBUaMWqGc3lmPSJEtj4yJl8mv74HVqJlYtALV2M=; b=lupQ4QhtKsTMapQhOUa3/xp5ZXGoq4kt0C+pzt27iAyPgQETDwcMyd5NsjNy64o2w9HcfD dkXgxpR4W1DcFb5MlTVOu5LpyeVGrmKV3nSydFoZIMAOmQZHmC5+tRL6rrNYnkzu2NZXJF Aa0Fb1/6fGVAQsDCugEYH8lZBGF2HXWbpSEwAOl6bkSGefJg4uRE0x+lhMtkKgcNC0/751 vPJnI+G9ar3TMhFsxaVoS5fCajYB+PZI6cM53Ub0LtvIc+9P2ySMlKhQeGR2PE9vt0Vlhf ggWG9GIhoEaJ9qdhojCEPsgywwdjpGasZd1ZOuutn4lksFp2PYwQyDtfPt5nYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674901247; a=rsa-sha256; cv=none; b=nAjeNyjOqTc2CynxqdpvFz588Hw+oKuHZJo6zrjaRoTIB515pFtne4/41Qd8rWzkjrLWKq S1o72Z+B5Xw1V/QSrDsbdKVDRXLXNnY9hk2cH1n5BSOBySK64yjvvT4zoJ8LVtzQyUBhHp HIBSn22gxNHq9hrxqDJVmZMwN1Ia8edbbTH8M3fo6omTA6eZw/51L0kaM5lU3zJEvV5knh /0z6077haWSdu8M6S72jCpAtQP5eJmBmh51cYO7II4VS2Jcux3rVShpymaeiTouN63TMOK HaCIoJ7xHAyxSt8VsWqZ7/DVhWiMOhRZKz1uNPCja+Oj88pm9AZtMODVMQtQxQ== 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 4P3r7M4LWbzlvY; Sat, 28 Jan 2023 10:20:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SAKlKH004519; Sat, 28 Jan 2023 10:20:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SAKlJb004518; Sat, 28 Jan 2023 10:20:47 GMT (envelope-from git) Date: Sat, 28 Jan 2023 10:20:47 GMT Message-Id: <202301281020.30SAKlJb004518@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dmitry Chagin Subject: git: 9922bccbc9c4 - main - linux(4): Convert mount exported flags for statfs system calls. 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: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9922bccbc9c4effb02b99391088d0405f9c0f75e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=9922bccbc9c4effb02b99391088d0405f9c0f75e commit 9922bccbc9c4effb02b99391088d0405f9c0f75e Author: Dmitry Chagin AuthorDate: 2023-01-28 10:20:27 +0000 Commit: Dmitry Chagin CommitDate: 2023-01-28 10:20:27 +0000 linux(4): Convert mount exported flags for statfs system calls. MFC after: 1 week --- sys/compat/linux/linux.h | 15 +++++++++++++++ sys/compat/linux/linux_stats.c | 25 +++++++++++++++++++++++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/sys/compat/linux/linux.h b/sys/compat/linux/linux.h index 6400de4cb228..40e563014fde 100644 --- a/sys/compat/linux/linux.h +++ b/sys/compat/linux/linux.h @@ -264,6 +264,21 @@ struct l_statx { uint64_t __spare2[13]; }; +/* + * statfs f_flags + */ +#define LINUX_ST_RDONLY 0x0001 +#define LINUX_ST_NOSUID 0x0002 +#define LINUX_ST_NODEV 0x0004 /* No native analogue */ +#define LINUX_ST_NOEXEC 0x0008 +#define LINUX_ST_SYNCHRONOUS 0x0010 +#define LINUX_ST_VALID 0x0020 +#define LINUX_ST_MANDLOCK 0x0040 /* No native analogue */ +#define LINUX_ST_NOATIME 0x0400 +#define LINUX_ST_NODIRATIME 0x0800 /* No native analogue */ +#define LINUX_ST_RELATIME 0x1000 /* No native analogue */ +#define LINUX_ST_NOSYMFOLLOW 0x2000 + #define lower_32_bits(n) ((uint32_t)((n) & 0xffffffff)) #ifdef KTRACE diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 63a5c37e1acf..a1cc2bb7bf8b 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -410,6 +410,27 @@ bsd_to_linux_ftype(const char *fstypename) return (0L); } +static int +bsd_to_linux_mnt_flags(int f_flags) +{ + int flags = LINUX_ST_VALID; + + if (f_flags & MNT_RDONLY) + flags |= LINUX_ST_RDONLY; + if (f_flags & MNT_NOEXEC) + flags |= LINUX_ST_NOEXEC; + if (f_flags & MNT_NOSUID) + flags |= LINUX_ST_NOSUID; + if (f_flags & MNT_NOATIME) + flags |= LINUX_ST_NOATIME; + if (f_flags & MNT_NOSYMFOLLOW) + flags |= LINUX_ST_NOSYMFOLLOW; + if (f_flags & MNT_SYNCHRONOUS) + flags |= LINUX_ST_SYNCHRONOUS; + + return (flags); +} + static int bsd_to_linux_statfs(struct statfs *bsd_statfs, struct l_statfs *linux_statfs) { @@ -433,7 +454,7 @@ bsd_to_linux_statfs(struct statfs *bsd_statfs, struct l_statfs *linux_statfs) linux_statfs->f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; linux_statfs->f_namelen = MAXNAMLEN; linux_statfs->f_frsize = bsd_statfs->f_bsize; - linux_statfs->f_flags = 0; + linux_statfs->f_flags = bsd_to_linux_mnt_flags(bsd_statfs->f_flags); memset(linux_statfs->f_spare, 0, sizeof(linux_statfs->f_spare)); return (0); @@ -480,7 +501,7 @@ bsd_to_linux_statfs64(struct statfs *bsd_statfs, struct l_statfs64 *linux_statfs linux_statfs->f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; linux_statfs->f_namelen = MAXNAMLEN; linux_statfs->f_frsize = bsd_statfs->f_bsize; - linux_statfs->f_flags = 0; + linux_statfs->f_flags = bsd_to_linux_mnt_flags(bsd_statfs->f_flags); memset(linux_statfs->f_spare, 0, sizeof(linux_statfs->f_spare)); } From nobody Sat Jan 28 14:46: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 4P3y1x2Ck5z3cTkV; Sat, 28 Jan 2023 14:46: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 4P3y1x1fzsz3rQj; Sat, 28 Jan 2023 14:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674917189; 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=ytUgOWYQLo8tYfix+oX4BiiRWlcxLEfCufyu8wJJWYI=; b=rnk+Uz2wbg9mXQQFIs+iexKt9lPKgF4NL8KDwLAwy0KMYqFnASLoGqxKwBPGFIhEGouDue d/PLR0ZsKP2J0ts2n1KwjIFLgZbEO8ytJrU5v/q23gE91VZg+KqdDK0VLhPHUtgC8j7F76 lXiVDd2XyarUpKU1yPUE2c6baHzfAdphmGaWpNOreKRAvnVt+4JZXnXlspTqm7woLioN8v EYjSa+loRhCN1BC2LFNOLGm8aLW88+4KwfWt5SpHJdRCvIBSsyrPnyvsgziBI+f1pyd5Qe zj9oQYVLRW0/W4/0u3KHDQo44EeoVJy69bJWMmxs/HNMR7dHxoQMBk8bz+ayqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674917189; 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=ytUgOWYQLo8tYfix+oX4BiiRWlcxLEfCufyu8wJJWYI=; b=XoTKCofOVrBImmdNeRF3q3tRk/G8oa8f3G5yDqRUO9SKMKc3RolhGfWtopbJ7th9YCVAM8 yo+mJFhm/I+Ntvh35gg6QSLDYqy7/x2xshDJHPqXYxO78ggS2lF4tAFb1Kwiof74JtjKw9 cAf3M3o4n7XJehxtZzFF58uz/v5m5nLc1yZpq+gYOFEn1jH1JT1ahZcDI/AM/rFH6cqcvO t0ZnJpJl63c55YMPYntggPerqYyMlfJwh2UML+QcTi+dPVwkCPBh1iScC6LX3v6a4kcMhH nf8CuNfoHCbfR4FvZCCdabsOuuGzUES0HkNA9o03wau9lYVlFx32IldQCItF/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674917189; a=rsa-sha256; cv=none; b=KXM0wqcF0rxYintvljQ3SxXiigMpq/BTLtTEqwN4QkXTyjAdTDRsqKQb9Jf1syxxeQc3pn Ls49nQaKKwgYZyZzbi1+MgHTX/GtSc3hDdORLVJlc8ZeeU6X8H/Itz1BWq+IvMpTDsW/Gd 25kt+Pycpks20wA0ybdhBD2qzlJKriZ1QBc7xLSbZ8AFLWc/SCgQzTyguJGBHhf0D3spbB UUHDrWUHwZrLFF33jbhL6almu46pYTh3mEZnep80S51yFJ7BI1svF9Md9Vc3MUpd80i7we tzCCostR/NSAL9V01jy8uXuo26BgbKuZwqGkiOZsW9ejJy8WbEA9Oea37j68dw== 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 4P3y1x0k9Qzt0J; Sat, 28 Jan 2023 14:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SEkTDi079963; Sat, 28 Jan 2023 14:46:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SEkSND079962; Sat, 28 Jan 2023 14:46:28 GMT (envelope-from git) Date: Sat, 28 Jan 2023 14:46:28 GMT Message-Id: <202301281446.30SEkSND079962@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: ee27834d740d - main - umcs(4): Fix a typo in a kernel message 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: ee27834d740df50b7e5834a2075b94ae3c15d81a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by gbe (doc committer): URL: https://cgit.FreeBSD.org/src/commit/?id=ee27834d740df50b7e5834a2075b94ae3c15d81a commit ee27834d740df50b7e5834a2075b94ae3c15d81a Author: Gordon Bergling AuthorDate: 2023-01-28 14:45:52 +0000 Commit: Gordon Bergling CommitDate: 2023-01-28 14:45:52 +0000 umcs(4): Fix a typo in a kernel message - s/confguration/configuration/ - s/nornal/normal/ Obtained from: NetBSD MFC after: 5 days --- sys/dev/usb/serial/umcs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/usb/serial/umcs.c b/sys/dev/usb/serial/umcs.c index a643aa85fa3d..875f004b6700 100644 --- a/sys/dev/usb/serial/umcs.c +++ b/sys/dev/usb/serial/umcs.c @@ -35,7 +35,7 @@ * http://www.moschip.com. The datasheets don't contain full * programming information for the chip. * - * It is nornal to have only two enabled ports in devices, based on + * It is normal to have only two enabled ports in devices, based on * quad-port mos7840. * */ @@ -345,7 +345,7 @@ umcs7840_attach(device_t dev) } device_printf(dev, "Chip mcs%04x, found %d active ports\n", uaa->info.idProduct, sc->sc_numports); if (!umcs7840_get_reg_sync(sc, MCS7840_DEV_REG_MODE, &data)) { - device_printf(dev, "On-die confguration: RST: active %s, HRD: %s, PLL: %s, POR: %s, Ports: %s, EEPROM write %s, IrDA is %savailable\n", + device_printf(dev, "On-die configuration: RST: active %s, HRD: %s, PLL: %s, POR: %s, Ports: %s, EEPROM write %s, IrDA is %savailable\n", (data & MCS7840_DEV_MODE_RESET) ? "low" : "high", (data & MCS7840_DEV_MODE_SER_PRSNT) ? "yes" : "no", (data & MCS7840_DEV_MODE_PLLBYPASS) ? "bypassed" : "avail", From nobody Sat Jan 28 15:35:24 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 4P3z6N41G5z3b7Xx; Sat, 28 Jan 2023 15:35: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 4P3z6N3N42z3wyb; Sat, 28 Jan 2023 15:35:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674920124; 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=b/rPIeKm/pfPf+mxq7aHCy1flXu7KaNAoR5G1IRCnGs=; b=KUOtOp/5RjCvUbQgslFpr+jtIBwEPpxjjy8AOGv9xDnlXDWqCinkH0S9sBHnFrIVtv7Vag YopecZXGTKCLWhqaH5n4BAn46rymtzuY8qHHhAJE9xsiSNKZG5wVpqGhOq0aqwviHlARCK 6mYiyFtTAzoWSav6tskFUytd1jZN+pcwCFCgBdbQuW/YG3l1Y4AF9W/wFWJe4jzfZGnHJl rVKiH8Uw1WAGgLz3jKVFYer4H7k6FXp29Nv8f4TmKfK85UcibQt4kk4uO6G9cIlD/QhJCG LA/juxHHdlbrK8+qUzpOJrQ6YmU6UWn9DiBt8NYscTHqae6C9t741rpLbQdbBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674920124; 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=b/rPIeKm/pfPf+mxq7aHCy1flXu7KaNAoR5G1IRCnGs=; b=ArT/mKxn5s9+IpYMLBXfZnvzclqtHhdDe0RcBzws0JdkQrPA13ls6KfkgfE1zSgVOAT/OA YdOkYHsNQZb/kZlFaRYLS+oUV8no+LeWNdIUxSldyKnua9p3FVXjnUjA6lVPCuJqKpW3Ai o3e6DYDOOE3UKnlvU14Y7PdMw+Az1XIXYp0A9SX0s+szu1tcJhc/5k/4I8OANWgMpdSpQ3 MR8sDeLTWLOVLFKIxy+ZqTyqXyZt2d1rviFrb7S+HZqeVhbyVb14swQkX/KV80E27isUmi mDuqi5YJbb4jvYbPNJHBjknlWsblqmlXrj/qjZN+F9B2lYGt7j3vqq1FLDWElg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674920124; a=rsa-sha256; cv=none; b=nUkkONfXlwtjjspHp3fg7GOW0JjCtP3/kagj2OWLa2H7ZYsT/ycWicyVGIX/ofA7TOfChL VP8sK5qbVHPPetJLCGg2W1F1Fy5mpO7QkEKVz0Er477b1s/BLAAPeSXEOXCaRAWly/2nTq YdAJOyljObGV2OqSTwAojIeTfsti4wJY9/9X7p5qbrLVzFVTwsZSgX3cYcj+cwwzJX4mVM /Sbv3sdDVAwM8wgAD2cizDAYU8SdDufER5bTvqQgptv3HsR6WUzT90DgzVJo/YMDan59Fp VdtpCw/1YRSUsLDIp6KAjzNt9uACNBmTwLBklNgE36bYu5E6WWZUk14AM7I3qQ== 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 4P3z6N2QHjzv2l; Sat, 28 Jan 2023 15:35:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SFZOUS050970; Sat, 28 Jan 2023 15:35:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SFZO3r050969; Sat, 28 Jan 2023 15:35:24 GMT (envelope-from git) Date: Sat, 28 Jan 2023 15:35:24 GMT Message-Id: <202301281535.30SFZO3r050969@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: dbbf46ebba78 - main - LinuxKPI: skbuff: implement skb_free_frag() 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: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dbbf46ebba78770c2c3a1d7983e92e79ca67abc0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=dbbf46ebba78770c2c3a1d7983e92e79ca67abc0 commit dbbf46ebba78770c2c3a1d7983e92e79ca67abc0 Author: Bjoern A. Zeeb AuthorDate: 2023-01-28 15:33:12 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-01-28 15:33:12 +0000 LinuxKPI: skbuff: implement skb_free_frag() Using the work from 55038a6306a570c9f2df89f5ad076de0f7d98152 implement skb_free_frag() calling page_frag_free(). Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/linux/skbuff.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index 35d5a1fd9b80..12a6be42e743 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -791,7 +791,7 @@ static inline void skb_free_frag(void *frag) { - SKB_TODO(); + page_frag_free(frag); } static inline struct sk_buff * From nobody Sat Jan 28 15: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 4P3zCH69GLz3b835; Sat, 28 Jan 2023 15: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 4P3zCH5cW4z3xT3; Sat, 28 Jan 2023 15: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=1674920379; 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=GaBlmmwqKVtf8d3PqpBbXiNewyJRuCNHUqDt+2RHvIU=; b=lqG8C2vF8FZREzz1nkX5h/t5lhCzxd4MipRya8yvf7RaWl1bo9rQDdO0ue6ZFVfLj/g3xC R8toZjYO3W2lotRrP/fEXJkp5iNaThqP7K3qsUdUkmRm5o+T0MeNzXuAkQDWeL+pktvLll f7qwhBT6DEUXZjfy3X4ZO5bkezwUYnTe4PuwSNHgSPZMJpY0FCHd5yw9rIm92Tj1jNNiW+ Lwroek55n4NjvvPnYp+WIWUPRD0rYf6QfhlFLayFd7Y/AwCgnHdffpxxkayoYJXehal5jU RO+poNobQ2VmEDupItglKf9XJ6MYGdhBJ7gM/xus8rUMp6RcQDTj6P9FvthaEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674920379; 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=GaBlmmwqKVtf8d3PqpBbXiNewyJRuCNHUqDt+2RHvIU=; b=aK3IKHf8iEH0WND5Fw8g8H9qY05hfluXavVLgb1fOOZBX3P1tygHkHPp/ir9onuVmneUom ppYNf1W2D0vaO22OgHTtAzgzz6OMCp/2dLGtALo78PzL31d7Aij067YHBXG5PONzmyvabq O2xK46MRzMpKnyxquBWyN1Brb6DdGsIKAIV1rn+9995OChpZJa/rLDJu+NO34nO4lV45yF k4+iQ2cuZGUufhjBIeaoVbSZMG9tHslOpTBkulZoPZ2MEpNz1clPIkgSLE3fvb9nzl+Kuh 9zHYALh3RDT2PD9+jTkVnFE2BCY5YuMKqD0b7NxMmIrCDvaznrudko9rHKNRVA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674920379; a=rsa-sha256; cv=none; b=Yx1VzHXmG+yXtQO0/RGMj4pO9pI2kVh8gwrw6eWH9R9Z7fg8vkt1dvqKuaN1Xg0HTBcP3H ++wU1F+FTHUT2dOQwMxmATTUsI00GbA1dYALc/gVucBhNBlQuYZA78pUvL01qOz1yt1uqo odacxxD0RY49rR+YErJxNJjeu7NSQNnhVCVezhUJXoFJrkVtg5W/rZz1NES4NTgwNsrB7i KZaBNkWkCjAG6d0m0qPjTWgpBlK120mnXETqJOI+K1HxhgFR1ygL0UVWVO4Gpdn0yywsAZ Hne5WBfl2YMijIx9JdF2CyAi0P5FuDSDudKy0527KqPzBdrt+eTFEb1gbZMjqA== 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 4P3zCH4gP9ztm9; Sat, 28 Jan 2023 15:39:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SFdd8V051593; Sat, 28 Jan 2023 15:39:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SFddPn051592; Sat, 28 Jan 2023 15:39:39 GMT (envelope-from git) Date: Sat, 28 Jan 2023 15:39:39 GMT Message-Id: <202301281539.30SFddPn051592@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 95b47ba62994 - main - netlink: export nextop group kernel index when dumping multipath route. 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: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 95b47ba6299401b487f29a05ac859629ee7d4f0b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=95b47ba6299401b487f29a05ac859629ee7d4f0b commit 95b47ba6299401b487f29a05ac859629ee7d4f0b Author: Alexander V. Chernikov AuthorDate: 2023-01-28 15:37:58 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-01-28 15:39:25 +0000 netlink: export nextop group kernel index when dumping multipath route. MFC after: 2 weeks --- sys/netlink/route/rt.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/netlink/route/rt.c b/sys/netlink/route/rt.c index 9854785d0ee8..5e7f00f28b0b 100644 --- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -175,6 +175,7 @@ dump_rc_nhg(struct nl_writer *nw, const struct nhgrp_object *nhg, struct rtmsg * if (uidx != 0) nlattr_add_u32(nw, NL_RTA_NH_ID, uidx); + nlattr_add_u32(nw, NL_RTA_KNH_ID, nhgrp_get_idx(nhg)); nlattr_add_u32(nw, NL_RTA_RTFLAGS, base_rtflags); int off = nlattr_add_nested(nw, NL_RTA_MULTIPATH); From nobody Sat Jan 28 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 4P41hs01Nyz3bQ52; Sat, 28 Jan 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 4P41hr6k0zz49WG; Sat, 28 Jan 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=1674927116; 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=7u5ImxZgWUhp0MDBOsWJRhnPkD6ZZWRgP5QyN+Xd6w8=; b=wrCJ4mmWUOYFjuxlojFwPkD5uf3KLvPkscXsmAr7kibuOiRncrWUGcbJI5fNN3/jPBUO4/ /sbQgmZghsCfdotLeybzhF4cSWP9W62xLNt51fcYuoIEm/KhhiM8E6oG6kErDJ7zUL+BnO /XyakaAFTH1gJZvDt7swgn9F29ZubAzb/k1dQ8pg4j3xPWbMx9tZ87v1K4hKpJbeCZT1BC liraZLwGDY5pDztFImFrznaddFy8QtfH+QlNpmp+CDXPHFDVvIP4Ll5MP42KK9N5QZAtjz t73knh4SThpPeRKtqCDxP72NSMdAl7YjkrPZYBPTlMmB6CHpLAWktQh7l9kQJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674927116; 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=7u5ImxZgWUhp0MDBOsWJRhnPkD6ZZWRgP5QyN+Xd6w8=; b=LlwauMCak6QKdzvV7ZPP/53Nc7DAHNOXgB3PuxEzxbUIguNhAhGkFz7NZK/XSw5YLm/LZ5 nj4d//B1/1WqCaAuUF9n61lVb4s2LjSlpkEG5Eh8RObOCqEZVLtD2rCwQvL8e6JenYuEZ0 5XWinuiycZxNGehWULzB4gXqveJG3jvw0UGyIY+S2Ecnnec21K4oK0HiMkHoFQx3MDtbm+ p2f1NxYzG3owqQYvojHhQPNAFZqRqXQFppfAVQHwSzBRatuT32gsLWms6PZgECveXKAu6o DQfvPSTYr0dxWn4S7u73T5wLt5IljwWIy5wqB8mVNoRe2EYro4niV4xTadZBvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674927116; a=rsa-sha256; cv=none; b=ha1eW7F+Xl8joOH/1LSDjMGRVxWNsQ+dLD2Mugv3PYpm9sct/FYVJjSSuc4+Xe//K6mCXJ WIIEPBXu0x45Mx2cQxUxU7uXR6uVNCMKEhKio0UTF9FJX11mpTtWZTyuDPcCXRzvSsX60i PtpjYUfszHJJC/rptq/hUk1tXtceDpaovgctt+hHd4XU6d/4ZKl6B33nFFt6tsFWiVhNm5 DFHEQvYZMW72bB5L/0aWRM7dPheVGzQKsk10nHTUf/gVXYL28cwTE869s4/3r0k8ilIdSk bWZPtbW/ttLytNkXARrjENue0zrjlvf494iTLgIjYmejv5bEu40uAnv1ETnp3g== 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 4P41hr5pdpzxN6; Sat, 28 Jan 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.16.1/8.16.1) with ESMTP id 30SHVuIC019474; Sat, 28 Jan 2023 17:31:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SHVuC4019473; Sat, 28 Jan 2023 17:31:56 GMT (envelope-from git) Date: Sat, 28 Jan 2023 17:31:56 GMT Message-Id: <202301281731.30SHVuC4019473@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dmitry Chagin Subject: git: c19fc5cd9b49 - main - linux_common: Fixup .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: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c19fc5cd9b49115604ce2b89279e3434c7f120cc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=c19fc5cd9b49115604ce2b89279e3434c7f120cc commit c19fc5cd9b49115604ce2b89279e3434c7f120cc Author: Dmitry Chagin AuthorDate: 2023-01-28 17:31:38 +0000 Commit: Dmitry Chagin CommitDate: 2023-01-28 17:31:38 +0000 linux_common: Fixup .PATH. Since we have arm64, and awaiting ppc64 Linuxulator, do not include x86 specific path to the module build for non x86 architectures. MFC after: 1 week --- sys/modules/linux_common/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/modules/linux_common/Makefile b/sys/modules/linux_common/Makefile index a3ceacc244a4..7ebb56ba6473 100644 --- a/sys/modules/linux_common/Makefile +++ b/sys/modules/linux_common/Makefile @@ -1,6 +1,9 @@ # $FreeBSD$ -.PATH: ${SRCTOP}/sys/compat/linux ${SRCTOP}/sys/x86/linux +.PATH: ${SRCTOP}/sys/compat/linux +.if ${MACHINE_CPUARCH} == "amd64" +.PATH: ${SRCTOP}/sys/x86/linux +.endif KMOD= linux_common SRCS= linux_common.c linux_mib.c linux_mmap.c linux_util.c linux_emul.c \ From nobody Sat Jan 28 18:05: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 4P42RC076nz3bTw2; Sat, 28 Jan 2023 18:05: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 4P42RB6dZpz4FJ9; Sat, 28 Jan 2023 18:05:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674929110; 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=6rDrGNiUx17unShu6a5BitxGC0/PQHPvuSANtcdqeE8=; b=jTqv/BHvpLZd2V8rYqa5SxcgljGyQOwtnezpqy2aCj2e1HfUIJGVf0PzQXEb2HGVv2TdnO 4836ASMOFZbgfWC6aBewBa04I6yEosVDt5sE6totrfZ5kiXbxHmPH7VyQyU314XUcJdoCR 7IIBijLc2rkySGbLB2kHEgq6Qa99McIzfyo/RjLhNbrnpi2CZtgaz0PHNuBlnqfKiL78Ln C3JF+SYkLAGhEBg60fHbJHp5/GiVNjjf/RVLQmiXMNMVw3SKQzmup3MkOoItOw/FAHfoTM pvaLCj6wluM8hZCa4gLjZbXtjDIkmI1EvLJj8g0vF1AnNiVvLpm/Dl2ShSxxlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674929110; 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=6rDrGNiUx17unShu6a5BitxGC0/PQHPvuSANtcdqeE8=; b=ODYiy8wpf5DFL4VbWZkuGUYufJVcx7y383XLmkyoxu/xbR1oVP3+2OSgeliGkHro0ppBfx dEGN9d/in3fCN/mpQV0miwYefARrUgQcpAkUDStoGEB7kqakiQW3JBogLrLjDJqWkjSxWN YPhCOqmB7fklHjNiprTDvbMr8DKHt46SEX0Wmur7PedAtbDdZvCOXeE70Fqq1m0NZi6bq3 raCSkgALYvTFVGCby+ptJ+P0P5H+yjqyOdQAsT2mkJe6MUpWaNELzRZBvRXW3tHaNLqxKy 4E7gnelHwaM4QOYfgpIXFOojnmFvLyx56BRzxNkNBP1n2rwyPh1YIWaPpSJVAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674929110; a=rsa-sha256; cv=none; b=isrPZlx324EppToy2uPbw5g1K4aIka/DMv/tKdWYBapjTI+l5lCRCMRviuEQEJpCDUU2Ze kya6dpHpAR8d4TYBzWO4Mhm50ltLUe2Ey4y8cb2oWkJh+ZDd38j+IpjiqkLRCJjap8nmxx ODILPFjFRS9A+t498etW5pbRto/cNm8BJBzgNu8E3AIl3KcpINz5+4X5f6bTf9hDrViknG 5KC1D6rJxTesUoMduXfz4FBQJazFNzIE+hkr+2D3O/nby24t/cEApPE6+rL4pNM25+pzfo 0644omLdUsRUd8L+gQ+Ki8+Ua5+7LT9xD7fFd3hIHvuH+PFxijMMEbBwyugXXQ== 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 4P42RB5hCJzxsT; Sat, 28 Jan 2023 18:05:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SI5AFv065566; Sat, 28 Jan 2023 18:05:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SI5A5D065565; Sat, 28 Jan 2023 18:05:10 GMT (envelope-from git) Date: Sat, 28 Jan 2023 18:05:10 GMT Message-Id: <202301281805.30SI5A5D065565@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: 0311fe403d35 - main - devname(3): apply S_ISBLK() to type, not dev_t 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: 0311fe403d35f6241fa94104c4b92c9d73214cbc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=0311fe403d35f6241fa94104c4b92c9d73214cbc commit 0311fe403d35f6241fa94104c4b92c9d73214cbc Author: Alexander Naumochkin AuthorDate: 2023-01-28 13:22:50 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-28 18:04:35 +0000 devname(3): apply S_ISBLK() to type, not dev_t PR: 269190 Reviewed by: kib MFC after: 1 week --- lib/libc/gen/devname.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/gen/devname.c b/lib/libc/gen/devname.c index e519b505f1f8..55e6279a25ce 100644 --- a/lib/libc/gen/devname.c +++ b/lib/libc/gen/devname.c @@ -48,7 +48,7 @@ devname_r(dev_t dev, mode_t type, char *buf, int len) int i; size_t j; - if (dev == NODEV || !(S_ISCHR(type) || S_ISBLK(dev))) { + if (dev == NODEV || !(S_ISCHR(type) || S_ISBLK(type))) { strlcpy(buf, "#NODEV", len); return (buf); } From nobody Sat Jan 28 18:05: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 4P42RD3Pr1z3bVNS; Sat, 28 Jan 2023 18:05: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 4P42RD0YfLz4FlG; Sat, 28 Jan 2023 18:05:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674929112; 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=DVWJ/FmjQ1tqEAFEJmAsw02X/tupopVrQDnhlgGDuak=; b=lKc5ECJCvDm/osnL5GA9wHD/CHZfq0r6V7QjNEMGRKrcxc4LnnY1+u0o1i86jxe/h5o4hQ PRy990y+6fbXvNuPidwUP7h92TU1XNwVMu2Xc/doVt/8Ptw1hc777/DtD6lBbP1/kSMJa5 MOy7hPNr3dJkeDh54T7kLMsGMSeWhx3NpxBtVP1NjEZa6LXk1QgX1rNvcenQ75x0u8+84p ZjpfYcq3MhXEeluAcBiffv9zA2YCwbCaWLu/iKG9cJopF21Lqw8EsUR3leYju0/gENMcJ8 WxOFxpL3YIy/+YjCR59m4Oul+Dm/7XPESGV6E929/LqofpwGJ++YdSlvJoBPig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674929112; 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=DVWJ/FmjQ1tqEAFEJmAsw02X/tupopVrQDnhlgGDuak=; b=hmFEiKN1gd5KLLxrXmHsnR4T+SU8lgN7SclnhoRnhdWnfhAUOBWAeaZKOVon0R+SdnoowN YMR2I275PEXRw03fxNzi+EGwd4aOK9f282FC9T227WHo914LMGqG0LeGK1M1NeP4NtMX/k zCzUvdhN531ysPx+VciK7x20AgAPQ/poohiiQ8PVjC5bJ/HdiJdQSGipPqS/R040wH037C pbbXH+DRVTrQIhyj9NKGSkQVM9z+miSaun3aY2mryvyAy0nHycixGhH8GZ6n3DR2gYNj5y KKkGTVdzrGQuzVhtWfaK/QKB5KPhH4jWeA386HpSmohtAsFB/9ygkzmlEyYrLA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674929112; a=rsa-sha256; cv=none; b=idZpBLAfVAmzqSKMpfqnjKP7W66QHMIb0P1Y8c8reZaNN9pxIvMcxzd264lTWPbXUdYrlp koI5Nih5uiOmeBJwm9ouTgX+f1bD1JEdNGXf1Vk4VjzPOJvb9lShWa57iVz3yvBzTieIFn wWzMkxj/ATVugHS77Qf2ZkwU8c2CELkoLJuhunenv4fGdXzzAqXay3J/XlA46XzOf2XsDb VPepx4OW/m1cS9IJg6+UUj215Cu7Na0FqZM1mCUdTccldmwaRELkwenxJKPeVqFFyQ5h5a XpHFX2oCdb/QL2ev4DI2mB/Dh8Nz3579qCNI5QsXC/XGBzC3RJYkZIgH8YLHbQ== 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 4P42RC6cQDzxsV; Sat, 28 Jan 2023 18:05:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SI5BFZ065592; Sat, 28 Jan 2023 18:05:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SI5B6f065591; Sat, 28 Jan 2023 18:05:11 GMT (envelope-from git) Date: Sat, 28 Jan 2023 18:05:11 GMT Message-Id: <202301281805.30SI5B6f065591@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: 050e4bca94e9 - main - stat(1): Do not pass S_IFBLK to devname unconditionally 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: 050e4bca94e907c046e9ed63f90b5dd0e49fb405 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=050e4bca94e907c046e9ed63f90b5dd0e49fb405 commit 050e4bca94e907c046e9ed63f90b5dd0e49fb405 Author: Alexander Naumochkin AuthorDate: 2023-01-28 13:31:39 +0000 Commit: Konstantin Belousov CommitDate: 2023-01-28 18:04:43 +0000 stat(1): Do not pass S_IFBLK to devname unconditionally PR: 269190 Reviewed by: kib MFC after: 1 week --- usr.bin/stat/stat.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/usr.bin/stat/stat.c b/usr.bin/stat/stat.c index 9d94399a6333..dca7363f4fcc 100644 --- a/usr.bin/stat/stat.c +++ b/usr.bin/stat/stat.c @@ -640,14 +640,9 @@ format1(const struct stat *st, small = (sizeof(st->st_dev) == 4); data = (what == SHOW_st_dev) ? st->st_dev : st->st_rdev; #if HAVE_DEVNAME - sdata = (what == SHOW_st_dev) ? - devname(st->st_dev, S_IFBLK) : - devname(st->st_rdev, - S_ISCHR(st->st_mode) ? S_IFCHR : - S_ISBLK(st->st_mode) ? S_IFBLK : - 0U); - if (sdata == NULL) - sdata = "???"; + sdata = devname(what == SHOW_st_dev ? st->st_dev : + st->st_rdev, S_ISCHR(st->st_mode) ? S_IFCHR : + (S_ISBLK(st->st_mode) ? S_IFBLK : 0)); #endif /* HAVE_DEVNAME */ if (hilo == HIGH_PIECE) { data = major(data); From nobody Sat Jan 28 18:53: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 4P43WQ6W1pz3brWj; Sat, 28 Jan 2023 18:53: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 4P43WQ5vxCz4KLK; Sat, 28 Jan 2023 18:53:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674932034; 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=a6YIeki449nQpn4RD94NjEbPbkwxAzJ0QJ+pPnuKZyg=; b=G5OdUCcCxooEQm5zDGKy5pD4I+wMGrQrdxf/7zZy9ttjPzQ89smfK3pjGOl8xJHnCDA/kD su80HJhqc+4LyAAYzRxQYhgAFxk9Z6Fq4Du1r8wcP5caNsRs5siZvnl18KlsuFDG+IA4H0 +9PsfJCVY/iUMWUJIHQ/Cb1iTT9pktL8LIsyjbcIeEyIxeBsyayZrCBDiMaOOlOmLs5pLi RimI6RyRFthHrJ4D7wpGuJge6znuGqrdFcWksZ16wX/zZzCHUBjc59nfffU7CwOPFYOgwC LF4VgCnLc3L4/8ESovqDc2ZoAfrnD7KbHz7mEirk7nvkR4Pjw2fjdf7xzDPldA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674932034; 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=a6YIeki449nQpn4RD94NjEbPbkwxAzJ0QJ+pPnuKZyg=; b=lRxdqZTQMpArT1DtXc/GcJCG/Tl5XiLDwvUjNMh/fbQRXUwtMupiy4lWRh5puNYwms7FJY Pxp29K7sKJ7rvmkj1j2H+iiQctcM9zZyqACtrDcTWwt+jDkhMDcCf4nTSELT9HsMyEuPB7 2zGX1TCPhUGu9pzFjj8ZgDrWuGVpKdyH9KjTTTQXPENqB1OdqqFVRKsBe8URa/SSMrHkjZ 64LCCt0p0d5dY5DOHW7iNkMkA+iL7QCqAdRb9mT33h9D2TBHZO6rgJgGDNIwV0/kd3aQW6 CJoDdVgYinNggzTf1EZ5jKOR37Vpx5l3EMCHO8XD2/zDdzqfLO5GteJfNab2RQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674932034; a=rsa-sha256; cv=none; b=ZF3XYVQtX5Gd7Aitg0VZ7pmsWy0QquymYnd+eO8z+EBjF3xFSF4Pmk3T7a8S2j7DNvq+vo 8LgGroknNoJY9fP/m/tVU5iHPZpZMHvE9/zZxXXv9jQtXKSS6BihEsNLTWz/loacS6F84d 3Qn8VF96Qnlc7IZ1D3GP0oPTAM90rOqdECNEcPcJwzt5V0wXfMTEauPYYoSd097F70uuub 1GkrRln/6ZYpIXS6slxVs93Oc8ahU1OVgjC3b/eEUi6CtVsHVm6ISxrTKs+eifuqP0bbjZ s66HX/ex+3wPRnxBNkCGcD2ucqdx1XZ8EFue3qT+UVq8bAS5J3uLKPiZPvsWyg== 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 4P43WQ4wmfz10fB; Sat, 28 Jan 2023 18:53:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SIrsop036417; Sat, 28 Jan 2023 18:53:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SIrs4n036416; Sat, 28 Jan 2023 18:53:54 GMT (envelope-from git) Date: Sat, 28 Jan 2023 18:53:54 GMT Message-Id: <202301281853.30SIrs4n036416@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: 8f02c0d15669 - main - Disable sandboxing when building with WITHOUT_CAPSICUM. 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: 8f02c0d15669949bb3b5086800aaf11a65e4c871 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=8f02c0d15669949bb3b5086800aaf11a65e4c871 commit 8f02c0d15669949bb3b5086800aaf11a65e4c871 Author: Xin LI AuthorDate: 2023-01-28 18:53:47 +0000 Commit: Xin LI CommitDate: 2023-01-28 18:53:47 +0000 Disable sandboxing when building with WITHOUT_CAPSICUM. PR: bin/269185 MFC after: 3 days --- lib/liblzma/config.h | 4 ++++ usr.bin/xz/Makefile | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/liblzma/config.h b/lib/liblzma/config.h index d88e3e105dad..ed6515f56f6e 100644 --- a/lib/liblzma/config.h +++ b/lib/liblzma/config.h @@ -24,8 +24,10 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_BYTESWAP_H */ +#ifndef WITHOUT_CAPSICUM /* Define to 1 if Capsicum is available. */ #define HAVE_CAPSICUM 1 +#endif /* Define to 1 if the system has the type `CC_SHA256_CTX'. */ /* #undef HAVE_CC_SHA256_CTX */ @@ -283,8 +285,10 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_BYTEORDER_H */ +#ifndef WITHOUT_CAPSICUM /* Define to 1 if you have the header file. */ #define HAVE_SYS_CAPSICUM_H 1 +#endif /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_ENDIAN_H */ diff --git a/usr.bin/xz/Makefile b/usr.bin/xz/Makefile index f7687116c8fd..e3cbafb0ebc3 100644 --- a/usr.bin/xz/Makefile +++ b/usr.bin/xz/Makefile @@ -1,4 +1,4 @@ -# $FreeBSD$ +.include PROG= xz @@ -43,6 +43,10 @@ CFLAGS+= -DHAVE_CONFIG_H \ -I${LZMALIBDIR} \ -I${XZDIR}/common +.if ${MK_CAPSICUM} == "no" +CFLAGS+= -DWITHOUT_CAPSICUM +.endif + LIBADD= lzma .include From nobody Sat Jan 28 21:41: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 4P47FF3HGNz3b29G; Sat, 28 Jan 2023 21:41: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 4P47FF2yHmz3KDw; Sat, 28 Jan 2023 21:41:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674942113; 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=TAKMDhO6/Y8n3R0vf1kleIX4y2aevMx4R3L8xh4RKbY=; b=lKf5pdIzZ2lW2Qe9loV+fSmbJlowfUYKdVxYWloztXgPCiRhlyf9eS+0/pv/4q2u3xFcAS nVIrVIcPrWXevBM68ceUAN2VbRW3emmRglNT509h+/TNWqlUKDYhSzNgaJqdvZP8+NjCpj MqIbegnAqfNWd/+KI5PUw8uIRfSUnMGBzA1uCfUvGdlFZU9YqOLMdIrBk0FmSGe3QsKklL 4sFDM7YVWQRbE9FX9NmaBN2Mg9IkBFWoVlrPoDdeQnl/u80YbV+WnK9t5NsGehI35ERyOU EWXA/3u6QM6G+Mc73Ou7EUuxMDprcIrio0LqIrA8o9sB2iCqIPDJV6cvUPg+FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1674942113; 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=TAKMDhO6/Y8n3R0vf1kleIX4y2aevMx4R3L8xh4RKbY=; b=VZhuwg6+Qem8hTqWEl2x0QHTOJxKzwU/rWwhdU/TKq+AvStqk+wU2HJIac2cwcYK1DwtOw 6zsPJwUyfCeFKEA5nKcd0Cx5l+VjKcSSh3HMCXjHWaywDo89zyZzIrn5wCtOEeWTPuXosk 0hM2ydQMsWWyodnOgYr/I2stfiQaZCQesK5x4Q4HTlRWmGcI3wmyJFdJB1yNwvKVqVpZxu szK5rhpR/r2ZomG+8w6o490JP/7EPLt2ytsmSe5h1SdYX6T+C3X2jzEXi5hobwPb28JDDJ /biiINF4LaFvG+N4gj2xfosEe3DEPDeLLnZxazXQ8MbrtsitJzKY0ZBjIZ2Vlg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674942113; a=rsa-sha256; cv=none; b=KsArL66dHXWjGjbLZkOzaNQwu5jWKBRGV1sTr5QTrOngazPcQ/Fs42eounZlWMLv3sVGhg Fogj3dOlMJd9T3ZahQ0ZbouPhSb0eKoVvaTqbUURAYHokPbjW3TxYxQ6ZT1fmEHR+2y5kD YfkzEjOQNHVqE10pFcQ6xBrIJgx/Mjkva4vix4NiG3BMfSP+OXuQca0HO2zbH+4Ekb1b0X gClsrYgbBSH5xmAouqF1fTAd09f8dDoxlB/cWaaJutXf9q8L5SEBW+Whcl/PaLOw9cTIuc pyWzolEuA9n9zO/uQNCZU9/W++pl16ghaiYJkyojVvSTopDS2SYI6MNOxF5Mgw== 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 4P47FF22ZTz14T9; Sat, 28 Jan 2023 21:41:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30SLfr48079427; Sat, 28 Jan 2023 21:41:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30SLfrV8079426; Sat, 28 Jan 2023 21:41:53 GMT (envelope-from git) Date: Sat, 28 Jan 2023 21:41:53 GMT Message-Id: <202301282141.30SLfrV8079426@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Stefan=20E=C3=9Fer?= Subject: git: d101cdd6edd7 - main - contrib/bc: merge from vendor release 6.2.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: se X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d101cdd6edd782f6ec56eef63ed91abd77a8b317 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by se: URL: https://cgit.FreeBSD.org/src/commit/?id=d101cdd6edd782f6ec56eef63ed91abd77a8b317 commit d101cdd6edd782f6ec56eef63ed91abd77a8b317 Merge: 8f02c0d15669 1a63323d17fe Author: Stefan Eßer AuthorDate: 2023-01-28 21:26:22 +0000 Commit: Stefan Eßer CommitDate: 2023-01-28 21:26:22 +0000 contrib/bc: merge from vendor release 6.2.2 This update fixes a few issues in history editing and the processing of the "quit" function. The "quit" function will no longer cause bc to exit when encountered in a script file (before any command from the script has been executed). New functions is_number(), is_string return 1 if the passed argument is a number resp. a string. The asciify() function has been extended to support the conversion of an array of numbers into a string. Merge commit '1a63323d17fedb05b6962853e821c9d7c6b9853e' contrib/bc/.clang-format | 152 --- contrib/bc/.clang-tidy | 43 - contrib/bc/.gitignore | 86 -- contrib/bc/LICENSE.md | 6 +- contrib/bc/MEMORY_BUGS.md | 53 + contrib/bc/Makefile.in | 26 +- contrib/bc/NEWS.md | 136 ++ contrib/bc/NOTICE.md | 2 +- contrib/bc/README.md | 61 +- contrib/bc/configure.sh | 370 +++++- contrib/bc/gen/bc_help.txt | 40 +- contrib/bc/gen/dc_help.txt | 38 +- contrib/bc/gen/lib.bc | 3 +- contrib/bc/gen/lib2.bc | 15 +- contrib/bc/gen/strgen.c | 8 +- contrib/bc/gen/strgen.sh | 6 +- contrib/bc/include/args.h | 33 +- contrib/bc/include/bc.h | 6 +- contrib/bc/include/bcl.h | 57 +- contrib/bc/include/dc.h | 2 +- contrib/bc/include/file.h | 20 +- contrib/bc/include/history.h | 30 +- contrib/bc/include/lang.h | 39 +- contrib/bc/include/lex.h | 59 +- contrib/bc/include/library.h | 142 +- contrib/bc/include/num.h | 14 +- contrib/bc/include/opt.h | 2 +- contrib/bc/include/parse.h | 40 +- contrib/bc/include/program.h | 104 +- contrib/bc/include/rand.h | 2 +- contrib/bc/include/read.h | 2 +- contrib/bc/include/status.h | 461 +++++-- contrib/bc/include/vector.h | 18 +- contrib/bc/include/version.h | 4 +- contrib/bc/include/vm.h | 294 ++++- contrib/bc/locales/de_DE.ISO8859-1.msg | 17 +- contrib/bc/locales/de_DE.UTF-8.msg | 17 +- contrib/bc/locales/en_US.msg | 17 +- contrib/bc/locales/es_ES.ISO8859-1.msg | 17 +- contrib/bc/locales/es_ES.UTF-8.msg | 17 +- contrib/bc/locales/fr_FR.ISO8859-1.msg | 17 +- contrib/bc/locales/fr_FR.UTF-8.msg | 17 +- contrib/bc/locales/ja_JP.UTF-8.msg | 17 +- contrib/bc/locales/ja_JP.eucJP.msg | 17 +- contrib/bc/locales/nl_NL.ISO8859-1.msg | 17 +- contrib/bc/locales/nl_NL.UTF-8.msg | 17 +- contrib/bc/locales/pl_PL.ISO8859-2.msg | 17 +- contrib/bc/locales/pl_PL.UTF-8.msg | 17 +- contrib/bc/locales/pt_PT.ISO8859-1.msg | 17 +- contrib/bc/locales/pt_PT.UTF-8.msg | 17 +- contrib/bc/locales/ru_RU.CP1251.msg | 17 +- contrib/bc/locales/ru_RU.CP866.msg | 17 +- contrib/bc/locales/ru_RU.ISO8859-5.msg | 17 +- contrib/bc/locales/ru_RU.KOI8-R.msg | 17 +- contrib/bc/locales/ru_RU.UTF-8.msg | 17 +- contrib/bc/locales/zh_CN.GB18030.msg | 17 +- contrib/bc/locales/zh_CN.GB2312.msg | 17 +- contrib/bc/locales/zh_CN.GBK.msg | 17 +- contrib/bc/locales/zh_CN.UTF-8.msg | 17 +- contrib/bc/locales/zh_CN.eucCN.msg | 17 +- contrib/bc/manuals/algorithms.md | 2 +- contrib/bc/manuals/bc/A.1 | 459 ++++--- contrib/bc/manuals/bc/A.1.md | 372 ++++-- contrib/bc/manuals/bc/E.1 | 420 +++--- contrib/bc/manuals/bc/E.1.md | 350 +++-- contrib/bc/manuals/bc/EH.1 | 420 +++--- contrib/bc/manuals/bc/EH.1.md | 350 +++-- contrib/bc/manuals/bc/EHN.1 | 420 +++--- contrib/bc/manuals/bc/EHN.1.md | 350 +++-- contrib/bc/manuals/bc/EN.1 | 420 +++--- contrib/bc/manuals/bc/EN.1.md | 350 +++-- contrib/bc/manuals/bc/H.1 | 459 ++++--- contrib/bc/manuals/bc/H.1.md | 372 ++++-- contrib/bc/manuals/bc/HN.1 | 459 ++++--- contrib/bc/manuals/bc/HN.1.md | 372 ++++-- contrib/bc/manuals/bc/N.1 | 459 ++++--- contrib/bc/manuals/bc/N.1.md | 372 ++++-- contrib/bc/manuals/bcl.3 | 197 ++- contrib/bc/manuals/bcl.3.md | 161 ++- contrib/bc/manuals/build.md | 131 +- contrib/bc/manuals/dc/A.1 | 304 +++-- contrib/bc/manuals/dc/A.1.md | 242 ++-- contrib/bc/manuals/dc/E.1 | 296 +++-- contrib/bc/manuals/dc/E.1.md | 244 ++-- contrib/bc/manuals/dc/EH.1 | 296 +++-- contrib/bc/manuals/dc/EH.1.md | 244 ++-- contrib/bc/manuals/dc/EHN.1 | 296 +++-- contrib/bc/manuals/dc/EHN.1.md | 244 ++-- contrib/bc/manuals/dc/EN.1 | 296 +++-- contrib/bc/manuals/dc/EN.1.md | 244 ++-- contrib/bc/manuals/dc/H.1 | 304 +++-- contrib/bc/manuals/dc/H.1.md | 242 ++-- contrib/bc/manuals/dc/HN.1 | 304 +++-- contrib/bc/manuals/dc/HN.1.md | 242 ++-- contrib/bc/manuals/dc/N.1 | 304 +++-- contrib/bc/manuals/dc/N.1.md | 242 ++-- contrib/bc/scripts/exec-install.sh | 2 +- contrib/bc/scripts/format.sh | 4 +- contrib/bc/scripts/functions.sh | 2 +- contrib/bc/scripts/karatsuba.py | 2 +- contrib/bc/scripts/link.sh | 2 +- contrib/bc/scripts/lint.sh | 2 +- contrib/bc/scripts/locale_install.sh | 2 +- contrib/bc/scripts/locale_uninstall.sh | 2 +- contrib/bc/src/args.c | 108 +- contrib/bc/src/bc.c | 16 +- contrib/bc/src/bc_lex.c | 8 +- contrib/bc/src/bc_parse.c | 190 ++- contrib/bc/src/data.c | 46 +- contrib/bc/src/dc.c | 16 +- contrib/bc/src/dc_lex.c | 12 +- contrib/bc/src/dc_parse.c | 115 +- contrib/bc/src/file.c | 169 +-- contrib/bc/src/history.c | 101 +- contrib/bc/src/lang.c | 14 +- contrib/bc/src/lex.c | 51 +- contrib/bc/src/library.c | 555 ++++---- contrib/bc/src/main.c | 22 +- contrib/bc/src/num.c | 535 +++++--- contrib/bc/src/opt.c | 8 +- contrib/bc/src/parse.c | 67 +- contrib/bc/src/program.c | 682 ++++++---- contrib/bc/src/rand.c | 2 +- contrib/bc/src/read.c | 52 +- contrib/bc/src/vector.c | 50 +- contrib/bc/src/vm.c | 787 +++++++----- contrib/bc/tests/all.sh | 15 +- contrib/bc/tests/bc/all.txt | 7 + contrib/bc/tests/bc/asciify_array.txt | 17 + contrib/bc/tests/bc/asciify_array_results.txt | 3 + contrib/bc/tests/bc/errors/33.txt | 2 + contrib/bc/tests/bc/errors/34.txt | 357 +++++ contrib/bc/tests/bc/errors/35.txt | 1 + contrib/bc/tests/bc/errors/36.txt | 11 + contrib/bc/tests/bc/is_number.txt | 13 + contrib/bc/tests/bc/is_number_results.txt | 10 + contrib/bc/tests/bc/is_string.txt | 13 + contrib/bc/tests/bc/is_string_results.txt | 10 + contrib/bc/tests/bc/line_by_line1.txt | 10 + contrib/bc/tests/bc/line_by_line1_results.txt | 1 + contrib/bc/tests/bc/line_by_line2.txt | 9 + contrib/bc/tests/bc/line_by_line2_results.txt | 3 + contrib/bc/tests/bc/line_loop_quit1.txt | 2 + contrib/bc/tests/bc/line_loop_quit1_results.txt | 4 + contrib/bc/tests/bc/line_loop_quit2.txt | 3 + contrib/bc/tests/bc/line_loop_quit2_results.txt | 4 + contrib/bc/tests/bc/scripts/afl1.bc | 261 ++++ contrib/bc/tests/bc/scripts/afl1.txt | 1571 +++++++++++++++++++++++ contrib/bc/tests/bc/scripts/all.txt | 2 + contrib/bc/tests/bc/scripts/array2.bc | 20 + contrib/bc/tests/bc/scripts/array2.txt | 2 + contrib/bc/tests/bc/timeconst.sh | 2 +- contrib/bc/tests/bcl.c | 7 +- contrib/bc/tests/dc/all.txt | 3 + contrib/bc/tests/dc/errors/15.txt | 128 +- contrib/bc/tests/dc/errors/34.txt | 117 -- contrib/bc/tests/dc/is_number.txt | 9 + contrib/bc/tests/dc/is_number_results.txt | 9 + contrib/bc/tests/dc/is_string.txt | 9 + contrib/bc/tests/dc/is_string_results.txt | 9 + contrib/bc/tests/dc/misc1.txt | 26 + contrib/bc/tests/dc/misc1_results.txt | 21 + contrib/bc/tests/dc/scripts/all.txt | 1 + contrib/bc/tests/dc/scripts/no_clamp.dc | 29 + contrib/bc/tests/dc/scripts/no_clamp.txt | 29 + contrib/bc/tests/error.sh | 48 +- contrib/bc/tests/errors.sh | 2 +- contrib/bc/tests/history.py | 2 +- contrib/bc/tests/history.sh | 2 +- contrib/bc/tests/other.sh | 53 +- contrib/bc/tests/read.sh | 2 +- contrib/bc/tests/script.sh | 10 +- contrib/bc/tests/scripts.sh | 2 +- contrib/bc/tests/stdin.sh | 2 +- contrib/bc/tests/test.sh | 10 +- contrib/bc/vs/bc.vcxproj | 16 +- 176 files changed, 14121 insertions(+), 6440 deletions(-) diff --cc contrib/bc/MEMORY_BUGS.md index 000000000000,d675b28b342a..d675b28b342a mode 000000,100644..100644 --- a/contrib/bc/MEMORY_BUGS.md +++ b/contrib/bc/MEMORY_BUGS.md diff --cc contrib/bc/README.md index 64c58410162c,000000000000..438cab0d1694 mode 100644,000000..100644 --- a/contrib/bc/README.md +++ b/contrib/bc/README.md @@@ -1,443 -1,0 +1,498 @@@ +# `bc` + +***WARNING: New user registration for https://git.yzena.com/ is disabled because +of spam. If you need to report a bug with `bc`, email gavin at this site minus +the `git.` part for an account, and I will create one for you. Or you can report +an issue at [GitHub][29].*** + +***WARNING: This project has moved to [https://git.yzena.com/][20] for [these +reasons][21], though GitHub will remain a mirror.*** + +This is an implementation of the [POSIX `bc` calculator][12] that implements +[GNU `bc`][1] extensions, as well as the period (`.`) extension for the BSD +flavor of `bc`. + +For more information, see this `bc`'s full manual. + +This `bc` also includes an implementation of `dc` in the same binary, accessible +via a symbolic link, which implements all FreeBSD and GNU extensions. (If a +standalone `dc` binary is desired, `bc` can be copied and renamed to `dc`.) The +`!` command is omitted; I believe this poses security concerns and that such +functionality is unnecessary. + +For more information, see the `dc`'s full manual. + +This `bc` also provides `bc`'s math as a library with C bindings, called `bcl`. + +For more information, see the full manual for `bcl`. + +## License + +This `bc` is Free and Open Source Software (FOSS). It is offered under the BSD +2-clause License. Full license text may be found in the [`LICENSE.md`][4] file. + +## Prerequisites + +This `bc` only requires either: + +1. Windows 10 or later, or +2. A C99-compatible compiler and a (mostly) POSIX 2008-compatible system with + the XSI (X/Open System Interfaces) option group. + +Since POSIX 2008 with XSI requires the existence of a C99 compiler as `c99`, any +POSIX and XSI-compatible system will have everything needed. + +POSIX-compatible systems that are known to work: + +* Linux +* FreeBSD +* OpenBSD +* NetBSD +* Mac OSX +* Solaris* (as long as the Solaris version supports POSIX 2008) +* AIX +* HP-UX* (except for history) + +In addition, there is compatibility code to make this `bc` work on Windows. + +Please submit bug reports if this `bc` does not build out of the box on any +system. + +## Build + +This `bc` should build unmodified on any POSIX-compliant system or on Windows +starting with Windows 10 (though earlier versions may work). + +For more complex build requirements than the ones below, see the [build +manual][5]. + +### Windows + +There is no guarantee that this `bc` will work on any version of Windows earlier +than Windows 10 (I cannot test on earlier versions), but it is guaranteed to +work on Windows 10 at least. + +Also, if building with MSBuild, the MSBuild bundled with Visual Studio is +required. + +**Note**: Unlike the POSIX-compatible platforms, only one build configuration is +supported on Windows: extra math and history enabled, NLS (locale support) +disabled, with both calculators built. + +#### `bc` + +To build `bc`, you can open the `vs/bc.sln` file in Visual Studio, select the +configuration, and build. + +You can also build using MSBuild with the following from the root directory: + +``` +msbuild -property:Configuration= vs/bc.sln +``` + +where `` is either one of `Debug` or `Release`. + +On Windows, the calculators are built as `vs/bin///bc.exe` and +`vs/bin///dc.exe`, where `` can be either `Win32` or +`x64`, and `` can be `Debug` or `Release`. + +**Note**: On Windows, `dc.exe` is just copied from `bc.exe`; it is not linked. +Patches are welcome for a way to do that. + +#### `bcl` (Library) + +To build the library, you can open the `vs/bcl.sln` file in Visual Studio, +select the configuration, and build. + +You can also build using MSBuild with the following from the root directory: + +``` +msbuild -property:Configuration= vs/bcl.sln +``` + +where `` is either one of `Debug`, `ReleaseMD`, or `ReleaseMT`. + +On Windows, the library is built as `vs/lib///bcl.lib`, where +`` can be either `Win32` or `x64`, and `` can be `Debug`, +`ReleaseMD`, or `ReleaseMT`. + +### POSIX-Compatible Systems + +On POSIX-compatible systems, `bc` is built as `bin/bc` and `dc` is built as +`bin/dc` by default. + +#### Default + +For the default build with optimization, use the following commands in the root +directory: + +``` +./configure.sh -O3 +make +``` + +#### One Calculator + +To only build `bc`, use the following commands: + +``` +./configure.sh --disable-dc +make +``` + +To only build `dc`, use the following commands: + +``` +./configure.sh --disable-bc +make +``` + +#### Debug + +For debug builds, use the following commands in the root directory: + +``` +./configure.sh -g +make +``` + +#### Install + +To install, use the following command: + +``` +make install +``` + +By default, `bc` and `dc` will be installed in `/usr/local`. For installing in +other locations, use the `PREFIX` environment variable when running +`configure.sh` or pass the `--prefix=` option to `configure.sh`. See the +[build manual][5], or run `./configure.sh --help`, for more details. + +#### Library + - This `bc` does provide a way to build a math library with C bindings. This is - done by the `-a` or `--library` options to `configure.sh`: ++To build the math library, pass the `-a` or `--library` options to ++`configure.sh`: + +``` +./configure.sh -a +``` + +When building the library, the executables are not built. For more information, +see the [build manual][5]. + +The library API can be found in [`manuals/bcl.3.md`][26] or `man bcl` once the +library is installed. + +#### Package and Distro Maintainers + +This section is for package and distro maintainers. + +##### Out-of-Source Builds + +Out-of-source builds are supported; just call `configure.sh` from the directory +where the actual build will happen. + +For example, if the source is in `bc`, the build should happen in `build`, then +call `configure.sh` and `make` like so: + +``` +../bc/configure.sh +make +``` + +***WARNING***: The path to `configure.sh` from the build directory must not have +spaces because `make` does not support target names with spaces. + +##### Recommended Compiler + +When I ran benchmarks with my `bc` compiled under `clang`, it performed much +better than when compiled under `gcc`. I recommend compiling this `bc` with +`clang`. + +I also recommend building this `bc` with C11 if you can because `bc` will detect +a C11 compiler and add `_Noreturn` to any relevant function(s). + +##### Recommended Optimizations + +I wrote this `bc` with Separation of Concerns, which means that there are many +small functions that could be inlined. However, they are often called across +file boundaries, and the default optimizer can only look at the current file, +which means that they are not inlined. + +Thus, because of the way this `bc` is built, it will automatically be slower +than other `bc` implementations when running scripts with no math. (My `bc`'s +math is *much* faster, so any non-trivial script should run faster in my `bc`.) + +Some, or all, of the difference can be made up with the right optimizations. The +optimizations I recommend are: + +1. `-O3` +2. `-flto` (link-time optimization) + +in that order. + +Link-time optimization, in particular, speeds up the `bc` a lot. This is because +when link-time optimization is turned on, the optimizer can look across files +and inline *much* more heavily. + +However, I recommend ***NOT*** using `-march=native`. Doing so will reduce this +`bc`'s performance, at least when building with link-time optimization. See the +[benchmarks][19] for more details. + +##### Stripping Binaries + +By default, non-debug binaries are stripped, but stripping can be disabled with +the `-T` option to `configure.sh`. + +##### Using This `bc` as an Alternative + +If this `bc` is packaged as an alternative to an already existing `bc` package, +it is possible to rename it in the build to prevent name collision. To prepend +to the name, just run the following: + +``` +EXECPREFIX= ./configure.sh +``` + +To append to the name, just run the following: + +``` +EXECSUFFIX= ./configure.sh +``` + +If a package maintainer wishes to add both a prefix and a suffix, that is +allowed. + +**Note**: The suggested name (and package name) when `bc` is not available is +`bc-gh`. + +##### Karatsuba Number + +Package and distro maintainers have one tool at their disposal to build this +`bc` in the optimal configuration: `scripts/karatsuba.py`. + +This script is not a compile-time or runtime prerequisite; it is for package and +distro maintainers to run once when a package is being created. It finds the +optimal Karatsuba number (see the [algorithms manual][7] for more information) +for the machine that it is running on. + +The easiest way to run this script is with `make karatsuba`. + +If desired, maintainers can also skip running this script because there is a +sane default for the Karatsuba number. + +## Status + +This `bc` is robust. + +It is well-tested, fuzzed, and fully standards-compliant (though not certified) +with POSIX `bc`. The math has been tested with 40+ million random problems, so +it is as correct as I can make it. + +This `bc` can be used as a drop-in replacement for any existing `bc`. This `bc` +is also compatible with MinGW toolchains. + +In addition, this `bc` is considered complete; i.e., there will be no more +releases with additional features. However, it *is* actively maintained, so if +any bugs are found, they will be fixed in new releases. Also, additional +translations will also be added as they are provided. + +### Development + +If I (Gavin D. Howard) get [hit by a bus][27] and future programmers need to +handle work themselves, the best place to start is the [Development manual][28]. + +## Vim Syntax + +I have developed (using other people's code to start) [`vim` syntax files][17] +for this `bc` and `dc`, including the extensions. + +## `bc` Libs + +I have gathered some excellent [`bc` and `dc` libraries][18]. These libraries +may prove useful to any serious users. + +## Comparison to GNU `bc` + +This `bc` compares favorably to GNU `bc`. + +* This `bc` builds natively on Windows. - * It has more extensions, which make this `bc` more useful for scripting. ++* It has more extensions, which make this `bc` more useful for scripting. (See ++ [Extensions](#extensions).) +* This `bc` is a bit more POSIX compliant. +* It has a much less buggy parser. The GNU `bc` will give parse errors for what + is actually valid `bc` code, or should be. For example, putting an `else` on + a new line after a brace can cause GNU `bc` to give a parse error. +* This `bc` has fewer crashes. +* GNU `bc` calculates the wrong number of significant digits for `length(x)`. +* GNU `bc` will sometimes print numbers incorrectly. For example, when running + it on the file `tests/bc/power.txt` in this repo, GNU `bc` gets all the right + answers, but it fails to wrap the numbers at the proper place when outputting + to a file. +* This `bc` is faster. (See [Performance](#performance).) + +### Performance + +Because this `bc` packs more than `1` decimal digit per hardware integer, this +`bc` is faster than GNU `bc` and can be *much* faster. Full benchmarks can be +found at [manuals/benchmarks.md][19]. + +There is one instance where this `bc` is slower: if scripts are light on math. +This is because this `bc`'s intepreter is slightly slower than GNU `bc`, but +that is because it is more robust. See the [benchmarks][19]. + ++### Extensions ++ ++Below is a non-comprehensive list of extensions that this `bc` and `dc` have ++that all others do not. ++ ++* An extended math library. (See [here][30] for more information.) ++* A command-line prompt. ++* Turning on and off digit clamping. (Digit clamping is about how to treat ++ "invalid" digits for a particular base. GNU `bc` uses it, and the BSD `bc` ++ does not. Mine does both.) ++* A pseudo-random number generator. This includes the ability to set the seed ++ and get reproducible streams of random numbers. ++* The ability to use stacks for the globals `scale`, `ibase`, and `obase` ++ instead of needing to restore them in *every* function. ++* The ability to *not* use non-standard keywords. For example, `abs` is a ++ keyword (a built-in function), but if some script actually defines a function ++ called that, it's possible to tell my `bc` to not treat it as a keyword, which ++ will make the script parses correctly. ++* The ability to turn on and off printing leading zeroes on numbers greater than ++ `-1` and less than `1`. ++* Outputting in scientific and engineering notation. ++* Accepting input in scientific and engineering notation. ++* Passing strings and arrays to the `length()` built-in function. (In `dc`, the ++ `Y` command will do this for arrays, and the `Z` command will do this for both ++ numbers and strings.) ++* The `abs()` built-in function. (This is the `b` command in `dc`.) ++* The `is_number()` and `is_string()` built-in functions. (These tell whether a ++ variable is holding a string or a number, for runtime type checking. The ++ commands are `u` and `t` in `dc`.) ++* For `bc` only, the `divmod()` built-in function for computing a quotient and ++ remainder at the same time. ++* For `bc` only, the `asciify()` built-in function for converting an array to a ++ string. ++* The `$` truncation operator. (It's the same in `bc` and `dc`.) ++* The `@` "set scale" operator. (It's the same in `bc` and `dc`.) ++* The decimal shift operators. (`<<` and `>>` in `bc`, `H` and `h` in `dc`.) ++* Built-in functions or commands to get the max of `scale`, `ibase`, and ++ `obase`. ++* The ability to put strings into variables in `bc`. (This always existed in ++ `dc`.) ++* The `'` command in `dc` for the depth of the execution stack. ++* The `y` command in `dc` for the depth of register stacks. ++* Built-in functions or commands to get the value of certain environment ++ variables that might affect execution. ++* The `stream` keyword to do the same thing as the `P` command in `dc`. ++* Defined order of evaluation. ++* Defined exit statuses. ++* All environment variables other than `POSIXLY_CORRECT`, `BC_ENV_ARGS`, and ++ `BC_LINE_LENGTH`. ++* The ability for users to define their own defaults for various options during ++ build. (See [here][31] for more information.) ++ +## Algorithms + +To see what algorithms this `bc` uses, see the [algorithms manual][7]. + +## Locales + +Currently, there is no locale support on Windows. + +Additionally, this `bc` only has support for English (and US English), French, +German, Portuguese, Dutch, Polish, Russian, Japanese, and Chinese locales. +Patches are welcome for translations; use the existing `*.msg` files in +`locales/` as a starting point. + +In addition, patches for improvements are welcome; the last two messages in +Portuguese were made with Google Translate, and the Dutch, Polish, Russian, +Japanese, and Chinese locales were all generated with [DeepL][22]. + +The message files provided assume that locales apply to all regions where a +language is used, but this might not be true for, e.g., `fr_CA` and `fr_CH`. +Any corrections or a confirmation that the current texts are acceptable for +those regions would be appreciated, too. + +## Other Projects + +Other projects based on this bc are: + +* [busybox `bc`][8]. The busybox maintainers have made their own changes, so any + bugs in the busybox `bc` should be reported to them. + +* [toybox `bc`][9]. The maintainer has also made his own changes, so bugs in the + toybox `bc` should be reported there. + +* [FreeBSD `bc`][23]. While the `bc` in FreeBSD is kept up-to-date, it is better + to [report bugs there][24], as well as [submit patches][25], and the + maintainers of the package will contact me if necessary. + +## Language + +This `bc` is written in pure ISO C99, using POSIX 2008 APIs with custom Windows +compatibility code. + +## Commit Messages + +This `bc` uses the commit message guidelines laid out in [this blog post][10]. + +## Semantic Versioning + +This `bc` uses [semantic versioning][11]. + +## Contents + +Items labeled with `(maintainer use only)` are not included in release source +tarballs. + +Files: + + .gitignore The git ignore file (maintainer use only). + .gitattributes The git attributes file (maintainer use only). + bcl.pc.in A template pkg-config file for bcl. + configure A symlink to configure.sh to make packaging easier. + configure.sh The configure script. + LICENSE.md A Markdown form of the BSD 2-clause License. + Makefile.in The Makefile template. + NEWS.md The changelog. + NOTICE.md List of contributors and copyright owners. + +Folders: + + benchmarks A folder of benchmarks for various aspects of bc performance. + gen The bc math library, help texts, and code to generate C source. + include All header files. + locales Locale files, in .msg format. Patches welcome for translations. + manuals Manuals for both programs. + src All source code. + scripts A bunch of shell scripts to help with development and building. + tests All tests. + vs Files needed for the build on Windows. + +[1]: https://www.gnu.org/software/bc/ +[4]: ./LICENSE.md +[5]: ./manuals/build.md +[7]: ./manuals/algorithms.md +[8]: https://git.busybox.net/busybox/tree/miscutils/bc.c +[9]: https://github.com/landley/toybox/blob/master/toys/pending/bc.c +[10]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html +[11]: http://semver.org/ +[12]: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/bc.html +[17]: https://git.yzena.com/gavin/vim-bc +[18]: https://git.yzena.com/gavin/bc_libs +[19]: ./manuals/benchmarks.md +[20]: https://git.yzena.com/gavin/bc +[21]: https://gavinhoward.com/2020/04/i-am-moving-away-from-github/ +[22]: https://www.deepl.com/translator +[23]: https://cgit.freebsd.org/src/tree/contrib/bc +[24]: https://bugs.freebsd.org/ +[25]: https://reviews.freebsd.org/ +[26]: ./manuals/bcl.3.md +[27]: https://en.wikipedia.org/wiki/Bus_factor +[28]: ./manuals/development.md +[29]: https://github.com/gavinhoward/bc ++[30]: ./manuals/bc/A.1.md#extended-library ++[31]: ./manuals/build.md#settings diff --cc contrib/bc/tests/bc/asciify_array.txt index 000000000000,4efae1d13876..4efae1d13876 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/asciify_array.txt +++ b/contrib/bc/tests/bc/asciify_array.txt diff --cc contrib/bc/tests/bc/asciify_array_results.txt index 000000000000,d0dc2bc37514..d0dc2bc37514 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/asciify_array_results.txt +++ b/contrib/bc/tests/bc/asciify_array_results.txt diff --cc contrib/bc/tests/bc/errors/33.txt index 000000000000,a16568bb2d98..a16568bb2d98 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/errors/33.txt +++ b/contrib/bc/tests/bc/errors/33.txt diff --cc contrib/bc/tests/bc/errors/34.txt index 000000000000,1b452c609159..1b452c609159 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/errors/34.txt +++ b/contrib/bc/tests/bc/errors/34.txt diff --cc contrib/bc/tests/bc/errors/35.txt index 000000000000,40e79633c4a5..40e79633c4a5 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/errors/35.txt +++ b/contrib/bc/tests/bc/errors/35.txt diff --cc contrib/bc/tests/bc/errors/36.txt index 000000000000,5929bdb7a5b9..5929bdb7a5b9 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/errors/36.txt +++ b/contrib/bc/tests/bc/errors/36.txt diff --cc contrib/bc/tests/bc/is_number.txt index 000000000000,f9e1f753b0a3..f9e1f753b0a3 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/is_number.txt +++ b/contrib/bc/tests/bc/is_number.txt diff --cc contrib/bc/tests/bc/is_number_results.txt index 000000000000,1c03b9c18714..1c03b9c18714 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/is_number_results.txt +++ b/contrib/bc/tests/bc/is_number_results.txt diff --cc contrib/bc/tests/bc/is_string.txt index 000000000000,bfd7136d2dea..bfd7136d2dea mode 000000,100644..100644 --- a/contrib/bc/tests/bc/is_string.txt +++ b/contrib/bc/tests/bc/is_string.txt diff --cc contrib/bc/tests/bc/is_string_results.txt index 000000000000,99f11f6b2e75..99f11f6b2e75 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/is_string_results.txt +++ b/contrib/bc/tests/bc/is_string_results.txt diff --cc contrib/bc/tests/bc/line_by_line1.txt index 000000000000,daf328e2c03e..daf328e2c03e mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_by_line1.txt +++ b/contrib/bc/tests/bc/line_by_line1.txt diff --cc contrib/bc/tests/bc/line_by_line1_results.txt index 000000000000,0cfbf08886fc..0cfbf08886fc mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_by_line1_results.txt +++ b/contrib/bc/tests/bc/line_by_line1_results.txt diff --cc contrib/bc/tests/bc/line_by_line2.txt index 000000000000,b05c2169aced..b05c2169aced mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_by_line2.txt +++ b/contrib/bc/tests/bc/line_by_line2.txt diff --cc contrib/bc/tests/bc/line_by_line2_results.txt index 000000000000,3760375f171d..3760375f171d mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_by_line2_results.txt +++ b/contrib/bc/tests/bc/line_by_line2_results.txt diff --cc contrib/bc/tests/bc/line_loop_quit1.txt index 000000000000,03a6ca111f47..03a6ca111f47 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_loop_quit1.txt +++ b/contrib/bc/tests/bc/line_loop_quit1.txt diff --cc contrib/bc/tests/bc/line_loop_quit1_results.txt index 000000000000,17342202bbfc..17342202bbfc mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_loop_quit1_results.txt +++ b/contrib/bc/tests/bc/line_loop_quit1_results.txt diff --cc contrib/bc/tests/bc/line_loop_quit2.txt index 000000000000,6d6a440b3dd4..6d6a440b3dd4 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_loop_quit2.txt +++ b/contrib/bc/tests/bc/line_loop_quit2.txt diff --cc contrib/bc/tests/bc/line_loop_quit2_results.txt index 000000000000,17342202bbfc..17342202bbfc mode 000000,100644..100644 --- a/contrib/bc/tests/bc/line_loop_quit2_results.txt +++ b/contrib/bc/tests/bc/line_loop_quit2_results.txt diff --cc contrib/bc/tests/bc/scripts/afl1.bc index 000000000000,bbb393a30fe3..bbb393a30fe3 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/scripts/afl1.bc +++ b/contrib/bc/tests/bc/scripts/afl1.bc diff --cc contrib/bc/tests/bc/scripts/afl1.txt index 000000000000,9d3ac4b542fa..9d3ac4b542fa mode 000000,100644..100644 --- a/contrib/bc/tests/bc/scripts/afl1.txt +++ b/contrib/bc/tests/bc/scripts/afl1.txt diff --cc contrib/bc/tests/bc/scripts/array2.bc index 000000000000,34d88c3e276b..34d88c3e276b mode 000000,100644..100644 --- a/contrib/bc/tests/bc/scripts/array2.bc +++ b/contrib/bc/tests/bc/scripts/array2.bc diff --cc contrib/bc/tests/bc/scripts/array2.txt index 000000000000,76dcb035f907..76dcb035f907 mode 000000,100644..100644 --- a/contrib/bc/tests/bc/scripts/array2.txt +++ b/contrib/bc/tests/bc/scripts/array2.txt diff --cc contrib/bc/tests/dc/is_number.txt index 000000000000,358182927326..358182927326 mode 000000,100644..100644 --- a/contrib/bc/tests/dc/is_number.txt +++ b/contrib/bc/tests/dc/is_number.txt diff --cc contrib/bc/tests/dc/is_number_results.txt index 000000000000,6c8f29cea4ab..6c8f29cea4ab mode 000000,100644..100644 --- a/contrib/bc/tests/dc/is_number_results.txt +++ b/contrib/bc/tests/dc/is_number_results.txt diff --cc contrib/bc/tests/dc/is_string.txt index 000000000000,6798fa3904b8..6798fa3904b8 mode 000000,100644..100644 --- a/contrib/bc/tests/dc/is_string.txt +++ b/contrib/bc/tests/dc/is_string.txt diff --cc contrib/bc/tests/dc/is_string_results.txt index 000000000000,0c6a1c9abd7a..0c6a1c9abd7a mode 000000,100644..100644 --- a/contrib/bc/tests/dc/is_string_results.txt +++ b/contrib/bc/tests/dc/is_string_results.txt diff --cc contrib/bc/tests/dc/misc1.txt index 000000000000,a512573ae548..a512573ae548 mode 000000,100644..100644 --- a/contrib/bc/tests/dc/misc1.txt +++ b/contrib/bc/tests/dc/misc1.txt diff --cc contrib/bc/tests/dc/misc1_results.txt index 000000000000,d2f8ad70b4b8..d2f8ad70b4b8 mode 000000,100644..100644 --- a/contrib/bc/tests/dc/misc1_results.txt +++ b/contrib/bc/tests/dc/misc1_results.txt diff --cc contrib/bc/tests/dc/scripts/no_clamp.dc index 000000000000,bad184a54401..bad184a54401 mode 000000,100644..100644 --- a/contrib/bc/tests/dc/scripts/no_clamp.dc +++ b/contrib/bc/tests/dc/scripts/no_clamp.dc diff --cc contrib/bc/tests/dc/scripts/no_clamp.txt index 000000000000,c8b680be10aa..c8b680be10aa mode 000000,100644..100644 --- a/contrib/bc/tests/dc/scripts/no_clamp.txt +++ b/contrib/bc/tests/dc/scripts/no_clamp.txt