From nobody Sun Jun 25 04:07:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qpcrp6ztMz4gLlL; Sun, 25 Jun 2023 04:07:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Qpcrp6Bt7z3qHl; Sun, 25 Jun 2023 04:07:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687666074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CPHAOYYsjx00R8v1FM+Xwq1z5ioToP12DeiZj8ryh/w=; b=lN56GLoY8Xo5VD626BXrYm6KgPbzoALKqFenk05iw7ayldL9DWTdSRSIgYK3Uvs+EKYplB Oip4p72btGkmYvSfazuYH/w7CkmtAfBp/sHlmQoGSAC5Kzc2scYUBjetjrLsfvLmQ/1voU yD0LbDUXVhQ5CWaLluHabycqya2alJdI4XQtLlBwZgtVZe4ZR8LGj68dWLpVHvyWd1RzHt vsTmxPNr34oERoQ5QSgpj9iMx/z9dwIptiaPar1+u1fRMcdxETfx9qK44UBSevjarlUKVP UdubjKKvLppaEwBQyO46cab7r6xWdqjnuH9ThmEn8l8UVFkSCNwxC/wzhQiaUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687666074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CPHAOYYsjx00R8v1FM+Xwq1z5ioToP12DeiZj8ryh/w=; b=Bcv9apGX0I57zu0npfVX9mFcSYIEcxy5eEy3JBbIWg4jgrgM9g2zq5sGjhY/vLIVpUkTpM HLdgo5pD9ryg1TSKZMj9CXkgVOzpP9n4kYkdu27OPu5erSp/tgxmwBGIVPCS2bccy1pNQ0 YBuuBsqh83ca02yBuHJqchOnEECwPckFi/KssV+ym37VK46boORI/2O5LTmswsuf4/ld8N g9UaAnvX2bcFTewUlarMGffbKmvdGfhmQsNuhR1k+y5KgPDyXev1giPQGBXV/tnlTlUQgR yWR1k8vXNkQRraUTBRZOvyZ2k2v7KIkNFu9U1yqXz2XansvJ+nM4rD9tBubb4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687666074; a=rsa-sha256; cv=none; b=Nd9Jcuy/61QQzNQ8raINJLPuJIPF7Oddq3xVMUzNCm3lriywxDx6taYSYIPe9HYrvEM7Ue uH5i9pIgj7pk3wWD1rOckJxcRk9Ch6mUHwOoo6pZs69fO/jyCDhITmiTMzgaygQSIPYko4 g0gKSFIrQOZoYDB3Am+sRxlYif0oLpEYJtRPYrpaNipghfOnYMbgIpEKwFdKnOK9i/RcBk cMH6zNadGEHJA0BASHBHCI516Pm3WH75EwdVdTPp6zRh1h6/hoGRy8AQKe68P7EMI3xpnE ubW41wteGcDGrVGiJrHb29v6cGxThwy9rwk9+Qt89JIXrE/hZZ+CbiXc+TjWjQ== 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 4Qpcrp51Jwz1CGX; Sun, 25 Jun 2023 04:07: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 35P47s7I001337; Sun, 25 Jun 2023 04:07:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35P47skF001336; Sun, 25 Jun 2023 04:07:54 GMT (envelope-from git) Date: Sun, 25 Jun 2023 04:07:54 GMT Message-Id: <202306250407.35P47skF001336@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 1b33afb7e88b - stable/13 - wpa: Enable receiving priority tagged (VID 0) frames List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1b33afb7e88b2e36db2083c488de41dbe097ef49 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=1b33afb7e88b2e36db2083c488de41dbe097ef49 commit 1b33afb7e88b2e36db2083c488de41dbe097ef49 Author: R. Christian McDonald AuthorDate: 2023-06-11 23:22:53 +0000 Commit: Cy Schubert CommitDate: 2023-06-25 04:07:33 +0000 wpa: Enable receiving priority tagged (VID 0) frames Certain internet service providers transmit vlan 0 priority tagged EAPOL frames from the ONT towards the residential gateway. VID 0 should be ignored, and the frame processed according to the priority set in the 802.1P bits and the encapsulated EtherType (i.e. EAPOL). The pcap filter utilized by l2_packet is inadquate for this use case. Here we modify the pcap filter to accept both unencapsulated and encapsulated (with VLAN 0) EAPOL EtherTypes. This preserves the original filter behavior while also matching on encapsulated EAPOL. Sponsored by: Rubicon Communications, LLC ("Netgate") Reviewed by: cy Differential Revision: https://reviews.freebsd.org/D40442 (cherry picked from commit bb5d6d14d81b0789d2e73da03571603426afef56) --- contrib/wpa/src/l2_packet/l2_packet_freebsd.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c index 7b96bd033c87..156a09a32a84 100644 --- a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c +++ b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c @@ -21,6 +21,7 @@ #include #endif /* __sun__ */ +#include #include #include #include @@ -99,6 +100,11 @@ static void l2_packet_receive(int sock, void *eloop_ctx, void *sock_ctx) } else { buf = (unsigned char *) (ethhdr + 1); len = hdr->caplen - sizeof(*ethhdr); + /* handle 8021Q encapsulated frames */ + if (ethhdr->h_proto == htons(ETH_P_8021Q)) { + buf += ETHER_VLAN_ENCAP_LEN; + len -= ETHER_VLAN_ENCAP_LEN; + } } l2->rx_callback(l2->rx_callback_ctx, ethhdr->h_source, buf, len); } @@ -127,10 +133,10 @@ static int l2_packet_init_libpcap(struct l2_packet_data *l2, os_snprintf(pcap_filter, sizeof(pcap_filter), "not ether src " MACSTR " and " "( ether dst " MACSTR " or ether dst " MACSTR " ) and " - "ether proto 0x%x", + "( ether proto 0x%x or ( vlan 0 and ether proto 0x%x ) )", MAC2STR(l2->own_addr), /* do not receive own packets */ MAC2STR(l2->own_addr), MAC2STR(pae_group_addr), - protocol); + protocol, protocol); if (pcap_compile(l2->pcap, &pcap_fp, pcap_filter, 1, pcap_netp) < 0) { fprintf(stderr, "pcap_compile: %s\n", pcap_geterr(l2->pcap)); return -1; From nobody Sun Jun 25 04:08:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QpcsK1CtDz4gMDC; Sun, 25 Jun 2023 04:08:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QpcsJ68TYz3qT8; Sun, 25 Jun 2023 04:08:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687666100; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w1mX4P/vA5sx/PRimKzxzsYq7+wIaG5DOYOzyG41pdo=; b=Db+7xt+H8UeNQ9zCAROBUb1hET/P36W5qaXiP6iGANaTifuUIuaDUQITqc6bU6w+qkEhyy tZ8bdCSBNpQje1i8BnZRqTqbe3YyLA74/5fWBimzB1qn9Uzh36tmVjwf7JSrFxg6vwPIyY wbRLaRJVP/e3dj0Yatdt+4ZmLOxaiMnvIjupDhjbHLgbncGkojGpQf0i9X2gEkM2sMCvlD IxAyNqgC54bKiD1SKeZZv5hDR7YJoQKpPvqIR7oLQfxnR4Tw7f9ZoOMlr9cYBLzg6z8bWs XOusrXsTbORMQqVZ0cKQGsIKmrMQOa30AO2heFfFV0zISjIWKGx/2PKGpD52Iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687666100; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w1mX4P/vA5sx/PRimKzxzsYq7+wIaG5DOYOzyG41pdo=; b=VY+riWT4GNKL03mETeQ7VDdj/+Gz/8iw0AMxROxJvEEjygLN2nYkaDJxQJaHv199icxQLu u809l78EbTGfjmKXgt8K+QhnJa7X2vZAE+oEQM3+wGLOXQK2zEF79rMoqkIC+hrKVr7qHl zg4ZawtDj8m2tCwFnHNzwR79DC80Ouumxd0+rlVZgzXASCDXunoBYjEYmUjTckW0Bpbpu8 T9uj25JVCjcDsrxMgjKHBmuGOq7KgZo9xuI9E2LzhPxut73oosn62r9/+FOXTDkHdoHbrS hFsv5rf9zaPZWd9yDQ8W4v0vmrfxfOiAllDj6oGB5Zfwz47fSietmgGJRhznAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687666100; a=rsa-sha256; cv=none; b=UpJBL78+O0BfU4vwGMvGoFBTppVqmv78v+CWFO4I3emxjcqKdJNCyBK6eWqMNO+XDZ6l2E ENmC0uA0eF659lK0KTKok0gLC3ydph0rLhiDK+bR4ya2YTfZugP6LYwuf1JIIZX2ZDB7Cg ufrQNXmCNECD+W21BDsDoYuyTMzdP8k9xuynQb4W5Lok+cJNPDAL0pEqoku/0LHjZ9/7CW JZYFXzEVe5sMmN8VzQ49hF51VhbtPnRe9+fb306YcHG6sgjTpaokBWTVsyYvYFpitlCaYK tXgRxwXyDPFCOtlW4P233eWYv98t3e9b7PKJYyaXxhTeGKPfPRQ+Zkl/OTlaLA== 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 4QpcsJ4xtvz1CGY; Sun, 25 Jun 2023 04:08: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 35P48KrD001521; Sun, 25 Jun 2023 04:08:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35P48KH4001520; Sun, 25 Jun 2023 04:08:20 GMT (envelope-from git) Date: Sun, 25 Jun 2023 04:08:20 GMT Message-Id: <202306250408.35P48KH4001520@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: cc6d0b4bd2c9 - stable/12 - wpa: Enable receiving priority tagged (VID 0) frames List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: cc6d0b4bd2c9e0dfa1e78fae9ae3497f1d7b7481 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=cc6d0b4bd2c9e0dfa1e78fae9ae3497f1d7b7481 commit cc6d0b4bd2c9e0dfa1e78fae9ae3497f1d7b7481 Author: R. Christian McDonald AuthorDate: 2023-06-11 23:22:53 +0000 Commit: Cy Schubert CommitDate: 2023-06-25 04:08:04 +0000 wpa: Enable receiving priority tagged (VID 0) frames Certain internet service providers transmit vlan 0 priority tagged EAPOL frames from the ONT towards the residential gateway. VID 0 should be ignored, and the frame processed according to the priority set in the 802.1P bits and the encapsulated EtherType (i.e. EAPOL). The pcap filter utilized by l2_packet is inadquate for this use case. Here we modify the pcap filter to accept both unencapsulated and encapsulated (with VLAN 0) EAPOL EtherTypes. This preserves the original filter behavior while also matching on encapsulated EAPOL. Sponsored by: Rubicon Communications, LLC ("Netgate") Reviewed by: cy Differential Revision: https://reviews.freebsd.org/D40442 (cherry picked from commit bb5d6d14d81b0789d2e73da03571603426afef56) --- contrib/wpa/src/l2_packet/l2_packet_freebsd.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c index 7b96bd033c87..156a09a32a84 100644 --- a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c +++ b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c @@ -21,6 +21,7 @@ #include #endif /* __sun__ */ +#include #include #include #include @@ -99,6 +100,11 @@ static void l2_packet_receive(int sock, void *eloop_ctx, void *sock_ctx) } else { buf = (unsigned char *) (ethhdr + 1); len = hdr->caplen - sizeof(*ethhdr); + /* handle 8021Q encapsulated frames */ + if (ethhdr->h_proto == htons(ETH_P_8021Q)) { + buf += ETHER_VLAN_ENCAP_LEN; + len -= ETHER_VLAN_ENCAP_LEN; + } } l2->rx_callback(l2->rx_callback_ctx, ethhdr->h_source, buf, len); } @@ -127,10 +133,10 @@ static int l2_packet_init_libpcap(struct l2_packet_data *l2, os_snprintf(pcap_filter, sizeof(pcap_filter), "not ether src " MACSTR " and " "( ether dst " MACSTR " or ether dst " MACSTR " ) and " - "ether proto 0x%x", + "( ether proto 0x%x or ( vlan 0 and ether proto 0x%x ) )", MAC2STR(l2->own_addr), /* do not receive own packets */ MAC2STR(l2->own_addr), MAC2STR(pae_group_addr), - protocol); + protocol, protocol); if (pcap_compile(l2->pcap, &pcap_fp, pcap_filter, 1, pcap_netp) < 0) { fprintf(stderr, "pcap_compile: %s\n", pcap_geterr(l2->pcap)); return -1; From nobody Sun Jun 25 18:40:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq0D72fPkz4hdXl; Sun, 25 Jun 2023 18:40: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 4Qq0D65Y2pz42Jj; Sun, 25 Jun 2023 18:40:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687718454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LLf6jNBqgcMSLGpOAl29S+nl/mMMomR/A0Vf+MyU6zo=; b=AVYSdwIlAoJnYSgTzUYLoPWC4Fl9IoI2sOS1AqQg1b2HthCS62ueC1uiJfID68cVOngdcC urppUh5KnLJGlmjYpN+Mx+Q6HTv+DzLauXibp5g7Y0LqY7zZVljXiYBnQg03zOZ5FAJ/UL NOmXmDAWef7D14kOP48Fg0uz5VmNlRB3YpKraml6Glg2qWzY/RkVCLQvUjRxW+G4p8sUlF /K++VEoSK49KmaJwt10pZSi0xqUM3+Hb95hr+CWGcO2xJ+N++XRl099u+6gZ7KnHvVbQYz 7SuWtuKIfkUJpC2iAZJZ93cKs1QXfnq4sp2Fi2WzKzXx6VTNyiVNtCiIMc2Xrw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687718454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LLf6jNBqgcMSLGpOAl29S+nl/mMMomR/A0Vf+MyU6zo=; b=Epykar7rikksf5hwmTxRf8Goifubq+tg5xeW/xyaKWw1U5uSECT/z+7Eg3cVI4dlRA/1zY 3GphtugdcxW1l80VivpUTwxFNycRhhF0gLyO97O3tGw3Vh2Ie2nD7qD67IIJDQ77QLSouc EsMtmgCaUphAQqAbaV8c5yePJG9OWGczl9PCguFuYPbVZK7cv3EEWy1yJUA5aKs6pDNu85 PbrKXhwO99KslVZBnkqRJlx07YHWlR5fWohEqwsc8IfAyfF7HZa7/YdjQAW51erC8xi8SY uQk3VU1VznQdMFkXxJC8Rfbug4Xl47fQ2L3m8V4OO1EVcKOl6cYryPbpVlOyBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687718454; a=rsa-sha256; cv=none; b=mm8H1SBgqeaEf8vg9KI6rtZTdH6/7Qn002elUH1X93cCwox+5APDGwA8AOCVRMoNbzuvYf u0thrriXY078jhEmaggpWr6vj0PQifGKlIyz/VLshxg0Gl35TWv4WhP6PXnLYKxh3GAY1X g+FIPrDpzbkCsrnz8U3xHSHOMYP7S9vhJ2EF/MpcFvzvoUxC5sgb4OcYCBC4+SwHXZxfdl ewobcZcgkh9SnZrlisgxckAflIIPLcqFBZN1AQeNwLpZ4eZB5MaaYSKaOFF+NQzbha/WBC /0rige+AxPVUdwLK2eUR1WcluSmvWBj6RT1kOkw+5g3tKZ9DPLPdHnWvlgnW7Q== 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 4Qq0D64f5czf4L; Sun, 25 Jun 2023 18:40: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 35PIesLp051701; Sun, 25 Jun 2023 18:40:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PIesgh051700; Sun, 25 Jun 2023 18:40:54 GMT (envelope-from git) Date: Sun, 25 Jun 2023 18:40:54 GMT Message-Id: <202306251840.35PIesgh051700@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 53380074a162 - stable/13 - ipmi: add Block Transfer interface support List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 53380074a162833e2fdca11908e702ea7b7541f2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=53380074a162833e2fdca11908e702ea7b7541f2 commit 53380074a162833e2fdca11908e702ea7b7541f2 Author: Andrey V. Elsukov AuthorDate: 2023-06-07 09:30:47 +0000 Commit: Andrey V. Elsukov CommitDate: 2023-06-25 18:34:28 +0000 ipmi: add Block Transfer interface support Reviewed by: ambrisko Obtained from: Yandex LLC Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D40421 (cherry picked from commit 1f166509895dd90fcaaa08b557f9bc106e3f7e71) --- sys/conf/files.arm64 | 1 + sys/conf/files.x86 | 1 + sys/dev/ipmi/ipmi_acpi.c | 19 +-- sys/dev/ipmi/ipmi_bt.c | 296 +++++++++++++++++++++++++++++++++++++++++++++ sys/dev/ipmi/ipmi_isa.c | 19 +-- sys/dev/ipmi/ipmi_pci.c | 28 +++-- sys/dev/ipmi/ipmi_smbios.c | 1 + sys/dev/ipmi/ipmivars.h | 19 ++- sys/modules/ipmi/Makefile | 2 +- 9 files changed, 353 insertions(+), 33 deletions(-) diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index 6b96de28128d..df7bbe002f5c 100644 --- a/sys/conf/files.arm64 +++ b/sys/conf/files.arm64 @@ -259,6 +259,7 @@ dev/iicbus/twsi/twsi.c optional twsi fdt dev/ipmi/ipmi.c optional ipmi dev/ipmi/ipmi_acpi.c optional ipmi acpi +dev/ipmi/ipmi_bt.c optional ipmi dev/ipmi/ipmi_kcs.c optional ipmi dev/ipmi/ipmi_smic.c optional ipmi diff --git a/sys/conf/files.x86 b/sys/conf/files.x86 index 07ecb9fe1e01..bc7dbccaf16d 100644 --- a/sys/conf/files.x86 +++ b/sys/conf/files.x86 @@ -171,6 +171,7 @@ dev/iommu/iommu_gas.c optional acpi iommu pci dev/ipmi/ipmi.c optional ipmi dev/ipmi/ipmi_acpi.c optional ipmi acpi dev/ipmi/ipmi_isa.c optional ipmi isa +dev/ipmi/ipmi_bt.c optional ipmi dev/ipmi/ipmi_kcs.c optional ipmi dev/ipmi/ipmi_smic.c optional ipmi dev/ipmi/ipmi_smbus.c optional ipmi smbus diff --git a/sys/dev/ipmi/ipmi_acpi.c b/sys/dev/ipmi/ipmi_acpi.c index 7c34f49075af..9d92608e8f1d 100644 --- a/sys/dev/ipmi/ipmi_acpi.c +++ b/sys/dev/ipmi/ipmi_acpi.c @@ -95,16 +95,17 @@ ipmi_acpi_attach(device_t dev) switch (interface_type) { case KCS_MODE: - count = 2; + count = IPMI_IF_KCS_NRES; mode = "KCS"; break; case SMIC_MODE: - count = 3; + count = IPMI_IF_SMIC_NRES; mode = "SMIC"; break; case BT_MODE: - device_printf(dev, "BT interface not supported\n"); - return (ENXIO); + count = IPMI_IF_BT_NRES; + mode = "BT"; + break; case SSIF_MODE: if (ACPI_FAILURE(acpi_GetInteger(devh, "_ADR", &flags))) return (ENXIO); @@ -174,18 +175,20 @@ ipmi_acpi_attach(device_t dev) * We assume an alignment of 1 byte as currently the IPMI spec * doesn't provide any way to determine the alignment via ACPI. */ + error = ENXIO; switch (interface_type) { case KCS_MODE: error = ipmi_kcs_attach(sc); - if (error) - goto bad; break; case SMIC_MODE: error = ipmi_smic_attach(sc); - if (error) - goto bad; + break; + case BT_MODE: + error = ipmi_bt_attach(sc); break; } + if (error) + goto bad; error = ipmi_attach(dev); if (error) goto bad; diff --git a/sys/dev/ipmi/ipmi_bt.c b/sys/dev/ipmi/ipmi_bt.c new file mode 100644 index 000000000000..0f970d966731 --- /dev/null +++ b/sys/dev/ipmi/ipmi_bt.c @@ -0,0 +1,296 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2023 Yandex LLC + * Copyright (c) 2023 Andrey V. Elsukov + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +/* + * BT interface + */ + +#define DMSG0(sc, fmt, ...) do { \ + device_printf((sc)->ipmi_dev, "BT: %s: " fmt "\n", \ + __func__, ## __VA_ARGS__); \ +} while (0) + +#define DMSGV(...) if (bootverbose) { \ + DMSG0(__VA_ARGS__); \ +} + +#ifdef IPMI_BT_DEBUG +#define DMSG(...) DMSG0(__VA_ARGS__) +#else +#define DMSG(...) +#endif + +#define BT_IO_BASE 0xe4 + +#define BT_CTRL_REG 0 +#define BT_C_CLR_WR_PTR (1L << 0) +#define BT_C_CLR_RD_PTR (1L << 1) +#define BT_C_H2B_ATN (1L << 2) +#define BT_C_B2H_ATN (1L << 3) +#define BT_C_SMS_ATN (1L << 4) +#define BT_C_OEM0 (1L << 5) +#define BT_C_H_BUSY (1L << 6) +#define BT_C_B_BUSY (1L << 7) + +#define BT_CTRL_BITS "\20\01CLR_WR_PTR\02CLR_RD_PTR\03H2B_ATN\04B2H_ATN"\ + "\05SMS_ATN\06OEM0\07H_BUSY\010B_BUSY" + +#define BT_DATA_REG 1 +#define BTMSG_REQLEN 3 +#define BTMSG_REPLEN 4 + +#define BT_INTMASK_REG 2 +#define BT_IM_B2H_IRQ_EN (1L << 0) +#define BT_IM_B2H_IRQ (1L << 1) +#define BT_IM_BMC_HWRST (1L << 7) + +static int bt_polled_request(struct ipmi_softc *, struct ipmi_request *); +static int bt_driver_request(struct ipmi_softc *, struct ipmi_request *, int); +static int bt_wait(struct ipmi_softc *, uint8_t, uint8_t); +static int bt_reset(struct ipmi_softc *); + +static void bt_loop(void *); +static int bt_startup(struct ipmi_softc *); + +#define BT_DELAY_MIN 1 +#define BT_DELAY_MAX 256 + +static int +bt_wait(struct ipmi_softc *sc, uint8_t mask, uint8_t wanted) +{ + volatile uint8_t value; + int delay = BT_DELAY_MIN; + int count = 20000; /* about 5 seconds */ + + while (count--) { + value = INB(sc, BT_CTRL_REG); + if ((value & mask) == wanted) + return (value); + /* + * The wait delay is increased exponentially to avoid putting + * significant load on I/O bus. + */ + DELAY(delay); + if (delay < BT_DELAY_MAX) + delay <<= 1; + } + DMSGV(sc, "failed: m=%b w=%b v=0x%02x\n", + mask, BT_CTRL_BITS, wanted, BT_CTRL_BITS, value); + return (-1); + +} + +static int +bt_reset(struct ipmi_softc *sc) +{ + uint8_t v; + + v = INB(sc, BT_CTRL_REG); + DMSG(sc, "ctrl: %b", v, BT_CTRL_BITS); + v &= BT_C_H_BUSY; /* clear H_BUSY iff it set */ + v |= BT_C_CLR_WR_PTR | BT_C_CLR_RD_PTR | BT_C_B2H_ATN | BT_C_H2B_ATN; + + bt_wait(sc, BT_C_B_BUSY, 0); + OUTB(sc, BT_CTRL_REG, v); + + v = BT_IM_B2H_IRQ | BT_IM_BMC_HWRST; + OUTB(sc, BT_INTMASK_REG, v); + + return (0); +} + +/* + * Send a request message and collect the reply. Returns 1 if we + * succeed. + */ +static int +bt_polled_request(struct ipmi_softc *sc, struct ipmi_request *req) +{ + uint8_t addr, cmd, seq, v; + int i; + + IPMI_IO_LOCK(sc); + + /* + * Send the request: + * + * Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5:N + * -------+-----------+--------+--------+--------- + * Length | NetFn/LUN | Seq | Cmd | Data + */ + + if (bt_wait(sc, BT_C_B_BUSY | BT_C_H2B_ATN, 0) < 0) { + DMSG(sc, "failed to start write transfer"); + goto fail; + } + DMSG(sc, "request: length=%d, addr=0x%02x, seq=%u, cmd=0x%02x", + (int)req->ir_requestlen, req->ir_addr, sc->ipmi_bt_seq, req->ir_command); + OUTB(sc, BT_CTRL_REG, BT_C_CLR_WR_PTR); + OUTB(sc, BT_DATA_REG, req->ir_requestlen + BTMSG_REQLEN); + OUTB(sc, BT_DATA_REG, req->ir_addr); + OUTB(sc, BT_DATA_REG, sc->ipmi_bt_seq); + OUTB(sc, BT_DATA_REG, req->ir_command); + for (i = 0; i < req->ir_requestlen; i++) + OUTB(sc, BT_DATA_REG, req->ir_request[i]); + OUTB(sc, BT_CTRL_REG, BT_C_H2B_ATN); + + if (bt_wait(sc, BT_C_B_BUSY | BT_C_H2B_ATN, 0) < 0) { + DMSG(sc, "failed to finish write transfer"); + goto fail; + } + + /* + * Read the reply: + * + * Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Byte 6:N + * -------+-----------+--------+--------+-----------------+--------- + * Length | NetFn/LUN | Seq | Cmd | Completion code | Data + */ + if (bt_wait(sc, BT_C_B2H_ATN, BT_C_B2H_ATN) < 0) { + DMSG(sc, "got no reply from BMC"); + goto fail; + } + OUTB(sc, BT_CTRL_REG, BT_C_H_BUSY); + OUTB(sc, BT_CTRL_REG, BT_C_B2H_ATN); + OUTB(sc, BT_CTRL_REG, BT_C_CLR_RD_PTR); + + i = INB(sc, BT_DATA_REG); + if (i < BTMSG_REPLEN) { + DMSG(sc, "wrong data length: %d", i); + goto fail; + } + req->ir_replylen = i - BTMSG_REPLEN; + DMSG(sc, "data length: %d, frame length: %d", req->ir_replylen, i); + + addr = INB(sc, BT_DATA_REG); + if (addr != IPMI_REPLY_ADDR(req->ir_addr)) { + DMSGV(sc, "address doesn't match: addr=0x%02x vs. 0x%02x", + req->ir_addr, addr); + } + + seq = INB(sc, BT_DATA_REG); + if (seq != sc->ipmi_bt_seq) { + DMSGV(sc, "seq number doesn't match: seq=0x%02x vs. 0x%02x", + sc->ipmi_bt_seq, seq); + } + + cmd = INB(sc, BT_DATA_REG); + if (cmd != req->ir_command) { + DMSGV(sc, "command doesn't match: cmd=0x%02x vs. 0x%02x", + req->ir_command, cmd); + } + + req->ir_compcode = INB(sc, BT_DATA_REG); + for (i = 0; i < req->ir_replylen; i++) { + v = INB(sc, BT_DATA_REG); + if (i < req->ir_replybuflen) + req->ir_reply[i] = v; + } + + OUTB(sc, BT_CTRL_REG, BT_C_H_BUSY); + IPMI_IO_UNLOCK(sc); + DMSG(sc, "reply: length=%d, addr=0x%02x, seq=%u, cmd=0x%02x, code=0x%02x", + (int)req->ir_replylen, addr, seq, req->ir_command, req->ir_compcode); + return (1); +fail: + bt_reset(sc); + IPMI_IO_UNLOCK(sc); + return (0); +} + +static void +bt_loop(void *arg) +{ + struct ipmi_softc *sc = arg; + struct ipmi_request *req; + + IPMI_LOCK(sc); + while ((req = ipmi_dequeue_request(sc)) != NULL) { + IPMI_UNLOCK(sc); + (void)bt_driver_request(sc, req, 0); + IPMI_LOCK(sc); + sc->ipmi_bt_seq++; + ipmi_complete_request(sc, req); + } + IPMI_UNLOCK(sc); + kproc_exit(0); +} + +static int +bt_startup(struct ipmi_softc *sc) +{ + + return (kproc_create(bt_loop, sc, &sc->ipmi_kthread, 0, 0, "%s: bt", + device_get_nameunit(sc->ipmi_dev))); +} + +static int +bt_driver_request(struct ipmi_softc *sc, struct ipmi_request *req, int timo __unused) +{ + int i, ok; + + ok = 0; + for (i = 0; i < 3 && !ok; i++) + ok = bt_polled_request(sc, req); + if (ok) + req->ir_error = 0; + else + req->ir_error = EIO; + return (req->ir_error); +} + +int +ipmi_bt_attach(struct ipmi_softc *sc) +{ + /* Setup function pointers. */ + sc->ipmi_startup = bt_startup; + sc->ipmi_enqueue_request = ipmi_polled_enqueue_request; + sc->ipmi_driver_request = bt_driver_request; + sc->ipmi_driver_requests_polled = 1; + sc->ipmi_bt_seq = 1; + + return (bt_reset(sc)); +} diff --git a/sys/dev/ipmi/ipmi_isa.c b/sys/dev/ipmi/ipmi_isa.c index de21b59692e1..9abe697c23fc 100644 --- a/sys/dev/ipmi/ipmi_isa.c +++ b/sys/dev/ipmi/ipmi_isa.c @@ -188,16 +188,17 @@ ipmi_isa_attach(device_t dev) switch (info.iface_type) { case KCS_MODE: - count = 2; + count = IPMI_IF_KCS_NRES; mode = "KCS"; break; case SMIC_MODE: - count = 3; + count = IPMI_IF_SMIC_NRES; mode = "SMIC"; break; case BT_MODE: - device_printf(dev, "BT mode is unsupported\n"); - return (ENXIO); + count = IPMI_IF_BT_NRES; + mode = "BT"; + break; default: return (ENXIO); } @@ -248,19 +249,21 @@ ipmi_isa_attach(device_t dev) RF_SHAREABLE | RF_ACTIVE); } + error = ENXIO; switch (info.iface_type) { case KCS_MODE: error = ipmi_kcs_attach(sc); - if (error) - goto bad; break; case SMIC_MODE: error = ipmi_smic_attach(sc); - if (error) - goto bad; + break; + case BT_MODE: + error = ipmi_bt_attach(sc); break; } + if (error) + goto bad; error = ipmi_attach(dev); if (error) goto bad; diff --git a/sys/dev/ipmi/ipmi_pci.c b/sys/dev/ipmi/ipmi_pci.c index 13ac4f4b5ede..76b9832c8db1 100644 --- a/sys/dev/ipmi/ipmi_pci.c +++ b/sys/dev/ipmi/ipmi_pci.c @@ -112,8 +112,8 @@ ipmi_pci_attach(device_t dev) mode = "SMIC"; break; case BT_MODE: - device_printf(dev, "BT mode is unsupported\n"); - return (ENXIO); + mode = "BT"; + break; default: device_printf(dev, "No IPMI interface found\n"); return (ENXIO); @@ -143,18 +143,20 @@ ipmi_pci_attach(device_t dev) sc->ipmi_irq_res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &sc->ipmi_irq_rid, RF_SHAREABLE | RF_ACTIVE); + error = ENXIO; switch (info.iface_type) { case KCS_MODE: error = ipmi_kcs_attach(sc); - if (error) - goto bad; break; case SMIC_MODE: error = ipmi_smic_attach(sc); - if (error) - goto bad; + break; + case BT_MODE: + error = ipmi_bt_attach(sc); break; } + if (error) + goto bad; error = ipmi_attach(dev); if (error) goto bad; @@ -215,8 +217,7 @@ ipmi2_pci_attach(device_t dev) break; case PCIP_SERIALBUS_IPMI_BT: iface = BT_MODE; - device_printf(dev, "BT interface unsupported\n"); - return (ENXIO); + break; default: device_printf(dev, "Unsupported interface: %d\n", pci_get_progif(dev)); @@ -242,6 +243,7 @@ ipmi2_pci_attach(device_t dev) sc->ipmi_irq_res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &sc->ipmi_irq_rid, RF_SHAREABLE | RF_ACTIVE); + error = ENXIO; switch (iface) { case KCS_MODE: device_printf(dev, "using KSC interface\n"); @@ -252,7 +254,6 @@ ipmi2_pci_attach(device_t dev) */ if (!ipmi_kcs_probe_align(sc)) { device_printf(dev, "Unable to determine alignment\n"); - error = ENXIO; goto bad; } @@ -262,12 +263,15 @@ ipmi2_pci_attach(device_t dev) break; case SMIC_MODE: device_printf(dev, "using SMIC interface\n"); - error = ipmi_smic_attach(sc); - if (error) - goto bad; + break; + case BT_MODE: + device_printf(dev, "using BT interface\n"); + error = ipmi_bt_attach(sc); break; } + if (error) + goto bad; error = ipmi_attach(dev); if (error) goto bad; diff --git a/sys/dev/ipmi/ipmi_smbios.c b/sys/dev/ipmi/ipmi_smbios.c index e26b6f2956ad..7917464d7d32 100644 --- a/sys/dev/ipmi/ipmi_smbios.c +++ b/sys/dev/ipmi/ipmi_smbios.c @@ -104,6 +104,7 @@ smbios_ipmi_info(struct smbios_structure_header *h, void *arg) switch (s->interface_type) { case KCS_MODE: case SMIC_MODE: + case BT_MODE: info->address = IPMI_BAR_ADDR(s->base_address) | IPMI_BAM_ADDR_LSB(s->base_address_modifier); info->io_mode = IPMI_BAR_MODE(s->base_address); diff --git a/sys/dev/ipmi/ipmivars.h b/sys/dev/ipmi/ipmivars.h index 8c6a716adb9c..73b1073e5e16 100644 --- a/sys/dev/ipmi/ipmivars.h +++ b/sys/dev/ipmi/ipmivars.h @@ -59,6 +59,10 @@ struct ipmi_request { uint8_t ir_ipmb_command; }; +#define IPMI_IF_KCS_NRES 2 +#define IPMI_IF_SMIC_NRES 3 +#define IPMI_IF_BT_NRES 3 + #define MAX_RES 3 #define KCS_DATA 0 #define KCS_CTL_STS 1 @@ -80,6 +84,10 @@ struct ipmi_device { u_char ipmi_lun; }; +struct ipmi_bt { + uint8_t seq; +}; + struct ipmi_kcs { }; @@ -94,6 +102,7 @@ struct ipmi_ssif { struct ipmi_softc { device_t ipmi_dev; union { + struct ipmi_bt bt; struct ipmi_kcs kcs; struct ipmi_smic smic; struct ipmi_ssif ssif; @@ -130,11 +139,12 @@ struct ipmi_softc { #define ipmi_ssif_smbus_address _iface.ssif.smbus_address #define ipmi_ssif_smbus _iface.ssif.smbus +#define ipmi_bt_seq _iface.bt.seq -#define KCS_MODE 0x01 -#define SMIC_MODE 0x02 -#define BT_MODE 0x03 -#define SSIF_MODE 0x04 +#define KCS_MODE 0x01 +#define SMIC_MODE 0x02 +#define BT_MODE 0x03 +#define SSIF_MODE 0x04 /* KCS status flags */ #define KCS_STATUS_OBF 0x01 /* Data Out ready from BMC */ @@ -250,6 +260,7 @@ const char *ipmi_pci_match(uint16_t, uint16_t); int ipmi_kcs_attach(struct ipmi_softc *); int ipmi_kcs_probe_align(struct ipmi_softc *); int ipmi_smic_attach(struct ipmi_softc *); +int ipmi_bt_attach(struct ipmi_softc *); int ipmi_ssif_attach(struct ipmi_softc *, device_t, int); extern devclass_t ipmi_devclass; diff --git a/sys/modules/ipmi/Makefile b/sys/modules/ipmi/Makefile index 733ac6f30222..3d0414fc3807 100644 --- a/sys/modules/ipmi/Makefile +++ b/sys/modules/ipmi/Makefile @@ -10,7 +10,7 @@ SRCS+= bus_if.h device_if.h .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" || \ ${MACHINE_CPUARCH} == "aarch64" -SRCS+= ipmi_kcs.c ipmi_smic.c +SRCS+= ipmi_kcs.c ipmi_smic.c ipmi_bt.c SRCS+= ipmi_acpi.c SRCS+= opt_acpi.h SRCS+= acpi_if.h From nobody Sun Jun 25 19:25:06 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1C71dXYz4hJpd; Sun, 25 Jun 2023 19:25: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 4Qq1C64Qwnz4PS4; Sun, 25 Jun 2023 19:25:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TuaXRjf4v+0F7ZSV1Z7CrI00ZQYdDlsWKpiU2rBXuQY=; b=nsjs3CCwaVPVI5a115EXGa8/mFl3G+vNT9znR2ye3VXQsw9MEWN0+RgdXft+FD6lD+4MCR nd0L35q0q80zq9sWLGZhnuv3W8co8cqweJnF+isrN6/qAcu8KxFD+oeaVYUwBFbeuLPRgq zK2bivaSu8y7TFZ3sLEP2DTH0+JmYZ8YqSSquRu4INmobJaM46/LGnU1b1KJ/jpeBauyyN v+EjzHc7mJ8sSabeNSUcgva9HWlSyCfAGKXU2GyTOUEuUe3r260VmdfVvUt85LdyhGETDC AeY/+LaOZ4MZwahJo3UNeQij0aQxLEi7RE3Qio0Dc+zN19V5t2hbcTWSxkqd+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TuaXRjf4v+0F7ZSV1Z7CrI00ZQYdDlsWKpiU2rBXuQY=; b=U9zhDrZ0An5/qE9BOA1+CsDW4BKRC0L4p1RltSYDlsaRZ0FlixUhI5b9Y56kHvsO90aEz1 r9eVtJjuhhLmQKU4FX678hvk9DTXzYwJGS2zFj3lch9dWly/fnGi1FFXcT4peYfw2AkFxM 6905Dh3cF1sLRlLug+jkTH6MXRWBAfa9nkrkFEs8PAnaelWCxNluLxSISzqKAzF3BP7u59 Yi+AMMLFKDfa7k+K31DWsjvSJcf9/3UQFJZNxXT/n2gjcNrdDa/Ail8Xq7SZztWJFeBMrP 7lANwZo5tySGw/kpaqiPdNJWabqTUrBT6EFxN0rIlUHn4U64vTuNs9Tw0MJMhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721106; a=rsa-sha256; cv=none; b=IeIQHWn3DnD3sBgT/j2GWC40I4oToL+vBCQVj0slZPD4g9uZw5V0dHNvoQOtgWaix2rIqF 1pyaOizoFMX3pXdky1ha8jXIcc+/Ya+i5XZ2MnBu96ZKoIdsSqpBWJcOOQsSNfuWWPXEP7 3G1loJYAI2p6oR8YLg5UIClDVNPjslgnjEK7HlO1UgeQQ7Yfvk37rQWmJa3HcyXco5bwPX kgjiA200NM2kOwapcBNkgRvfXthmNdj5eG0CpjWDxvn2MlAV0hfqWwcA351UT0EEYNcGvi oEqFIeSPm7WgfELiX5qwhrbXK9AqS3cDfNGSFQ/4hr4I7JXrKekONY0rA4Wy9Q== 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 4Qq1C63VCbzg01; Sun, 25 Jun 2023 19:25: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 35PJP6CR024424; Sun, 25 Jun 2023 19:25:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJP61e024419; Sun, 25 Jun 2023 19:25:06 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:25:06 GMT Message-Id: <202306251925.35PJP61e024419@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: a820d8fa71e8 - stable/13 - sctp: fix man page for socket option controlling delayed acks List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: a820d8fa71e8f17a0bfc399b6716f42f077dfcce Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=a820d8fa71e8f17a0bfc399b6716f42f077dfcce commit a820d8fa71e8f17a0bfc399b6716f42f077dfcce Author: Michael Tuexen AuthorDate: 2023-06-21 07:03:30 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:24:46 +0000 sctp: fix man page for socket option controlling delayed acks The SCTP_DELAYED_ACK_TIME socket option was replaced by the SCTP_DELAYED_SACK in the socket API specification in draft-ietf-tsvwg-sctpsocket-14. The code was updated in r170056, but the man page was not. PR: 272124 (cherry picked from commit 133b132bc1b612abe591c8f54680c3da8491e194) --- share/man/man4/sctp.4 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/share/man/man4/sctp.4 b/share/man/man4/sctp.4 index 2c47c5b5dcd3..daac5638ee46 100644 --- a/share/man/man4/sctp.4 +++ b/share/man/man4/sctp.4 @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 9, 2020 +.Dd June 21, 2023 .Dt SCTP 4 .Os .Sh NAME @@ -299,12 +299,13 @@ This option lets the caller set it to a smaller value. Note that while the user can change this value, if the P-MTU is smaller than the value set by the user, then the P-MTU value will override any user setting. -.It Dv SCTP_DELAYED_ACK_TIME +.It Dv SCTP_DELAYED_SACK This option lets the user both set and get the -delayed ack time (in milliseconds) that +delayed ack time (in milliseconds) and the ack frequency that .Tn SCTP is using. -The default is 200 milliseconds. +The default delayed ack time is 200 milliseconds and the default +ack frequency is 2. .It Dv SCTP_PARTIAL_DELIVERY_POINT .Tn SCTP at times may need to start delivery of a From nobody Sun Jun 25 19:26:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1DM4NHmz4hK24; Sun, 25 Jun 2023 19:26: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 4Qq1DM1Hrwz4QNN; Sun, 25 Jun 2023 19:26:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721171; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O87euG63Rn7IIxiZjl3+g9DAnpc97V09JvmkTBSoQU0=; b=rHXRsN64lLaV2amQIpS4qcS2JMgFzsucooD4MwCDDcPuUWFueJwh0VCMkjYzfYWw42DZkX 8/Rfsu3w9BOk8o0fH1vB9HgEYtvFqNnKkbPYdt3EKjuXFp3NBO38fEFmctfc6PhMAiFQxq ne+lFzirwmZVCPbP8CKISKNuIDZZr7VNeLVjyoydJDx+JGqOW6YkLdFnuT+lACgU9ArCbR Ov57ORC1898aPPLIbvgPEVCu6DmSxbvHRoOzHfUp+ZbCc2Oj1vfbL5lho5TTWYVgzekXxb MS18xXVQFhnLNgIogkT/GOkf+14m67IPnmJZZ68t35Kbd7U/X2qNA9gzZUpsGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721171; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O87euG63Rn7IIxiZjl3+g9DAnpc97V09JvmkTBSoQU0=; b=FTJDzZ35fYO3/q5uQaT61vaGn+744bsL49K6KY2QJ5HGYFIZVg90daN3SGdl/mRXWjU9y2 u/xy7L+3BcWXp6JdthWbo/xEJpoGtsq5DaZagm/TPenGIF56qC+apdP5S6GRhxuBuLo3t7 WVugKTYvEvpponTHtMsT6eyDAJLRftaTAqHHwScIqtaCn7GywwTvmOkfyXt2mIeJxznDYC HuuEWIBtLml/txClLz4NUUSz/xkTFaxo6aHpr6QK5aApAW7wb7Z6sx1Qx7uROQElpd+iHf zDfha+Hqzj6RoIA4px0us6s3RnacRtyleUaUBxLjTWuia2FsltJHb5q6ZtJcrA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721171; a=rsa-sha256; cv=none; b=HPCS5cZJP3FPof0p2ZBveuTbPlwTH2uBxamR7MEHl8jsx06AknuPQ16qPX5b5wm3+Jvyrq GNBQ5YA8F4i1c51YKX9MTU+RTjTIZDjTt0LOjBD1shBbhy8Iei5VknmIpLwdtal95MKDte OQcJ7SPlZl3tGXLr1Ik6P0LFPcaqkMV37LSsg7JKBnPJ5YkuOV/hv5r+vCuvJgDHS3Zdbn VoOPHPa8X/hCAxgh3VhrzgWvIXyiBHjIODL1frfwRR8tqLNC9DxB5m4trbxWP99wt3ozl5 Y/939xI/+VN3/ZGQCfvQx+oNjLYY7JmSCKq10rFnyvKvESGJEOPng0M0aGmpKg== 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 4Qq1DL6BFbzfSR; Sun, 25 Jun 2023 19:26: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 35PJQANc024796; Sun, 25 Jun 2023 19:26:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJQAoi024795; Sun, 25 Jun 2023 19:26:10 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:26:10 GMT Message-Id: <202306251926.35PJQAoi024795@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 081ecd9cf028 - stable/13 - tcp: fix TCP MD5 digest computation for TCP over UDP List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 081ecd9cf0285a2f094be42792c7bea45bbc72ed Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=081ecd9cf0285a2f094be42792c7bea45bbc72ed commit 081ecd9cf0285a2f094be42792c7bea45bbc72ed Author: Michael Tuexen AuthorDate: 2023-06-21 20:48:12 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:25:37 +0000 tcp: fix TCP MD5 digest computation for TCP over UDP Skip the UDP header for the computation. This is similar to skipping IPv6 extension headers. Reviewed by: cc, rscheff Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D40596 (cherry picked from commit 0fb0711dba76a32a2202d2f41d64aa1247b5e51d) --- sys/netipsec/xform_tcp.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/sys/netipsec/xform_tcp.c b/sys/netipsec/xform_tcp.c index ce2552f0a205..e9513d5476d0 100644 --- a/sys/netipsec/xform_tcp.c +++ b/sys/netipsec/xform_tcp.c @@ -55,6 +55,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include @@ -136,15 +137,20 @@ ip_pseudo_compute(struct mbuf *m, MD5_CTX *ctx) { struct ippseudo ipp; struct ip *ip; + int hdr_len; ip = mtod(m, struct ip *); ipp.ippseudo_src.s_addr = ip->ip_src.s_addr; ipp.ippseudo_dst.s_addr = ip->ip_dst.s_addr; ipp.ippseudo_p = IPPROTO_TCP; ipp.ippseudo_pad = 0; - ipp.ippseudo_len = htons(m->m_pkthdr.len - (ip->ip_hl << 2)); + hdr_len = ip->ip_hl << 2; + if (ip->ip_p == IPPROTO_UDP) + /* TCP over UDP */ + hdr_len += sizeof(struct udphdr); + ipp.ippseudo_len = htons(m->m_pkthdr.len - hdr_len); MD5Update(ctx, (char *)&ipp, sizeof(ipp)); - return (ip->ip_hl << 2); + return (hdr_len); } #endif @@ -158,14 +164,20 @@ ip6_pseudo_compute(struct mbuf *m, MD5_CTX *ctx) uint32_t nxt; } ip6p __aligned(4); struct ip6_hdr *ip6; + int hdr_len; ip6 = mtod(m, struct ip6_hdr *); ip6p.src = ip6->ip6_src; ip6p.dst = ip6->ip6_dst; - ip6p.len = htonl(m->m_pkthdr.len - sizeof(*ip6)); /* XXX: ext headers */ + hdr_len = sizeof(struct ip6_hdr); + if (ip6->ip6_nxt == IPPROTO_UDP) + /* TCP over UDP */ + hdr_len += sizeof(struct udphdr); + /* XXX: ext headers */ + ip6p.len = htonl(m->m_pkthdr.len - hdr_len); ip6p.nxt = htonl(IPPROTO_TCP); MD5Update(ctx, (char *)&ip6p, sizeof(ip6p)); - return (sizeof(*ip6)); + return (hdr_len); } #endif From nobody Sun Jun 25 19:26:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1FD2tfvz4hL9r; Sun, 25 Jun 2023 19:26: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 4Qq1FD1LSlz3C9h; Sun, 25 Jun 2023 19:26:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721216; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NGD8Ye4taEk6Ijvv3zFs4a//O1uCk13/Jo4ZyET+B+U=; b=C/vk+nwheixdXdUj+IVYRK/BNpCd8jcxitsq6E5ZLsGEpzqpUDtvs39tjYR0JvaNweFsCP /SxAk80r+ileoy9McZelmnoYT8Np63A7so7VlZJbIRBMNRNLkIZ7dbbv8grSeaQ7aG0Jzh GUjW+9CrlW3d0hyzjqt+L6HgsOctsQEKRM5mGJDibHucIudcDVciYtXxiXaa7T+aIb28c2 Fq7D6K8BlihM6V4EFZekmgcnj7k74cASSiKCgS77x55KeAzNhssSY5Aa65iJZ0D8Xfo3Rf +qYPDrFNIkSa8Mm8Zfy24Sa3SszsNBBMdSXWD21rXJqkqpNvDsE+KE7N1frxYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721216; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NGD8Ye4taEk6Ijvv3zFs4a//O1uCk13/Jo4ZyET+B+U=; b=QVN9xMw5T607m8W2hBDfIMQhQqdLgrT4em6Omnx2ldkuV4nNsKnIcZsF+VleCrF/sekto1 XyTKUa8GSEpTiZF3HhEI255jt0alADuBqCvYp5lwycJfBXTnzci3MioY48B7glt0piHfZ9 Js/KOgfYXJ3b4FGYICjThnM+9DV3J1czOTlVWiz9MgvqC6g7p2AGOZBizPTT17HHJxhQeo 0xzwyC9li6qXBM2O2BuNyU8FmdAC+A/cFvhYTEd5JIYDHOeKNwTovc4Ucflg57rcAW49rh S4Nih6MJCClOC2qoviLYCL/gscDhPMlqGpwh9WILw9KkVnjBAd47JzyibcjLQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721216; a=rsa-sha256; cv=none; b=KLer3+1DNAogDXZTCGMnz08k5P6tr3EgnUmJ2Gx9LVxf5aQ8TSRTJH4GnP1Ofl/v4FxRm0 d1S10mPICQA3Zkk+4nM9vb/YnGqJ7cYl6om6OvyojaSRIPQRRVp/tX9+ugF1AOTQ9Mfg30 zR6iSTjMcxYUpxnUCjZ95vTJFCJNlpfHoDA4LXpc0HNXdrKDfQA0rY52WdtMl8W37kPQWP 6irUbSur8eLq7vrRAvypWxx+8mRw5bfcgMPBsh3cUE3SdlNHClUd7X3yoawVWSjNsw2JTF +r52W/BQOWLyXl+oPoH0Eo297N0atD6BLr1lE0HgKy9kkuymn4rON2RoGrlwjw== 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 4Qq1FC6MqNzg7n; Sun, 25 Jun 2023 19:26: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 35PJQtxD024983; Sun, 25 Jun 2023 19:26:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJQteT024982; Sun, 25 Jun 2023 19:26:55 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:26:55 GMT Message-Id: <202306251926.35PJQteT024982@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: edff1d344c6b - stable/13 - tcp: fix TCP MD5 computation for the BBR and RACK stack List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: edff1d344c6bf8f3de2ba1e36b2807fd6d1e7ea8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=edff1d344c6bf8f3de2ba1e36b2807fd6d1e7ea8 commit edff1d344c6bf8f3de2ba1e36b2807fd6d1e7ea8 Author: Michael Tuexen AuthorDate: 2023-06-21 20:54:33 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:26:32 +0000 tcp: fix TCP MD5 computation for the BBR and RACK stack PR: 253096 Reviewed by: cc, rscheff Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D40597 (cherry picked from commit 02b885b09d1e90574162a1442b9ede06cef2b13a) --- sys/netinet/tcp_stacks/bbr.c | 10 +++---- sys/netinet/tcp_stacks/rack.c | 66 ++++++++++++++++++++++++++++++++++++------- 2 files changed, 61 insertions(+), 15 deletions(-) diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 1b4abfb6f5c4..e0cf524c49ea 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -13501,6 +13501,11 @@ send: * the pointer in case of a stack switch. */ tp->snd_up = tp->snd_una; + /* + * Put TCP length in extended header, and then checksum extended + * header and data. + */ + m->m_pkthdr.len = hdrlen + len; /* in6_cksum() need this */ #if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) if (to.to_flags & TOF_SIGNATURE) { @@ -13520,11 +13525,6 @@ send: } #endif - /* - * Put TCP length in extended header, and then checksum extended - * header and data. - */ - m->m_pkthdr.len = hdrlen + len; /* in6_cksum() need this */ #ifdef INET6 if (isipv6) { /* diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index ead81528ace5..09a1b3ee6464 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -15265,6 +15265,11 @@ rack_fast_rsm_output(struct tcpcb *tp, struct tcp_rack *rack, struct rack_sendma to.to_tsecr = tp->ts_recent; to.to_flags = TOF_TS; } +#if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) + /* TCP-MD5 (RFC2385). */ + if (tp->t_flags & TF_SIGNATURE) + to.to_flags |= TOF_SIGNATURE; +#endif optlen = tcp_addoptions(&to, opt); hdrlen += optlen; udp = rack->r_ctl.fsb.udp; @@ -15397,6 +15402,24 @@ rack_fast_rsm_output(struct tcpcb *tp, struct tcp_rack *rack, struct rack_sendma } m->m_pkthdr.rcvif = (struct ifnet *)0; m->m_pkthdr.len = hdrlen + len; /* in6_cksum() need this */ +#if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) + if (to.to_flags & TOF_SIGNATURE) { + /* + * Calculate MD5 signature and put it into the place + * determined before. + * NOTE: since TCP options buffer doesn't point into + * mbuf's data, calculate offset and use it. + */ + if (!TCPMD5_ENABLED() || TCPMD5_OUTPUT(m, th, + (u_char *)(th + 1) + (to.to_signature - opt)) != 0) { + /* + * Do not send segment if the calculation of MD5 + * digest has failed. + */ + goto failed; + } + } +#endif #ifdef INET6 if (rack->r_is_v6) { if (tp->t_port) { @@ -15734,6 +15757,11 @@ rack_fast_output(struct tcpcb *tp, struct tcp_rack *rack, uint64_t ts_val, to.to_tsecr = tp->ts_recent; to.to_flags = TOF_TS; } +#if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) + /* TCP-MD5 (RFC2385). */ + if (tp->t_flags & TF_SIGNATURE) + to.to_flags |= TOF_SIGNATURE; +#endif optlen = tcp_addoptions(&to, opt); hdrlen += optlen; udp = rack->r_ctl.fsb.udp; @@ -15880,6 +15908,24 @@ again: flags |= TH_ECE; } m->m_pkthdr.len = hdrlen + len; /* in6_cksum() need this */ +#if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) + if (to.to_flags & TOF_SIGNATURE) { + /* + * Calculate MD5 signature and put it into the place + * determined before. + * NOTE: since TCP options buffer doesn't point into + * mbuf's data, calculate offset and use it. + */ + if (!TCPMD5_ENABLED() || TCPMD5_OUTPUT(m, th, + (u_char *)(th + 1) + (to.to_signature - opt)) != 0) { + /* + * Do not send segment if the calculation of MD5 + * digest has failed. + */ + goto failed; + } + } +#endif #ifdef INET6 if (rack->r_is_v6) { if (tp->t_port) { @@ -17521,7 +17567,7 @@ send: /* TCP-MD5 (RFC2385). */ if (tp->t_flags & TF_SIGNATURE) to.to_flags |= TOF_SIGNATURE; -#endif /* TCP_SIGNATURE */ +#endif /* Processing the options. */ hdrlen += optlen = tcp_addoptions(&to, opt); @@ -18047,6 +18093,15 @@ send: if (udp) udp = (struct udphdr *)(cpto + ((uint8_t *)rack->r_ctl.fsb.udp - rack->r_ctl.fsb.tcp_ip_hdr)); } + if (optlen) { + bcopy(opt, th + 1, optlen); + th->th_off = (sizeof(struct tcphdr) + optlen) >> 2; + } + /* + * Put TCP length in extended header, and then checksum extended + * header and data. + */ + m->m_pkthdr.len = hdrlen + len; /* in6_cksum() need this */ #if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) if (to.to_flags & TOF_SIGNATURE) { /* @@ -18065,15 +18120,6 @@ send: } } #endif - if (optlen) { - bcopy(opt, th + 1, optlen); - th->th_off = (sizeof(struct tcphdr) + optlen) >> 2; - } - /* - * Put TCP length in extended header, and then checksum extended - * header and data. - */ - m->m_pkthdr.len = hdrlen + len; /* in6_cksum() need this */ #ifdef INET6 if (isipv6) { /* From nobody Sun Jun 25 19:34:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1PY335lz4hSwR; Sun, 25 Jun 2023 19:34: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 4Qq1PY2c46z3GGm; Sun, 25 Jun 2023 19:34:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2gmMuzWmBc+vXgbjLtrhV+oOpoT5Nom6pUtjPG9SGbk=; b=S50H1Aihr5xizUI+qIPQCQWP5xXLGoe7RF3GotwL6s3kf0Ns7ojq4+4arPFugEJscNFgxI lgQkjNRMNkMfWeWI8zLiq+C9JN/d2AmBzLfBw1oHnYHWL+MP0Ni71IJHyqyq8L2uCQ80mi o0aA5p7cMbQMGhacanAlPq8TNVvpSCUTeQxXCUoTy4+hk/4XmoVubQhNkZDOWpWdzajY+V aPX7ftZYuFErbNDZBnL8W/SN4eeoueQuFMYnB8gEpkFdXKWDi8vtwnGu0G9JnxEfesX/nl PhtHYgpAPoosJRPrSVztlqtavaQ09SfxgxqZVscmlM/rRtjqGtZPH+xWntX/EQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2gmMuzWmBc+vXgbjLtrhV+oOpoT5Nom6pUtjPG9SGbk=; b=tyUNI+ORVrLkUUD7h3WOKgArpDewYkTWAqSn1miDwFQsB00XxYt58kfTSH3RDmowpkxmf2 vK7jSOFnSbCA63VyuM7F8frL6NNDnncPNXwiQQT53AAT3Li6NScsAprgcmukeIEbeTozx0 lRKIvlm81siMAYtpUJLsJqDkvmj7vLrK3oghZ2KjUEGVXWKozzNqDeHQKELrzleRDUAtoE T2+0u8zDajRPBkp/41V+yUZS8vWonAMJ928wIcILwoe6pyzrJXLeK07FSnm//qOcj8m4+4 WD25DLRFDNpR+5h45veyfNX4CLmyoDApLCAQqQmCPN66MNEewWzyL6qacjk5sQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721649; a=rsa-sha256; cv=none; b=SJm6imWWJF/2N3SXj+oLN0vaqoyddc0L2k9HNFspZMiRTvnyY13vXMGTV2DbuF2xb9aykR mJHZWQZUU2O0FkF81lgyl39W9PdIoCSfkK0K6HvcvbJKPZkP5RD/F1O2Hspe6epYRYuYNi PYLMVyD44LzDahKKYC6WaxPjRI1GdJY3qPqXZcG+UiIJM2+E5tchZmdoKYQNoykCr0Ika3 5OWcy2s5gFuI3nOqYNZg3h8C9H16JPcuT0n3TbY0v3FVRmQJ6hmM3//osNaAC+GoMRVH7M /rChe1TmKDWR1AaNdKHLPFqrXdsFZoE8qJMZjamMxpNJM5/fmz9cBVBqdXysDg== 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 4Qq1PY1KD0zfT0; Sun, 25 Jun 2023 19:34: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 35PJY8D6041289; Sun, 25 Jun 2023 19:34:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJY86S041288; Sun, 25 Jun 2023 19:34:08 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:34:08 GMT Message-Id: <202306251934.35PJY86S041288@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 180136462aa9 - stable/13 - sctp: don't do RTT measurements with cookies List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 180136462aa9c941dcfffcf3abee8f452f1565c8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=180136462aa9c941dcfffcf3abee8f452f1565c8 commit 180136462aa9c941dcfffcf3abee8f452f1565c8 Author: Michael Tuexen AuthorDate: 2023-03-16 09:45:13 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:33:35 +0000 sctp: don't do RTT measurements with cookies When receiving a cookie, the receiver does not know whether the peer retransmitted the COOKIE-ECHO chunk or not. Therefore, don't do an RTT measurement. It might be much too long. To overcome this limitation, one could do at least two things: 1. Bundle the INIT-ACK chunk with a HEARTBEAT chunk for doing the RTT measurement. But this is not allowed. 2. Add a flag to the COOKIE-ECHO chunk, which indicates that it is the initial transmission, and not a retransmission. But this requires an RFC. (cherry picked from commit c91ae48a25edd426efc49ade14fb675e07a0f5ed) --- sys/netinet/sctp_input.c | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index 836f09f4887f..a0e0d683b5fe 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -1351,7 +1351,6 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, struct sctp_queued_to_read *sq, *nsq; struct sctp_nets *net; struct mbuf *op_err; - struct timeval old; int init_offset, initack_offset, i; int retval; int spec_flag = 0; @@ -1499,16 +1498,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, } /* notify upper layer */ *notification = SCTP_NOTIFY_ASSOC_UP; - /* - * since we did not send a HB make sure we don't - * double things - */ - old.tv_sec = cookie->time_entered.tv_sec; - old.tv_usec = cookie->time_entered.tv_usec; net->hb_responded = 1; - sctp_calculate_rto(stcb, asoc, net, &old, - SCTP_RTT_FROM_NON_DATA); - if (stcb->asoc.sctp_autoclose_ticks && (sctp_is_feature_on(inp, SCTP_PCB_FLAGS_AUTOCLOSE))) { sctp_timer_start(SCTP_TIMER_TYPE_AUTOCLOSE, @@ -2202,17 +2192,11 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset, (void)SCTP_GETTIME_TIMEVAL(&stcb->asoc.time_entered); *netp = sctp_findnet(stcb, init_src); if (*netp != NULL) { - struct timeval old; - /* * Since we did not send a HB, make sure we don't double * things. */ (*netp)->hb_responded = 1; - /* Calculate the RTT. */ - old.tv_sec = cookie->time_entered.tv_sec; - old.tv_usec = cookie->time_entered.tv_usec; - sctp_calculate_rto(stcb, asoc, *netp, &old, SCTP_RTT_FROM_NON_DATA); } /* respond with a COOKIE-ACK */ sctp_send_cookie_ack(stcb); From nobody Sun Jun 25 19:34:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1QS4qljz4hTKZ; Sun, 25 Jun 2023 19:34: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 4Qq1QS4Ht7z3Gnl; Sun, 25 Jun 2023 19:34:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kr48IH5nQ7/ur4Mp/CEj2c1jpOPtDE4mnLFhQPKObhM=; b=swE9GkGK9NVgZgUDjiG+ZfE/gvh7SO15VnkvgBbF6xmDBhvACDimlseEpjOG+4l5r3mwK2 p+A24XIQ0FE+iSDWM/XCb51Rlg5cgJKZjW32yjpOFmjbC83FbsqYlvfAhGNFcAyQ6TCkvE 8Jili0Ry4vklL/s/O0hFhZ5I+5WdlAAAVanT5fIlAY6rjbpFnQrTHUT1P8vwvXCUHMjhmx CJA6MitSRcZttvifX8tGhf5Bz1M0aQNE3UwVOlzM6wD4cuOsG2mESwYgVKbfEHnMgIMFNn 5zWLWsFllXDIwlRk8yZSRxlNYeD8c5dkyTDdoPmN+Dtb5h8HGKmmBMj6Bw7HSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kr48IH5nQ7/ur4Mp/CEj2c1jpOPtDE4mnLFhQPKObhM=; b=alemGQMJFPVBRyZEeQH9g/TR2d9wKcxHfUC/ktTSC9Y8fxMou9fiqIVMoa4Yjnul+VnlNL h5KqhULD0VJ59iHqOqLDEeaBNFgEJZp1PFdzw6aLkatAnndKIEpv48Tttn0MSSVO9s3koW v8AcnXszvzbUn3d+vGuqGSwKO+rGfJ+7GG+eAxmpSMqx/R44zBZVBnFJ1wjR9WtLSOBGDE CU+SGzVocmE9e3ToAtuWAT0gV39qUYdG4j/FUILw5jHY08IKoFtNspFfsm9ubsF0hLfi5y Ia9Z5EmBB8A7mDlOwaAVSNUUnKzEwTAtyrlwgTRpTqz+nVKIDEf/tRWfOW2CKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721696; a=rsa-sha256; cv=none; b=DIY/8LY4e5/1SZHQpEBBnEQ4rY9pmjH1sOKmPcDN0QT4HMu1xjbrIjBCPM8AkXMuJCAscm NOxNJsAfQWGrp0D9kSJTcSuvOgilaYviAchn/0PmtHtaGUKTHAAno8RYzTRSUUcX+311vn 31i2jTyi2NZSp4aOYEp9SbPS5WESuRL7XxZMJjv77V9RHjLIXkXRQIl0hL4c/1vO6qLy9+ lSZrCzAcdg14yEmk3unYA0OZ/uR44HdUrcFdi2hKdUv0h10lTWVk1pVBYPU2mJ8EEbxpWJ mhQfQ24q/aSNvQUlfMke4CdRT++xxnNU6UOCmnkGQF6YEpg4jDm7EGSyert9Yg== 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 4Qq1QS3K2lzfv0; Sun, 25 Jun 2023 19:34: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 35PJYuFr041502; Sun, 25 Jun 2023 19:34:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJYujm041501; Sun, 25 Jun 2023 19:34:56 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:34:56 GMT Message-Id: <202306251934.35PJYujm041501@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 462dbcf3ce60 - stable/13 - sctp: enforce Kahn's rule during the handshake List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 462dbcf3ce60ecc3dedca61999e52372b8552810 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=462dbcf3ce60ecc3dedca61999e52372b8552810 commit 462dbcf3ce60ecc3dedca61999e52372b8552810 Author: Michael Tuexen AuthorDate: 2023-03-16 16:40:40 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:34:34 +0000 sctp: enforce Kahn's rule during the handshake Don't take RTT measurements on packets containing INIT or COOKIE-ECHO chunks, when they were retransmitted. (cherry picked from commit 8ed1e2c88012cfca9fc4131a2637452cc9106b81) --- sys/netinet/sctp_input.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index a0e0d683b5fe..9eeb8f3fbd23 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -508,8 +508,6 @@ sctp_process_init_ack(struct mbuf *m, int iphlen, int offset, SCTP_FROM_SCTP_INPUT, __LINE__); } - stcb->asoc.overall_error_count = 0; - net->error_count = 0; /* * Cancel the INIT timer, We do this first before queueing the @@ -521,8 +519,12 @@ sctp_process_init_ack(struct mbuf *m, int iphlen, int offset, asoc->primary_destination, SCTP_FROM_SCTP_INPUT + SCTP_LOC_3); /* calculate the RTO */ - sctp_calculate_rto(stcb, asoc, net, &asoc->time_entered, - SCTP_RTT_FROM_NON_DATA); + if (asoc->overall_error_count == 0) { + sctp_calculate_rto(stcb, asoc, net, &asoc->time_entered, + SCTP_RTT_FROM_NON_DATA); + } + stcb->asoc.overall_error_count = 0; + net->error_count = 0; retval = sctp_send_cookie_echo(m, offset, initack_limit, stcb, net); return (retval); } @@ -2756,7 +2758,6 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED, SCTP_FROM_SCTP_INPUT, __LINE__); } - asoc->overall_error_count = 0; sctp_stop_all_cookie_timers(stcb); /* process according to association state */ if (SCTP_GET_STATE(stcb) == SCTP_STATE_COOKIE_ECHOED) { @@ -2775,6 +2776,12 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED, sctp_calculate_rto(stcb, asoc, net, &asoc->time_entered, SCTP_RTT_FROM_NON_DATA); } + /* + * Since we did not send a HB make sure we don't double + * things. + */ + asoc->overall_error_count = 0; + net->hb_responded = 1; (void)SCTP_GETTIME_TIMEVAL(&asoc->time_entered); sctp_ulp_notify(SCTP_NOTIFY_ASSOC_UP, stcb, 0, NULL, SCTP_SO_NOT_LOCKED); if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) || @@ -2784,11 +2791,6 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED, soisconnected(stcb->sctp_socket); } } - /* - * since we did not send a HB make sure we don't double - * things - */ - net->hb_responded = 1; if (stcb->asoc.state & SCTP_STATE_CLOSED_SOCKET) { /* From nobody Sun Jun 25 19:36:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1SW0cJHz4hVWD; Sun, 25 Jun 2023 19:36: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 4Qq1SW06PLz3HDq; Sun, 25 Jun 2023 19:36:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eYQXTrOGrtVtYLGAOz8CvD06rp8agzmq8kHAaVFx8ko=; b=I9J22WrtNL2tM5usEWZ/OrV4KSb7oMgmIFbfyFA+llI4aTg5YDIulKix3BOWSij8W4PKfK MOW5srsL3yppd6WkXiBYW5CtOTqHr+q3ufDTzbgrgHMjNCqm6Cnc0oOPNXcd2ps4qSxnWZ rzSqX8JdIouCN9XhF1fjGwIzPO02VWtE6xS2MfZQnH8tp8I6p+XjpiIEbUZxvb/vV6o9FU qaIVnH2atSmtgTv5hwoyIJYzQBmQ84d9rGWg9hxRRq3+W3mIlNa4zDi696W78YvlNgnQNi IG8wLOQCkaDtQRxKEQkzViJyjeZ87dC+bIZxEJRlpcjNgA6gnG8k/QTHxKuyYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eYQXTrOGrtVtYLGAOz8CvD06rp8agzmq8kHAaVFx8ko=; b=ayrnWTixVId0gNm2Xt6l3iVWaN4cylzioOy0XDO0PTgEOh4IydCJVqmWEl5Xe6hHSN5KYC qfYSwrK4+Dy+CwPAc/Iz38n7n3HPVMg9WMR8W0Z5JvwwpOLw8YSy7kmwy09LkCHZPge61S udqIDHaNe0pUO8FWwaECZ0QNsuKJoNvv+KcfEiSX6CyepUixoyENCpAUOeQvpqnHHAIL0X AXcGfpb1PQ3qNH60bdoD1PxSC9khZOog5dw3RF/bdXP5zKup66tnAURDA9W5IIDsqru102 YPmqtkioXKgnQ6+tp5ozISnTcc131lKWLKZlTm3+9SMd6wJHT6EOEeYq5xqX5g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721803; a=rsa-sha256; cv=none; b=X4uy7pZFK6zL62u0r6FHTJvPpmPdY8c8CNIRmqw9L0wAjz4uDMr5tYcAzVoROPRVNYZobS x+B+RRbKxYRRHkLcs6CQGETVG/mKz16nvNQllnjWztRPt7N8OGlqTEErxuYEGb0J+6B0ES WigLA0ufsgarWOsTePj9VlSLmNez5TunbxhFRR5qx8vs+eOlXzMwfO++Y36RCRhRQifLVG h/h5xMbXmuq4xXl8GwX/S2NZo5EuIPx7diYJaAEQV9x3UxOg+TMEfDWj/NsmS3Wn79tZQG 9XEzZ9VRwvQX0rFYY/mpqUA9BZFAqEYH+FprG+Iz2YqdgHdRuoO+GgsP6Qje6A== 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 4Qq1SV5yHdzgJG; Sun, 25 Jun 2023 19:36: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 35PJagBB041857; Sun, 25 Jun 2023 19:36:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJagpZ041856; Sun, 25 Jun 2023 19:36:42 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:36:42 GMT Message-Id: <202306251936.35PJagpZ041856@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 17b65b4df95f - stable/13 - sctp: use constants from RFC 8260 to improve compliance List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 17b65b4df95f0d375002a63615aede5d6178fd7f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=17b65b4df95f0d375002a63615aede5d6178fd7f commit 17b65b4df95f0d375002a63615aede5d6178fd7f Author: Michael Tuexen AuthorDate: 2023-04-23 15:48:05 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:36:11 +0000 sctp: use constants from RFC 8260 to improve compliance Keep the old constants for backwards compatibility. (cherry picked from commit 66d6fd532282fda0cda0ca31d93ff09044f1386a) --- sys/netinet/sctp.h | 23 ++++++++++++++++------- sys/netinet/sctp_ss_functions.c | 10 +++++----- sys/netinet/sctp_usrreq.c | 18 +++++++++--------- 3 files changed, 30 insertions(+), 21 deletions(-) diff --git a/sys/netinet/sctp.h b/sys/netinet/sctp.h index d67b33acd8ad..f942b1356dbb 100644 --- a/sys/netinet/sctp.h +++ b/sys/netinet/sctp.h @@ -191,8 +191,11 @@ struct sctp_paramhdr { /* JRS - Pluggable Congestion Control Socket option */ #define SCTP_PLUGGABLE_CC 0x00001202 /* RS - Pluggable Stream Scheduling Socket option */ -#define SCTP_PLUGGABLE_SS 0x00001203 -#define SCTP_SS_VALUE 0x00001204 +#define SCTP_STREAM_SCHEDULER 0x00001203 +#define SCTP_STREAM_SCHEDULER_VALUE 0x00001204 +/* The next two are for backwards compatibility. */ +#define SCTP_PLUGGABLE_SS SCTP_STREAM_SCHEDULER +#define SCTP_SS_VALUE SCTP_STREAM_SCHEDULER_VALUE #define SCTP_CC_OPTION 0x00001205 /* Options for CC * modules */ /* For I-DATA */ @@ -308,15 +311,21 @@ struct sctp_paramhdr { /* Default simple round-robin */ #define SCTP_SS_DEFAULT 0x00000000 /* Real round-robin */ -#define SCTP_SS_ROUND_ROBIN 0x00000001 +#define SCTP_SS_RR 0x00000001 /* Real round-robin per packet */ -#define SCTP_SS_ROUND_ROBIN_PACKET 0x00000002 +#define SCTP_SS_RR_PKT 0x00000002 /* Priority */ -#define SCTP_SS_PRIORITY 0x00000003 +#define SCTP_SS_PRIO 0x00000003 /* Fair Bandwidth */ -#define SCTP_SS_FAIR_BANDWITH 0x00000004 +#define SCTP_SS_FB 0x00000004 /* First-come, first-serve */ -#define SCTP_SS_FIRST_COME 0x00000005 +#define SCTP_SS_FCFS 0x00000005 +/* The next five are for backwards compatibility. */ +#define SCTP_SS_ROUND_ROBIN SCTP_SS_RR +#define SCTP_SS_ROUND_ROBIN_PACKET SCTP_SS_RR_PKT +#define SCTP_SS_PRIORITY SCTP_SS_PRIO +#define SCTP_SS_FAIR_BANDWITH SCTP_SS_FB +#define SCTP_SS_FIRST_COME SCTP_SS_FCFS /* fragment interleave constants * setting must be one of these or diff --git a/sys/netinet/sctp_ss_functions.c b/sys/netinet/sctp_ss_functions.c index 049c93767125..465a2bc7de5c 100644 --- a/sys/netinet/sctp_ss_functions.c +++ b/sys/netinet/sctp_ss_functions.c @@ -952,7 +952,7 @@ const struct sctp_ss_functions sctp_ss_functions[] = { .sctp_ss_set_value = sctp_ss_default_set_value, .sctp_ss_is_user_msgs_incomplete = sctp_ss_default_is_user_msgs_incomplete }, -/* SCTP_SS_ROUND_ROBIN */ +/* SCTP_SS_RR */ { .sctp_ss_init = sctp_ss_default_init, .sctp_ss_clear = sctp_ss_default_clear, @@ -967,7 +967,7 @@ const struct sctp_ss_functions sctp_ss_functions[] = { .sctp_ss_set_value = sctp_ss_default_set_value, .sctp_ss_is_user_msgs_incomplete = sctp_ss_default_is_user_msgs_incomplete }, -/* SCTP_SS_ROUND_ROBIN_PACKET */ +/* SCTP_SS_RR_PKT */ { .sctp_ss_init = sctp_ss_default_init, .sctp_ss_clear = sctp_ss_default_clear, @@ -982,7 +982,7 @@ const struct sctp_ss_functions sctp_ss_functions[] = { .sctp_ss_set_value = sctp_ss_default_set_value, .sctp_ss_is_user_msgs_incomplete = sctp_ss_default_is_user_msgs_incomplete }, -/* SCTP_SS_PRIORITY */ +/* SCTP_SS_PRIO */ { .sctp_ss_init = sctp_ss_default_init, .sctp_ss_clear = sctp_ss_prio_clear, @@ -997,7 +997,7 @@ const struct sctp_ss_functions sctp_ss_functions[] = { .sctp_ss_set_value = sctp_ss_prio_set_value, .sctp_ss_is_user_msgs_incomplete = sctp_ss_default_is_user_msgs_incomplete }, -/* SCTP_SS_FAIR_BANDWITH */ +/* SCTP_SS_FB */ { .sctp_ss_init = sctp_ss_default_init, .sctp_ss_clear = sctp_ss_fb_clear, @@ -1012,7 +1012,7 @@ const struct sctp_ss_functions sctp_ss_functions[] = { .sctp_ss_set_value = sctp_ss_default_set_value, .sctp_ss_is_user_msgs_incomplete = sctp_ss_default_is_user_msgs_incomplete }, -/* SCTP_SS_FIRST_COME */ +/* SCTP_SS_FCFS */ { .sctp_ss_init = sctp_ss_fcfs_init, .sctp_ss_clear = sctp_ss_fcfs_clear, diff --git a/sys/netinet/sctp_usrreq.c b/sys/netinet/sctp_usrreq.c index 7a0b60a9e030..9e7b441ed497 100644 --- a/sys/netinet/sctp_usrreq.c +++ b/sys/netinet/sctp_usrreq.c @@ -1750,7 +1750,7 @@ flags_out: } break; } - case SCTP_PLUGGABLE_SS: + case SCTP_STREAM_SCHEDULER: { struct sctp_assoc_value *av; @@ -1777,7 +1777,7 @@ flags_out: } break; } - case SCTP_SS_VALUE: + case SCTP_STREAM_SCHEDULER_VALUE: { struct sctp_stream_value *av; @@ -4045,17 +4045,17 @@ sctp_setopt(struct socket *so, int optname, void *optval, size_t optsize, } break; } - case SCTP_PLUGGABLE_SS: + case SCTP_STREAM_SCHEDULER: { struct sctp_assoc_value *av; SCTP_CHECK_AND_CAST(av, optval, struct sctp_assoc_value, optsize); if ((av->assoc_value != SCTP_SS_DEFAULT) && - (av->assoc_value != SCTP_SS_ROUND_ROBIN) && - (av->assoc_value != SCTP_SS_ROUND_ROBIN_PACKET) && - (av->assoc_value != SCTP_SS_PRIORITY) && - (av->assoc_value != SCTP_SS_FAIR_BANDWITH) && - (av->assoc_value != SCTP_SS_FIRST_COME)) { + (av->assoc_value != SCTP_SS_RR) && + (av->assoc_value != SCTP_SS_RR_PKT) && + (av->assoc_value != SCTP_SS_PRIO) && + (av->assoc_value != SCTP_SS_FB) && + (av->assoc_value != SCTP_SS_FCFS)) { SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP_USRREQ, EINVAL); error = EINVAL; break; @@ -4094,7 +4094,7 @@ sctp_setopt(struct socket *so, int optname, void *optval, size_t optsize, } break; } - case SCTP_SS_VALUE: + case SCTP_STREAM_SCHEDULER_VALUE: { struct sctp_stream_value *av; From nobody Sun Jun 25 19:37:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1TN0hC3z4hWhJ; Sun, 25 Jun 2023 19:37:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Qq1TN0BCKz3Hm3; Sun, 25 Jun 2023 19:37:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VEQ7r5TpkRmkfFo/pVIOZQE2ENohmljf8yGYQUJmPWc=; b=scWQsXc19hbPNnpUM4BpeXDeDTJzYO8f1/nC5160LhsgvOtp1W1VZIDHxxoWq/BStUD5VB 5gI0Cni05fsMK84vryKlUEKBXenphO1kgwFVakoyZMadsMsIHZA6jNh4hqb6YWMYh5ApWK nNU2Qbk5dJImO+bHza0voxnsg+uPz5uzCh2wORRL7cwi5bYVDHVfFxubK+sKuF+yZn6JWw HeH3ec/AiOy7MYMGQbfRyQXg6sHb0+D7rE/0zPRGgbxE7wQiYEFjFXVDvuYdPjyA5WhriF TUkSmz92kEWHfPkM0mSRqYwdMAYX5FZGAqWV7ncUvY5oumcjJre5WPjwX68Lxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VEQ7r5TpkRmkfFo/pVIOZQE2ENohmljf8yGYQUJmPWc=; b=OBP+lhfRfXyqQugUXm/I1wRGhpajnaXJkOPPYu1bvZdLVBy1N+vXBfYIYSe8NlLfyaHT61 2o15bgrskDOxZmaCwnLmJR2T6c+QmoFCOjoib5pOfr1Sxq8PjSsMDdcjMqNDb3Xx3B8jjU H+vbftGxqVeGfCexnMCb4g/ZJnB2kZL8eV3/gt5oP7Z7IggZlRf4VabBFyNu2JJ+1FQIv9 d0ccl8PGvHp8mLeVQWBKS2vWbyLOm4Gv3VV2OO3zsqDqOUgCV2o8yO/ZzIRSutQOve7aFE YrEl33uNivxZ9J54rqR1pu/6BhEEluOL8k+s8YAHj1czmuJrNu2h58xqzAErbA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721848; a=rsa-sha256; cv=none; b=UIj57Q0N+wH6vWHLoMgbRjMsrzAxkxDDm4eGvjaN7nMXbbimmmufvnOam2TQ0GjHDcupiD IUmN18xs+PkA4/fRq7fjvg4BEFyJSQU0vy59N+3/nnPMCRCPP/kaa+AVkDATjfRR1QDh+t Uvz/v7T7X9gQrsxC984lSCQ4p98l0zE98vipWymVGk+1RRcwEWagM63vK1ruLqwP58FJ1c ir/F5BeGNc+e4AI2Uznk4BVAwBA0d1J1vJk2tkD0pMfdqoeMChSZm+Ni6GE01Mz8LLwBXc q6Udq/Lts9T4W9aqzTuPhFYhd6mUyxkCbxcUoS4fWfwohmq2rckLTOVF3NUQkQ== 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 4Qq1TM6JNMzg0c; Sun, 25 Jun 2023 19:37: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 35PJbRP8042046; Sun, 25 Jun 2023 19:37:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJbRG8042045; Sun, 25 Jun 2023 19:37:27 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:37:27 GMT Message-Id: <202306251937.35PJbRG8042045@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 27de3c310c02 - stable/13 - sctp: improve handling of stale cookie error causes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 27de3c310c0211362015ab26ac66c806afcf1b39 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=27de3c310c0211362015ab26ac66c806afcf1b39 commit 27de3c310c0211362015ab26ac66c806afcf1b39 Author: Michael Tuexen AuthorDate: 2023-04-30 09:39:32 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:37:04 +0000 sctp: improve handling of stale cookie error causes * If a measure of staleness of 0 is reported, use the RTT instead. * Ensure that we always send a cookie preservative parameter by rounding up during the calculation. * If allowed, perform a round trip time measurement. * Clear the overall error counter, since the error cause also acts like an ACK. (cherry picked from commit 1f0e13449beef3a983d9ed2faf4734075e4120d1) --- sys/netinet/sctp_input.c | 41 +++++++++++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 10 deletions(-) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index 9eeb8f3fbd23..38d57194b02d 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -1133,26 +1133,47 @@ sctp_handle_error(struct sctp_chunkhdr *ch, */ if ((cause_length >= sizeof(struct sctp_error_stale_cookie)) && (SCTP_GET_STATE(stcb) == SCTP_STATE_COOKIE_ECHOED)) { + struct timeval now; struct sctp_error_stale_cookie *stale_cookie; + uint64_t stale_time; - stale_cookie = (struct sctp_error_stale_cookie *)cause; - /* stable_time is in usec, convert to msec. */ - asoc->cookie_preserve_req = ntohl(stale_cookie->stale_time) / 1000; - /* Double it to be more robust on RTX. */ - asoc->cookie_preserve_req *= 2; asoc->stale_cookie_count++; - if (asoc->stale_cookie_count > - asoc->max_init_times) { + if (asoc->stale_cookie_count > asoc->max_init_times) { sctp_abort_notification(stcb, false, true, 0, NULL, SCTP_SO_NOT_LOCKED); - /* now free the asoc */ (void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_12); return (-1); } - /* blast back to INIT state */ + stale_cookie = (struct sctp_error_stale_cookie *)cause; + stale_time = ntohl(stale_cookie->stale_time); + if (stale_time == 0) { + /* Use an RTT as an approximation. */ + (void)SCTP_GETTIME_TIMEVAL(&now); + timevalsub(&now, &asoc->time_entered); + stale_time = (uint64_t)1000000 * (uint64_t)now.tv_sec + (uint64_t)now.tv_usec; + if (stale_time == 0) { + stale_time = 1; + } + } + /* + * stale_time is in usec, convert it to + * msec. Round upwards, to ensure that it is + * non-zero. + */ + stale_time = (stale_time + 999) / 1000; + /* Double it, to be more robust on RTX. */ + stale_time = 2 * stale_time; + asoc->cookie_preserve_req = (uint32_t)stale_time; + if (asoc->overall_error_count == 0) { + sctp_calculate_rto(stcb, asoc, net, &asoc->time_entered, + SCTP_RTT_FROM_NON_DATA); + } + asoc->overall_error_count = 0; + /* Blast back to INIT state */ sctp_toss_old_cookies(stcb, &stcb->asoc); - SCTP_SET_STATE(stcb, SCTP_STATE_COOKIE_WAIT); sctp_stop_all_cookie_timers(stcb); + SCTP_SET_STATE(stcb, SCTP_STATE_COOKIE_WAIT); + (void)SCTP_GETTIME_TIMEVAL(&asoc->time_entered); sctp_send_initiate(stcb->sctp_ep, stcb, SCTP_SO_NOT_LOCKED); } break; From nobody Sun Jun 25 19:39:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1WM0MPTz4hYDq; Sun, 25 Jun 2023 19:39: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 4Qq1WL72DKz3Jgh; Sun, 25 Jun 2023 19:39:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o3jiwNSfzWocEsotg711GsjElwYpcKxPGMD6CL4hUtw=; b=X7kg8c1+ispX4bUb5F2nkQ7nU95l0CSC+BqUienFwscgCu+bW9x9py0JbKcGVC68WFjdBs dHSa8RyDNVWrjVR0T+3gk7Q1JohiS1xPITrUTZzbB1vfgMPcdFZgl7IFaoFvJcA3dONsup biJ4YryW38mEIiJtbUT4Z74Hxh19ZufhwkOD0ZSqUmvywwvb0TJkmoIPqxEo2KegHDEL4+ qwigg+iIUo9koBaTelLHlrcPcHnYesONhsfHvrRDPbBeIBAG0dOVnzY8AaANRBMJAyotwh cRvZOU/+oPhqqqbzhvhG/08+fkjHIyk/UHY9UHJtmhtwnz1KyPZ+IQOPNsXz2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o3jiwNSfzWocEsotg711GsjElwYpcKxPGMD6CL4hUtw=; b=A+FC057VQrkgo/zYoa07KMmeKAFP6KBCVloAbBzDpoe+qvGMkUrvb74gFD+AveXXPvf2Bo 9jOjZUsWFMuukut5gHNK7XyJ/piKs8tW7RnlbIwC8Yx5+o2VHhMHILKh5VSguuTNUu+H2/ OtuXjDVilxSkj06EobIew2agkCSLKHe062//IlcRyj/YEhImnSlTYmsZlxHFunBQT/mSKp AzhdD4IE0wY0JVejQXSqdij3aXSMTtbYJi0y82ZsePZhQ+F9nEcEG54I8uQ4JscPs3lZlD ocDkIxEo62y7JabVM5uSvqqozjDY5aV/8ai3FQafc2Rntg/vRmkE1QFhhnvpvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721951; a=rsa-sha256; cv=none; b=qOFbGdLlN0gvJKPDlxi6eD1wi8/mye6mwdWO6eqd/UHV6OEVtPFj+ssGpFU8HycIntQZqG 9yyyzgbz9y7z2dA0okYct91gUpOuCgdxbtLGmgaLembfK5GyEM9DKUGfCX3xuF9Z2+L8Cr z3YgH0lPZgJhcQWkoMAHjzYu1XRz+7dlsgI0DgiZIZT6tXYslt1ysvm852O1MRM5ur/e3E dYP7h860vOD2zKWRLnrEhp9zLmwkBFaPS/B6hRVkoJ2K0lTc6uXDQ24pYozECtE9TtOlCz c8nFbhctyAQUdDPqNHf1Q/PudzU82Ac7w1LghAg/Hu112CYjGysUYGllxKaBLg== 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 4Qq1WL67sszfsC; Sun, 25 Jun 2023 19:39: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 35PJdAXQ042375; Sun, 25 Jun 2023 19:39:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJdARW042374; Sun, 25 Jun 2023 19:39:10 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:39:10 GMT Message-Id: <202306251939.35PJdARW042374@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 6b218e45a9ca - stable/13 - sctp: improve shutdown(..., SHUT_WR) handling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6b218e45a9ca4759e9693ed7c3579567f522e7ba Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=6b218e45a9ca4759e9693ed7c3579567f522e7ba commit 6b218e45a9ca4759e9693ed7c3579567f522e7ba Author: Michael Tuexen AuthorDate: 2023-05-03 15:30:50 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:37:50 +0000 sctp: improve shutdown(..., SHUT_WR) handling When shutdown(..., SHUT_WR) is called in the front states, send a SHUTDOWN chunk when a COOKIE ACK chunk is received and there is no outstanding data. (cherry picked from commit d9ae4adff2715cfab4a941037ec15aa07108efa1) --- sys/netinet/sctp_input.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index 38d57194b02d..61c248b1efdb 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -2780,16 +2780,13 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED, __LINE__); } sctp_stop_all_cookie_timers(stcb); + sctp_toss_old_cookies(stcb, asoc); /* process according to association state */ if (SCTP_GET_STATE(stcb) == SCTP_STATE_COOKIE_ECHOED) { /* state change only needed when I am in right state */ SCTPDBG(SCTP_DEBUG_INPUT2, "moving to OPEN state\n"); SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); sctp_start_net_timers(stcb); - if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, NULL); - } /* update RTO */ SCTP_STAT_INCR_COUNTER32(sctps_activeestab); SCTP_STAT_INCR_GAUGE32(sctps_currestab); @@ -2813,6 +2810,21 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED, } } + if ((asoc->state & SCTP_STATE_SHUTDOWN_PENDING) && + TAILQ_EMPTY(&asoc->send_queue) && + TAILQ_EMPTY(&asoc->sent_queue) && + (asoc->stream_queue_cnt == 0)) { + SCTP_STAT_DECR_GAUGE32(sctps_currestab); + SCTP_SET_STATE(stcb, SCTP_STATE_SHUTDOWN_SENT); + sctp_stop_timers_for_shutdown(stcb); + sctp_send_shutdown(stcb, net); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, + stcb->sctp_ep, stcb, net); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, + stcb->sctp_ep, stcb, NULL); + sctp_chunk_output(stcb->sctp_ep, stcb, SCTP_OUTPUT_FROM_T3, SCTP_SO_LOCKED); + } + if (stcb->asoc.state & SCTP_STATE_CLOSED_SOCKET) { /* * We don't need to do the asconf thing, nor hb or @@ -2848,8 +2860,6 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED, } } closed_socket: - /* Toss the cookie if I can */ - sctp_toss_old_cookies(stcb, asoc); /* Restart the timer if we have pending data */ TAILQ_FOREACH(chk, &asoc->sent_queue, sctp_next) { if (chk->whoTo != NULL) { From nobody Sun Jun 25 19:39:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1WN3bZ4z4hY5q; Sun, 25 Jun 2023 19:39: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 4Qq1WN2wqYz3Jgx; Sun, 25 Jun 2023 19:39:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721952; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KhuNNV+GQpmKiZ4a+Jttqeq0pq3raC928nsMW6PtL20=; b=W67puELYmP9nCdZDtFt6PoKSTrJvMKuygHDZYaIXQen/1qQP/sc0WxP6gtIKtW/2QH0UKB R8WQ7Q0yPKHSP5PwTAu7b4tUqwYGOTNcZHi14A1YRODjynMZmsB+34s1ppo/Xq/55hNC+g R+J49sk9vWYKVc3q9Vjp9iEvj6sF5kmdRHPOHaOWI3GckU/uK/LIDeziVo0G7mOmznGRBK mjY07GKiSS0ebVakCf/7PY0fLAtVqqagIyAt6qksgwt7s1JeRwooyxW05cfAZcflB8oYgP qJUmMc1EVqqU0vEseVgRvVqKoSasrRlv9TEkambU6WEg6ZANxgu3hO0HdT2OdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687721952; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KhuNNV+GQpmKiZ4a+Jttqeq0pq3raC928nsMW6PtL20=; b=lO/l12zBO57X6kf+l2ru9OokJP+1OkTiAXlI/nwEZtWtibYrQJhBPyqUumF+nOitkZd8VZ +NwSYYlriQS/Uhpi1gfzPNRqGwx/fQTbCIDkobixgPJ0nfUsQq375yma1Nu47C02rLGgmC UrW+23V3y7O0AxKPU0XIWObr4y6G0vT0Uo4ZSsPHMUh6YluzVbvw4SmbVJZ0rHTn0FX8ZC HUo3vyPebFVkRAFuGUy0YxCuGXziu38YWSLJ/SwjCzxkkD0On3C9JM0T3ft4mQaQinMlZs tEF96Hq/btfmts3aKk3oc+s+F2rdyhPolqy/J5RL0ZeRyEjvtimypQE8x4yEVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687721952; a=rsa-sha256; cv=none; b=aow6CJEgJVqypWdYshJGtSDwId29QBQzLHhxCoaCeA1b4Z9PXfpXnYybf+/IxvZ60Q/Dc9 FIFYqOFExndXvLn+CfVSFQ0YaywAUZngs8r2AKuaPXhg7Tq4mwg+f4l6XiQbj9O678dsRp GmYqL4glYLobyaqc/8oQiume+/++Prteyy8I9eE/RkYO+ivub0AYrxdfbUfTmRhex7Aqmt XjNh0BVWkLGESeazSsjaTIUBt+Jt4VZqzQVm14fCsy1USxN/qPOx+MTlym6OrPUQvUCzrv uu7iPyFQrvctesF8M7Qb8AJVWk2sjOrUxsK4zFAZ4APC9qu7R+AbeyHYZ2oZhg== 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 4Qq1WN0K8xzg0f; Sun, 25 Jun 2023 19:39: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 35PJdBmV042395; Sun, 25 Jun 2023 19:39:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJdBCg042394; Sun, 25 Jun 2023 19:39:11 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:39:11 GMT Message-Id: <202306251939.35PJdBCg042394@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 046df9bdd678 - stable/13 - sctp: only start shutdown guard timer when sending SHUTDOWN chunk List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 046df9bdd678d56589f9bd9c0659816f287fdd52 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=046df9bdd678d56589f9bd9c0659816f287fdd52 commit 046df9bdd678d56589f9bd9c0659816f287fdd52 Author: Michael Tuexen AuthorDate: 2023-05-03 18:28:46 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:38:31 +0000 sctp: only start shutdown guard timer when sending SHUTDOWN chunk The intention is to protect a malicious peer not following the shutdown procedures. (cherry picked from commit 04ede3675e44847c3e9e4a9bd44509cdf42ed60a) --- sys/netinet/sctp_input.c | 14 -------------- sys/netinet/sctp_output.c | 4 ---- sys/netinet/sctp_pcb.c | 1 - sys/netinet/sctp_usrreq.c | 6 +++--- 4 files changed, 3 insertions(+), 22 deletions(-) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index 61c248b1efdb..e3464e1d3eb5 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -1501,10 +1501,6 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, SCTP_STAT_INCR_COUNTER32(sctps_collisionestab); SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); - if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, NULL); - } SCTP_STAT_INCR_GAUGE32(sctps_currestab); sctp_stop_all_cookie_timers(stcb); if (((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) || @@ -1718,10 +1714,6 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, SCTP_STAT_INCR_COUNTER32(sctps_collisionestab); } SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); - if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, NULL); - } sctp_stop_all_cookie_timers(stcb); sctp_toss_old_cookies(stcb, asoc); sctp_send_cookie_ack(stcb); @@ -1788,8 +1780,6 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, } if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, NULL); } else if (SCTP_GET_STATE(stcb) != SCTP_STATE_SHUTDOWN_SENT) { /* move to OPEN state, if not in SHUTDOWN_SENT */ @@ -2174,10 +2164,6 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset, /* update current state */ SCTPDBG(SCTP_DEBUG_INPUT2, "moving to OPEN state\n"); SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); - if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, NULL); - } sctp_stop_all_cookie_timers(stcb); SCTP_STAT_INCR_COUNTER32(sctps_passiveestab); SCTP_STAT_INCR_GAUGE32(sctps_currestab); diff --git a/sys/netinet/sctp_output.c b/sys/netinet/sctp_output.c index 6ea139795be0..c0ab7833d25e 100644 --- a/sys/netinet/sctp_output.c +++ b/sys/netinet/sctp_output.c @@ -6734,8 +6734,6 @@ sctp_sendall_iterator(struct sctp_inpcb *inp, struct sctp_tcb *stcb, void *ptr, atomic_subtract_int(&stcb->asoc.refcnt, 1); goto no_chunk_output; } - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - NULL); } } } @@ -13504,8 +13502,6 @@ dataless_eof: error = ECONNABORTED; goto out; } - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - NULL); sctp_feature_off(inp, SCTP_PCB_FLAGS_NODELAY); } } diff --git a/sys/netinet/sctp_pcb.c b/sys/netinet/sctp_pcb.c index e1a2b74d02f3..4a11305da5a4 100644 --- a/sys/netinet/sctp_pcb.c +++ b/sys/netinet/sctp_pcb.c @@ -3460,7 +3460,6 @@ sctp_inpcb_free(struct sctp_inpcb *inp, int immediate, int from) } else { /* mark into shutdown pending */ SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_SHUTDOWN_PENDING); - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); if ((*stcb->asoc.ss_functions.sctp_ss_is_user_msgs_incomplete) (stcb, &stcb->asoc)) { SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_PARTIAL_MSG_LEFT); } diff --git a/sys/netinet/sctp_usrreq.c b/sys/netinet/sctp_usrreq.c index 9e7b441ed497..4e1f41ca0609 100644 --- a/sys/netinet/sctp_usrreq.c +++ b/sys/netinet/sctp_usrreq.c @@ -748,7 +748,7 @@ sctp_disconnect(struct socket *so) stcb->sctp_ep, stcb, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); - sctp_chunk_output(stcb->sctp_ep, stcb, SCTP_OUTPUT_FROM_T3, SCTP_SO_LOCKED); + sctp_chunk_output(stcb->sctp_ep, stcb, SCTP_OUTPUT_FROM_CLOSING, SCTP_SO_LOCKED); } } else { /* @@ -762,7 +762,6 @@ sctp_disconnect(struct socket *so) * and move to SHUTDOWN-PENDING */ SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_SHUTDOWN_PENDING); - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); if ((*asoc->ss_functions.sctp_ss_is_user_msgs_incomplete) (stcb, asoc)) { SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_PARTIAL_MSG_LEFT); } @@ -945,6 +944,8 @@ sctp_shutdown(struct socket *so) sctp_send_shutdown(stcb, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, netp); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, + stcb->sctp_ep, stcb, NULL); } else { /* * We still got (or just got) data to send, so set @@ -969,7 +970,6 @@ sctp_shutdown(struct socket *so) return (0); } } - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); /* * XXX: Why do this in the case where we have still data * queued? From nobody Sun Jun 25 19:42:44 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qq1bT32gzz4hbxb; Sun, 25 Jun 2023 19:42: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 4Qq1bS6CgWz3MH8; Sun, 25 Jun 2023 19:42:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687722164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pTxrUmm1GrVWHJm1F4KeY5MpjJgtN+uoCuCSYld+QCo=; b=p8xKfkB/KUiOKG99qmTSDE338pNIvINuO9UVgoVayj1cGnqu309WFu76EyOz3OTXv+Q/g6 CM8/ApmBXz6Cw0E/mCtUBxShHT5W6FiQgw6q03fp9f9J6C7MNFWLqq65DXI1n5G/dOrW0i 24kZhMiMpXB0stelewPGOZY/xTTPueHhoWrIMK/Dl2r38sjWNl7YjfZm5aUz/K7BqxQLVb UZLfhVQY/ljQ7Y3ri60fHnm586g8zgmEoaWyt0VKFQiodmkk8dca378B26CwkJfOTP+77Q vtpT4xtWFwv7cRHSurS8r/3VwY3ccHP+WLvkVQ7upWOJdlE0x/Cl63YlpumItQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687722164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pTxrUmm1GrVWHJm1F4KeY5MpjJgtN+uoCuCSYld+QCo=; b=nX0FKRmBKrpIaq01AXjcciy2zF6DOHek8GkkGmD4enwCFInVaZauWX6sLtPsf0nJby2y00 dIPwL9DoWXl3mHovMeXE3UTopAsPb2cnktXKICOfLcOhej2ZZDytfpNcHFT0rNvi1s9Zuw igxQUBDJUqFA6A6o4lR4CO2XQk4kNTtLR1p3nTed/j5ZUq/2PWkuA5hRxBwwNgNQOJ8NgL msZu/vP3BLK84yvyQJQcCOviZg2iGTtxIbIHJ21p7d7nlUVo8jHaPF4yo/lteiIOfvxWAJ 4lbkLJw2+dTig1eNzQH/xqxcqtDb36kJWjv2wbUCmh82d/X9AG4aSc/ORxB9GA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687722164; a=rsa-sha256; cv=none; b=f0S0H6tp5xVBmEvoCHVMtgErllYnd8GGd5C+tHshagXbAKIJ70ik1m+LwmSLIHBlSav4Ds 9JfcDxCpe6+4iWnLATFgsa76zYH5kJbpPVkKeszjRSyMhP6GUjKGk+V4XYYKyDzv7Ul/hW OMxJ+Ka4B2Hg6vC/y/a/6NPwDGlp9CpdZTq5vYcn3EOcpUoZXnVt/mje+CwRGn4xE2MTjo d3gQ4RvCmEomQCpgKC+Rupo8zj5PLSn/oCvBLrCl91tNSWIKRcuJ7JQ0JWFE0nizlfQUij ERyl8L6kq0JDQUAOU6qmbLIFo98NaTw6G771FRpAAWmym3159MG7V1M3KlZagg== 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 4Qq1bS5HSFzg1K; Sun, 25 Jun 2023 19:42:44 +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 35PJgier057700; Sun, 25 Jun 2023 19:42:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35PJgiK1057699; Sun, 25 Jun 2023 19:42:44 GMT (envelope-from git) Date: Sun, 25 Jun 2023 19:42:44 GMT Message-Id: <202306251942.35PJgiK1057699@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 6dc94f4ba1a5 - stable/12 - libalias: improve handling of invalid SCTP packets List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/12 X-Git-Reftype: branch X-Git-Commit: 6dc94f4ba1a5b0f17c3adda317eac31d3146eccf Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=6dc94f4ba1a5b0f17c3adda317eac31d3146eccf commit 6dc94f4ba1a5b0f17c3adda317eac31d3146eccf Author: Michael Tuexen AuthorDate: 2022-11-15 20:05:02 +0000 Commit: Michael Tuexen CommitDate: 2023-06-25 19:42:28 +0000 libalias: improve handling of invalid SCTP packets In case of a paritial chunk only pretend the result is OK if the packet is not the last fragment and there is a valid association. PR: 267476 (cherry picked from commit 9a714376212ec1685fdc4cf254f2136a07ae6d2c) --- sys/netinet/libalias/alias_sctp.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/sys/netinet/libalias/alias_sctp.c b/sys/netinet/libalias/alias_sctp.c index d6cedd72ddc1..e274b4c2e6d5 100644 --- a/sys/netinet/libalias/alias_sctp.c +++ b/sys/netinet/libalias/alias_sctp.c @@ -730,8 +730,11 @@ SctpAlias(struct libalias *la, struct ip *pip, int direction) case SN_PARSE_OK: break; case SN_PARSE_ERROR_CHHL: - /* Not an error if there is a chunk length parsing error and this is a fragmented packet */ - if (ntohs(pip->ip_off) & IP_MF) { + /* + * Not an error, if there is a chunk length parsing error, + * this is a fragmented packet, and we have a valid assoc. + */ + if ((assoc != NULL) && (ntohs(pip->ip_off) & IP_MF)) { rtnval = SN_PARSE_OK; break; } @@ -1043,6 +1046,8 @@ sctp_PktParser(struct libalias *la, int direction, struct ip *pip, * Also, I am only interested in the content of INIT and ADDIP chunks */ + sm->msg = SN_SCTP_OTHER;/* Initialise to largest value*/ + sm->chunk_length = 0; /* only care about length for key chunks */ // no mbuf stuff from Paolo yet so ... sm->ip_hdr = pip; /* remove ip header length from the bytes_left */ @@ -1090,8 +1095,6 @@ sctp_PktParser(struct libalias *la, int direction, struct ip *pip, chunk_count = 1; /* Real packet parsing occurs below */ - sm->msg = SN_SCTP_OTHER;/* Initialise to largest value*/ - sm->chunk_length = 0; /* only care about length for key chunks */ while (IS_SCTP_CONTROL(chunk_hdr)) { switch (chunk_hdr->chunk_type) { case SCTP_INITIATION: From nobody Mon Jun 26 04:27:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqFFJ62mPz4j9RB; Mon, 26 Jun 2023 04: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 4QqFFJ5ZbWz3pNV; Mon, 26 Jun 2023 04: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=1687753668; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=67E5yxPQFLTbr2sKQAA01ka6+w0tgVYeOejpq8G5yiM=; b=Cj88uBV9yt+JLcjkegvU2uZHkXFgEIcJBQMYJtBMDJ72YB8sMD0uMNJXEqDYkE+i4LM/xd FOrTphv5qyYhgckSCax6FNvtbdO6Qg91AYcFTvDWNbMc2RYDxwZhjvuqXQfMwYYt/tKbd9 eHygb6ssCwYRz7Y+nGlaeWLlpqaY2dVlqLf1LXG+YJZRFBCUwhlw2gD62vLBVFQyqFx48z WwTDADykA30/KgPAFGLIgXSuuWkJI0zgG+cqwYQo5Y8YIXWMIp4alnUbJDyN11veUDX3Qx lFSGk1zaHykMSwkt2JVQb64JZOzrWELjnI37IM7m+Euon1bdcN2JRWnHiVE76w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687753668; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=67E5yxPQFLTbr2sKQAA01ka6+w0tgVYeOejpq8G5yiM=; b=A/UDWSq/7bk9tyYbDi3a8QrZU6+wnhIsCdUrsXIDoMXX91RijayEZWQnIvRBUZbjw60W8b 4Am0WKbsp0sgOiazLF39g/Bpogi2Nh2rL7R0wbKaRMVzVXWzPDUlkWXLQmmBf6OniP5UhP F8RtsmY7KBQYqdN7gp2iObdTHX5H0nu4f/qsebhwyl2Y3B1Ism5pJfHFDbw0S5Giq23G93 G9acxpyXkikO7yWJ2fo8lDyy4mqhCSRvwcLJFZtX01TqkgAYifWxY4hJzW0KnTnxJXKlNR /lyUOtIJs5KsO26IX+1LJXCaFWojWHd4xVj69KEdPYfLWjE3jj86mZduLDXN6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687753668; a=rsa-sha256; cv=none; b=WOYI/u9e3V/a5YKHR+BW/ttILAS0aISB5n6prSrq0aaVhcuUp4pBpfFH5KRp3rPWH9bsGe gZPGSAXfSVR1AlLr6W0tVYA7qGMca58qiOJJjhB28LI4bTV5IHQ4w5+4R8TN6ZyeVq+tvu GYBKQzqJqGrXymkUsjiLaT7pytDpaFqxvJw8Pl7KkY7EAzmYXv5WLgdsUj0fn9C3H9lfdv PTXUwxUczFk5uSJHDnAl9y7kdl/iVeXsKNSa6OWnaQoHmbA2TJnc0wXIDJFI50RHRAxk2Z 5rQGjcrmxnYLSfv8AjAz30twNhJo06SF9RxJtm7MVaRk9QeMnWECdDPP9/2Rbw== 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 4QqFFJ4fJ5zvkq; Mon, 26 Jun 2023 04: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 35Q4Rmob021115; Mon, 26 Jun 2023 04: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 35Q4Rm7q021114; Mon, 26 Jun 2023 04:27:48 GMT (envelope-from git) Date: Mon, 26 Jun 2023 04:27:48 GMT Message-Id: <202306260427.35Q4Rm7q021114@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: 428647d483bb - stable/13 - motd: MFC: unbreak for source upgrade List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 428647d483bb78ca8f152e5c4ef7556eec2a2c68 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=428647d483bb78ca8f152e5c4ef7556eec2a2c68 commit 428647d483bb78ca8f152e5c4ef7556eec2a2c68 Author: Eugene Grosbein AuthorDate: 2023-06-19 07:49:35 +0000 Commit: Eugene Grosbein CommitDate: 2023-06-26 04:26:47 +0000 motd: MFC: unbreak for source upgrade In case of source upgrade path from 12.x proper merge of new /etc installs /etc/motd.template. Becase of that, the system is left without symlink /etc/motd -> /var/run/motd but with stale /etc/motd contents. Fix it creating symlink despite of presence of /etc/motd.template. (cherry picked from commit 79a96e294c1acb4a2d17447a35f08647a6d09978) --- libexec/rc/rc.d/motd | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libexec/rc/rc.d/motd b/libexec/rc/rc.d/motd index d9dd60a0f59a..7d865a00a88f 100755 --- a/libexec/rc/rc.d/motd +++ b/libexec/rc/rc.d/motd @@ -38,10 +38,10 @@ motd_start() # Otherwise, create an empty template file. install -c -o root -g wheel -m ${PERMS} /dev/null "${TEMPLATE}" fi - # Provide compatibility symlink: - if [ ! -h "${COMPAT_MOTD}" ]; then - ln -sF "${TARGET}" "${COMPAT_MOTD}" - fi + fi + # Provide compatibility symlink: + if [ ! -h "${COMPAT_MOTD}" ]; then + ln -sF "${TARGET}" "${COMPAT_MOTD}" fi T=`mktemp -t motd` From nobody Mon Jun 26 12:08:17 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSd5qJGz4k6TF; Mon, 26 Jun 2023 12:08: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 4QqRSd50PVz3hCF; Mon, 26 Jun 2023 12:08:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a57uKe/Je1sEC2X3T5fT4bE10GsbdhWx5HdJWgKjIBY=; b=tqsljko3842dbBYoWwFbua7tTV8tBZ8N736cKrvLOGeHoPbsrWEz++LQZYNHPLKDW4Fm96 DpyJL+89XWtW+1wTCREwcLCSgdCwzLYzGUVDpfFbeinev56KHycZldetGi0Ckl2L9739XH LZ3Mp9gp1/kUnGYzlMrwOHfqkyiSN7bFS+FO3ZGVhkjkGkKtwDIUJQPwnesEfI6rPyl8dm IREDg+oaWxCuMbYaw9cGEqJMX8Q9ztzvR+bgI8Km6rl0mXBe+zNW0lBJqKWgNi+nwoSRiB FwTRpuJfSY7Q0UzSbwwHdE2P148tJ9jyfz8qDL0GQ/7x9Jgc/ivjpe/ejh+yHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a57uKe/Je1sEC2X3T5fT4bE10GsbdhWx5HdJWgKjIBY=; b=Lcjf9ueOSqcYB/Z1yj8lIiHGKxqq1y7OdhV/QlLdj8a9gg0oC89XBhy4mMYtiQG/+evIdQ tyXXngxnaFwuQiFfdaEe3p39MZFdyKVhk5jOYYakOQq99Td8Y8UXY08N8sOtOs5is92Sz1 3l2/liJhzGrdggivBIkSYC0vKaYXzHiRHMhLHBtJQSEvKMHtOz2aBghuv+OR6QfQXbGJxO nMNgurBz/QbL0BxK+WescDDRAiy6hoAoCtxTd2ta8cu9AE2Y7m4ANH+fK7RmUrvrTcbLP/ vPtxzlOrC5wY3sVUylEX1P6XPEZHaVqbPx5b7VYGdr8yajqugxrM0QFsxjixTg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781297; a=rsa-sha256; cv=none; b=i62NlOL6Y9346KB2sDdHox/tb/d1UEmx6EIgl5IQcTytHmn/4R4Hxxqsi8pHnptSu986Ud +AFZE2DKrn/9Bt19+NpYeBtbXuN0lf6E5j9EvnAGYY1k3gqZEDHkkXhSUvojxmAK254BzS M5zy6N28lpUNO5xZMi9N+ci8+qQaanZFyT4QTMsZOEy/hbhNNuEs3/cRZz6QCiJP7euWPX gzZ6DtG4kuhncRo8VP1zudkO5vOtFQKsCV3azpkJlN5SEKMl5wqrtV8ngVWYvcPLGp3s74 4pNBMYMVH0RmS3QUB+g4dfzrPkky2FSv0J5QD18BeObyo9TN8G5p+niBgAFpsA== 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 4QqRSd44Qdz18Cc; Mon, 26 Jun 2023 12:08: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 35QC8H8s082729; Mon, 26 Jun 2023 12:08:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8HcI082728; Mon, 26 Jun 2023 12:08:17 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:17 GMT Message-Id: <202306261208.35QC8HcI082728@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 34ee2711941e - stable/13 - dpaa2: add console support for FDT based systems List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 34ee2711941e6d3ddda3f4a34786eabe466a40d9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=34ee2711941e6d3ddda3f4a34786eabe466a40d9 commit 34ee2711941e6d3ddda3f4a34786eabe466a40d9 Author: Bjoern A. Zeeb AuthorDate: 2023-02-14 15:53:13 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 08:27:00 +0000 dpaa2: add console support for FDT based systems Add DPAA2 console support for MC and AIOP (latter untested) for FDT systems. ACPI systems are prepared but need some proper bus function in order to get the address from MC (and likely a file splitup then). This will come at a later stage once other ACPI/FDT bus parts are cleared up. The work was originally done in July 2022 and finally switched to bus_space[1] lately to be ready for main. Suggested by: andrew [1] Reviewed by: dsl Differential Revision: https://reviews.freebsd.org/D38592 (cherry picked from commit 72ef722b2a34b8f94fd639b05881242686480f05) --- sys/conf/files.arm64 | 1 + sys/dev/dpaa2/dpaa2_console.c | 581 ++++++++++++++++++++++++++++++++++++++++++ sys/modules/dpaa2/Makefile | 2 + 3 files changed, 584 insertions(+) diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index df7bbe002f5c..a87c8acf0630 100644 --- a/sys/conf/files.arm64 +++ b/sys/conf/files.arm64 @@ -167,6 +167,7 @@ dev/cpufreq/cpufreq_dt.c optional cpufreq fdt dev/dpaa2/dpaa2_bp.c optional soc_nxp_ls dpaa2 dev/dpaa2/dpaa2_cmd_if.m optional soc_nxp_ls dpaa2 dev/dpaa2/dpaa2_con.c optional soc_nxp_ls dpaa2 +dev/dpaa2/dpaa2_console.c optional soc_nxp_ls dpaa2 fdt dev/dpaa2/dpaa2_io.c optional soc_nxp_ls dpaa2 dev/dpaa2/dpaa2_mac.c optional soc_nxp_ls dpaa2 dev/dpaa2/dpaa2_mc.c optional soc_nxp_ls dpaa2 diff --git a/sys/dev/dpaa2/dpaa2_console.c b/sys/dev/dpaa2/dpaa2_console.c new file mode 100644 index 000000000000..df63574c4f27 --- /dev/null +++ b/sys/dev/dpaa2/dpaa2_console.c @@ -0,0 +1,581 @@ +/*- + * SPDX-License-Identifier: BSD-3-Clause AND BSD-2-Clause + */ +/* + * // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) + * + * Freescale DPAA2 Platforms Console Driver + * + * Copyright 2015-2016 Freescale Semiconductor Inc. + * Copyright 2018 NXP + * + * git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/drivers/soc/fsl/dpaa2-console.c#8120bd469f5525da229953c1197f2b826c0109f4 + */ +/* + * Copyright (c) 2022-2023 Bjoern A. Zeeb + * + * 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. + */ + +/* + * Some docs are in: + * - https://www.nxp.com.cn/docs/en/application-note/AN13329.pdf + * - DPAA2UM + * - git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/drivers/soc/fsl/dpaa2-console.c + */ + +#include "opt_platform.h" +#ifdef __notyet__ +#include "opt_acpi.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#ifdef FDT +#include +#include +#endif + +/* Table 6-1. MC Memory Map */ +#define MC_REG_MCFBA 0x20 +#define MC_REG_MCFBALR_OFF 0x00 +#define MC_REG_MCFBALR_MASK 0xe0000000 +#define MC_REG_MCFBAHR_OFF 0x04 +#define MC_REG_MCFBAHR_MASK 0x0001ffff + +/* Firmware Consoles. */ +#define MC_BUFFER_OFFSET 0x01000000 +#define MC_BUFFER_SIZE (1024 * 1024 * 16) +#define MC_OFFSET_DELTA MC_BUFFER_OFFSET + +#define AIOP_BUFFER_OFFSET 0x06000000 +#define AIOP_BUFFER_SIZE (1024 * 1024 * 16) +#define AIOP_OFFSET_DELTA 0 + +/* MC and AIOP Magic words */ +#define MAGIC_MC 0x4d430100 +#define MAGIC_AIOP 0X41494f50 + +#define LOG_HEADER_FLAG_BUFFER_WRAPAROUND \ + 0x80000000 +#define LAST_BYTE(a) \ + ((a) & ~(LOG_HEADER_FLAG_BUFFER_WRAPAROUND)) + +struct dpaa2_cons_dev { + struct cdev *cdev; + struct mtx mtx; + size_t offset; + uint32_t magic; + + uint32_t hdr_magic; + uint32_t hdr_eobyte; + uint32_t hdr_start; + uint32_t hdr_len; + + uoff_t start; + uoff_t end; + uoff_t eod; + uoff_t cur; + + bus_space_tag_t bst; + bus_space_handle_t bsh; + vm_size_t size; +}; + +struct dpaa2_cons_softc { + struct resource *res; + bus_space_tag_t bst; + uint64_t mcfba; + struct dpaa2_cons_dev mc_cd; + struct dpaa2_cons_dev aiop_cd; +}; + +struct dpaa2_cons_hdr { + uint32_t magic; + uint32_t _reserved; + uint32_t start; + uint32_t len; + uint32_t eobyte; +}; + +#define DPAA2_MC_READ_4(_sc, _r) bus_read_4((_sc)->res, (_r)) + +/* Management interface */ +static d_open_t dpaa2_cons_open; +static d_close_t dpaa2_cons_close; +static d_read_t dpaa2_cons_read; + +static struct cdevsw dpaa2_mc_cons_cdevsw = { + .d_version = D_VERSION, + .d_flags = 0, + .d_open = dpaa2_cons_open, + .d_close = dpaa2_cons_close, + .d_read = dpaa2_cons_read, + .d_name = "fsl_mc_console", +}; + +static struct cdevsw dpaa2_aiop_cons_cdevsw = { + .d_version = D_VERSION, + .d_flags = 0, + .d_open = dpaa2_cons_open, + .d_close = dpaa2_cons_close, + .d_read = dpaa2_cons_read, + .d_name = "fsl_aiop_console", +}; + +static size_t +dpaa2_cons_read_bs(struct dpaa2_cons_dev *cd, size_t offset, void *dst, size_t len) +{ + size_t count, l; + uint8_t *p; + + count = 0; + p = dst; + l = offset % 8; + if (l != 0) { + bus_space_read_region_1(cd->bst, cd->bsh, offset + count, p + count, l); + count += l; + len -= l; + } + + l = len / 8; + if (l != 0) { + bus_space_read_region_8(cd->bst, cd->bsh, offset + count, (uint64_t *)(p + count), l); + l *= 8; + count += l; + len -= l; + } + l = len / 4; + if (l != 0) { + bus_space_read_region_4(cd->bst, cd->bsh, offset + count, (uint32_t *)(p + count), l); + l *= 4; + count += l; + len -= l; + } + l = len / 2; + if (l != 0) { + bus_space_read_region_2(cd->bst, cd->bsh, offset + count, (uint16_t *)(p + count), l); + l *= 2; + count += l; + len -= l; + } + if (len != 0) { + bus_space_read_region_1(cd->bst, cd->bsh, offset + count, p + count, len); + count += len; + } + + return (count); +} + +static int +dpaa2_cons_open(struct cdev *cdev, int flags, int fmt, struct thread *td) +{ + struct dpaa2_cons_dev *cd; + struct dpaa2_cons_hdr hdr; + size_t rlen __diagused; + uint32_t wrapped; + + if (flags & FWRITE) + return (EACCES); + + cd = cdev->si_drv1; + if (cd->size == 0) + return (ENODEV); + + mtx_lock(&cd->mtx); + rlen = dpaa2_cons_read_bs(cd, 0, &hdr, sizeof(hdr)); + KASSERT(rlen == sizeof(hdr), ("%s:%d: rlen %zu != count %zu, cdev %p " + "cd %p\n", __func__, __LINE__, rlen, sizeof(hdr), cdev, cd)); + + cd->hdr_magic = hdr.magic; + if (cd->hdr_magic != cd->magic) { + mtx_unlock(&cd->mtx); + return (ENODEV); + } + + cd->hdr_eobyte = hdr.eobyte; + cd->hdr_start = hdr.start; + cd->hdr_len = hdr.len; + + cd->start = cd->hdr_start - cd->offset; + cd->end = cd->start + cd->hdr_len; + + wrapped = cd->hdr_eobyte & LOG_HEADER_FLAG_BUFFER_WRAPAROUND; + cd->eod = cd->start + LAST_BYTE(cd->hdr_eobyte); + + if (wrapped && cd->eod != cd->end) + cd->cur = cd->eod + 1; + else + cd->cur = cd->start; + mtx_unlock(&cd->mtx); + + return (0); +} + +static int +dpaa2_cons_close(struct cdev *cdev, int flags, int fmt, struct thread *td) +{ + struct dpaa2_cons_dev *cd; + + cd = cdev->si_drv1; + mtx_lock(&cd->mtx); + cd->hdr_magic = cd->hdr_eobyte = cd->hdr_start = cd->hdr_len = 0; + cd->start = cd->end = 0; + mtx_unlock(&cd->mtx); + + return (0); +} + +static int +dpaa2_cons_read(struct cdev *cdev, struct uio *uio, int flag) +{ + char buf[128]; + struct dpaa2_cons_dev *cd; + size_t len, size, count; + size_t rlen __diagused; + int error; + + cd = cdev->si_drv1; + mtx_lock(&cd->mtx); + if (cd->cur == cd->eod) { + mtx_unlock(&cd->mtx); + return (0); + } else if (cd->cur > cd->eod) { + len = (cd->end - cd->cur) + (cd->eod - cd->start); + } else { + len = cd->eod - cd->cur; + } + size = cd->end - cd->cur; + + if (len > size) { + /* dump cur [size] */ + while (uio->uio_resid > 0) { + count = imin(sizeof(buf), uio->uio_resid); + if (count > size) + count = size; + + rlen = dpaa2_cons_read_bs(cd, cd->cur, buf, count); + KASSERT(rlen == count, ("%s:%d: rlen %zu != count %zu, " + "cdev %p cd %p\n", __func__, __LINE__, rlen, count, + cdev, cd)); + + cd->cur += count; + len -= count; + size -= count; + mtx_unlock(&cd->mtx); + error = uiomove(buf, count, uio); + if (error != 0 || uio->uio_resid == 0) + return (error); + mtx_lock(&cd->mtx); + } + cd->cur = cd->start; + } + + /* dump cur [len] */ + while (len > 0 && uio->uio_resid > 0) { + count = imin(sizeof(buf), uio->uio_resid); + if (count > len) + count = len; + + rlen = dpaa2_cons_read_bs(cd, cd->cur, buf, count); + KASSERT(rlen == count, ("%s:%d: rlen %zu != count %zu, cdev %p " + "cd %p\n", __func__, __LINE__, rlen, count, cdev, cd)); + + cd->cur += count; + len -= count; + mtx_unlock(&cd->mtx); + error = uiomove(buf, count, uio); + if (error != 0 || uio->uio_resid == 0) + return (error); + mtx_lock(&cd->mtx); + } + mtx_unlock(&cd->mtx); + return (0); +} + +static int +dpaa2_cons_create_dev(device_t dev, bus_addr_t pa, size_t size, + size_t offset, uint32_t magic, struct cdevsw *devsw, + struct dpaa2_cons_dev *cd) +{ + struct dpaa2_cons_softc *sc; + struct dpaa2_cons_hdr hdr; + struct make_dev_args md_args; + size_t len; + int error; + + sc = device_get_softc(dev); + + error = bus_space_map(sc->bst, pa, size, 0, &cd->bsh); + if (error != 0) { + device_printf(dev, "%s: failed to map bus space %#jx/%zu: %d\n", + __func__, (uintmax_t)pa, size, error); + return (error); + } + + cd->bst = sc->bst; + cd->size = size; + + len = dpaa2_cons_read_bs(cd, 0, &hdr, sizeof(hdr)); + if (len != sizeof(hdr)) { + device_printf(dev, "%s: failed to read hdr for %#jx/%zu: %d\n", + __func__, (uintmax_t)pa, size, error); + bus_space_unmap(cd->bst, cd->bsh, cd->size); + cd->size = 0; + return (EIO); + } + + /* This checks probably needs to be removed one day? */ + if (hdr.magic != magic) { + if (bootverbose) + device_printf(dev, "%s: magic wrong for %#jx/%zu: " + "%#010x != %#010x, no console?\n", __func__, + (uintmax_t)pa, size, hdr.magic, magic); + bus_space_unmap(cd->bst, cd->bsh, cd->size); + cd->size = 0; + return (ENOENT); + } + + if (hdr.start - offset > size) { + device_printf(dev, "%s: range wrong for %#jx/%zu: %u - %zu > %zu\n", + __func__, (uintmax_t)pa, size, hdr.start, offset, size); + bus_space_unmap(cd->bst, cd->bsh, cd->size); + cd->size = 0; + return (ERANGE); + } + + cd->offset = offset; + cd->magic = magic; + mtx_init(&cd->mtx, "dpaa2 cons", NULL, MTX_DEF); + + make_dev_args_init(&md_args); + md_args.mda_devsw = devsw; + md_args.mda_uid = 0; + md_args.mda_gid = 69; + md_args.mda_mode = S_IRUSR | S_IRGRP; + md_args.mda_unit = 0; + md_args.mda_si_drv1 = cd; + error = make_dev_s(&md_args, &cd->cdev, "%s", devsw->d_name); + if (error != 0) { + device_printf(dev, "%s: make_dev_s failed for %#jx/%zu: %d\n", + __func__, (uintmax_t)pa, size, error); + mtx_destroy(&cd->mtx); + bus_space_unmap(cd->bst, cd->bsh, cd->size); + cd->size = 0; + return (error); + } + + if (bootverbose) + device_printf(dev, "dpaa2 console %s at pa %#jx size %#010zx " + "(%zu) offset %zu, hdr: magic %#010x start %#010x len " + "%#010x eobyte %#010x\n", devsw->d_name, (uintmax_t)pa, + size, size, offset, hdr.magic, hdr.start, hdr.len, hdr.eobyte); + + return (0); +} + +static int +dpaa2_cons_attach_common(device_t dev) +{ + struct dpaa2_cons_softc *sc; + + sc = device_get_softc(dev); + + dpaa2_cons_create_dev(dev, (bus_addr_t)(sc->mcfba + MC_BUFFER_OFFSET), + MC_BUFFER_SIZE, MC_OFFSET_DELTA, MAGIC_MC, + &dpaa2_mc_cons_cdevsw, &sc->mc_cd); + + dpaa2_cons_create_dev(dev, (bus_addr_t)(sc->mcfba + AIOP_BUFFER_OFFSET), + AIOP_BUFFER_SIZE, AIOP_OFFSET_DELTA, MAGIC_AIOP, + &dpaa2_aiop_cons_cdevsw, &sc->aiop_cd); + + return (0); +} + +static void +dpaa2_cons_detach_common(struct dpaa2_cons_dev *cd) +{ + + bus_space_unmap(cd->bst, cd->bsh, cd->size); + mtx_destroy(&cd->mtx); +} + +static int +dpaa2_cons_detach(device_t dev) +{ + struct dpaa2_cons_softc *sc; + + sc = device_get_softc(dev); + + if (sc->aiop_cd.cdev != NULL) + destroy_dev(sc->aiop_cd.cdev); + if (sc->mc_cd.cdev != NULL) + destroy_dev(sc->mc_cd.cdev); + + if (sc->aiop_cd.size != 0) + dpaa2_cons_detach_common(&sc->aiop_cd); + if (sc->mc_cd.size != 0) + dpaa2_cons_detach_common(&sc->mc_cd); + + if (sc->res != NULL) + bus_release_resource(dev, SYS_RES_MEMORY, rman_get_rid(sc->res), + sc->res); + + return (0); +} + +#ifdef __notyet__ +#ifdef ACPI +static int +dpaa2_cons_acpi_probe(device_t dev) +{ + + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + device_set_desc(dev, "DPAA2 Console Driver"); + return (BUS_PROBE_DEFAULT); +} + +static int +dpaa2_cons_acpi_attach(device_t dev) +{ + struct dpaa2_cons_softc *sc; + uint32_t val; + int error, rid; + + sc = device_get_softc(dev); + + rid = 0; + sc->res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); + if (sc->res == NULL) { + device_printf(dev, "Could not allocate memory\n"); + return (ENXIO); + } + sc->bst = rman_get_bustag(sc->res); + + val = DPAA2_MC_READ_4(sc, MC_REG_MCFBALR_OFF); + val &= MC_REG_MCFBALR_MASK; + sc->mcfba |= val; + val = DPAA2_MC_READ_4(sc, MC_REG_MCFBAHR_OFF); + val &= MC_REG_MCFBAHR_MASK; + sc->mcfba |= ((uint64_t)val << 32); + + error = dpaa2_cons_attach_common(dev); + + return (error); +} + +static device_method_t dpaa2_cons_acpi_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, dpaa2_cons_acpi_probe), + DEVMETHOD(device_attach, dpaa2_cons_acpi_attach), + DEVMETHOD(device_detach, dpaa2_cons_detach), + + DEVMETHOD_END +}; + +DEFINE_CLASS_0(dpaa2_cons_acpi, dpaa2_cons_acpi_driver, dpaa2_cons_acpi_methods, + sizeof(struct dpaa2_cons_softc)); + +DRIVER_MODULE(dpaa2_cons_acpi, simplebus, dpaa2_cons_acpi_driver, 0, 0); +MODULE_DEPEND(dpaa2_cons_acpi, dpaa2_mc, 1, 1, 1); +#endif +#endif /* 0 */ + +#ifdef FDT +static struct ofw_compat_data compat_data[] = { + { "fsl,dpaa2-console", 1 }, + { NULL, 0 } +}; + +static int +dpaa2_cons_fdt_probe(device_t dev) +{ + + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + if (!ofw_bus_search_compatible(dev, compat_data)->ocd_data) + return (ENXIO); + + device_set_desc(dev, "DPAA2 Console Driver"); + return (BUS_PROBE_DEFAULT); +} + +static int +dpaa2_cons_fdt_attach(device_t dev) +{ + struct dpaa2_cons_softc *sc; + uint32_t val; + int error, rid; + + sc = device_get_softc(dev); + + rid = 0; + sc->res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); + if (sc->res == NULL) { + device_printf(dev, "Could not allocate memory\n"); + return (ENXIO); + } + sc->bst = rman_get_bustag(sc->res); + + val = DPAA2_MC_READ_4(sc, MC_REG_MCFBALR_OFF); + val &= MC_REG_MCFBALR_MASK; + sc->mcfba |= val; + val = DPAA2_MC_READ_4(sc, MC_REG_MCFBAHR_OFF); + val &= MC_REG_MCFBAHR_MASK; + sc->mcfba |= ((uint64_t)val << 32); + + error = dpaa2_cons_attach_common(dev); + + return (error); +} + +static device_method_t dpaa2_cons_fdt_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, dpaa2_cons_fdt_probe), + DEVMETHOD(device_attach, dpaa2_cons_fdt_attach), + DEVMETHOD(device_detach, dpaa2_cons_detach), + + DEVMETHOD_END +}; + +DEFINE_CLASS_0(dpaa2_cons_fdt, dpaa2_cons_fdt_driver, dpaa2_cons_fdt_methods, + sizeof(struct dpaa2_cons_softc)); + +DRIVER_MODULE(dpaa2_cons_fdt, simplebus, dpaa2_cons_fdt_driver, 0, 0); +#endif diff --git a/sys/modules/dpaa2/Makefile b/sys/modules/dpaa2/Makefile index eeb9e7f340bf..f469bfc032d1 100644 --- a/sys/modules/dpaa2/Makefile +++ b/sys/modules/dpaa2/Makefile @@ -17,6 +17,8 @@ SRCS+= dpaa2_swp_if.c dpaa2_swp_if.h SRCS+= dpaa2_mc_if.c dpaa2_mc_if.h SRCS+= memac_mdio_common.c memac_mdio_if.c memac_mdio_if.h +SRCS+= dpaa2_console.c + SRCS+= bus_if.h device_if.h miibus_if.h SRCS+= pcib_if.h pci_if.h SRCS+= opt_acpi.h opt_platform.h From nobody Mon Jun 26 12:08:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSg0NTYz4k6TR; Mon, 26 Jun 2023 12:08: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 4QqRSf61d5z3hG3; Mon, 26 Jun 2023 12:08:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Vu4IG/DdOJkAcK8vN5p7pNvDNtuUmwyCn/9NpDPKjgg=; b=E1WKx8lsj3xf2pYI5bfsKK2u53aqrqXojrQHIU8oghGFH6mGeArS2niAoH3QA0D4jF46Ts qinKjURhyMun4p7dycqxmmAkWJIXzIytP8wqlTW38hHpMLdOIR7pJhXY3hNmIBeHc2c3Rz Vzn762svCSn8oW729ePN6RVFoZGI+x4HJhrJm2Qwo7hALT9OEa6WMx1iCOBN36ZbTz4hbC qVj/E7cJ6rVZgr3GnzyD//FRaTm9cooi2odnJQ1cM2AnNQ1HBpepeOX1GSkH+DJsDGF+dt hzl+w2PvNG81PncQJhHEF02RCuDCR/HVoFNzcLXKnj7XX/wDi/3yqcY65olGcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Vu4IG/DdOJkAcK8vN5p7pNvDNtuUmwyCn/9NpDPKjgg=; b=Hm4RxKOpZlF2PSnLB+VrWHEGXZ3TjhomFIStJt3PvxMfi4WkY5ZF7g0dY6pI+ovvGPfqOE dTXeb+VSyF8Lc9j3AN3UMP8pEcksZNEHfSnDwh7atqtVGmz/DC2aIPFGbg2xgHkSY8K0mC a7ywnBLGApn1NdKxY2NhsvWbfD6iWiVgiy0swVMFemd8rn4J1nspokPsisuhfg80OWXhh1 22bM8OijqDU5fIXwyV5WHZzyx6aknubPJgglSQFUmwy1UrJ3wE/H4t6ZCGw+UEfGRTPkEb 0V9fN2xRHEOjJJuym6LGnr/8Wg6q5hIjGmJvNBktxZrsx7wTdIxJCC/YV3ey1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781299; a=rsa-sha256; cv=none; b=HFnuKt3UoFi9ZmJnegWzEQM4xZ17/ufDDbvPPA6YiZdlznAWg3iz7vfe401kOOMqpDZAm+ k0qJ05YD/mDYm6pvSQGnS9ay2a92lkaeuxsy5zrZTnsot/XvK42AD6STIsbCQn6Jys5PIS YFkCv5Yl1mIguaOsxtx5sR2sFYgtV0Z/Yr6peiMXUQYDi7lBOCpmuyBgnbkNxWzWdXsRw9 +S4Rttgr6TX0jGkaFcEZxTyWhAh3rYREFSUZQa8tPhZLwBbau8i6EJdbT8OhO0S87S3Evx +nXvWfvJ6IbtQ6nsQvzTTLhFThfvimwqGcl1b8hMdAnZNfM+sXK8iQiDb133ig== 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 4QqRSf4ywVz18Nr; Mon, 26 Jun 2023 12:08: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 35QC8Ii5082751; Mon, 26 Jun 2023 12:08:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8Isl082750; Mon, 26 Jun 2023 12:08:18 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:18 GMT Message-Id: <202306261208.35QC8Isl082750@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ca5e52ed3a5d - stable/13 - net80211: make ieee80211_scan_dump_channels private List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ca5e52ed3a5d46ee8ab0ed1af5b3616f1f7c188a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ca5e52ed3a5d46ee8ab0ed1af5b3616f1f7c188a commit ca5e52ed3a5d46ee8ab0ed1af5b3616f1f7c188a Author: Bjoern A. Zeeb AuthorDate: 2023-03-14 21:01:19 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 08:27:10 +0000 net80211: make ieee80211_scan_dump_channels private ieee80211_scan_dump_channels() is only used locally and only when IEEE80211_DEBUG is compiled. Stop exporting it, make it file local and hide under the #ifdef to reduce the footprint for production kernels a tiny bit. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38833 (cherry picked from commit d7fb679dc96b07c38eedfa8c91817b44b214c799) --- sys/net80211/ieee80211_scan.c | 4 ++-- sys/net80211/ieee80211_scan.h | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/sys/net80211/ieee80211_scan.c b/sys/net80211/ieee80211_scan.c index 50b3151063fa..1e5b6a3f0d14 100644 --- a/sys/net80211/ieee80211_scan.c +++ b/sys/net80211/ieee80211_scan.c @@ -277,7 +277,8 @@ ieee80211_scan_update_locked(struct ieee80211vap *vap, } } -void +#ifdef IEEE80211_DEBUG +static void ieee80211_scan_dump_channels(const struct ieee80211_scan_state *ss) { struct ieee80211com *ic = ss->ss_ic; @@ -294,7 +295,6 @@ ieee80211_scan_dump_channels(const struct ieee80211_scan_state *ss) } } -#ifdef IEEE80211_DEBUG void ieee80211_scan_dump(struct ieee80211_scan_state *ss) { diff --git a/sys/net80211/ieee80211_scan.h b/sys/net80211/ieee80211_scan.h index 07d927cfa1e1..609339ae77e8 100644 --- a/sys/net80211/ieee80211_scan.h +++ b/sys/net80211/ieee80211_scan.h @@ -163,8 +163,6 @@ void ieee80211_scan_detach(struct ieee80211com *); void ieee80211_scan_vattach(struct ieee80211vap *); void ieee80211_scan_vdetach(struct ieee80211vap *); -void ieee80211_scan_dump_channels(const struct ieee80211_scan_state *); - #define IEEE80211_SCAN_FOREVER 0x7fffffff int ieee80211_start_scan(struct ieee80211vap *, int flags, u_int duration, u_int mindwell, u_int maxdwell, From nobody Mon Jun 26 12:08:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSh0NP0z4k6GQ; Mon, 26 Jun 2023 12:08: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 4QqRSg6kn0z3RM4; Mon, 26 Jun 2023 12:08:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CcaF2ViPLgdQaG0lnDT5uzXB8bu44UgLdTc4zs064q0=; b=GrHrbxQ5jkSWmZT5lLexHCic0z89Um1xJQ/SUj5irk0m2j7tkYcbkixh51dj3Txmp+BhMo JNOqk8mnWC7tXkClP+joE4w4lw56cHHdO/bwDsUZUDaGKvMEzZPY220C0C/qVFK9z8Hoxi UvfOy+bjjEfnKgK1XaFVnfu2A38KeJgd1qbuOcuwwNZa/JXw/9M5iQb3ixzqwWeokGbbTQ dvQw2COHzAZwXg0+SeZkMcfvicQAyGOszkhE6KJgsSe/IU5jphQyoe6TuG5V7DbDSkWyJk GQM0ItX2NtDDTGozScUT7kGZAanjeOrxZK2HLd2qieQHTVoLXGwBKKu36dP9PQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CcaF2ViPLgdQaG0lnDT5uzXB8bu44UgLdTc4zs064q0=; b=pNuBofQcp+mQHoL1qHD/jNmMVkYwHitKSqeEMwIuvt/gjGqcNoCFBBebFcvAG53mN8EzHB UyxTJwLERWxF1MXSTp8fB1AvvatZClypeqOyVeGpcJMMmHyq8ZBJEnIoiA4G6r+voWY3sV zWbnbUah8AeQEHB/HNc34uuR6UyOEuO2iy09jQfBcVfiWpbhv1yYxoi9wO5gN77G7Q+A7k QgMJd2OP5ccs1HBPg8JCfAtNTlT1mrQGWi6c9ehMdWEn3/X1vrQyI0PdDYnAWu83ouCuIL aDrKBwOMBBb6GUVvvKHW/g9CUPkYBWVWuIW9LTj6jJqn5EW9zHrWC1xI9AV7BQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781300; a=rsa-sha256; cv=none; b=Bho53T3HLBLk2CQhK13jLU/LOMd3gj3jcBcGj0Bms9yhUuvZrxP6o6JbID3gQyJ3WfRgIa GggJAca3AdzmvT+HsHtCNtqjxolPkxX5KgU1K/Ci5vMtmk+lOue+wIqbsh4VnJYsSKL1Ao v2sWwuqqIDP4LCVnaybGBWB1NMcw0Y7Z5eFab72Rzx76AeJ1u1WiddXa7FtC/H/kdRHkjj IkJGGBCcETPFTgesk4gfnYP0QdOtF9YjVZSRDepAT1oO6U246p7IxCZ4CzaX2NSR1+2CZl Z3Ap2E9X3cqdGQyliW4DzAqVPEGS+j+/YQQyQ6pYrnwZ8n8DqTQ+QIWKYVLJjA== 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 4QqRSg5dBdz18LZ; Mon, 26 Jun 2023 12:08: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 35QC8J9s082771; Mon, 26 Jun 2023 12:08:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8J0R082770; Mon, 26 Jun 2023 12:08:19 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:19 GMT Message-Id: <202306261208.35QC8J0R082770@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: c6f7abeaeb5b - stable/13 - net80211: define mask for ss_flags rather than using hardcoded 0xfff List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: c6f7abeaeb5ba9754799c4ff2129a4c49056448d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c6f7abeaeb5ba9754799c4ff2129a4c49056448d commit c6f7abeaeb5ba9754799c4ff2129a4c49056448d Author: Bjoern A. Zeeb AuthorDate: 2023-03-14 21:00:48 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 08:29:22 +0000 net80211: define mask for ss_flags rather than using hardcoded 0xfff scan state ss_flags in two places cut off the "internal" GOTPICK options. Replace the hardcoded 0xfff with a defined mask. Note that "internal" flags is confusing as we also supplement the the 16bit by another 16bit of "internal flags" passed around but comaparing to GOTPICK never stored to my understanding. No functional change. Sponsored by: The FreeBSD Foundation Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D38832 (cherry picked from commit 3346164ce844f8995311c3988ab193bd6ddda0c9) --- sys/net80211/ieee80211_scan.h | 1 + sys/net80211/ieee80211_scan_sw.c | 5 ++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/net80211/ieee80211_scan.h b/sys/net80211/ieee80211_scan.h index 609339ae77e8..32330322ce33 100644 --- a/sys/net80211/ieee80211_scan.h +++ b/sys/net80211/ieee80211_scan.h @@ -136,6 +136,7 @@ struct ieee80211_scan_state { #define IEEE80211_SCAN_ONCE 0x0010 /* do one complete pass */ #define IEEE80211_SCAN_NOBCAST 0x0020 /* no broadcast probe req */ #define IEEE80211_SCAN_NOJOIN 0x0040 /* no auto-sequencing */ +#define IEEE80211_SCAN_PUBLIC_MASK 0x0fff /* top 4 bits for internal use */ #define IEEE80211_SCAN_GOTPICK 0x1000 /* got candidate, can stop */ uint8_t ss_nssid; /* # ssid's to probe/match */ struct ieee80211_scan_ssid ss_ssid[IEEE80211_SCAN_MAX_SSID]; diff --git a/sys/net80211/ieee80211_scan_sw.c b/sys/net80211/ieee80211_scan_sw.c index 4c184095ad35..f72f4658ad67 100644 --- a/sys/net80211/ieee80211_scan_sw.c +++ b/sys/net80211/ieee80211_scan_sw.c @@ -195,8 +195,7 @@ ieee80211_swscan_start_scan_locked(const struct ieee80211_scanner *scan, if ((flags & IEEE80211_SCAN_NOSSID) == 0) ieee80211_scan_copy_ssid(vap, ss, nssid, ssids); - /* NB: top 4 bits for internal use */ - ss->ss_flags = flags & 0xfff; + ss->ss_flags = flags & IEEE80211_SCAN_PUBLIC_MASK; if (ss->ss_flags & IEEE80211_SCAN_ACTIVE) vap->iv_stats.is_scan_active++; else @@ -306,7 +305,7 @@ ieee80211_swscan_check_scan(const struct ieee80211_scanner *scan, ic->ic_flags |= IEEE80211_F_SCAN; /* NB: need to use supplied flags in check */ - ss->ss_flags = flags & 0xff; + ss->ss_flags = flags & IEEE80211_SCAN_PUBLIC_MASK; result = ss->ss_ops->scan_end(ss, vap); ic->ic_flags &= ~IEEE80211_F_SCAN; From nobody Mon Jun 26 12:08:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSj2brwz4k6Tc; Mon, 26 Jun 2023 12:08:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqRSj125tz3hS1; Mon, 26 Jun 2023 12:08:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781301; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Hi/y+7j/gCk3bGUrIedoWGMzUHBe+GseEkJ3GqoAnRg=; b=p+s1aVKaRK80r7g8FVwxnRuPIfxFX/jBozFkFsGPW02c3iKrWAJobPNrkisDTcVOEZhWcw sdWed2vGfVgLeqm7/ZeYimkj6MwF7PCvrtgoHjR8ddexDwjjyi+0IEcVLsXS21AnuoA7mz M47jGN6O7wCLAIhVYsRgI0QeEX9sqGu2teuiTVx0/sVYW0xZ8xfTf2cuhJ490csJsjscds LdFVOeVrU1StcV5DsL1HRv/BDcfC4BKjBCLbOt0KMiTnqgIIHAq66aHn0lQzZOhqWTgHMP FgdOoZi1FtXD/Dpt9bxTBoA5xaBveUjW/Q0WlSK3fcK3APfdIfxrs+Zr/UrZLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781301; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Hi/y+7j/gCk3bGUrIedoWGMzUHBe+GseEkJ3GqoAnRg=; b=EdKOfXu+N98irsWCUgSVycEri4KtojW/jmquNUqCqip2kwup6xYgpvVSLalvwjlVZgGTA8 iwlU42rR+NenpXrTBMW4W5PcCVN6BfIbgdy41R/wE7h4jQWg3LoeCzUHUH7fBErJqG8shX sVTFpC845fQ6tHglzHR/c3na7Xrx5lbc1nfL5Y87UaTF4iHm50bWLTxiJQrOwSqIRtnr0k dWkqjwIudRjolCz5owG4pqlXQ9t9WDeBI/P+nzkxAt//kmXdREPDdIdD8Fi0P2uI5yJERc k74h5yeQyppKpw2vyd9WR2WsBU47MqA6aj/kP2fp9HrZ++2ZmIC1GyEb7tRKHg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781301; a=rsa-sha256; cv=none; b=MIj5/OTfOfMDfAGFcItdFkcsK2bJduldToEa9RDltOUqcxHlYBh6LMwQopd7FkjjizFIc1 0txYToaqlYSZdaUlKT9ENoXfdjnRfYC7TWxK3iM3Mzk565B2FJhaSDV1KX0dKBt5OgsXMo MOZ656q9q2U+hLw1ECsKOlWNclRhoNqJfcJE1Fl0ctMzMQlLTM1+KNm1jZkyzSWfFvHMIx a+1AD+UlrNpS2M8HXgF6qtMpNaM80PkD6ZTCmH6LQ5FwNiTo/2LncjtKWE0B/Hp/Tx1nAk 9GOY9dlZUt1QUuXbHIpPKsbG4pBPK78CtAg4JIAcZp76GAgiM0HNGfX+gs8uDQ== 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 4QqRSh6KQRz18Cd; Mon, 26 Jun 2023 12:08: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 35QC8KqY082791; Mon, 26 Jun 2023 12:08:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8KXl082790; Mon, 26 Jun 2023 12:08:20 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:20 GMT Message-Id: <202306261208.35QC8KXl082790@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a3a5f67d3949 - stable/13 - ifconfig: ifieee80211: print bssid name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: a3a5f67d394999dc79be1c32a02ae659eea24963 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a3a5f67d394999dc79be1c32a02ae659eea24963 commit a3a5f67d394999dc79be1c32a02ae659eea24963 Author: Bjoern A. Zeeb AuthorDate: 2023-03-21 21:25:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 08:29:30 +0000 ifconfig: ifieee80211: print bssid name In certain setups (e.g., autonomous APs) it is extremly helpful to have a way to map the BSSIDs to names for both normal status output as well as the scan list. This often allows a quicker overview than remembering (or manually looking up) BSSIDs. Call ether_ntohost() on the bssid and consult /etc/ethers and print "(name)" after the bssid for the status output and "(name)" at the end of the line after the IE list. Reviewed by: adrian, cy Differential Revision: https://reviews.freebsd.org/D39192 (cherry picked from commit e091be417add7e9130653462012a9ab2f4fb5269) --- sbin/ifconfig/ifieee80211.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/sbin/ifconfig/ifieee80211.c b/sbin/ifconfig/ifieee80211.c index cb465a02b794..065a141da0f1 100644 --- a/sbin/ifconfig/ifieee80211.c +++ b/sbin/ifconfig/ifieee80211.c @@ -3716,6 +3716,17 @@ printmimo(const struct ieee80211_mimo_info *mi) mi->ch[3].noise[0]); } +static void +printbssidname(const struct ether_addr *n) +{ + char name[MAXHOSTNAMELEN + 1]; + + if (ether_ntohost(name, n) != 0) + return; + + printf(" (%s)", name); +} + static void list_scan(int s) { @@ -3767,6 +3778,7 @@ list_scan(int s) ); printies(vp + sr->isr_ssid_len + sr->isr_meshid_len, sr->isr_ie_len, 24); + printbssidname((const struct ether_addr *)sr->isr_bssid); printf("\n"); cp += sr->isr_len, len -= sr->isr_len; } while (len >= sizeof(struct ieee80211req_scan_result)); @@ -4904,8 +4916,10 @@ ieee80211_status(int s) printf(" channel UNDEF"); if (get80211(s, IEEE80211_IOC_BSSID, data, IEEE80211_ADDR_LEN) >= 0 && - (memcmp(data, zerobssid, sizeof(zerobssid)) != 0 || verbose)) + (memcmp(data, zerobssid, sizeof(zerobssid)) != 0 || verbose)) { printf(" bssid %s", ether_ntoa((struct ether_addr *)data)); + printbssidname((struct ether_addr *)data); + } if (get80211len(s, IEEE80211_IOC_STATIONNAME, data, sizeof(data), &len) != -1) { printf("\n\tstationname "); From nobody Mon Jun 26 12:08:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSk3F2Tz4k6Yh; Mon, 26 Jun 2023 12:08: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 4QqRSk1T6Cz3hH0; Mon, 26 Jun 2023 12:08:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y73ah+ON2YBzKAE4tfOZzdO6BXrsiLgl1kixIj5PunY=; b=XyajDyoCNTVuyToyXTEVjV+QXJ8d03C3Wgu6WmVmkjov0K3gWK6TGHiM+fNdZJU3wOmhuE GbKay319u11klCDdQIKB32i+htQZclAPYy1jcFEa/T5jHMBxbsxCxQMW2jOFV6Ea/DCmYJ yGxQ4hd6p/SG5ewZdMHu8HWs8z8MoVNKhWnyL9e73MFS3q9Yki6MSc5EyO3wtCvu2EfPX/ qAqx5Bm3XZhx9aHVEpU5cfU3qS2TFfjpRxzVCUCekp/WgJvolEMzwyEGGA6sLPNvX/f3Oa /88ZjdXN+KJNWa4QMAz9F8bkXuausi8qR7assGwZavVSvkVzVMq8HGxHRp9i9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y73ah+ON2YBzKAE4tfOZzdO6BXrsiLgl1kixIj5PunY=; b=FJ8Alm6gvaUBWOFRnOAybI//sAWhiSAww23Mruwwuex2AZWIyomeNbE3nnjCIcA5D7nZfz U8g5uEsPSGm/DcSUBf1ri1NUmoB4Wl8bUXiUtcuatzbCM9Lu64D3IiuYP0NVGrsKxufbT+ TITQKintQ23dhabBZGIbMDw+MLXgJryzGD5pfhSs+fpqPbgutWqHy3+3GxbrJ66O2xLaHz NM1+PzzdSmtqlE/y02+pzSbZ616eEl3SYhNOv9cQFtG6ZTR47dxv+rjjGGwuwNEBWfdin0 kn98X+9e5ZEUof3K9NqBR1fbPpv912iw82mbJQhH4mUvMe8RDQUmRlVsXkZ6ag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781302; a=rsa-sha256; cv=none; b=LE26RjA+jldWu2CG9USIPl/lli8Pv/XMvrl9mgOVgKh/6kCaL3brNTekQe9qX87Qc6NrWd tHNbjkQhv2FAMd1FrK2Fm/NC9/KOBSxd2Zz/sGcnxIcyZIQ2t84dyrpwQLaKNR6NoyNQ3z 0coHS3w07hXDpfJCjITquBFKDSHUXw4IZ6/xBZX2KSc4xL7ndekNKNHzwGY9n61Di+aJZr m2np/hWhMk03PYZm5ZSDDsJyc+ZNNDjz50wzIGujlstoJCD+yGED6cnH1fOYJiWaz43x8Y /+3osVUyuzoY4S6RIzGWZyM2PDeo74eoDhx2cde1w1QYjT+BiMX/beLkhOC31g== 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 4QqRSk07t6z18Cf; Mon, 26 Jun 2023 12:08: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 35QC8L2b082811; Mon, 26 Jun 2023 12:08:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8LjB082810; Mon, 26 Jun 2023 12:08:21 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:21 GMT Message-Id: <202306261208.35QC8LjB082810@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ded53e898c7b - stable/13 - rc/WPA: driver_bsd.c: backout upstream IFF_ change and add logging List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ded53e898c7be6d610e94c1746fd22304f5c5988 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ded53e898c7be6d610e94c1746fd22304f5c5988 commit ded53e898c7be6d610e94c1746fd22304f5c5988 Author: Bjoern A. Zeeb AuthorDate: 2023-03-23 22:37:12 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:00:55 +0000 rc/WPA: driver_bsd.c: backout upstream IFF_ change and add logging This reverts the state to our old supplicant logic setting or clearing IFF_UP if needed. In addition this adds logging for the cases in which we do (not) change the interface state. Depending on testing this seems to help bringing WiFi up or not log any needed changes (which would be the expected wpa_supplicant logic now). People should look out for ``(changed)`` log entries (at least if debugging the issue; this way we will at least have data points). There is a hypothesis still pondered that the entire IFF_UP toggling only exploits a race in net80211 (see further discssussions for more debugging and alternative solutions see D38508 and D38753). That may also explain why the changes to the rc startup script [1] only helped partially for some people to no longer see the continuous CTRL-EVENT-SCAN-FAILED. It is highly likely that we will want further changes and until we know for sure that people are seeing ''(changed)'' events this should stay local. Should we need to upstream this we'll likely need #ifdef __FreeBSD__ around this code. Remove ifconfig down/up workaround (bfb202c4554a) in rc.d/wpa_supplicant as it is no longer needed. [1] 5fcdc19a81115d975e238270754e28557a2fcfc5 and d06d7eb09131edea666bf049d6c0c55672726f76 Sponsored by: The FreeBSD Foundation Reviewed by: cy, enweiwu (earlier) Differential Revision: https://reviews.freebsd.org/D38807 (cherry picked from commit bfb202c4554a72383202a1a401d80721935b8c95) Reviewed by: bz (for wireless) Differential Revision: https://reviews.freebsd.org/D39257 (cherry picked from commit 052211e08c0e227277d0c4dc603bba2253eb3d73) --- contrib/wpa/src/drivers/driver_bsd.c | 50 ++++++++++++++++++++++++++++-------- libexec/rc/rc.d/wpa_supplicant | 6 ----- 2 files changed, 40 insertions(+), 16 deletions(-) diff --git a/contrib/wpa/src/drivers/driver_bsd.c b/contrib/wpa/src/drivers/driver_bsd.c index 345bbb892ecf..d5ff51cee456 100644 --- a/contrib/wpa/src/drivers/driver_bsd.c +++ b/contrib/wpa/src/drivers/driver_bsd.c @@ -294,8 +294,9 @@ bsd_send_mlme_param(void *priv, const u8 op, const u16 reason, const u8 *addr) } static int -bsd_get_iface_flags(struct bsd_driver_data *drv) +bsd_ctrl_iface(void *priv, int enable) { + struct bsd_driver_data *drv = priv; struct ifreq ifr; os_memset(&ifr, 0, sizeof(ifr)); @@ -307,6 +308,33 @@ bsd_get_iface_flags(struct bsd_driver_data *drv) return -1; } drv->flags = ifr.ifr_flags; + + + if (enable) { + if (ifr.ifr_flags & IFF_UP) + goto nochange; + ifr.ifr_flags |= IFF_UP; + } else { + if (!(ifr.ifr_flags & IFF_UP)) + goto nochange; + ifr.ifr_flags &= ~IFF_UP; + } + + if (ioctl(drv->global->sock, SIOCSIFFLAGS, &ifr) < 0) { + wpa_printf(MSG_ERROR, "ioctl[SIOCSIFFLAGS]: %s", + strerror(errno)); + return -1; + } + + wpa_printf(MSG_DEBUG, "%s: if %s (changed) enable %d IFF_UP %d ", + __func__, drv->ifname, enable, ((ifr.ifr_flags & IFF_UP) != 0)); + + drv->flags = ifr.ifr_flags; + return 0; + +nochange: + wpa_printf(MSG_DEBUG, "%s: if %s (no change) enable %d IFF_UP %d ", + __func__, drv->ifname, enable, ((ifr.ifr_flags & IFF_UP) != 0)); return 0; } @@ -526,7 +554,7 @@ bsd_set_ieee8021x(void *priv, struct wpa_bss_params *params) __func__); return -1; } - return 0; + return bsd_ctrl_iface(priv, 1); } static void @@ -1030,7 +1058,8 @@ bsd_init(struct hostapd_data *hapd, struct wpa_init_params *params) if (l2_packet_get_own_addr(drv->sock_xmit, params->own_addr)) goto bad; - if (bsd_get_iface_flags(drv) < 0) + /* mark down during setup */ + if (bsd_ctrl_iface(drv, 0) < 0) goto bad; if (bsd_set_mediaopt(drv, IFM_OMASK, IFM_IEEE80211_HOSTAP) < 0) { @@ -1055,12 +1084,13 @@ bsd_deinit(void *priv) { struct bsd_driver_data *drv = priv; + if (drv->ifindex != 0) + bsd_ctrl_iface(drv, 0); if (drv->sock_xmit != NULL) l2_packet_deinit(drv->sock_xmit); os_free(drv); } - static int bsd_set_sta_authorized(void *priv, const u8 *addr, unsigned int total_flags, unsigned int flags_or, @@ -1309,7 +1339,7 @@ wpa_driver_bsd_associate(void *priv, struct wpa_driver_associate_params *params) * NB: interface must be marked UP for association * or scanning (ap_scan=2) */ - if (bsd_get_iface_flags(drv) < 0) + if (bsd_ctrl_iface(drv, 1) < 0) return -1; os_memset(&mlme, 0, sizeof(mlme)); @@ -1354,11 +1384,8 @@ wpa_driver_bsd_scan(void *priv, struct wpa_driver_scan_params *params) } /* NB: interface must be marked UP to do a scan */ - if (!(drv->flags & IFF_UP)) { - wpa_printf(MSG_DEBUG, "%s: interface is not up, cannot scan", - __func__); + if (bsd_ctrl_iface(drv, 1) < 0) return -1; - } #ifdef IEEE80211_IOC_SCAN_MAX_SSID os_memset(&sr, 0, sizeof(sr)); @@ -1664,7 +1691,7 @@ wpa_driver_bsd_init(void *ctx, const char *ifname, void *priv) drv->capa.key_mgmt_iftype[i] = drv->capa.key_mgmt; /* Down interface during setup. */ - if (bsd_get_iface_flags(drv) < 0) + if (bsd_ctrl_iface(drv, 0) < 0) goto fail; /* Proven to work, lets go! */ @@ -1688,6 +1715,9 @@ wpa_driver_bsd_deinit(void *priv) if (drv->ifindex != 0 && !drv->if_removed) { wpa_driver_bsd_set_wpa(drv, 0); + /* NB: mark interface down */ + bsd_ctrl_iface(drv, 0); + wpa_driver_bsd_set_wpa_internal(drv, drv->prev_wpa, drv->prev_privacy); diff --git a/libexec/rc/rc.d/wpa_supplicant b/libexec/rc/rc.d/wpa_supplicant index e7a34e6c5f6e..8a86fec90e4d 100755 --- a/libexec/rc/rc.d/wpa_supplicant +++ b/libexec/rc/rc.d/wpa_supplicant @@ -12,7 +12,6 @@ name="wpa_supplicant" desc="WPA/802.11i Supplicant for wireless network devices" -start_postcmd="wpa_poststart" rcvar= ifn="$2" @@ -28,11 +27,6 @@ is_ndis_interface() esac } -wpa_poststart() { - ifconfig ${ifn} down - ifconfig ${ifn} up -} - if is_wired_interface ${ifn} ; then driver="wired" elif is_ndis_interface ${ifn} ; then From nobody Mon Jun 26 12:08:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSl3T5qz4k6fc; Mon, 26 Jun 2023 12:08: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 4QqRSl1mByz3hQm; Mon, 26 Jun 2023 12:08:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781303; h=from:from:reply-to:subject:subject: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/AZjE6nlqPM2HDk99FBjZlR7kyk+oqpuqdEZI5JUcg=; b=lD2V12jRBh4rKm9zreD1BPbOBIc2B4zmcLh3MNkk9luW5CFsbIiBNSUc2y8q5qfS0hzW8d OLGCKYPchPIm78TKC1UiJahRWvfJUqwqTB9I3ahdnULggiiEAtQlRKmnpb/gTebIiTngIV tw8HdrlEw11HBtuVxz/LjTHckT+bzr14Bhp8a5roLmf/GKLU9zowP+oQBRH5eziAQkw6qZ YEBrSqnhAhoKblbzOiXQamzdjamWWRw3KzJ6IDQLYNKyfTOTV/O7r08LlnL8ZqOvtbv0tF 6PiPomvhwAHLKbxIytUKsaMQ7R88K4wgdQPGfa1DvkcUemDHVPt+RMu9QL822w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781303; h=from:from:reply-to:subject:subject: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/AZjE6nlqPM2HDk99FBjZlR7kyk+oqpuqdEZI5JUcg=; b=GeDLTtc7h0wTansDiJmi+wtLYVoQJEjDlA64I/j6189aFC2or/Fg1SpToe1Vjq7fFR2daT 7PUneI+zkmQ9BDa/BHZ+QuoncWH+hC3LUXhbZ//Ov1H5I4MZ/ztWheeoDGBUGS6Mev16bD KM5EaboY07uNobe3qmRunPkg/S6vTbAgJyOZYiQx3NP1mKhye6NrH65CUe8w+0XNalj+Wy qGe7lsNOPio6roUEQ/Y7smCK2lMX0AB9uAu6rJM7/o8/KZXXdx1+0NUeJNLxkl+LLkZM5C HA9YApKnfufbRs0/v0/TrRrdLOqc1LRUfQCPYG/tXQRU0weNffjgTQaAXNbXCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781303; a=rsa-sha256; cv=none; b=u7+qLDnf3ocMupFctU5BQI0l8zJ8NKp+MCV52v18KmpqScp7BdQhjyQIs4vEP2voysKHOW +E8kK6mFqf+7VkXrBJZrHb0MuSw4DlvKpjOsk3ZCEJs0aYkjBC3fd0EzVdaQ5QzFHUvoDz ijGik1PgnJLXJ1tjpOmhdA6bMW3SLp/zAg9ezBH5t2dx4wP5ienqcUrQRDHf9hR26Zx8Xj /gin2MnHuAG6c1eqXiUgQ8IvAyZjh9jdw6yCuSuqzueiLWOiCsX1WuU1l9KVxw7D/xnRNc M7fwM68grQef/MV1gjF5gjurtToM1CWhUS3YqlJVzI+KsrPRBJvJkSeKZSd8DQ== 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 4QqRSl0rtTz18Ns; Mon, 26 Jun 2023 12:08: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 35QC8N15082836; Mon, 26 Jun 2023 12:08:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8NuT082835; Mon, 26 Jun 2023 12:08:23 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:23 GMT Message-Id: <202306261208.35QC8NuT082835@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6a50f0e12d9c - stable/13 - network.subr: adjust regex for wlans_xxxxx rc.conf entries List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6a50f0e12d9c1dce684a4ad93cebdd815636add4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6a50f0e12d9c1dce684a4ad93cebdd815636add4 commit 6a50f0e12d9c1dce684a4ad93cebdd815636add4 Author: Bjoern A. Zeeb AuthorDate: 2023-04-18 14:40:13 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:04:12 +0000 network.subr: adjust regex for wlans_xxxxx rc.conf entries Drivers like ath1[012]k will not match the current wlans_*-regex as they have digits followed by letters. Adjust the regex to allow this combination in order to be able to configure interfaces with names like wlans_ath11k0="..." Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D39674 (cherry picked from commit de1dde5dfea4407119955a6f94528396b258db3f) --- libexec/rc/network.subr | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/network.subr b/libexec/rc/network.subr index 29ac06daefb2..852a548b7afc 100644 --- a/libexec/rc/network.subr +++ b/libexec/rc/network.subr @@ -1259,7 +1259,7 @@ wlan_up() _iflist=$* # Parse wlans_$parent="$child ..." - for parent in `set | sed -nE 's/wlans_([a-z]+[0-9]+)=.*/\1/p'`; do + for parent in `set | sed -nE 's/wlans_([a-z]+[a-z0-9]+[0-9]+)=.*/\1/p'`; do child_wlans=`get_if_var $parent wlans_IF` for child in ${child_wlans}; do create_args="wlandev $parent `get_if_var $child create_args_IF`" @@ -1301,7 +1301,7 @@ wlan_down() _iflist=$* # Parse wlans_$parent="$child ..." - for parent in `set | sed -nE 's/wlans_([a-z]+[0-9]+)=.*/\1/p'`; do + for parent in `set | sed -nE 's/wlans_([a-z]+[a-z0-9]+[0-9]+)=.*/\1/p'`; do child_wlans=`get_if_var $parent wlans_IF` for child in ${child_wlans}; do case $_iflist in From nobody Mon Jun 26 12:08:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSm3lZ3z4k6fd; Mon, 26 Jun 2023 12:08: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 4QqRSm2n5lz3hL8; Mon, 26 Jun 2023 12:08:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=F4NVJPve5H524fydqi/XeKGR9QZ9su532Ey240aGoQo=; b=IrBDzsOaSfEaxgNk2x44DmbCQXUJuTtG6DCuJLsH8SR0g6/UfeO7ZQcCBN9ZCb07uzifkV mDWtVFz43BTvPbmkxP1hODZX2Z+dS1BvBiBXS8xTQ2qcmlpTrf07Zaw4Kz+skwdsmODrIX s26rFSW7QZxRhzSfs/hH60u5Xr8mVwnmgh1KJU2hOL+weVMtngPYSPsWC3hw/y8+bW8qVH xnphM/ZUsSspv2mWMjCnrkx0utzIVOqOrf40v+afEow/8iKWbiIi9JPNVgzs+Tn1SMiA9U n3MpH5bWl/PBu0E/05L+kvrwxBIwjQmh0LlxA7SnnMb5TsEM9PKBN1bJS8d3Jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=F4NVJPve5H524fydqi/XeKGR9QZ9su532Ey240aGoQo=; b=rBQsRS9VZP0FdbJ+1WcW+O5wsSVn4piN+mrbrX6AcM5rO3HFp/VVYgFZVyUHm8MRmd6RN4 KrI6Wfkcai7pohh8mvRfT+dmDnkwUZub3T+HlS6CRYLz+T6uDudINebcfXEXEfKhjk9JM2 aw+z5sNfuyUJO+Yfe/D9fnEDXvSrurC/NTN7LeqPe23fsce9G2Iq28vnKbk9hZhRugjK6O +4H8P9rS8MzSLtRI+Ja01jnLV4GrO0ZKlT++V9B9mgRX4Cv/lUWZ6SlBzIS+6reQgJgZfN 5AvYdJTCA1fsz+bj5JNdjtwCd405BK7s2BOxJFwlwIe5nd62+w97v54chriAkQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781304; a=rsa-sha256; cv=none; b=KoM1zDmRq2ThRZKi4KMYjNYIloXGQ2/W+663RxnukLRyiBlMHGPv9hg0mKqnhEqwvq3DmX Ine7KtIj0+Dx5oE9nd8rEC7X9ddIrWs55GfyY2EcaHe3luvmFkzO2aZZQVABjq+gLI48CB V2Gm9R1gdprZcpvcwIrn4v/l3QMpGnbwSYZse3i+CW2EX1ECNVttfN6kBCqaO3A0wJrN8R HbuM1bGJ/MRy5B7FGeM/4UN6Whxz7m0gUtnmolNSyRwcJTvTweRoewgoKfClvAbQ0+Phti 3p3Pj14eMVMtfzs4sHs8IbB1dp5jE4GRd/wN7CNvxNnJmpBZaOMbFR/WKh/unw== 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 4QqRSm1tWrz17dV; Mon, 26 Jun 2023 12:08: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 35QC8OBq082855; Mon, 26 Jun 2023 12:08:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8OlM082854; Mon, 26 Jun 2023 12:08:24 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:24 GMT Message-Id: <202306261208.35QC8OlM082854@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: bacbebb16d84 - stable/13 - ifconfig: improve trimming off interface number at end List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: bacbebb16d844100eefdb3b98007952272428e45 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=bacbebb16d844100eefdb3b98007952272428e45 commit bacbebb16d844100eefdb3b98007952272428e45 Author: Bjoern A. Zeeb AuthorDate: 2023-05-17 20:40:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:04:18 +0000 ifconfig: improve trimming off interface number at end When trying to auto-load a module, we trim the interface number off the end. Currently we stop at the first digit. For interfaces which have numbers in the driver name this does not work well. In the current example ifconfig ath10k0 would load ath(4) instead of ath10k(4). For module/interface names like rtw88[0] we never guess correctly. To improve for the case we can, start trimming off digits from the end rather than the front. Sponsored by: The FreeBSD Foundation Reported by: thierry Reviewed by: melifaro, thierry Differential Revision: https://reviews.freebsd.org/D40137 (cherry picked from commit 2e6756b752e07878ae5f5e3e9b74934231f9fd17) --- sbin/ifconfig/ifconfig.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sbin/ifconfig/ifconfig.c b/sbin/ifconfig/ifconfig.c index f01f40e46a8b..6deeebba9f01 100644 --- a/sbin/ifconfig/ifconfig.c +++ b/sbin/ifconfig/ifconfig.c @@ -1566,11 +1566,13 @@ ifmaybeload(const char *name) /* trim the interface number off the end */ strlcpy(ifname, name, sizeof(ifname)); - for (dp = ifname; *dp != 0; dp++) - if (isdigit(*dp)) { - *dp = 0; + dp = ifname + strlen(ifname) - 1; + for (; dp > ifname; dp--) { + if (isdigit(*dp)) + *dp = '\0'; + else break; - } + } /* Either derive it from the map or guess otherwise */ *ifkind = '\0'; From nobody Mon Jun 26 12:08:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSn58gxz4k6Z4; Mon, 26 Jun 2023 12:08: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 4QqRSn3QBxz3hYl; Mon, 26 Jun 2023 12:08:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yw5uFTTNjAW5fOmXnes/GmzEcLA2Ihe/ziAjR3Z+zBA=; b=McI+xgQUawxb3edkGECYnuOK+Y0kcxskmW1Nv5xbl4ysRkInIwZ3/bg7F5jhHySiLxzYZF iE8ugH4kp9Oh26h0nTEQk2ZEKOouRuPEgCf7N5DeM01mIPwi3JH6FEZq5jdOA7wPxfBYG+ bP77cffKbl85dxgUzZX4f/E70m1nK3j05wQe5Eslg2Yc2qLWFbv9mhcY49Q1ZZ6bXYXV/l 3Ogy0ynej+8b4dGt5Ln2BoJSaV5qNmABcaT6OML5eLUnUOprWBEpRDyzgDiB7hxgAGl9pB jx9lqJ56DqetDJ2d7fOWKnkPMUED20+2gP6UhU+i3B68PVfHmt8ZiGDurUvyIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yw5uFTTNjAW5fOmXnes/GmzEcLA2Ihe/ziAjR3Z+zBA=; b=RhXw6HhRmAzKLZI6qum41VtohXTndsS3n6CGkh4uKWJUQRi7ZP/IYn6eOBKdWxlGJLK89X yXG0Tmpzgmn1Iq4qwRq0zV++OPzvNG1Rg+uIkbuTuTdRCYF8MXAf0zPev7WYM+E3D7J5bK lNqPwDYqBNF45MSFnaH0+7GVa4RQMQmy13ebEcWGBrPbSlaYBsV7IygIMP7tdcTBhqBq1a pGHMNMGbXW+ZL7LtDHlFFmSLfs7D5cx9/U3G0kpNtLKbm4EmEDhQ8oVXAHoqOCBnG66UI2 pR2m9fFj09SsGlkgAWU868weFLX6jk/IWWQs/eh4U7IcpXfM+0JAuDmxoN8lKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781305; a=rsa-sha256; cv=none; b=txzt8h/68NnET9+YOpurdgqmre/KJ+eb3Bka3toxxyWUs5vqIvuDqoP8N2Ae6c5soH2ZTT 43wkvo7eCvlW1xMm8KzcnUABy+jZ+rcwXZqS/bpIS80mBVQdqUeGjdv/nPM1DFpYRS/emb YEOKy7/MKgkY2AxOVu/A/D8T7fPsVGQmEyr1AQwpZee7zekFLc6Cuwa3xULR3tTLNYcKaR QqHBR7fL8MYq7ptll+zGyzcBWoNs0YDLubDuPQkjGWxAXwC3sKUDO1CddsCb4cxKxoA5Bk CwxmROayq41ME+t7yaVdZYjXyfQ1kp4iLVwZWIRWi2clBEznQ5sEJ3At8+Hw3g== 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 4QqRSn2CKYz18TV; Mon, 26 Jun 2023 12:08: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 35QC8PH5082874; Mon, 26 Jun 2023 12:08:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8PSV082873; Mon, 26 Jun 2023 12:08:25 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:25 GMT Message-Id: <202306261208.35QC8PSV082873@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 4bea3d1c6995 - stable/13 - man4: fix some mandoc lint for iwlwifi.4 and rtw88.4 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 4bea3d1c69952ee234553f4e83a5edcd4f4aa3d1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=4bea3d1c69952ee234553f4e83a5edcd4f4aa3d1 commit 4bea3d1c69952ee234553f4e83a5edcd4f4aa3d1 Author: Bjoern A. Zeeb AuthorDate: 2023-04-23 13:21:46 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:04:26 +0000 man4: fix some mandoc lint for iwlwifi.4 and rtw88.4 Address warnings (but one) from mandoc -T lint for these man pages. Sponsored by: The FreeBSD Foundation (cherry picked from commit b95fa4203d698063b02b03647cd00906cd94687a) --- share/man/man4/iwlwifi.4 | 16 +++++++++------- share/man/man4/rtw88.4 | 10 ++++++---- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/share/man/man4/iwlwifi.4 b/share/man/man4/iwlwifi.4 index 94614b3b15ff..201e1693783e 100644 --- a/share/man/man4/iwlwifi.4 +++ b/share/man/man4/iwlwifi.4 @@ -28,7 +28,7 @@ .\" $FreeBSD$ .\" .Dd June 3, 2022 -.Dt iwlwifi 4 +.Dt IWLWIFI 4 .Os .Sh NAME .Nm iwlwifi @@ -62,10 +62,10 @@ all chipsets supported by the part of that driver. .Pp .Bl -bullet -compact -.% --------------------------------------------------------------------- -.% This list is manually generated from a sysctl and post-processing. -.% Edits will be overwritten on next update. -.% --------------------------------------------------------------------- +.\" --------------------------------------------------------------------- +.\" This list is manually generated from a sysctl and post-processing. +.\" Edits will be overwritten on next update. +.\" --------------------------------------------------------------------- .It Intel(R) Dual Band Wireless AC 7260 .It @@ -180,7 +180,7 @@ Intel(R) Wi-Fi 6E AX231 160MHz Intel(R) TBD Bz device .It Intel(R) Wi-Fi 6 AX204 160MHz -.% --------------------------------------------------------------------- +.\" --------------------------------------------------------------------- .El .Pp .Nm @@ -197,7 +197,9 @@ The driver uses the and .Em linuxkpi compat framework to bridge between the Linux and -native FreeBSD driver code as well as to the native +native +.Fx +driver code as well as to the native .Xr net80211 4 wireless stack. .Pp diff --git a/share/man/man4/rtw88.4 b/share/man/man4/rtw88.4 index 4508ab8ab4f7..b6fad219d8c8 100644 --- a/share/man/man4/rtw88.4 +++ b/share/man/man4/rtw88.4 @@ -24,8 +24,8 @@ .\" .\" $FreeBSD$ .\" -.Dd August 7, 2022 -.Dt rtw88 4 +.Dd April 22, 2023 +.Dt RTW88 4 .Os .Sh NAME .Nm rtw88 @@ -69,7 +69,9 @@ The driver uses the and .Em linuxkpi compat framework to bridge between the Linux and -native FreeBSD driver code as well as to the native +native +.Fx +driver code as well as to the native .Xr net80211 4 wireless stack. .Pp @@ -108,4 +110,4 @@ section above. The .Nm driver first appeared in -.Fx 14.0 . +.Fx 13.2 . From nobody Mon Jun 26 12:08:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSp5WjDz4k6Pg; Mon, 26 Jun 2023 12:08: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 4QqRSp4PlXz3hby; Mon, 26 Jun 2023 12:08:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781306; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l9YEQN2U5ThFrZgxrbuW+ePyEdJilIcw5g1h19hGRh4=; b=jOxHpDXsH1Zb9OxPOiKi7R6nZWm4kOE9nU/Y0ea4qR2VB0/LYG+P7tbvO81VZaPzgE6s9h HF2Uze+4ddd//TPJQm7rFh0b+L95TmGqB1PPu6OVRjLr1XS17CiwrPhYr7TN47FZKNDcuE +KORx1VREN3jRbnk72HaktLAIDjgvYmS0pcDqeI3oG+AVFhQxSyogkwBjsOTB+zKyXfd2+ xxlwdaeiG1AbV4F1RW9Ktf6HKqAfqmpde2w9W9Hlqe6poPatPjD/oT+XgzN8rb2B6WA+eV 3LebkH06entpMmsEJySnfKUjv8phsWTF3PKX4H5NwQOeP0xwgJ8pNUBGoZBS1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781306; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l9YEQN2U5ThFrZgxrbuW+ePyEdJilIcw5g1h19hGRh4=; b=h48I3mHwbF2GENZYL0kn+5J3bK2PpDCTb1Ru6ZYohucK+SzjsBwJpEQt6+epf/b/wQ7UiN HHK44WAll5Oy7FwZ+2o9+7K7+Z0XUte5d9b2AmMUF05K5z+4whfQZmOYTtioRb2rldwOk6 YXh297ekCIyogtfmRaQewvsyg6BvT+cMQLbfmoEt0ZB2ux03HU0swvhOP49bSbdlFSE6uu AvCu3lI4A8nbdj8wCExnSM/QFIY2EwRYQAdZujXQzmiWKhGrQJ28xTS5B7XbXL2fO1GtOy AAevkZ1s0eveMuo6Ksj+782Zb9yPXWmrtoW6tpVejil9Xn/6luugrr63UF0YMw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781306; a=rsa-sha256; cv=none; b=g4arXOJzo3KZQAVtPYurS1/ClY5DU145yRLCCI/pEIlX/lOrqTHT5Ux1m3hA948WP06YIL VQ/MJ61dQlzShbs7o+tn1u0x6rVYo/n2KySXNr1PPKbP9yflBQu712HUz5lap2NuUAORI3 Urd4crKfHnsS+iaLqc+bAj6FHyeFkoS9XPByAifAHJv/7m1RRBHoCaXsLNtK6/L61Nuz2p D4fomfVqwrkISvok1OO29n7DWfF1mSn+XFNSEdnbZrKAidUisK6Qxk65mbxkB9rNRABO98 F7zi6yaQHhgL935AqUCv9CsQ0/aS+SyASWM498UgP6kqS0zukmGCleADY2FL1g== 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 4QqRSp3789z17dW; Mon, 26 Jun 2023 12:08: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 35QC8QPo082893; Mon, 26 Jun 2023 12:08:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8QNn082892; Mon, 26 Jun 2023 12:08:26 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:26 GMT Message-Id: <202306261208.35QC8QNn082892@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: b534e975c2ba - stable/13 - KASAN: add bus_space*read*_8 for aarch64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: b534e975c2ba6b390db01d87a5993bb151b4ade9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b534e975c2ba6b390db01d87a5993bb151b4ade9 commit b534e975c2ba6b390db01d87a5993bb151b4ade9 Author: Bjoern A. Zeeb AuthorDate: 2023-04-15 15:35:50 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:07:12 +0000 KASAN: add bus_space*read*_8 for aarch64 Add the remaining bus_space*read*_8 functions conditionally for only arm64 in order to not break KASAN builds with new code using one of them. Suggested by: markj Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D39581 (cherry picked from commit 42742fe725102a73b09800f4d041ad69b5d81edb) --- sys/kern/subr_asan.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/kern/subr_asan.c b/sys/kern/subr_asan.c index 2f0334cf52be..95b5fcc1ea2d 100644 --- a/sys/kern/subr_asan.c +++ b/sys/kern/subr_asan.c @@ -868,6 +868,13 @@ ASAN_BUS_READ_PTR_FUNC(region, 4, uint32_t) ASAN_BUS_READ_PTR_FUNC(region_stream, 4, uint32_t) ASAN_BUS_READ_FUNC(, 8, uint64_t) +#if defined(__aarch64__) +ASAN_BUS_READ_FUNC(_stream, 8, uint64_t) +ASAN_BUS_READ_PTR_FUNC(multi, 8, uint64_t) +ASAN_BUS_READ_PTR_FUNC(multi_stream, 8, uint64_t) +ASAN_BUS_READ_PTR_FUNC(region, 8, uint64_t) +ASAN_BUS_READ_PTR_FUNC(region_stream, 8, uint64_t) +#endif #define ASAN_BUS_WRITE_FUNC(func, width, type) \ void kasan_bus_space_write##func##_##width(bus_space_tag_t tag, \ From nobody Mon Jun 26 12:08:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSr0tYKz4k6X2; Mon, 26 Jun 2023 12:08:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqRSq6HM9z3hfZ; Mon, 26 Jun 2023 12:08:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781307; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YfoahWHQsmJWYawgRdUKoNC/habO1bh/7c3hwqU9X6o=; b=fdgApZSwigS9D0FOkdG6t0HVFSLoGEdKc5eszya70erjnSJtoyxpGrMlQx97g7T25MIe63 LxkrGxb9G7alwwCGH2EDpAUD3SPXtSEI0MUr41AovCmRv0uj1AV6X3v3Z3610WRCPzoJGb SRS6lo32jkChFgNq5J4bRw00YvMaeMY3pkRWvhQJjL06S3wnGzt9mpIENnOvdyonO1mib+ QY0hf8XrW+pLUoiIrb1n3wN0yNegodnzPly9WEvwCwZA2FpHoDUN+PaKWBEqD9tnzflVbu UKAGFApxiD2yx1iGPWh9BoBFQuPhNlV3rCCLhr8a/q/BnAQLVeKyQdEF7l9+HQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781307; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YfoahWHQsmJWYawgRdUKoNC/habO1bh/7c3hwqU9X6o=; b=qvkHemWlCRw/Wvj/4ej8CwzohP7tpisN35WPyXbLmKrNVj4+JLK5UNfab1VGWzc2nuqfwv q/fDrLH/YU3uUdr2SMOSoGIDM837MRNLUhEizIoZ1/dwpRBCtgngByLqiT4+4SVuP56m70 5mZng/w4U/BdqhFz6ryqXse8HHmQfY3ADB6UGfOw3UlGnQmxxGAz2XyliEAKMcocg9uE3x 5SniCiqCJ51fUZgCw5uHAbe3dg58tZFA3iOZtJhN12FctFKY0MQtrQVtL2WsyD/koniAap 6jTWkCHjUJQsHtzPxhGCCaY2m45eZ5Qyi9p9jTQToqVQY6L9mekx0/9oQ8yhXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781307; a=rsa-sha256; cv=none; b=vLApS20vWBPMhdkG8Enhel0+F0isK55p5AxFRTj6lPPjara0tNuJeoqLNss+63A4uSk+Ax c1FgzioUsge4jtgrq0eqwgJYXXxLKHyCbtB/fI59RuLB2YJWifsJREpGLWd9Vn2SxJDS8U 7sDjYrdEww21/OzM4yWZo280A6ZzyYyOu+4F8ItdYsr2LIjaopWucpsDx5OpIUMDc7A4pb EyHvVyFWkPymgGv3UVT/0ka7HS3aDcEvLvJ6OWYPBy7aXFL4pBsLGCCxc/7HINylU25DyH oQSx0Ka7Bk3fMGFlYZlCL8rZZgTx5Q221x6PWlb8Mrqn1dTBkSwXG66dY6pgMQ== 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 4QqRSq3lrjz18RM; Mon, 26 Jun 2023 12:08: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 35QC8Rmx082917; Mon, 26 Jun 2023 12:08:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8RSZ082916; Mon, 26 Jun 2023 12:08:27 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:27 GMT Message-Id: <202306261208.35QC8RSZ082916@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ee139670c0a1 - stable/13 - rtw89: fix -Wunused-but-set-variable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ee139670c0a1b2133190cd786e7ac2506a5a2a22 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ee139670c0a1b2133190cd786e7ac2506a5a2a22 commit ee139670c0a1b2133190cd786e7ac2506a5a2a22 Author: Bjoern A. Zeeb AuthorDate: 2023-03-23 00:29:38 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:07:39 +0000 rtw89: fix -Wunused-but-set-variable Fix a -Wunused-but-set-variable warning by adding the field to the debug logging as is done for other versions handler functions. (cherry picked from commit 700acdc7b53213c1d9f35c05a1c1f58f285cd14d) --- sys/contrib/dev/rtw89/coex.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/contrib/dev/rtw89/coex.c b/sys/contrib/dev/rtw89/coex.c index 4779fe3ef1f1..aa90bf616b41 100644 --- a/sys/contrib/dev/rtw89/coex.c +++ b/sys/contrib/dev/rtw89/coex.c @@ -4092,8 +4092,13 @@ static void _update_wl_info(struct rtw89_dev *rtwdev) } rtw89_debug(rtwdev, RTW89_DBG_BTC, +#if defined(__linux__) "[BTC], cnt_connect = %d, link_mode = %d\n", cnt_connect, wl_rinfo->link_mode); +#elif defined(__FreeBSD__) + "[BTC], cnt_connect = %d, connecting = %d, link_mode = %d\n", + cnt_connect, cnt_connecting, wl_rinfo->link_mode); +#endif _fw_set_drv_info(rtwdev, CXDRVINFO_ROLE); } From nobody Mon Jun 26 12:08:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSs11zDz4k6Vm; Mon, 26 Jun 2023 12:08: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 4QqRSr5rRgz3hk9; Mon, 26 Jun 2023 12:08:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781308; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IhYgkFTC9xWh1NdxvPLtbQtqk9L826HphkJdT1+pMj4=; b=Yd+ofRt5/2AhkHghjZwFsUEihRN4VP5acs+v9cKdRBuRKcJtQ66v0cU4ZuJ8H8jRkc5yK4 B9PLKPyutnbltdkD1Q8LoX4Uv8maZGEitP4PAuDRbwZAmQojwlXCIuP1vLkGkUPqD4UHYl Y85xm+j18i0Ui0jFYjPTzxUO34zgPVZNmYnYLnCNyoPzw/MOj2LExDitfds0TIitJKpCUx w6lAYfkttdbVNircULcBjNzI4HtVEmdyAIppWtmDsSbqJH6c1b2+INHEOqSQXKnUvanzj2 5+nnJ+N/ronGF4f/uATZhRwgp2BMQEoAccFHVLjjRvY14nnzHCKsqU9q+ifIrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781308; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IhYgkFTC9xWh1NdxvPLtbQtqk9L826HphkJdT1+pMj4=; b=NG38yqBwSGLRqiQxiliF6mLaTNgxyqXLa9DbtoBuosyILnc+EeN/VwNok2F0MhtOGeQyXQ 7YX9diNui3OziIWW7y+QdDfYFzdAkDBtAHM1RpudsnTbo37wAk263eK4f0rGd4EAIsyLlt UeZw/KRFxdf7/8mLhtgtqIkcHucfWTXuCSNmwjMUOOpYsX+9gHM59++wyz9oUBbsXn0MiQ E0yfCIN7339I8/RFQGAki3bqBk9HHGSrm04CTWvQTiFOgkwiYfOyHSbonbhUKuoRdcBIFt tveo7gEw5J5kyen7nSrICfF40HaN/U2c9oUAnakhsxAniRGh++RgUoeQrZoHTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781308; a=rsa-sha256; cv=none; b=mHNFgQf3QhXaePkHFZIi0saxYyVRGTkdPz2H3Yk6m3/WIsH4LNDlUCVtd7BycfpIC3mcSi H3K71puH+nhnulhPyGOPHVLcxQbuBIm5sbgEtG+V3cIkpjxl0B9Jvr4wFo8Zn6Mw6fF86g wQA4NiX5W+3TBjCuAjBTFMf9bPPmfzy1wGgYQxJ5yaR4dRZ+9TKmxk2URzJI5jJRC/LcTH M5tuqQAcfVro1WhJixFMjf87E+X2az8hahcCqXf868LS1LkRASO72fRfc2VA0uuXaROK+T iTJc8ckGQv9ZpiamjsUFzzxH/UbT0jYMzwIOurTvemYym+I622wWKCg+R/u/xQ== 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 4QqRSr4xttz17ZS; Mon, 26 Jun 2023 12:08:28 +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 35QC8SiC082942; Mon, 26 Jun 2023 12:08:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8SQ6082941; Mon, 26 Jun 2023 12:08:28 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:28 GMT Message-Id: <202306261208.35QC8SQ6082941@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: da37ca4a9acb - stable/13 - iwlwifi: rtw88: rtw89: fix gcc warnings List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: da37ca4a9acb5c5fb6f72536b293431273d97f92 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=da37ca4a9acb5c5fb6f72536b293431273d97f92 commit da37ca4a9acb5c5fb6f72536b293431273d97f92 Author: Bjoern A. Zeeb AuthorDate: 2023-04-18 19:51:09 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:08:42 +0000 iwlwifi: rtw88: rtw89: fix gcc warnings Fix -Wno-format and unused variables warnings with gcc by adopting (to|the) FreeBSD-specific code. Reported by: jhb Sponsored by: The FreeBSD Foundation Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D39673 (cherry picked from commit f621b087c00776de713944ae6561e44f83e7b541) --- sys/contrib/dev/iwlwifi/fw/dbg.h | 4 ++++ sys/contrib/dev/iwlwifi/iwl-debug.c | 6 +++--- sys/contrib/dev/iwlwifi/mvm/mac-ctxt.c | 4 ++++ sys/contrib/dev/iwlwifi/mvm/rx.c | 8 ++++++++ sys/contrib/dev/iwlwifi/mvm/rxmq.c | 4 ++++ sys/contrib/dev/rtw88/debug.c | 2 +- sys/contrib/dev/rtw89/debug.c | 2 +- sys/modules/iwlwifi/Makefile | 3 --- 8 files changed, 25 insertions(+), 8 deletions(-) diff --git a/sys/contrib/dev/iwlwifi/fw/dbg.h b/sys/contrib/dev/iwlwifi/fw/dbg.h index be7806407de8..e240ef2e1c96 100644 --- a/sys/contrib/dev/iwlwifi/fw/dbg.h +++ b/sys/contrib/dev/iwlwifi/fw/dbg.h @@ -164,7 +164,11 @@ _iwl_fw_dbg_trigger_simple_stop(struct iwl_fw_runtime *fwrt, if (!iwl_fw_dbg_trigger_check_stop(fwrt, wdev, trigger)) return; +#if defined(__linux__) iwl_fw_dbg_collect_trig(fwrt, trigger, NULL); +#elif defined(__FreeBSD__) + iwl_fw_dbg_collect_trig(fwrt, trigger, ""); +#endif } #define iwl_fw_dbg_trigger_simple_stop(fwrt, wdev, trig) \ diff --git a/sys/contrib/dev/iwlwifi/iwl-debug.c b/sys/contrib/dev/iwlwifi/iwl-debug.c index 5a9c8bc70168..010ac7b4294f 100644 --- a/sys/contrib/dev/iwlwifi/iwl-debug.c +++ b/sys/contrib/dev/iwlwifi/iwl-debug.c @@ -49,7 +49,7 @@ void __iwl_ ##fn(struct device *dev, const char *fmt, ...) \ \ va_start(args, fmt); \ vaf.va = &args; \ - vasprintf(&str, M_KMALLOC, fmt, args); \ + vasprintf(&str, M_KMALLOC, vaf.fmt, args); \ dev_ ##fn(dev, "%s", str); \ trace_iwlwifi_ ##fn(&vaf); \ free(str, M_KMALLOC); \ @@ -88,7 +88,7 @@ void __iwl_err(struct device *dev, enum iwl_err_mode mode, const char *fmt, ...) dev_err(dev, "%pV", &vaf); #elif defined(__FreeBSD__) char *str; - vasprintf(&str, M_KMALLOC, fmt, args2); + vasprintf(&str, M_KMALLOC, vaf.fmt, args2); dev_err(dev, "%s%s", (mode == IWL_ERR_MODE_RFKILL) ? "(RFKILL)" : "", str); free(str, M_KMALLOC); #endif @@ -154,7 +154,7 @@ void __iwl_dbg(struct device *dev, dev_printk(KERN_DEBUG, dev, "%s %pV", function, &vaf); #elif defined(__FreeBSD__) char *str; - vasprintf(&str, M_KMALLOC, fmt, args); + vasprintf(&str, M_KMALLOC, vaf.fmt, args); dev_printk(KERN_DEBUG, dev, "%d %u %s %s", curthread->td_tid, (unsigned int)ticks, function, str); free(str, M_KMALLOC); diff --git a/sys/contrib/dev/iwlwifi/mvm/mac-ctxt.c b/sys/contrib/dev/iwlwifi/mvm/mac-ctxt.c index 88893fade5cd..99624505c132 100644 --- a/sys/contrib/dev/iwlwifi/mvm/mac-ctxt.c +++ b/sys/contrib/dev/iwlwifi/mvm/mac-ctxt.c @@ -1438,7 +1438,11 @@ void iwl_mvm_rx_missed_beacons_notif(struct iwl_mvm *mvm, if (rx_missed_bcon_since_rx >= stop_trig_missed_bcon_since_rx || rx_missed_bcon >= stop_trig_missed_bcon) +#if defined(__linux__) iwl_fw_dbg_collect_trig(&mvm->fwrt, trigger, NULL); +#elif defined(__FreeBSD__) + iwl_fw_dbg_collect_trig(&mvm->fwrt, trigger, ""); +#endif out: rcu_read_unlock(); diff --git a/sys/contrib/dev/iwlwifi/mvm/rx.c b/sys/contrib/dev/iwlwifi/mvm/rx.c index 72d03c5260dc..ee9249a0c5b0 100644 --- a/sys/contrib/dev/iwlwifi/mvm/rx.c +++ b/sys/contrib/dev/iwlwifi/mvm/rx.c @@ -427,7 +427,11 @@ void iwl_mvm_rx_rx_mpdu(struct iwl_mvm *mvm, struct napi_struct *napi, if (rx_status->signal < rssi) iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, +#if defined(__linux__) NULL); +#elif defined(__FreeBSD__) + ""); +#endif } if (!mvm->tcm.paused && len >= sizeof(*hdr) && @@ -692,7 +696,11 @@ iwl_mvm_rx_stats_check_trigger(struct iwl_mvm *mvm, struct iwl_rx_packet *pkt) if (le32_to_cpup((__le32 *) (pkt->data + trig_offset)) < trig_thold) return; +#if defined(__linux__) iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, NULL); +#elif defined(__FreeBSD__) + iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, ""); +#endif } static void iwl_mvm_stats_energy_iter(void *_data, diff --git a/sys/contrib/dev/iwlwifi/mvm/rxmq.c b/sys/contrib/dev/iwlwifi/mvm/rxmq.c index 7325e9d44273..872a45ea15ca 100644 --- a/sys/contrib/dev/iwlwifi/mvm/rxmq.c +++ b/sys/contrib/dev/iwlwifi/mvm/rxmq.c @@ -1958,7 +1958,11 @@ void iwl_mvm_rx_mpdu_mq(struct iwl_mvm *mvm, struct napi_struct *napi, if (rx_status->signal < rssi) iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, +#if defined(__linux__) NULL); +#elif defined(__FreeBSD__) + ""); +#endif } if (ieee80211_is_data(hdr->frame_control)) diff --git a/sys/contrib/dev/rtw88/debug.c b/sys/contrib/dev/rtw88/debug.c index 7b6319c07b65..fbbd11be5eef 100644 --- a/sys/contrib/dev/rtw88/debug.c +++ b/sys/contrib/dev/rtw88/debug.c @@ -1284,7 +1284,7 @@ void __rtw_dbg(struct rtw_dev *rtwdev, enum rtw_debug_mask mask, #if defined(__linux__) dev_printk(KERN_DEBUG, rtwdev->dev, "%pV", &vaf); #elif defined(__FreeBSD__) - vlog(LOG_DEBUG, fmt, args); + vlog(LOG_DEBUG, vaf.fmt, args); #endif va_end(args); diff --git a/sys/contrib/dev/rtw89/debug.c b/sys/contrib/dev/rtw89/debug.c index 1a14633c5ff7..90a15279b8f8 100644 --- a/sys/contrib/dev/rtw89/debug.c +++ b/sys/contrib/dev/rtw89/debug.c @@ -2655,7 +2655,7 @@ void __rtw89_debug(struct rtw89_dev *rtwdev, #elif defined(__FreeBSD__) { char *str; - vasprintf(&str, M_KMALLOC, fmt, args); + vasprintf(&str, M_KMALLOC, vaf.fmt, args); dev_printk(KERN_DEBUG, rtwdev->dev, "%s", str); free(str, M_KMALLOC); } diff --git a/sys/modules/iwlwifi/Makefile b/sys/modules/iwlwifi/Makefile index 5cf652267354..831fe97847a5 100644 --- a/sys/modules/iwlwifi/Makefile +++ b/sys/modules/iwlwifi/Makefile @@ -63,7 +63,4 @@ CFLAGS+= -DCONFIG_IWLWIFI_DEVICE_TRACING=1 #CFLAGS+= -DCONFIG_THERMAL=1 #CFLAGS+= -DCONFIG_EFI=1 -# GCC warns about NULL format strings passed to iwl_fw_dbg_collect_trig -CWARNFLAGS.gcc+= -Wno-format - .include From nobody Mon Jun 26 12:08:29 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSt0bVbz4k6Vs; Mon, 26 Jun 2023 12:08:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqRSs6lPpz3hmC; Mon, 26 Jun 2023 12:08:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781309; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g8a1gP3F4DASdDpHfZ2hvo5e6gk1PkbP3Y4Ps8Poydw=; b=TQT4rjN8uIrPWzXUz12QyZnEiSmKwhHtGT215+pFidaYg0XdwkM7fXarMJrx0d/99X4Rzd Se+TGSeHpF+9ifMSmcoln2NUObREzXQcot+eelJgI6i/fMFEmDyKe6zzSfxNWQQy8FkfFT DlDzIdfvigTC9Up6b/xSicNvmye9CAduZLpvlZqvGDqe4ceJKcak5+Bm2lrMnjz4X+YLV6 WTcz4xd3Ue6DX2e17FzGXP0JN9n0ss6CpDPw0P1yQq1NkagSXa7zukyAKYgs9Tm2MJydZ5 cl6jQe6VqlnzK1d3wiEYgfQZ+LlbYjjiozzBtJtmZ+o88rhsw39Zo9lI9zY6YA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781309; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g8a1gP3F4DASdDpHfZ2hvo5e6gk1PkbP3Y4Ps8Poydw=; b=p9o/xupbUw58A1481ydnx5c7uLO+TjqEy5AhmIfHH1Gq5t5NtJ5y9mz+UCqpoj/CLAQgXT jprP6qZ7Tk/QDyra2/Rij9SYZH1va5uY0+b+EvXuv7BF42e3Sw1gIESg1DryuGvSQ5qR/J RUcX382EtQFe0aq+UfN0+V4S2EDghhGEIh36qDXqgylldT3kYBa2Yypcl9Z2dT4Z+CLc1Q hAuLIpA5XHye+EOTjFY2Ph8aUR1/48aCplpA7I8IwDnECJyXYsLgXwS+fgCn08KDmVNtY5 0CSIdQHo78j1yKEulT1hWUVC0XKJCjxuoDtbdg3LfFLYkhrt/Ihbh0bhOkOtKg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781309; a=rsa-sha256; cv=none; b=uFhM/fPoqEfWYEQfFujX1/3tWG3jkkLbkWiYTpB9RxdEjxtYdnvq/JmApURaA222ZoDjA7 EP04evDKyJ13P9ENDhr9un9b4jtbD1NQgLTlE2FvcGmyTPxAGWdEBArjg7VfUrjzeF27Hg BkXsXdNrNHbF8nTtHFaj6TCJpNYjeL16Zo/lwGRUr8igVk1kHgGY6JflY++uk1i9gFPNSQ opsaumyYjq6/WuH0CJHMdXvBHQFzebnPvTnL3wFsjIR4nDKg921NKY/MXUZyz8V7rskBFP rMNmIRvr1oDeXcv3NhZsF5rb4t5SYNqNyJUprNm9uZt91fyVpNTNlDVLtGxGkw== 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 4QqRSs5mcSz18RN; Mon, 26 Jun 2023 12:08: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 35QC8TSs082961; Mon, 26 Jun 2023 12:08:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8TlH082960; Mon, 26 Jun 2023 12:08:29 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:29 GMT Message-Id: <202306261208.35QC8TlH082960@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ecb6cab8288b - stable/13 - iwlwifi: quieten more compiler warnings List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ecb6cab8288b6b5f411309a9af8ac46bb3d8a21e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ecb6cab8288b6b5f411309a9af8ac46bb3d8a21e commit ecb6cab8288b6b5f411309a9af8ac46bb3d8a21e Author: Bjoern A. Zeeb AuthorDate: 2023-04-20 15:57:14 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:09:37 +0000 iwlwifi: quieten more compiler warnings Quieten some more (valid) gcc warnings and disable dead code. There are more warnings, some probably a compiler problem, the other related to firmware structs which I do not want to adjust just locally. Leave a comment to revisit after a next driver update. Sponsored by: The FreeBSD Foundation (cherry picked from commit 7db7bfe1a7b95c1acfc7861e05ee8808d448715f) --- sys/contrib/dev/iwlwifi/fw/dbg.c | 6 ++++++ sys/contrib/dev/iwlwifi/fw/pnvm.c | 3 +++ sys/contrib/dev/iwlwifi/mvm/ftm-initiator.c | 4 ++++ sys/contrib/dev/iwlwifi/mvm/ftm-responder.c | 2 ++ sys/contrib/dev/iwlwifi/mvm/mvm.h | 2 ++ sys/contrib/dev/iwlwifi/mvm/sta.c | 2 ++ sys/contrib/dev/iwlwifi/mvm/sta.h | 2 ++ 7 files changed, 21 insertions(+) diff --git a/sys/contrib/dev/iwlwifi/fw/dbg.c b/sys/contrib/dev/iwlwifi/fw/dbg.c index c2928d1f2b65..fd3483fe50b2 100644 --- a/sys/contrib/dev/iwlwifi/fw/dbg.c +++ b/sys/contrib/dev/iwlwifi/fw/dbg.c @@ -1459,6 +1459,9 @@ static int iwl_dump_ini_rxf_iter(struct iwl_fw_runtime *fwrt, __le32 *data; int i; +#if defined(__FreeBSD__) + rxf_data.size = 0; +#endif iwl_ini_get_rxf_data(fwrt, reg_data, &rxf_data); if (!rxf_data.size) return -EIO; @@ -1984,6 +1987,9 @@ static u32 iwl_dump_ini_rxf_get_size(struct iwl_fw_runtime *fwrt, if (reg->fifos.hdr_only) return size; +#if defined(__FreeBSD__) + rx_data.size = 0; +#endif iwl_ini_get_rxf_data(fwrt, reg_data, &rx_data); size += rx_data.size; diff --git a/sys/contrib/dev/iwlwifi/fw/pnvm.c b/sys/contrib/dev/iwlwifi/fw/pnvm.c index b6d3ac6ed440..1ced9cb2836b 100644 --- a/sys/contrib/dev/iwlwifi/fw/pnvm.c +++ b/sys/contrib/dev/iwlwifi/fw/pnvm.c @@ -319,6 +319,9 @@ parse: skip_parse: data = NULL; +#if defined(__FreeBSD__) + len = 0; +#endif /* now try to get the reduce power table, if not loaded yet */ if (!trans->reduce_power_loaded) { data = iwl_uefi_get_reduced_power(trans, &len); diff --git a/sys/contrib/dev/iwlwifi/mvm/ftm-initiator.c b/sys/contrib/dev/iwlwifi/mvm/ftm-initiator.c index 430044bc4755..66140af891d3 100644 --- a/sys/contrib/dev/iwlwifi/mvm/ftm-initiator.c +++ b/sys/contrib/dev/iwlwifi/mvm/ftm-initiator.c @@ -230,7 +230,11 @@ static void iwl_mvm_ftm_cmd_v5(struct iwl_mvm *mvm, struct ieee80211_vif *vif, static void iwl_mvm_ftm_cmd_common(struct iwl_mvm *mvm, struct ieee80211_vif *vif, +#if defined(__linux__) struct iwl_tof_range_req_cmd_v9 *cmd, +#elif defined(__FreeBSD__) + struct iwl_tof_range_req_cmd_v9 *cmd, /* XXX-BZ Probably better solved by a common struct in fw for top parts of the struct. */ +#endif struct cfg80211_pmsr_request *req) { int i; diff --git a/sys/contrib/dev/iwlwifi/mvm/ftm-responder.c b/sys/contrib/dev/iwlwifi/mvm/ftm-responder.c index 9729680476fd..4cb15046ec5c 100644 --- a/sys/contrib/dev/iwlwifi/mvm/ftm-responder.c +++ b/sys/contrib/dev/iwlwifi/mvm/ftm-responder.c @@ -306,6 +306,7 @@ static void iwl_mvm_resp_del_pasn_sta(struct iwl_mvm *mvm, kfree(sta); } +#if defined(__linux__) int iwl_mvm_ftm_respoder_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, u8 *addr, u32 cipher, u8 *tk, u32 tk_len, @@ -374,6 +375,7 @@ int iwl_mvm_ftm_resp_remove_pasn_sta(struct iwl_mvm *mvm, IWL_ERR(mvm, "FTM: PASN station %pM not found\n", addr); return -EINVAL; } +#endif int iwl_mvm_ftm_start_responder(struct iwl_mvm *mvm, struct ieee80211_vif *vif) { diff --git a/sys/contrib/dev/iwlwifi/mvm/mvm.h b/sys/contrib/dev/iwlwifi/mvm/mvm.h index 73fd5dca45c4..7e905deab8ab 100644 --- a/sys/contrib/dev/iwlwifi/mvm/mvm.h +++ b/sys/contrib/dev/iwlwifi/mvm/mvm.h @@ -1993,12 +1993,14 @@ void iwl_mvm_ftm_restart_responder(struct iwl_mvm *mvm, struct ieee80211_vif *vif); void iwl_mvm_ftm_responder_stats(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb); +#if defined(__linux__) int iwl_mvm_ftm_resp_remove_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, u8 *addr); int iwl_mvm_ftm_respoder_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, u8 *addr, u32 cipher, u8 *tk, u32 tk_len, u8 *hltk, u32 hltk_len); +#endif void iwl_mvm_ftm_responder_clear(struct iwl_mvm *mvm, struct ieee80211_vif *vif); diff --git a/sys/contrib/dev/iwlwifi/mvm/sta.c b/sys/contrib/dev/iwlwifi/mvm/sta.c index cf3d0922cf83..71d9f2a2988a 100644 --- a/sys/contrib/dev/iwlwifi/mvm/sta.c +++ b/sys/contrib/dev/iwlwifi/mvm/sta.c @@ -4116,6 +4116,7 @@ u16 iwl_mvm_tid_queued(struct iwl_mvm *mvm, struct iwl_mvm_tid_data *tid_data) return ieee80211_sn_sub(sn, tid_data->next_reclaimed); } +#if defined(__linux__) int iwl_mvm_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, struct iwl_mvm_int_sta *sta, u8 *addr, u32 cipher, u8 *key, u32 key_len) @@ -4155,6 +4156,7 @@ out: iwl_mvm_dealloc_int_sta(mvm, sta); return ret; } +#endif void iwl_mvm_cancel_channel_switch(struct iwl_mvm *mvm, struct ieee80211_vif *vif, diff --git a/sys/contrib/dev/iwlwifi/mvm/sta.h b/sys/contrib/dev/iwlwifi/mvm/sta.h index f1a4fc3e4038..d72f52230f22 100644 --- a/sys/contrib/dev/iwlwifi/mvm/sta.h +++ b/sys/contrib/dev/iwlwifi/mvm/sta.h @@ -545,9 +545,11 @@ void iwl_mvm_modify_all_sta_disable_tx(struct iwl_mvm *mvm, bool disable); void iwl_mvm_csa_client_absent(struct iwl_mvm *mvm, struct ieee80211_vif *vif); void iwl_mvm_add_new_dqa_stream_wk(struct work_struct *wk); +#if defined(__linux__) int iwl_mvm_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, struct iwl_mvm_int_sta *sta, u8 *addr, u32 cipher, u8 *key, u32 key_len); +#endif void iwl_mvm_cancel_channel_switch(struct iwl_mvm *mvm, struct ieee80211_vif *vif, u32 mac_id); From nobody Mon Jun 26 12:08:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSv27G4z4k6XP; Mon, 26 Jun 2023 12:08: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 4QqRSv0zXKz3hgc; Mon, 26 Jun 2023 12:08:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781311; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NBAdzrAP2xTzjZu4nFGx57g1/PDUA8FhqejlOyl80YU=; b=T0H8c/O2m8erfgHycD25H9CehmK6e2VuNHFiNfJelSpu0H+1bmZ6FJGLJSOWnx/2EccB/l c2WWNyPvEW5q3o950iDpUG8wjuZmW2y1mJp8/5DqDeYSDKPI8aAoLDU/DiUFFQpQKLi9bU HL/Ax2AGjfzhJwb7474OxDyQkhSLDkwme/H8z//kQ69cLzg1nmnji33nI9xtvp9lFy6ctc WKKGDbi6UwjjzDpW0O7CUd93kVG6RJto8437N1Nj2kRvtwau+REO9cm8KmIii6AoWwPpcq u3/2ztDcoN5ZUPtFIPGTHogpUnSHtMrBSMfWw6Y/lX3Xx5wuWYVOCLKjp58hnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781311; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NBAdzrAP2xTzjZu4nFGx57g1/PDUA8FhqejlOyl80YU=; b=MS4prPF6NqYcBpTC9LiZ7Zd2ONGB3JEMUqq4ydSV86q/4EC2/gXgGBtQu6jL8dv7L4xd+/ 1Y+swIYfClPfSmUrytAGA//ubBOQjPo9iurlN+z/1JY02bk/USA6xrAWqSiOU0mweQ88WF b3tfHhyc8cjkvMdC+vXF1Pmf46wyZOFLWuM2aoMVtync7YJOPyekwmteOmaSe0gqsUhZM4 ZYVAUIdCxfh5y7jZoin3irMh3s0V6wERgX4IZDlp0SrFW8Kb2GvZoUUNabFllZ9ttDmEsg GIe5zzwH3P3ug+pdyiTR4FFtzFpz4YVjaQqMDmuSQ/BjLYaCN5vq/+CDT5HjCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781311; a=rsa-sha256; cv=none; b=lpu4uunk0qLcfL2NSttMaDdoMqVPBUSEJuxJfVEpshk7LSgcXIiBC7Bxg5s68/PaPXXfQc +nHzyeoEzdxTeEh+RGmhAKtkuUUmC7xfKEbqlpBd5oU9HcttUK7n4lUfWsPdVLQWTQRnk0 csEyIHlhcnlB2XMdKSi8dxn++ATveRyX5DOJ7cbaX1MVQ8nSVHnbKJqZJlENr8+CszBK46 S/mC+AR73qAZDPQoficCCSA+beGPwsGTphCUd3YHIUzDvPzkPZmQozuawPJ1wHOH5E4LTe DyxAXAoz/RoE+UspgWkBCiiw1kSbcXXqtMckqMQklxQ6kMxwzGaOLLnl4FmWAQ== 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 4QqRSt70Rtz17dX; Mon, 26 Jun 2023 12:08:30 +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 35QC8UrC082981; Mon, 26 Jun 2023 12:08:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8UYv082980; Mon, 26 Jun 2023 12:08:30 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:30 GMT Message-Id: <202306261208.35QC8UYv082980@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e9a999ea8f2b - stable/13 - LinuxKPI: 802.11: fix a -Wenum-compare warning List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: e9a999ea8f2b7ab13108d0f8331bfc1464da0463 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e9a999ea8f2b7ab13108d0f8331bfc1464da0463 commit e9a999ea8f2b7ab13108d0f8331bfc1464da0463 Author: Bjoern A. Zeeb AuthorDate: 2023-04-19 21:40:18 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:09:42 +0000 LinuxKPI: 802.11: fix a -Wenum-compare warning We are asserting that two values from different enums are the same. gcc warns about these. Cast the values to (int) to avoid the warning. Sponsored by: The FreeBSD Foundation (cherry picked from commit f369f10dd8122b1cd1282a378fb16ba81a712a74) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 36e6600f237b..1fcee420232c 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -1784,7 +1784,7 @@ ieee80211_action_contains_tpc(struct sk_buff *skb) return (false); /* Check that it is TPC Report or Link Measurement Report? */ - KASSERT(IEEE80211_ACTION_SM_TPCREP == IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP, + KASSERT((int)IEEE80211_ACTION_SM_TPCREP == (int)IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP, ("%s: SM_TPCREP %d != RADIO_MEASUREMENT_LMREP %d\n", __func__, IEEE80211_ACTION_SM_TPCREP, IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP)); if (mgmt->u.action.u.tpc_report.spec_mgmt != IEEE80211_ACTION_SM_TPCREP) From nobody Mon Jun 26 12:08:32 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSw3QPwz4k6SC; Mon, 26 Jun 2023 12:08: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 4QqRSw1qsRz3hmt; Mon, 26 Jun 2023 12:08:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781312; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pQmyMuJaJ4Qf6S/qgz4pYPyq7UoX+rP+4oauLPmoQ0c=; b=SU6n+/W72vC1DNng9npHIwPEojKM31hU0gb2QpTgHiQkNdL9Px0mIm+xIBNsHHnx1DNl+U IOmtyR/zg3EquvLn/YUEzukjxAOY6ok0zpD8WYn53VWLODrnbKNQWCewZpXt/dOY1Clnfi NtN5cUQQTN+owM1awhH9MCY3TFY4AZccCgMj58/U+e6DJxrt021wX8K6jUq5RE0TDysdwX DuvTHBujNQs6lY/Mf62dMYoTKJFTDkCoDQ9hYCLxrIHF3imI1xte/joKfhADjCG0QJuNsX qA8tbx/Z7kCkFoF6MrkQif8CRrh2emI5TP3kNQKvBWDgmMc4lYdk3zeNSUydOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781312; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pQmyMuJaJ4Qf6S/qgz4pYPyq7UoX+rP+4oauLPmoQ0c=; b=qnglbvX84FvOj+9VJPylslAVe57zNETG5BvwILT1km4uuIMj9JdJAnczhkTZN4uVrK5K0C yME+SOhqZ64Df34+Yg0fgD6T/YIA2R41gk5dAFepaFT/klJMTR8y9jakqL3jpAhETjQ9ke 1qS3ajK7vY3Urd9hJ3/1SOfm604FpDCfRFDCyJW2DsrFR7oW3AevuOeG6zlcRkBcyDmqjw a96a6jtKDr4QS/O1X75KoMsgfTbycr+3PXpnvc1tT48147liEznb6mXi9uXJW3tuiMpi8m I2e2tPHS/T4PABxuuHq93hDKwdiB711iLJGKElsN7iddcmEa4io3cpLmL776/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781312; a=rsa-sha256; cv=none; b=OLUtbls1uGjl/rtsaciUhdXIxx3ouyadmiSWOblE2eWvwJRkxPjfhA6IWf23uDT9dSVMSA pBO/I/I3AUkC6SUL4lzE3LUDHbJ6fPW/eMS0QpIgo1ISQVSWill5kybpm/JfnG6wnm9oHC jflZo9wtzElcSWhF6oekKfwWKyp/+TAI3KjWrqhUkMP0fRehWisZmBXZWYeuXO5hj6ai7m HynbHpMqNLNjU2xQU4NNpl56Qp0jMBO6wj+PUbnBbBG28fofI+HkKHkp/+y2SVKMqo8LkP buylGG3MlAwhxh4cua9Dai5M0D2XJUG/FefHtDh/bvsReLmSps3WrqhrfIrQkQ== 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 4QqRSw0xbjz17dY; Mon, 26 Jun 2023 12:08: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 35QC8Wij083000; Mon, 26 Jun 2023 12:08:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8WrL082999; Mon, 26 Jun 2023 12:08:32 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:32 GMT Message-Id: <202306261208.35QC8WrL082999@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: de40bc6f3d6b - stable/13 - LinuxKPI: skbuff.h: fix -Warray-bounds warnings List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: de40bc6f3d6bf8ab1a4b546630cc847a3b8c5113 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=de40bc6f3d6bf8ab1a4b546630cc847a3b8c5113 commit de40bc6f3d6bf8ab1a4b546630cc847a3b8c5113 Author: Bjoern A. Zeeb AuthorDate: 2023-04-19 21:37:01 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:09:49 +0000 LinuxKPI: skbuff.h: fix -Warray-bounds warnings Harmonize sk_buff_head and sk_buff further and fix -Warray-bounds warnings reports by gcc. At the same time simplify some code by re-using other functions or factoring some code out. Sponsored by: The FreeBSD Foundation (cherry picked from commit b2dcb848688e1e8346762531208dd7d468ff3854) --- sys/compat/linuxkpi/common/include/linux/skbuff.h | 61 +++++++++++++---------- 1 file changed, 34 insertions(+), 27 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index 12a6be42e743..fca161537837 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -89,8 +89,16 @@ enum sk_buff_pkt_type { struct sk_buff_head { /* XXX TODO */ - struct sk_buff *next; - struct sk_buff *prev; + union { + struct { + struct sk_buff *next; + struct sk_buff *prev; + }; + struct sk_buff_head_l { + struct sk_buff *next; + struct sk_buff *prev; + } list; + }; size_t qlen; spinlock_t lock; }; @@ -527,8 +535,8 @@ __skb_insert(struct sk_buff *new, struct sk_buff *prev, struct sk_buff *next, SKB_TRACE_FMT(new, "prev %p next %p q %p", prev, next, q); new->prev = prev; new->next = next; - next->prev = new; - prev->next = new; + ((struct sk_buff_head_l *)next)->prev = new; + ((struct sk_buff_head_l *)prev)->next = new; q->qlen++; } @@ -538,7 +546,7 @@ __skb_queue_after(struct sk_buff_head *q, struct sk_buff *skb, { SKB_TRACE_FMT(q, "skb %p new %p", skb, new); - __skb_insert(new, skb, skb->next, q); + __skb_insert(new, skb, ((struct sk_buff_head_l *)skb)->next, q); } static inline void @@ -551,24 +559,18 @@ __skb_queue_before(struct sk_buff_head *q, struct sk_buff *skb, } static inline void -__skb_queue_tail(struct sk_buff_head *q, struct sk_buff *skb) +__skb_queue_tail(struct sk_buff_head *q, struct sk_buff *new) { - struct sk_buff *s; - SKB_TRACE2(q, skb); - q->qlen++; - s = (struct sk_buff *)q; - s->prev->next = skb; - skb->prev = s->prev; - skb->next = s; - s->prev = skb; + SKB_TRACE2(q, new); + __skb_queue_after(q, (struct sk_buff *)q, new); } static inline void -skb_queue_tail(struct sk_buff_head *q, struct sk_buff *skb) +skb_queue_tail(struct sk_buff_head *q, struct sk_buff *new) { SKB_TRACE2(q, skb); - return (__skb_queue_tail(q, skb)); + return (__skb_queue_tail(q, new)); } static inline struct sk_buff * @@ -817,26 +819,31 @@ skb_mark_not_on_list(struct sk_buff *skb) SKB_TODO(); } +static inline void +___skb_queue_splice_init(const struct sk_buff_head *from, + struct sk_buff *p, struct sk_buff *n) +{ + struct sk_buff *b, *e; + + b = from->next; + e = from->prev; + + b->prev = p; + ((struct sk_buff_head_l *)p)->next = b; + e->next = n; + ((struct sk_buff_head_l *)n)->prev = e; +} + static inline void skb_queue_splice_init(struct sk_buff_head *from, struct sk_buff_head *to) { - struct sk_buff *b, *e, *n; SKB_TRACE2(from, to); if (skb_queue_empty(from)) return; - /* XXX do we need a barrier around this? */ - b = from->next; - e = from->prev; - n = to->next; - - b->prev = (struct sk_buff *)to; - to->next = b; - e->next = n; - n->prev = e; - + ___skb_queue_splice_init(from, (struct sk_buff *)to, to->next); to->qlen += from->qlen; __skb_queue_head_init(from); } From nobody Mon Jun 26 12:08:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSx3RYcz4k6gM; Mon, 26 Jun 2023 12:08:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqRSx2Hfqz3j31; Mon, 26 Jun 2023 12:08:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781313; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6OapIoPvT1icZKb77CLEG3kWuhx2dU/AES30XOld21M=; b=VyKCPg/DXwQ119doJRaIUJdAwG8BVJiR4Ju1f5eh3F+YdAEwPn/uLA/jmX0HWTCqr0+8FN rj6fev1ytdLbyjQYvk5xx5KNmgy62Tg2ELcf8/UepHYq+3pEg7nf/RnxLBbs+maAlPFyo3 yiUBn8AVPTOvgfywg2uuBYe6EH2q4UnFHOPy/Ax1axgxQL9VJR81dQBmYBY8ieu+M5EBrk H5RwTaTK1aCfzggQO6/tkDtKJecGzHpId5509Bqp/SLkZRLbEOrQlNOwxEQR/hs9O2Drn0 5MJAwJ0AGNYv+QM6OolbCs4vtrhJ7xzFvL603/ejFKqFYYfYERa0W5xcG3oakA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781313; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6OapIoPvT1icZKb77CLEG3kWuhx2dU/AES30XOld21M=; b=vhOyU8jh0M6qJJQ88pbuVcV3NcydGC6cQMfSldZycJ3ZGPzv5/UnSqdn1c3YBrRs1SgAMb g17U48ZiJUB09jcZKm0FLsBqljrOQkRRQvwKDdDocvKmqwvOlrUAiyizDG7KClhdLaYDci EaMyqktJVhcY3dzrLCNvfRnpl7jqKur+rpdsIX/z6w8HCZiWvnd7l4cEd5Qu3qKm7mjpqD KO0g3vzldEeTRXzYv+jkRZoie6HykiDOnPf/UJ19zFB9rJMhA1ZzjRV7tYcnN6t+VfpemZ HdQmZswxYJC8648dE7pLJvL1Uo8Hn2LZe3VRREP6rw1k96AYbKSrpeG4UJktDg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781313; a=rsa-sha256; cv=none; b=oJnvlGHU5rplvKPUpQ4g8ZNFIsP5PYItPjqZWHnc08jisdiveSHz3DJOto8FmrzUgL3G3A PhatHQOn7kmROTBkGHBxrO+jnvPzsNkfEAENQOhbwEB8UvFZwzTeJgikZzcLizczq558ap j2Fi0GzpSzw3DRvi6Moghzniq0COVcKhMMV3nF5BVgc0/cRaWlekxm/Tcf6rkgcGCyAmjP ReH1V/ic2q6csczR1XFaUB1Ts/e3TRQCRDISRqM1kK/um3w3d8i1ugcRnwQ3ydzkcE11MJ ItZVG7bCChah5/uM+W1lQ0oGmn8ODl19j3PoZJopncO+ri6LUX2KzIh4iZCJHQ== 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 4QqRSx1P03z17wh; Mon, 26 Jun 2023 12:08: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 35QC8XSK083019; Mon, 26 Jun 2023 12:08:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8XGl083018; Mon, 26 Jun 2023 12:08:33 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:33 GMT Message-Id: <202306261208.35QC8XGl083018@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 38f969d41c54 - stable/13 - LinuxKPI: fix READ_ONCE() -Wcast-equal warnings List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 38f969d41c5487f61fdf03dcc95c1cff0ec679cc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=38f969d41c5487f61fdf03dcc95c1cff0ec679cc commit 38f969d41c5487f61fdf03dcc95c1cff0ec679cc Author: Bjoern A. Zeeb AuthorDate: 2023-04-19 21:43:59 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:09:53 +0000 LinuxKPI: fix READ_ONCE() -Wcast-equal warnings Rather than using ACCESS_ONCE() in READ_ONCE() add a missing cast to const in order to satisfy -Wcast-equal by gcc. Sadly we cannot do the same to WRITE_ONCE() which still is very noisy. Sponsored by: The FreeBSD Foundation Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D39706 (cherry picked from commit 74e908b3c63b28de1d590dc42502fbe959a6da2e) --- sys/compat/linuxkpi/common/include/linux/compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/compiler.h b/sys/compat/linuxkpi/common/include/linux/compiler.h index 87a37228736f..801618e15f9f 100644 --- a/sys/compat/linuxkpi/common/include/linux/compiler.h +++ b/sys/compat/linuxkpi/common/include/linux/compiler.h @@ -98,7 +98,7 @@ #define READ_ONCE(x) ({ \ __typeof(x) __var = ({ \ barrier(); \ - ACCESS_ONCE(x); \ + (*(const volatile __typeof(x) *)&(x)); \ }); \ barrier(); \ __var; \ From nobody Mon Jun 26 12:08:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSy4Y4Fz4k6dN; Mon, 26 Jun 2023 12:08: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 4QqRSy3dwxz3j83; Mon, 26 Jun 2023 12:08:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781314; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KdaL9ggY6b7u5YNbDqO+9fTNCpG5vqvktqfkO9wGQ14=; b=mAKPd+pMWUnAWl0hPIUv5DJu7Fc32V4Gzlt5IPgnMZ95XP9y7h9Hxs/0peGykfDvkafmVh AmyIlinM8CIHH/EIRHJyOzbdVx9k7fADDfw4mxy2VzLLCV8PTAkyxMZIpksdioAoUDmG4M G4vtZPFLEliScHyBI/RNhUP7nVtogRNZa7fqeCbQNDOb+4pZk4/yM8inj4gSIDadaWzO7W 9m/mbK8AOgIZkdOmgAKq0dk38FXozQ7V4eRCBS1DzmYgDLIyIZLK6DNLHYb5Nw+akWu1+n xY68Nrc+/vXK3S+PjJ+Abs/al5iCQpG2wSpooh6fDdhPvpwceQ0I25BSgK8ZvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781314; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KdaL9ggY6b7u5YNbDqO+9fTNCpG5vqvktqfkO9wGQ14=; b=Vw0Z0kZBRovkea7sRdkZ87H5vgyaFEV1oXuG/HBfCHE6z/yCT87i10NP/tTwpcEAkvsCjb auHqHx5iY09KHgm+UgWoD+YpVSi2NAac2h+qvPkwnXjHpv5ZLXePYNkwzJvkz+9xoyp6eX i3xKJnQbH8UyyurntHmEKliHBIa4Lnsq0wOJMOfJnRcDYgO/kDSpJeiUbA2Ow86vqNFyao 5IORFQS9PpZiSj4dbuS1ZxzKMAFV3wG2cWs2hrV1ygGnUjHt0hOuvLE5xGlh9Dhlybv0Km tofhhDGOPHbl9z44MDiQE90CPdR8WWz103IxOyowgfMzzf3HceXMoFKt9vIe+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781314; a=rsa-sha256; cv=none; b=IS1/BoNsIyysLqUiLgR9XmnXKC6dbgvoY0LL+f8LITsldClgUjZf9i3YMw3E2f1mck6xb7 c9gQdmtaLOjVcj8NNlMYEAvEOOjdYvc4YPNDAd6KVU6x9ZnpEeDBEMnf9S1/FV/PhO/aNl 0YiCjW4d8MrRVSR+ZihKcHx7RGnZbix8hiZyEXEH/yzoKmmOdmDyl2BELoAUC09iuFTZ1e PFT5867SZ7lJjYpwFHsuHn8gIMXxVCOkKcUP6uSGeI4S59SLqQMwDnNmbdZAuPXfPGsvu8 JjJtOd2vsEeGhoyTZd7W2kXqD5iVVhNNAaH9Zg81MnIkkwX3OJ0bP7E9RrG4Dw== 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 4QqRSy2YqSz18RP; Mon, 26 Jun 2023 12:08: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 35QC8Y0E083046; Mon, 26 Jun 2023 12:08:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8YmQ083045; Mon, 26 Jun 2023 12:08:34 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:34 GMT Message-Id: <202306261208.35QC8YmQ083045@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 584bd868b4e4 - stable/13 - LinuxKPI: fix WRITE_ONCE() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 584bd868b4e41ae909fa0a51bc969be567272427 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=584bd868b4e41ae909fa0a51bc969be567272427 commit 584bd868b4e41ae909fa0a51bc969be567272427 Author: Bjoern A. Zeeb AuthorDate: 2023-05-13 15:17:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:11:49 +0000 LinuxKPI: fix WRITE_ONCE() Fix a gcc warning: "to be safe all intermediate pointers in cast from '...' to '...' must be 'const' qualified [-Wcast-qual]". Doing what is essentially a __DECONST() adding the uintptr_t gets rid of the massive amount of warnings we get in LinuxKPI and lets us see the actual problems a lot better. This is a follow-up to 74e908b3c63b28de1d590dc42502fbe959a6da2e which fixed READ_ONCE(). Sponsored by: The FreeBSD Foundation Suggested by: jhb Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D40084 (cherry picked from commit 046d8d89ed1956944b12ec4f0580c30bc202bbfb) --- sys/compat/linuxkpi/common/include/linux/compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/compiler.h b/sys/compat/linuxkpi/common/include/linux/compiler.h index 801618e15f9f..a918b6b76371 100644 --- a/sys/compat/linuxkpi/common/include/linux/compiler.h +++ b/sys/compat/linuxkpi/common/include/linux/compiler.h @@ -91,7 +91,7 @@ #define WRITE_ONCE(x,v) do { \ barrier(); \ - ACCESS_ONCE(x) = (v); \ + (*(volatile __typeof(x) *)(uintptr_t)&(x)) = (v); \ barrier(); \ } while (0) From nobody Mon Jun 26 12:08:35 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRSz5KTJz4k6dR; Mon, 26 Jun 2023 12:08: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 4QqRSz4NqJz3j1f; Mon, 26 Jun 2023 12:08:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781315; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4wfFpsdiks56ypZu2dn7eg7r046d3Be8HgOaDOodNKk=; b=dHbEV97JSjrupprzOqVZofc13d7qzmeSlFOXoiY2lQeCMyjS60O/+njrRLG7K9Gbf4DJvd GC6rOR48ovy8/Gyb/bkSPLjYl4cw21Q3u2LVFxP1wNlHEuLlOMeX3/d2ppWTX/5Wr1ejnI GvmHYVA+038yaMtVOo+oaLO/fRwKAfnne+KeOhROQ/fUVLsqRXbr0S7NViYrNCCqQBEicG q5I+winjh1V0WzUrv5cagNk/QKk+rem9dZAcfZaYTWYll2wnLhQKQvx6C5rQtR2dOsNVZe zvUdCXXi4VeuSIQKsfZN894v9WdCceOOlSm881OKRpzS9uGvVqsko5/QAktkdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781315; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4wfFpsdiks56ypZu2dn7eg7r046d3Be8HgOaDOodNKk=; b=oEqFVPfPPsH+FbX8U7rLH9Ik1r9/Q23KEVsuc9TGP/6CQ/c9jzzB9vogygFEB55IkqE8q7 sJ6Wxi2HLGAXRQOvf1qonLiEnfZgFX6W/duA+WeHy5teGF0oVxb+R1DaSh+ZUWCFL/tdgT Ld/yTlnZvUnYjfuystCkhPrAS2nST0OUtm5XhZfz7H+K43xYDSj6I62B53aNhZ1NPYAxoF 7wN7koTFgIsdxSM4e6Lun7D/nZWO73ZhSDdg2wi7wU/gAN+bEvTpBrtR4ARPmQaiY6RseV FExRU2kp4d5goBhxzBk4H4Bq5tZI1p3OTUmFYjV6kmOf8+Ak6huURYmOfx8RwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781315; a=rsa-sha256; cv=none; b=NFEBscb+A1P1556oCn84t2R2qCAbj8qfv+pqcT8LHPMyYmAt2PTQLGIhbVv+wlbentQI3q awDA1FulETF9q+5tCJjMG4qIvItHC7FY+p74bNyEzr68No+1cGtQR2vnSrx0QQG5EbytYy yq3kDmfDIsJVUyqa63eGjLWZ7l+XztFw0gXCt/OES9loojZYuy6NgbGlgDClOP0q6gPJen c6LwXrkJJiAToDg7NWBksfE15WIB8714F1cnfwVVpdhav/x3RRheNw4ugIVcmwhcJc8sU9 sNFVB2v5dHg+7UjMNqfYxteiug/QDhzwkvbcPGLqqGUwskMkiOVKt9KnHXLqBA== 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 4QqRSz3TJLz17wj; Mon, 26 Jun 2023 12:08: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 35QC8ZPn083068; Mon, 26 Jun 2023 12:08:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8Z43083067; Mon, 26 Jun 2023 12:08:35 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:35 GMT Message-Id: <202306261208.35QC8Z43083067@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 67121a1ed050 - stable/13 - net80211: Radiotap: update for newer standards (add EHT, U-SIG) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 67121a1ed05043d93b9ab05bb31814697db860c8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=67121a1ed05043d93b9ab05bb31814697db860c8 commit 67121a1ed05043d93b9ab05bb31814697db860c8 Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 16:03:17 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:12:47 +0000 net80211: Radiotap: update for newer standards (add EHT, U-SIG) iwlwifi already uses suggested EHT and U-SIG bits as well as some more TLV bits. Update radiotap to know of those even if they might get updated again in the future in order to get newer versions of the driver to compile. ath1xk drivers require further HE defines. Some of those we had already predicted as comments in the past. Sponsored by: The FreeBSD Foundation (cherry picked from commit 7232e6dcc89b978825b30a537bca2e7d3a9b71bb) (cherry picked from commit 63231f4d5bae5fbdb2ebbca4860416557c397059) --- sys/net80211/ieee80211_radiotap.h | 145 +++++++++++++++++++++++++++++++++++--- 1 file changed, 136 insertions(+), 9 deletions(-) diff --git a/sys/net80211/ieee80211_radiotap.h b/sys/net80211/ieee80211_radiotap.h index 35800325f121..1515ce7afd34 100644 --- a/sys/net80211/ieee80211_radiotap.h +++ b/sys/net80211/ieee80211_radiotap.h @@ -234,9 +234,13 @@ enum ieee80211_radiotap_type { IEEE80211_RADIOTAP_AMPDU_STATUS = 20, IEEE80211_RADIOTAP_VHT = 21, + IEEE80211_RADIOTAP_TLV = 28, IEEE80211_RADIOTAP_RADIOTAP_NAMESPACE = 29, - IEEE80211_RADIOTAP_VENDOREXT = 30, + IEEE80211_RADIOTAP_VENDOREXT = 30, /* obsolete? */ + IEEE80211_RADIOTAP_VENDOR_NAMESPACE = 30, IEEE80211_RADIOTAP_EXT = 31, + IEEE80211_RADIOTAP_EHT_USIG = 33, + IEEE80211_RADIOTAP_EHT = 34, }; #ifndef _KERNEL @@ -381,10 +385,25 @@ enum ieee80211_radiotap_type { #define IEEE80211_RADIOTAP_ZERO_LEN_PSDU_NOT_CAPTURED 0x01 #define IEEE80211_RADIOTAP_ZERO_LEN_PSDU_VENDOR 0xFF +/* http://www.radiotap.org/fields/TLV.html */ +struct ieee80211_radiotap_tlv { + uint16_t type; + uint16_t len; + uint8_t data[]; +} __packed; + +struct ieee80211_radiotap_vendor_content { + uint8_t oui[3]; + uint8_t oui_subtype; + uint16_t vendor_type; + uint16_t __padding; + uint8_t data[]; +} __packed; + /* https://www.radiotap.org/fields/HE.html */ struct ieee80211_radiotap_he { uint16_t data1, data2, data3, data4, data5, data6; -}; +} __packed; #define IEEE80211_RADIOTAP_HE_DATA1_FORMAT_SU 0x0000 #define IEEE80211_RADIOTAP_HE_DATA1_FORMAT_EXT_SU 0x0001 @@ -412,7 +431,7 @@ struct ieee80211_radiotap_he { #define IEEE80211_RADIOTAP_HE_DATA2_TXBF_KNOWN 0x0010 #define IEEE80211_RADIOTAP_HE_DATA2_PE_DISAMBIG_KNOWN 0x0020 #define IEEE80211_RADIOTAP_HE_DATA2_TXOP_KNOWN 0x0040 -/* #define IEEE80211_RADIOTAP_HE_DATA2_ midamble periodicity _KNOWN 0x0080 */ +#define IEEE80211_RADIOTAP_HE_DATA2_MIDAMBLE_KNOWN 0x0080 #define IEEE80211_RADIOTAP_HE_DATA2_RU_OFFSET 0x3F00 #define IEEE80211_RADIOTAP_HE_DATA2_RU_OFFSET_KNOWN 0x4000 #define IEEE80211_RADIOTAP_HE_DATA2_PRISEC_80_SEC 0x8000 @@ -420,11 +439,11 @@ struct ieee80211_radiotap_he { #define IEEE80211_RADIOTAP_HE_DATA3_BSS_COLOR 0x003F #define IEEE80211_RADIOTAP_HE_DATA3_BEAM_CHANGE 0x0040 #define IEEE80211_RADIOTAP_HE_DATA3_UL_DL 0x0080 -/* #deifne IEEE80211_RADIOTAP_HE_DATA3_data_MCS 0x0F00 */ -/* #define IEEE80211_RADIOTAP_HE_DATA3_data_DCM 0x1000 */ -/* #define IEEE80211_RADIOTAP_HE_DATA3_Coding 0x2000 */ +#define IEEE80211_RADIOTAP_HE_DATA3_DATA_MCS 0x0F00 +#define IEEE80211_RADIOTAP_HE_DATA3_DATA_DCM 0x1000 +#define IEEE80211_RADIOTAP_HE_DATA3_CODING 0x2000 #define IEEE80211_RADIOTAP_HE_DATA3_LDPC_XSYMSEG 0x4000 -/* #define IEEE80211_RADIOTAP_HE_DATA3_STBC 0x8000 */ +#define IEEE80211_RADIOTAP_HE_DATA3_STBC 0x8000 #define IEEE80211_RADIOTAP_HE_DATA4_SU_MU_SPTL_REUSE 0x000F #define IEEE80211_RADIOTAP_HE_DATA4_MU_STA_ID 0x7FF0 @@ -433,6 +452,8 @@ struct ieee80211_radiotap_he { #define IEEE80211_RADIOTAP_HE_DATA4_TB_SPTL_REUSE3 0x0F00 #define IEEE80211_RADIOTAP_HE_DATA4_TB_SPTL_REUSE4 0xF000 +#define IEEE80211_RADIOTAP_HE_DATA5_DATA_BW_RU_ALLOC 0x000F +#define IEEE80211_RADIOTAP_HE_DATA5_GI 0x0030 #define IEEE80211_RADIOTAP_HE_DATA5_LTF_SIZE 0x00C0 #define IEEE80211_RADIOTAP_HE_DATA5_LTF_SIZE_UNKNOWN 0x0 #define IEEE80211_RADIOTAP_HE_DATA5_LTF_SIZE_1X 0x1 @@ -443,6 +464,7 @@ struct ieee80211_radiotap_he { #define IEEE80211_RADIOTAP_HE_DATA5_TXBF 0x4000 #define IEEE80211_RADIOTAP_HE_DATA5_PE_DISAMBIG 0x8000 +#define IEEE80211_RADIOTAP_HE_DATA6_NSTS 0x000F #define IEEE80211_RADIOTAP_HE_DATA6_DOPPLER 0x0010 /* 0x00e0 (reserved) ; use these for the following undocumented. */ #define IEEE80211_RADIOTAP_HE_DATA6_TB_PPDU_BW_KNOWN 0x0020 @@ -459,7 +481,7 @@ struct ieee80211_radiotap_he_mu { uint16_t flags2; uint8_t ru_ch1[4]; uint8_t ru_ch2[4]; -}; +} __packed; #define IEEE80211_RADIOTAP_HE_MU_FLAGS1_SIG_B_MCS 0x000F #define IEEE80211_RADIOTAP_HE_MU_FLAGS1_SIG_B_MCS_KNOWN 0x0010 @@ -490,7 +512,7 @@ struct ieee80211_radiotap_he_mu { struct ieee80211_radiotap_lsig { uint16_t data1; uint16_t data2; -}; +} __packed; #define IEEE80211_RADIOTAP_LSIG_DATA1_LENGTH_KNOWN 0x0002 #define IEEE80211_RADIOTAP_LSIG_DATA2_LENGTH 0xFFF0 @@ -503,4 +525,109 @@ struct ieee80211_radiotap_lsig { #define IEEE80211_RADIOTAP_TIMESTAMP_UNIT_US 0x01 #define IEEE80211_RADIOTAP_TIMESTAMP_SPOS_PLCP_SIG_ACQ 0x10 +/* http://www.radiotap.org/fields/U-SIG.html */ +struct ieee80211_radiotap_eht_usig { + uint32_t common; + uint32_t value; + uint32_t mask; +} __packed; +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_PHY_VER_KNOWN 0x00000001 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_BW_KNOWN 0x00000002 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_UL_DL_KNOWN 0x00000004 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_BSS_COLOR_KNOWN 0x00000008 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_TXOP_KNOWN 0x00000010 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_BAD_USIG_CRC 0x00000020 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_PHY_VER 0x00007000 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_BW 0x00038000 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_UL_DL 0x00040000 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_BSS_COLOR 0x01f80000 +#define IEEE80211_RADIOTAP_EHT_USIG_COMMON_TXOP 0xfe000000 + +#define IEEE80211_RADIOTAP_EHT_USIG1_MU_B20_B24_DISREGARD 0x0000001f +#define IEEE80211_RADIOTAP_EHT_USIG1_MU_B25_VALIDATE 0x00000020 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B0_B1_PPDU_TYPE 0x000000c0 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B2_VALIDATE 0x00000100 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B3_B7_PUNCTURED_INFO 0x00003e00 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B8_VALIDATE 0x00004000 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B9_B10_SIG_MCS 0x00018000 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B11_B15_EHT_SIG_SYMBOLS 0x003e0000 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B16_B19_CRC 0x03c00000 +#define IEEE80211_RADIOTAP_EHT_USIG2_MU_B20_B25_TAIL 0xfc000000 + +#define IEEE80211_RADIOTAP_EHT_USIG1_TB_B20_B25_DISREGARD 0x0000003f +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B0_B1_PPDU_TYPE 0x000000c0 +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B2_VALIDATE 0x00000100 +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B3_B6_SPATIAL_REUSE_1 0x00001e00 +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B7_B10_SPATIAL_REUSE_2 0x0001e000 +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B11_B15_DISREGARD 0x003e0000 +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B16_B19_CRC 0x03c00000 +#define IEEE80211_RADIOTAP_EHT_USIG2_TB_B20_B25_TAIL 0xfc000000 + +/* http://www.radiotap.org/fields/EHT.html */ +struct ieee80211_radiotap_eht { + uint32_t known; + uint32_t data[9]; + uint32_t user_info[]; +} __packed; +#define IEEE80211_RADIOTAP_EHT_KNOWN_SPATIAL_REUSE 0x00000002 +#define IEEE80211_RADIOTAP_EHT_KNOWN_GI 0x00000004 +#define IEEE80211_RADIOTAP_EHT_KNOWN_EHT_LTF 0x00000010 +#define IEEE80211_RADIOTAP_EHT_KNOWN_LDPC_EXTRA_SYM_OM 0x00000020 +#define IEEE80211_RADIOTAP_EHT_KNOWN_PRE_PADD_FACOR_OM 0x00000040 +#define IEEE80211_RADIOTAP_EHT_KNOWN_PE_DISAMBIGUITY_OM 0x00000080 +#define IEEE80211_RADIOTAP_EHT_KNOWN_NSS_S 0x00020000 +#define IEEE80211_RADIOTAP_EHT_KNOWN_BEAMFORMED_S 0x00040000 +#define IEEE80211_RADIOTAP_EHT_KNOWN_NR_NON_OFDMA_USERS_M 0x00080000 +#define IEEE80211_RADIOTAP_EHT_KNOWN_RU_ALLOC_TB_FMT 0x01000000 +#define IEEE80211_RADIOTAP_EHT_KNOWN_PRIMARY_80 0x02000000 + +#define IEEE80211_RADIOTAP_EHT_DATA0_SPATIAL_REUSE 0x00000078 +#define IEEE80211_RADIOTAP_EHT_DATA0_GI 0x00000180 +#define IEEE80211_RADIOTAP_EHT_DATA0_LTF 0x00000600 +#define IEEE80211_RADIOTAP_EHT_DATA0_EHT_LTF 0x00003800 +#define IEEE80211_RADIOTAP_EHT_DATA0_LDPC_EXTRA_SYM_OM 0x00004000 +#define IEEE80211_RADIOTAP_EHT_DATA0_PRE_PADD_FACOR_OM 0x00018000 +#define IEEE80211_RADIOTAP_EHT_DATA0_PE_DISAMBIGUITY_OM 0x00020000 + +#define IEEE80211_RADIOTAP_EHT_DATA1_RU_ALLOC_CC_1_1_1 0x003fe000 +#define IEEE80211_RADIOTAP_EHT_DATA1_RU_ALLOC_CC_1_1_1_KNOWN 0x00400000 +#define IEEE80211_RADIOTAP_EHT_DATA1_PRIMARY_80 0xc0000000 + +#define IEEE80211_RADIOTAP_EHT_DATA2_RU_ALLOC_CC_2_1_1 0x000001ff +#define IEEE80211_RADIOTAP_EHT_DATA2_RU_ALLOC_CC_2_1_1_KNOWN 0x00000200 +#define IEEE80211_RADIOTAP_EHT_DATA2_RU_ALLOC_CC_1_1_2 0x0007fc00 +#define IEEE80211_RADIOTAP_EHT_DATA2_RU_ALLOC_CC_1_1_2_KNOWN 0x00080000 +#define IEEE80211_RADIOTAP_EHT_DATA2_RU_ALLOC_CC_2_1_2 0x1ff00000 +#define IEEE80211_RADIOTAP_EHT_DATA2_RU_ALLOC_CC_2_1_2_KNOWN 0x20000000 + +#define IEEE80211_RADIOTAP_EHT_DATA3_RU_ALLOC_CC_1_2_1 0x000001ff +#define IEEE80211_RADIOTAP_EHT_DATA3_RU_ALLOC_CC_1_2_1_KNOWN 0x00000200 +#define IEEE80211_RADIOTAP_EHT_DATA3_RU_ALLOC_CC_2_2_1 0x0007fc00 +#define IEEE80211_RADIOTAP_EHT_DATA3_RU_ALLOC_CC_2_2_1_KNOWN 0x00080000 +#define IEEE80211_RADIOTAP_EHT_DATA3_RU_ALLOC_CC_1_2_2 0x1ff00000 +#define IEEE80211_RADIOTAP_EHT_DATA3_RU_ALLOC_CC_1_2_2_KNOWN 0x20000000 + +#define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_2_2_2 0x000001ff +#define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_2_2_2_KNOWN 0x00000200 + +#define IEEE80211_RADIOTAP_EHT_DATA7_NSS_S 0x0000f000 +#define IEEE80211_RADIOTAP_EHT_DATA7_BEAMFORMED_S 0x00010000 +#define IEEE80211_RADIOTAP_EHT_DATA7_NUM_OF_NON_OFDMA_USERS 0x000e0000 + +#define IEEE80211_RADIOTAP_EHT_DATA8_RU_ALLOC_TB_FMT_PS_160 0x00000001 +#define IEEE80211_RADIOTAP_EHT_DATA8_RU_ALLOC_TB_FMT_B0 0x00000002 +#define IEEE80211_RADIOTAP_EHT_DATA8_RU_ALLOC_TB_FMT_B7_B1 0x000001fc + +#define IEEE80211_RADIOTAP_EHT_USER_INFO_STA_ID_KNOWN 0x00000001 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_MCS_KNOWN 0x00000002 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_CODING_KNOWN 0x00000004 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_NSS_KNOWN_O 0x00000010 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_BEAMFORMING_KNOWN_O 0x00000020 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_DATA_FOR_USER 0x00000080 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_STA_ID 0x0007ff00 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_CODING 0x00080000 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_MCS 0x00f00000 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_NSS_O 0x0f000000 +#define IEEE80211_RADIOTAP_EHT_USER_INFO_BEAMFORMING_O 0x20000000 + #endif /* !_NET80211_IEEE80211_RADIOTAP_H_ */ From nobody Mon Jun 26 12:08:36 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT11Zx6z4k6mY; Mon, 26 Jun 2023 12:08: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 4QqRT05hjkz3j8h; Mon, 26 Jun 2023 12:08:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781316; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MsVWTV48Dqx+2c8UTuq8d/YdgfE7ccprqWjwdiIZi0A=; b=vk5tOXQGtJLCxM4GahmRPphHYrHKHNjtqT/P+YwMWFQW6chDGENOikbYIuLsJ1LgvKi7vJ 84VEY2dYoxX48tBwOb1Rp7OeI6XUd7R8gbpmGY5PwHoXYUso2KMWxJRJ0m9Zjt6qlu/hyT rbEZIK+4gbBMoSTQYRTFsbKhHGROlb+1bvRWkJYbmptV+dLneO710T5vHv6wTicR2lerw/ r59+ngCPZ1zYdxd1jw60fl8SGAay8Rcq7KpGehS4tpQ8Egbl+zr+OfBWE1l1xTJUaFJrf9 Zsi81x5vcUNRjFg2I+Hp8lLgadeFcKWu5ja5a555LLwW4udhJC/sv8KWFHEINQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781316; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MsVWTV48Dqx+2c8UTuq8d/YdgfE7ccprqWjwdiIZi0A=; b=uanQkKKFcVAdfVNF8JSODUtHiYuLx7Gys9hcN+B1xVMrO+m+riqcYH96Kgo3Tn0f/srJC8 3FbXRUrgsqGrJO07LGFxsiXO8I6BXeTve3yw0XRmWfirTGumlMCOhGUzAikSuKR7Bu6EYe /0APznagIscwPXghsxrRKLGrmsOYhvdkLJCfSdBCnegIPrjLC0k/4enRQXVAeOwGz4/8/Y KeWVHIpzu8lmz+Bk8rVc5gOn34VYtT+KOCpmJVgKRQNd0hWIe+d++SmMcXkOpCmDUIufsk A9psOdfYMLYSZDYcKaMM+Fjfroc16qudNGXgJ2Ya+ttnYREyo4Sy0TJsd2t7Fg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781316; a=rsa-sha256; cv=none; b=KXHOtoCup40/YVRzmKja4lKZ3KvJuI3ggHoZ96al1JJodPOi9ry6YcJJIXaO4XoFtgzJNY XIrDl4deTUdH7wj+Y+mjylf8V9/qqMkFtl1G4tXtnlC0vQ2CgAK/FG/epJgwLc0GmVIPcY G3BH3Mcmtjg6sjfJiwfbvWzCZyscLKYljflBkII7pr0LNfVhIohxSe9+IMfoPScAB5SmUz 6OnLszP6/Xya8Cafvh1wtMM2HDNllq40x9F+FJn21wNPZvIXPFTGipz3KHGB+V5dxZ97dP UczKWAtmPTmHy06Ej6GcMk3BtOG1HnjWn7ho3ayUd9UkEumFjTjzIqxsw/wMYg== 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 4QqRT04Nptz18Wr; Mon, 26 Jun 2023 12:08: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 35QC8a1M083087; Mon, 26 Jun 2023 12:08:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8aeF083086; Mon, 26 Jun 2023 12:08:36 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:36 GMT Message-Id: <202306261208.35QC8aeF083086@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 0a5256166e7d - stable/13 - LinuxKPI: 802.11: use ic_printf more consistently List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 0a5256166e7d2475834962fe806b49398e7a6a8e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=0a5256166e7d2475834962fe806b49398e7a6a8e commit 0a5256166e7d2475834962fe806b49398e7a6a8e Author: Bjoern A. Zeeb AuthorDate: 2023-03-31 07:10:37 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:13:16 +0000 LinuxKPI: 802.11: use ic_printf more consistently Rather than printing ic_name ourselves (or not at all) use ic_printf() as a common function from net80211 where possible. Sponsored by: The FreeBSD Foundation (cherry picked from commit 3f0083c4e30ab41fad1e93e4138767df42dbdf20) --- sys/compat/linuxkpi/common/src/linux_80211.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 06b52ebaec88..7d0fc75e751d 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2172,7 +2172,7 @@ lkpi_wme_update(struct lkpi_hw *lhw, struct ieee80211vap *vap, bool planned) txqp.aifs = wmep->wmep_aifsn; error = lkpi_80211_mo_conf_tx(hw, vif, ac, &txqp); if (error != 0) - printf("%s: conf_tx ac %u failed %d\n", + ic_printf(ic, "%s: conf_tx ac %u failed %d\n", __func__, ac, error); } LKPI_80211_LHW_UNLOCK(lhw); @@ -2291,7 +2291,7 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], error = lkpi_80211_mo_start(hw); if (error != 0) { - printf("%s: failed to start hw: %d\n", __func__, error); + ic_printf(ic, "%s: failed to start hw: %d\n", __func__, error); mtx_destroy(&lvif->mtx); free(lvif, M_80211_VAP); return (NULL); @@ -2300,7 +2300,7 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], error = lkpi_80211_mo_add_interface(hw, vif); if (error != 0) { IMPROVE(); /* XXX-BZ mo_stop()? */ - printf("%s: failed to add interface: %d\n", __func__, error); + ic_printf(ic, "%s: failed to add interface: %d\n", __func__, error); mtx_destroy(&lvif->mtx); free(lvif, M_80211_VAP); return (NULL); @@ -3100,7 +3100,7 @@ lkpi_80211_txq_tx_one(struct lkpi_sta *lsta, struct mbuf *m) */ skb = dev_alloc_skb(hw->extra_tx_headroom + m->m_pkthdr.len); if (skb == NULL) { - printf("XXX ERROR %s: skb alloc failed\n", __func__); + ic_printf(ic, "ERROR %s: skb alloc failed\n", __func__); ieee80211_free_node(ni); m_freem(m); return; @@ -3288,8 +3288,8 @@ lkpi_ic_getradiocaps(struct ieee80211com *ic, int maxchan, int cflags = chan_flags; if (channels[i].flags & IEEE80211_CHAN_DISABLED) { - printf("%s: %s: Skipping disabled chan " - "[%u/%u/%#x]\n", ic->ic_name, __func__, + ic_printf(ic, "%s: Skipping disabled chan " + "[%u/%u/%#x]\n", __func__, channels[i].hw_value, channels[i].center_freq, channels[i].flags); continue; @@ -3312,8 +3312,8 @@ lkpi_ic_getradiocaps(struct ieee80211com *ic, int maxchan, nflags, bands, chan_flags); /* net80211::ENOBUFS: *n >= maxchans */ if (error != 0 && error != ENOBUFS) - printf("%s: %s: Adding chan %u/%u/%#x/%#x/%#x/%#x " - "returned error %d\n", ic->ic_name, + ic_printf(ic, "%s: Adding chan %u/%u/%#x/%#x/%#x/%#x " + "returned error %d\n", __func__, channels[i].hw_value, channels[i].center_freq, channels[i].flags, nflags, chan_flags, cflags, error); @@ -3358,8 +3358,8 @@ lkpi_ic_getradiocaps(struct ieee80211com *ic, int maxchan, int cflags = chan_flags; if (channels[i].flags & IEEE80211_CHAN_DISABLED) { - printf("%s: %s: Skipping disabled chan " - "[%u/%u/%#x]\n", ic->ic_name, __func__, + ic_printf(ic, "%s: Skipping disabled chan " + "[%u/%u/%#x]\n", __func__, channels[i].hw_value, channels[i].center_freq, channels[i].flags); continue; @@ -3382,8 +3382,8 @@ lkpi_ic_getradiocaps(struct ieee80211com *ic, int maxchan, nflags, bands, chan_flags); /* net80211::ENOBUFS: *n >= maxchans */ if (error != 0 && error != ENOBUFS) - printf("%s: %s: Adding chan %u/%u/%#x/%#x/%#x/%#x " - "returned error %d\n", ic->ic_name, + ic_printf(ic, "%s: Adding chan %u/%u/%#x/%#x/%#x/%#x " + "returned error %d\n", __func__, channels[i].hw_value, channels[i].center_freq, channels[i].flags, nflags, chan_flags, cflags, error); From nobody Mon Jun 26 12:08:37 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT24DFGz4k6rs; Mon, 26 Jun 2023 12:08: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 4QqRT22WQNz3jFX; Mon, 26 Jun 2023 12:08:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781318; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hMoG4f4Qow5GGaEzjIKIGfLZTvlayNbyazkA76m1gZk=; b=mAEFgeNOD9R6okD+6srEeddD7Fgao0b2cCJgNESP00T3jLlNQPBH3qr5zUGLkrDZUgAN5K 414Sak8MYU2U8Eap6TW+l9tTJWDRdhb8rzHa/B7wxEMh+tpOzEwNLne5PYUZU3T7zLiHFn 0X5pSheN7+rjP+gKhLKmAddL6UaiI9bEFXXCVSFIZMI3zTBaXoQK+POk9mzGYNMcILkSZX XkxEmA4F62ttj1iXWH+nvjlr0+1NL0GdF662L3S7u4FutPRqLowMyPROI+LnpXWqMGCL2S Vxy90ffkoPAPaEnfQ7c5Pg3cgdymiUq0I12lUQ/4e83a3Vi1CynHe7Sl387ljQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781318; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hMoG4f4Qow5GGaEzjIKIGfLZTvlayNbyazkA76m1gZk=; b=cJt8NTCpyfAF3k4tJCHMIBhfjnearH4jSZk5v8PRJ21fDSon63SP0WCOXD8dAw+/7ir6kJ tGF0ts847dIQvKtgMLiGGBM3cLOa8SVnphlgKIKvtTKe10HQBlDiXXZHt3jTNtU0xCfAoL IKnvkdo9fQ0GaXbmyB5V++ZK/dEmJY1JHVkhO+/YuT4dkNimBh61jtQ7FFx8S0a1EieOUJ A38VbCHP3b/VMnTsl/XZXRvgM9T9ORkx4F/DnplFTYct/RCvUXjF5FGoVoVLdOIMxTz2NT nn5sy1b40UK2t8YZRSAozPnELEc99Qn1YFCaf4a4BJAukpHWmU5esrJPuBpKDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781318; a=rsa-sha256; cv=none; b=iFwQHpbC25GP33KPdgWJpD2gBvuNu6JGu+LdGRbEREqKH7SUcu0Wgr2fF8hJWI0vTan7Jk IIwyyYKbL41ju5WHprM3QZEYbjVjCDJGsj5o6Pf215550N1wR2hvSJPfl74Iqs6NWb3Q3D kyBoWwQC948O5nmX9a2TCXTrnEJgSsfkle0bhBFiQ0JdIl+elMJyJS5hNacEd3XTC7/twG V/JoSF+NbxorbTAyThOjMZ3bNkHIrZJu+rRP10tkM/a6cXFlJVAur+bXaeTvKehewiwMsr yB1we9zGK/qtvNFUbaKPBpMcaLu6WINmEsdkm2/t3qBJvh7XA3Ex6XO9iUYF8g== 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 4QqRT15J5Pz18Cg; Mon, 26 Jun 2023 12:08: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 35QC8bCq083106; Mon, 26 Jun 2023 12:08:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8bDv083105; Mon, 26 Jun 2023 12:08:37 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:37 GMT Message-Id: <202306261208.35QC8bDv083105@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: c513977ca883 - stable/13 - LinuxKPI: 802.11: remove extra spaces List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: c513977ca883d9600bae6012cbcbe1b276761b16 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c513977ca883d9600bae6012cbcbe1b276761b16 commit c513977ca883d9600bae6012cbcbe1b276761b16 Author: Bjoern A. Zeeb AuthorDate: 2023-04-02 22:25:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:13:19 +0000 LinuxKPI: 802.11: remove extra spaces Remove two extra spaces. No functional change. Sponsored by: The FreeBSD Foundation (cherry picked from commit cfccc7f30a01bb6f00672e4be4abfe4107d645bb) --- sys/compat/linuxkpi/common/src/linux_80211.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 7d0fc75e751d..91b17769bdb5 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2349,9 +2349,9 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], ic->ic_set_channel(ic); /* XXX-BZ do we need to be able to update these? */ - hw->wiphy->frag_threshold = vap->iv_fragthreshold; + hw->wiphy->frag_threshold = vap->iv_fragthreshold; lkpi_80211_mo_set_frag_threshold(hw, vap->iv_fragthreshold); - hw->wiphy->rts_threshold = vap->iv_rtsthreshold; + hw->wiphy->rts_threshold = vap->iv_rtsthreshold; lkpi_80211_mo_set_rts_threshold(hw, vap->iv_rtsthreshold); /* any others? */ IMPROVE(); From nobody Mon Jun 26 12:08:38 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT317hzz4k6f2; Mon, 26 Jun 2023 12:08: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 4QqRT26hZTz3j2p; Mon, 26 Jun 2023 12:08:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781318; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DwaNbP1yFDX02qGBXg+ED9WZL8u1JKV/EqZdBHt3krg=; b=tSg6KzJLSslUK5i7LwHO1Qnk9AH7OVDeDoy5UHQIPsMXGjcjZliyrncw1HXjiZ+k5bjcl9 FaEGveDjCzIJDSFsMOhKLsco1mIYnLePHFewCdxjrHe+lSwcBvwhJeQM5iIDTHEkT3AOoN JeNdLniziH7y4r2zL69BxhyHzcEnpX/eAwtb87FVS9XyNwpZzEtnWgNPk2I/XVpy8hegRg OXoyhUovdOJAj+B5FQAyVREaNSTIIWurgrLeyls07QfeFa1yzM9OL1EUsyqOdPX/kbIZNR D3jceG24GWqm1cS4G6Iob48e3LLnf/jdA0tDvw9D1HFBy60uT+en7ov83CJ0Sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781318; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DwaNbP1yFDX02qGBXg+ED9WZL8u1JKV/EqZdBHt3krg=; b=St/C1VRQUz92q4jA7Y27xgcm4+xIMebdqEs73JbsngDyK7bwYbO7dVTGUu6R5VkPYg3PJL XFD3Fn4D+kIthFtZ0DzPwR8TqWxMeWlVzkA27FToUkGQtzBLpgMc1lv0WwVGc6KPpvF/AI yj353JgaV4mxOVOJIGU7QNVNBfXFNeHpPDQZS8/HHpVN2x4vvvOVWGqST8h6EMAaOJxcuz g/eJd8oRyXbSOeeJF/zuY8nrW2On6f/GggscTcYDW8qTVnb+FZpLHACzhFiHmBgnCUZSkX LT5uvOtGeF2eU2D/Ifgm2Nd8x/g9RD7afO07XXAuV47+WZxusj911tXEk355cg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781318; a=rsa-sha256; cv=none; b=XcRph89lFRtgps3U8+LkhGcgQ1+uU7G5OFQBp+IdkcWKsM+ptQAW6AK0wAZ/3yUzkCJngi WCxpXpw3NS2IDs7jbLhT5BlEeZG6gfXwgDXYXTvAG7M79WEJEj6dQbmHuuQdYfCp2luttJ Q6A5scaMQbxxv7ZKQwVAP9ucwCqxUcWvlp5kgmzhxoZ0f30RUnGAkJCOUCrvluHvVPSIc6 TVgVkyY82zmd4aXL1SYXXWyHD91XcFMFBP15gbEENKfPlgVh3L7CgHcCAXuCJLqFv7gkN0 03T1XDBlyWUbX3Zl8JcThdxlIUQtSgcj20HreDGbAbNTBHbYXpv1JCAlg3Uwpg== 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 4QqRT25jzkz18Ch; Mon, 26 Jun 2023 12:08: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 35QC8cVF083125; Mon, 26 Jun 2023 12:08:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8clk083124; Mon, 26 Jun 2023 12:08:38 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:38 GMT Message-Id: <202306261208.35QC8clk083124@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 9e366ef5c8c7 - stable/13 - LinuxKPI: 802.11: adjust locking List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 9e366ef5c8c70e51c6826b3462bb3eea448c1009 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=9e366ef5c8c70e51c6826b3462bb3eea448c1009 commit 9e366ef5c8c70e51c6826b3462bb3eea448c1009 Author: Bjoern A. Zeeb AuthorDate: 2023-03-31 19:52:19 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:13:26 +0000 LinuxKPI: 802.11: adjust locking Split up the lhw lock and the scan lock. The latter is a mtx while the former changes from mtx to sx as mac80211 downcalls may sleep (and the ic lock is not usable in that case either and a larger project to fix). This will also enforce some lookups under lock (mostly scan) as well as general protection for more compat code and avoid a possible deadlock with one of the upcoming callbacks from driver into the compat code. Sponsored by: The FreeBSD Foundation (cherry picked from commit 8ac540d3b8bf9746216c4687b4629296357cf146) --- sys/compat/linuxkpi/common/src/linux_80211.c | 92 +++++++++++++++++++++++----- sys/compat/linuxkpi/common/src/linux_80211.h | 37 ++++++++--- 2 files changed, 105 insertions(+), 24 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 91b17769bdb5..d0b760cd6f4f 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2020-2022 The FreeBSD Foundation + * Copyright (c) 2020-2023 The FreeBSD Foundation * Copyright (c) 2020-2022 Bjoern A. Zeeb * * This software was developed by Björn Zeeb under sponsorship from @@ -792,8 +792,12 @@ lkpi_stop_hw_scan(struct lkpi_hw *lhw, struct ieee80211_vif *vif) { struct ieee80211_hw *hw; int error; + bool cancel; - if ((lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) == 0) + LKPI_80211_LHW_SCAN_LOCK(lhw); + cancel = (lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); + if (!cancel) return; hw = LHW_TO_HW(lhw); @@ -802,13 +806,18 @@ lkpi_stop_hw_scan(struct lkpi_hw *lhw, struct ieee80211_vif *vif) LKPI_80211_LHW_LOCK(lhw); /* Need to cancel the scan. */ lkpi_80211_mo_cancel_hw_scan(hw, vif); + LKPI_80211_LHW_UNLOCK(lhw); /* Need to make sure we see ieee80211_scan_completed. */ - error = msleep(lhw, &lhw->mtx, 0, "lhwscanstop", hz/2); - LKPI_80211_LHW_UNLOCK(lhw); + LKPI_80211_LHW_SCAN_LOCK(lhw); + if ((lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0) + error = msleep(lhw, &lhw->scan_mtx, 0, "lhwscanstop", hz/2); + cancel = (lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); + IEEE80211_LOCK(lhw->ic); - if ((lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0) + if (cancel) ic_printf(lhw->ic, "%s: failed to cancel scan: %d (%p, %p)\n", __func__, error, lhw, vif); } @@ -935,6 +944,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int ni = ieee80211_ref_node(vap->iv_bss); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); /* Add chanctx (or if exists, change it). */ if (vif->chanctx_conf != NULL) { @@ -1078,6 +1088,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int */ out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); if (ni != NULL) ieee80211_free_node(ni); @@ -1110,6 +1121,7 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_lsta_dump(lsta, ni, __func__, __LINE__); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); /* flush, drop. */ lkpi_80211_mo_flush(hw, vif, nitems(sta->txq), true); @@ -1170,6 +1182,7 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int } out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); if (ni != NULL) ieee80211_free_node(ni); @@ -1205,6 +1218,7 @@ lkpi_sta_auth_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, in vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); ni = NULL; /* Finish auth. */ @@ -1252,6 +1266,7 @@ lkpi_sta_auth_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, in */ out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); if (ni != NULL) ieee80211_free_node(ni); @@ -1278,6 +1293,7 @@ lkpi_sta_a_to_a(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) ni = ieee80211_ref_node(vap->iv_bss); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); lsta = ni->ni_drv_data; IMPROVE("event callback?"); @@ -1300,6 +1316,7 @@ lkpi_sta_a_to_a(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) lsta->in_mgd = true; } + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); if (ni != NULL) ieee80211_free_node(ni); @@ -1334,6 +1351,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i lkpi_lsta_dump(lsta, ni, __func__, __LINE__); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); /* flush, drop. */ lkpi_80211_mo_flush(hw, vif, nitems(sta->txq), true); @@ -1347,6 +1365,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i lsta->in_mgd = true; } + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); /* Call iv_newstate first so we get potential DISASSOC packet out. */ @@ -1355,6 +1374,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i goto outni; IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); lkpi_lsta_dump(lsta, ni, __func__, __LINE__); @@ -1438,6 +1458,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i error = EALREADY; out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); outni: if (ni != NULL) @@ -1498,6 +1519,7 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); ni = NULL; IMPROVE("ponder some of this moved to ic_newassoc, scan_assoc_success, " @@ -1608,6 +1630,7 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, bss_changed); out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); if (ni != NULL) ieee80211_free_node(ni); @@ -1654,6 +1677,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_lsta_dump(lsta, ni, __func__, __LINE__); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); /* flush, drop. */ lkpi_80211_mo_flush(hw, vif, nitems(sta->txq), true); @@ -1667,6 +1691,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int lsta->in_mgd = true; } + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); /* Call iv_newstate first so we get potential DISASSOC packet out. */ @@ -1675,6 +1700,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int goto outni; IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); lkpi_lsta_dump(lsta, ni, __func__, __LINE__); @@ -1729,6 +1755,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int error = EALREADY; out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); outni: if (ni != NULL) @@ -1763,6 +1790,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_lsta_dump(lsta, ni, __func__, __LINE__); IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); /* flush, drop. */ lkpi_80211_mo_flush(hw, vif, nitems(sta->txq), true); @@ -1776,6 +1804,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int lsta->in_mgd = true; } + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); /* Call iv_newstate first so we get potential DISASSOC packet out. */ @@ -1784,6 +1813,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int goto outni; IEEE80211_UNLOCK(vap->iv_ic); + LKPI_80211_LHW_LOCK(lhw); lkpi_lsta_dump(lsta, ni, __func__, __LINE__); @@ -1890,6 +1920,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int error = EALREADY; out: + LKPI_80211_LHW_UNLOCK(lhw); IEEE80211_LOCK(vap->iv_ic); outni: if (ni != NULL) @@ -2439,6 +2470,8 @@ lkpi_ic_parent(struct ieee80211com *ic) hw = LHW_TO_HW(lhw); start_all = false; + /* IEEE80211_UNLOCK(ic); */ + LKPI_80211_LHW_LOCK(lhw); if (ic->ic_nrunning > 0) { error = lkpi_80211_mo_start(hw); if (error == 0) @@ -2446,6 +2479,8 @@ lkpi_ic_parent(struct ieee80211com *ic) } else { lkpi_80211_mo_stop(hw); } + LKPI_80211_LHW_UNLOCK(lhw); + /* IEEE80211_LOCK(ic); */ if (start_all) ieee80211_start_all(ic); @@ -2587,12 +2622,17 @@ lkpi_ic_scan_start(struct ieee80211com *ic) struct ieee80211_scan_state *ss; struct ieee80211vap *vap; int error; + bool is_hw_scan; lhw = ic->ic_softc; + LKPI_80211_LHW_SCAN_LOCK(lhw); if ((lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0) { /* A scan is still running. */ + LKPI_80211_LHW_SCAN_UNLOCK(lhw); return; } + is_hw_scan = (lhw->scan_flags & LKPI_LHW_SCAN_HW) != 0; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); ss = ic->ic_scan; vap = ss->ss_vap; @@ -2602,7 +2642,7 @@ lkpi_ic_scan_start(struct ieee80211com *ic) } hw = LHW_TO_HW(lhw); - if ((lhw->scan_flags & LKPI_LHW_SCAN_HW) == 0) { + if (!is_hw_scan) { /* If hw_scan is cleared clear FEXT_SCAN_OFFLOAD too. */ vap->iv_flags_ext &= ~IEEE80211_FEXT_SCAN_OFFLOAD; sw_scan: @@ -2747,7 +2787,9 @@ sw_scan: * not possible. Fall back to sw scan in that case. */ if (error == 1) { + LKPI_80211_LHW_SCAN_LOCK(lhw); lhw->scan_flags &= ~LKPI_LHW_SCAN_HW; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); ieee80211_start_scan(vap, IEEE80211_SCAN_ACTIVE | IEEE80211_SCAN_NOPICK | @@ -2769,13 +2811,18 @@ static void lkpi_ic_scan_end(struct ieee80211com *ic) { struct lkpi_hw *lhw; + bool is_hw_scan; lhw = ic->ic_softc; + LKPI_80211_LHW_SCAN_LOCK(lhw); if ((lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) == 0) { + LKPI_80211_LHW_SCAN_UNLOCK(lhw); return; } + is_hw_scan = (lhw->scan_flags & LKPI_LHW_SCAN_HW) != 0; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); - if ((lhw->scan_flags & LKPI_LHW_SCAN_HW) == 0) { + if (!is_hw_scan) { struct ieee80211_scan_state *ss; struct ieee80211vap *vap; struct ieee80211_hw *hw; @@ -2802,9 +2849,13 @@ lkpi_ic_scan_curchan(struct ieee80211_scan_state *ss, unsigned long maxdwell) { struct lkpi_hw *lhw; + bool is_hw_scan; lhw = ss->ss_ic->ic_softc; - if ((lhw->scan_flags & LKPI_LHW_SCAN_HW) == 0) + LKPI_80211_LHW_SCAN_LOCK(lhw); + is_hw_scan = (lhw->scan_flags & LKPI_LHW_SCAN_HW) != 0; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); + if (!is_hw_scan) lhw->ic_scan_curchan(ss, maxdwell); } @@ -2812,9 +2863,13 @@ static void lkpi_ic_scan_mindwell(struct ieee80211_scan_state *ss) { struct lkpi_hw *lhw; + bool is_hw_scan; lhw = ss->ss_ic->ic_softc; - if ((lhw->scan_flags & LKPI_LHW_SCAN_HW) == 0) + LKPI_80211_LHW_SCAN_LOCK(lhw); + is_hw_scan = (lhw->scan_flags & LKPI_LHW_SCAN_HW) != 0; + LKPI_80211_LHW_SCAN_UNLOCK(lhw); + if (!is_hw_scan) lhw->ic_scan_mindwell(ss); } @@ -2826,6 +2881,7 @@ lkpi_ic_set_channel(struct ieee80211com *ic) struct ieee80211_channel *c; struct linuxkpi_ieee80211_channel *chan; int error; + bool hw_scan_running; lhw = ic->ic_softc; @@ -2834,8 +2890,12 @@ lkpi_ic_set_channel(struct ieee80211com *ic) return; /* If we have a hw_scan running do not switch channels. */ - if ((lhw->scan_flags & (LKPI_LHW_SCAN_RUNNING|LKPI_LHW_SCAN_HW)) == - (LKPI_LHW_SCAN_RUNNING|LKPI_LHW_SCAN_HW)) + LKPI_80211_LHW_SCAN_LOCK(lhw); + hw_scan_running = + (lhw->scan_flags & (LKPI_LHW_SCAN_RUNNING|LKPI_LHW_SCAN_HW)) == + (LKPI_LHW_SCAN_RUNNING|LKPI_LHW_SCAN_HW); + LKPI_80211_LHW_SCAN_UNLOCK(lhw); + if (hw_scan_running) return; c = ic->ic_curchan; @@ -3424,7 +3484,8 @@ linuxkpi_ieee80211_alloc_hw(size_t priv_len, const struct ieee80211_ops *ops) lhw = wiphy_priv(wiphy); lhw->ops = ops; - mtx_init(&lhw->mtx, "lhw", NULL, MTX_DEF | MTX_RECURSE); + LKPI_80211_LHW_LOCK_INIT(lhw); + LKPI_80211_LHW_SCAN_LOCK_INIT(lhw); sx_init_flags(&lhw->lvif_sx, "lhw-lvif", SX_RECURSE | SX_DUPOK); TAILQ_INIT(&lhw->lvif_head); @@ -3460,7 +3521,8 @@ linuxkpi_ieee80211_iffree(struct ieee80211_hw *hw) /* Cleanup more of lhw here or in wiphy_free()? */ sx_destroy(&lhw->lvif_sx); - mtx_destroy(&lhw->mtx); + LKPI_80211_LHW_LOCK_DESTROY(lhw); + LKPI_80211_LHW_SCAN_LOCK_DESTROY(lhw); IMPROVE(); } @@ -3867,12 +3929,12 @@ linuxkpi_ieee80211_scan_completed(struct ieee80211_hw *hw, ieee80211_scan_done(ss->ss_vap); - LKPI_80211_LHW_LOCK(lhw); + LKPI_80211_LHW_SCAN_LOCK(lhw); free(lhw->hw_req, M_LKPI80211); lhw->hw_req = NULL; lhw->scan_flags &= ~LKPI_LHW_SCAN_RUNNING; wakeup(lhw); - LKPI_80211_LHW_UNLOCK(lhw); + LKPI_80211_LHW_SCAN_UNLOCK(lhw); return; } diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index 4d44ca07948e..42b4192bac63 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2020-2022 The FreeBSD Foundation + * Copyright (c) 2020-2023 The FreeBSD Foundation * Copyright (c) 2020-2021 Bjoern A. Zeeb * * This software was developed by Björn Zeeb under sponsorship from @@ -173,7 +173,7 @@ struct lkpi_hw { /* name it mac80211_sc? */ TAILQ_HEAD(, lkpi_vif) lvif_head; struct sx lvif_sx; - struct mtx mtx; + struct sx sx; uint32_t txq_generation[IEEE80211_NUM_ACS]; TAILQ_HEAD(, lkpi_txq) scheduled_txqs[IEEE80211_NUM_ACS]; @@ -195,6 +195,7 @@ struct lkpi_hw { /* name it mac80211_sc? */ #define LKPI_LHW_SCAN_RUNNING 0x00000001 #define LKPI_LHW_SCAN_HW 0x00000002 uint32_t scan_flags; + struct mtx scan_mtx; int supbands; /* Number of supported bands. */ int max_rates; /* Maximum number of bitrates supported in any channel. */ @@ -218,13 +219,31 @@ struct lkpi_wiphy { #define WIPHY_TO_LWIPHY(_wiphy) container_of(_wiphy, struct lkpi_wiphy, wiphy) #define LWIPHY_TO_WIPHY(_lwiphy) (&(_lwiphy)->wiphy) - -#define LKPI_80211_LHW_LOCK(_lhw) mtx_lock(&(_lhw)->mtx) -#define LKPI_80211_LHW_UNLOCK(_lhw) mtx_unlock(&(_lhw)->mtx) -#define LKPI_80211_LHW_LOCK_ASSERT(_lhw) \ - mtx_assert(&(_lhw)->mtx, MA_OWNED) -#define LKPI_80211_LHW_UNLOCK_ASSERT(_lhw) \ - mtx_assert(&(_lhw)->mtx, MA_NOTOWNED) +#define LKPI_80211_LHW_LOCK_INIT(_lhw) \ + sx_init_flags(&(_lhw)->sx, "lhw", SX_RECURSE); +#define LKPI_80211_LHW_LOCK_DESTROY(_lhw) \ + sx_destroy(&(_lhw)->sx); +#define LKPI_80211_LHW_LOCK(_lhw) \ + sx_xlock(&(_lhw)->sx) +#define LKPI_80211_LHW_UNLOCK(_lhw) \ + sx_xunlock(&(_lhw)->sx) +#define LKPI_80211_LHW_LOCK_ASSERT(_lhw) \ + sx_assert(&(_lhw)->sx, SA_LOCKED) +#define LKPI_80211_LHW_UNLOCK_ASSERT(_lhw) \ + sx_assert(&(_lhw)->sx, SA_UNLOCKED) + +#define LKPI_80211_LHW_SCAN_LOCK_INIT(_lhw) \ + mtx_init(&(_lhw)->scan_mtx, "lhw-scan", NULL, MTX_DEF | MTX_RECURSE); +#define LKPI_80211_LHW_SCAN_LOCK_DESTROY(_lhw) \ + mtx_destroy(&(_lhw)->scan_mtx); +#define LKPI_80211_LHW_SCAN_LOCK(_lhw) \ + mtx_lock(&(_lhw)->scan_mtx) +#define LKPI_80211_LHW_SCAN_UNLOCK(_lhw) \ + mtx_unlock(&(_lhw)->scan_mtx) +#define LKPI_80211_LHW_SCAN_LOCK_ASSERT(_lhw) \ + mtx_assert(&(_lhw)->scan_mtx, MA_OWNED) +#define LKPI_80211_LHW_SCAN_UNLOCK_ASSERT(_lhw) \ + mtx_assert(&(_lhw)->scan_mtx, MA_NOTOWNED) #define LKPI_80211_LHW_LVIF_LOCK(_lhw) sx_xlock(&(_lhw)->lvif_sx) #define LKPI_80211_LHW_LVIF_UNLOCK(_lhw) sx_xunlock(&(_lhw)->lvif_sx) From nobody Mon Jun 26 12:08:39 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT41yLVz4k6qR; Mon, 26 Jun 2023 12:08: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 4QqRT40ndFz3jNr; Mon, 26 Jun 2023 12:08:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781320; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=72u1UJgySjk+b77ey6jlnNCaf4pXuvHWCgqUqHdb020=; b=bzIBZ4KFckQtArvYCMbSq/9rBN9+RbEcHdAYQhhXKWa5yCE7PYmD6DcPzWKVnieHEjq327 tYibbRMHNvdtNnrVzGpdAAN2kMMN3XWmhJXW7LkODHu6Glm8KfLtdUm9vR55BfeJV8yyIO U+v51fRxvYCypcy+OmWjWtbDK2YdVVfkDA1nrbgN2EfyinL3IzjD+hTKULt7qo2Kt571wS M71/IPBqfTr8EWDQtsNfGfHRs9u01kail8e/t2/pa3KJKQRsvjoFfEpWtJNokQI9+ivPwz Eh3AaruSgPqxA+kKUj1n35SzMwyZFTSISRvZM/kIzV2+WCkUISGfWFAmgrSvHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781320; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=72u1UJgySjk+b77ey6jlnNCaf4pXuvHWCgqUqHdb020=; b=eiNgkOvBBlFzPqjOfUhGm7+bH05C1FEu2WOFQ1AIX/uWZlnnzf+OPCTi0uz3KOShy+u/6A Ir32C0hBZ0mEEO89Ev6s0rWaDP+bfeD/5IcXDVGSffQkbsT5xyIUyqT1kxpFMn/mgc3VHK f7LZxzRRglxRVfG6ttHQTpehPDWPA9/hrqHQq4Ufe5U4KizWhLgZHNRVFKl4JpnQG0CSkP z6NbxIvkRlq4xp+yKQnIFFz0i9L0UphR/Y1vnuMddJsDjOTpve14Az2vqpkmTomwpkSvTv nAxwTZog/wv55eG63wDTd9uoMrHyV19sIwHj4licwRxEaCoLNtTXOaNUl981lA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781320; a=rsa-sha256; cv=none; b=ph4dWHF4YniakqkGsBJHzdy6WYwh2AOfaMmPaWxjE74HBDpYHphcFFCxVTZTfmTH8FJ4Qf q/4Lk38nTwLSvVnBuUcWYSxaOnRYlFHAUnumBOJS2BClwidq28nlJ0xkJIuQHXA9gw7psE 1zrUMuVoB94fYQdpgzKLnR8m4BXkjbhNItbFHRbgt3aidYumPy4lnRTQHu94ZhIXGNc0vO B0KhYsLvWAjJTuWFHCiEg/n2k2t7HCMhhFt/l9GpJED1Vg63Hxu0iFJVqCfDDqA8wsBGdQ 7HKTcSyaJTn8EVjdctdFyh/VXKZ0jymIeYyAIEWyzFw9P0CYpxXmF8lWchRNtQ== 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 4QqRT36stSz17ZT; Mon, 26 Jun 2023 12:08: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 35QC8ds0083150; Mon, 26 Jun 2023 12:08:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8dDJ083149; Mon, 26 Jun 2023 12:08:39 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:39 GMT Message-Id: <202306261208.35QC8dDJ083149@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 7140d2464579 - stable/13 - LinuxKPI: 802.11: improve assertion and tkip code List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 7140d2464579e918d5e59ba1a9b2b0b148536c86 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=7140d2464579e918d5e59ba1a9b2b0b148536c86 commit 7140d2464579e918d5e59ba1a9b2b0b148536c86 Author: Bjoern A. Zeeb AuthorDate: 2023-04-20 16:01:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:14:04 +0000 LinuxKPI: 802.11: improve assertion and tkip code Move a KASSERT out of a function and make it a CTASSERT with appropriate comments. Skeleton implement two tkip functions, still left TODO, initializing variables with dummy values to quiten compiler warnings. It is unclear to me if we should still ever properly implement TKIP compat code at this point. If so the current code gives a good idea what needs to be done in addition to allocating references to real state along with keyconf. Sponsored by: The FreeBSD Foundation (cherry picked from commit 35f7fa4ac1aea8af9a4f2428b3f0a346151b4071) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 38 ++++++++++++++++++++--- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 1fcee420232c..77045f866e8b 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -1756,6 +1756,11 @@ ieee80211_tu_to_usec(unsigned long tu) return (tu * IEEE80211_DUR_TU); } +/* + * Below we assume that the two values from different emums are the same. + * Make sure this does not accidentally change. + */ +CTASSERT((int)IEEE80211_ACTION_SM_TPCREP == (int)IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP); static __inline bool ieee80211_action_contains_tpc(struct sk_buff *skb) @@ -1783,10 +1788,10 @@ ieee80211_action_contains_tpc(struct sk_buff *skb) mgmt->u.action.category != IEEE80211_ACTION_CAT_RADIO_MEASUREMENT) return (false); - /* Check that it is TPC Report or Link Measurement Report? */ - KASSERT((int)IEEE80211_ACTION_SM_TPCREP == (int)IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP, - ("%s: SM_TPCREP %d != RADIO_MEASUREMENT_LMREP %d\n", __func__, - IEEE80211_ACTION_SM_TPCREP, IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP)); + /* + * Check that it is TPC Report or Link Measurement Report? + * The values of each are the same (see CTASSERT above function). + */ if (mgmt->u.action.u.tpc_report.spec_mgmt != IEEE80211_ACTION_SM_TPCREP) return (false); @@ -1834,7 +1839,12 @@ static __inline void ieee80211_get_tkip_rx_p1k(struct ieee80211_key_conf *keyconf, const u8 *addr, uint32_t iv32, u16 *p1k) { + + KASSERT(keyconf != NULL && addr != NULL && p1k != NULL, + ("%s: keyconf %p addr %p p1k %p\n", __func__, keyconf, addr, p1k)); + TODO(); + memset(p1k, 0xfa, 5 * sizeof(*p1k)); /* Just initializing. */ } static __inline size_t @@ -2051,7 +2061,27 @@ static __inline void ieee80211_get_key_rx_seq(struct ieee80211_key_conf *keyconf, uint8_t tid, struct ieee80211_key_seq *seq) { + + KASSERT(keyconf != NULL && seq != NULL, ("%s: keyconf %p seq %p\n", + __func__, keyconf, seq)); + TODO(); + switch (keyconf->cipher) { + case WLAN_CIPHER_SUITE_CCMP: + case WLAN_CIPHER_SUITE_CCMP_256: + memset(seq->ccmp.pn, 0xfa, sizeof(seq->ccmp.pn)); /* XXX TODO */ + break; + case WLAN_CIPHER_SUITE_AES_CMAC: + memset(seq->aes_cmac.pn, 0xfa, sizeof(seq->aes_cmac.pn)); /* XXX TODO */ + break; + case WLAN_CIPHER_SUITE_TKIP: + seq->tkip.iv32 = 0xfa; /* XXX TODO */ + seq->tkip.iv16 = 0xfa; /* XXX TODO */ + break; + default: + pr_debug("%s: unsupported cipher suite %d\n", __func__, keyconf->cipher); + break; + } } static __inline void From nobody Mon Jun 26 12:08:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT53JSNz4k6hM; Mon, 26 Jun 2023 12:08: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 4QqRT51dC1z3j55; Mon, 26 Jun 2023 12:08:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781321; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eY/YGXoMGYze0eZQW7JxR2VP9XBtLoiW+1Xz9972GSE=; b=AhTQ98WeiJvv2lCq1FSIobRufB/v7JL5/eZG/eJOBAnNxDdFs9hwKlFlmH964oXldYX4sI 7aJU1EBcjKoqOBumYlUZkq84GsDAdAinqi2wejvkLgLDav/rUswSiffTlakqn50X/4kdfl FJ0l/IufDuwCHNS+oMZ/mowgRnmocRqwDpUEy5mfrxrP8VCn4RBLVeM647AVcoXcmlrJxT ppdW4Cl7zXvC8ABXe0VjGI0eWXeVQfPeW6CFZNpwsC9aLIQSrMGzNrQsUcbPc/1sxhNjld LcofwvE1rj4Na5Yr1dlFr/jVbM1hClIQP+hHlttX4yTjnyvt12hySVg6hvMMXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781321; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eY/YGXoMGYze0eZQW7JxR2VP9XBtLoiW+1Xz9972GSE=; b=DNwXaHKI1yTFf4Nxo91Qa6vjBbH7RmVzqoGymjKVGUxpTcUF4JI0cvZ3eqydNBx3BtiC7Q 88D8Lgm3M/yGDX2H7vycvcSewGHoQjS96pb0GX49BzCK/ONlqU9CFsVEu3Mqxe/f2NS8xz nOtgsbtLu11qnLnkcAxMrJjOcGtHloHgVJnJWheCqq+SAyVJb5V4MftzEF3OcmYI5shboB ofbmKsJ7fkQUxxmNg4WpJ8wzWEQl8ZnwOZx9KQmirhmA3sJxDYZwitbXq5O2pzfmSz2ue2 QHYKs4vnEpnlyYA/cHb42ONY3AQHre8gDWtD0EAGKyx9LSPoTFr+lxcl4V69VA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781321; a=rsa-sha256; cv=none; b=dhRJXfiRMq0T+xz0TySvPo9LGkCyC5IEC0swcxf6icYVUAdB5r7cb4ilXunrhzlafuX1Z1 eXomgrd84fA2SS8Xr9NxfhQWuvIGcllC3C1R8xKRm9a0U6ZV97fl6NUR01GwbAf/eSH/SP 0AXTmwjVYiGGs3dTBtxOnnWx4P9pbq/cRwlbkysYSR0kzD7eFkAti1qN1o0LtPUUp9NMcT CQoqQakerdM2K27omy4vSMrdAsf8qOnYzipjGEvfYBtjiISEq4VPYtnXFbFCxNdMb4G3Zb LYUBpn/brHMfdZ1J59tWVN+YHsove9i7N94dPwSE/Nt+ccdZiAZde3ELEfFihg== 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 4QqRT50kRkz18Cj; Mon, 26 Jun 2023 12:08: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 35QC8f0W083169; Mon, 26 Jun 2023 12:08:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8fYP083168; Mon, 26 Jun 2023 12:08:41 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:41 GMT Message-Id: <202306261208.35QC8fYP083168@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6503ae09604f - stable/13 - LinuxKPI: pci.h: always initialize return value List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6503ae09604f362e1446583bed30c69a6716b0e6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6503ae09604f362e1446583bed30c69a6716b0e6 commit 6503ae09604f362e1446583bed30c69a6716b0e6 Author: Bjoern A. Zeeb AuthorDate: 2023-04-20 15:59:33 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:14:11 +0000 LinuxKPI: pci.h: always initialize return value In pcie_capability_read_*() always initialize the return value to avoid warnings of uninitialized values in callers. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39721 (cherry picked from commit 0e8953b94b7481a53945cbd1e16517773996e16e) --- sys/compat/linuxkpi/common/include/linux/pci.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index f8071524c9e0..55435f6b72bc 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -1198,6 +1198,7 @@ static bool pcie_capability_reg_implemented(struct pci_dev *dev, int pos) static inline int pcie_capability_read_dword(struct pci_dev *dev, int pos, u32 *dst) { + *dst = 0; if (pos & 3) return -EINVAL; @@ -1210,6 +1211,7 @@ pcie_capability_read_dword(struct pci_dev *dev, int pos, u32 *dst) static inline int pcie_capability_read_word(struct pci_dev *dev, int pos, u16 *dst) { + *dst = 0; if (pos & 3) return -EINVAL; From nobody Mon Jun 26 12:08:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT64gdKz4k6qk; Mon, 26 Jun 2023 12:08: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 4QqRT62df3z3j7j; Mon, 26 Jun 2023 12:08:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781322; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rg5JVhpv+gny1UFZ+SEPzs259xISw+uy1MtlIh85V+c=; b=U9HK6niAMgDpfXsq8IbHqr28Yd9G7AnUyM/7d1gcIiy66hjYjbmyBddBgeypIDLLNWbDol OsDQolFf/cBQyNILLasgVRRgfdDHfuu9BeKlsM81vUTdp54ygr655laUipcosAndneu0CT 5mbZLaLfWlIoftFvDhxM1/3+CDgBiDdBw90NohonkrhQnnoIn/hNzTXhTT9/n6sIQoIrsb zHJfbwbXca9d+xxwIVr//op7bJVElh19MbTN2PbrpeNr7kbnSt5B2vP+I4vnoXGxo9b8Rq EcOJayBLfn6Qs8irpl+1RtfhL5ZsDCKqriL/fQ8yIuXVnwFhhdxkER28NGaOxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781322; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rg5JVhpv+gny1UFZ+SEPzs259xISw+uy1MtlIh85V+c=; b=in4laHlvB0uMOQtrCDgb412AU6quEJmSrHRi0HDxpRACRj961EqzxK75B2xHY2GI2Xq4m0 7UcDcFVVmizJ9czzaVjTJ6Qr3b4F3cdMZQBGMqk7l7Jb15o4GjtKWhJx8s/1Vsct7ss75L 8fq7Ii9+4LDVfE9atpOXEtphg7Z/t05oj0eHHSSPUwf1Jp4XToQzxiJwQPcWRf9IrMxyZW 7T6rmBFPUPBrmI+eo6k51y7x5aqHii6TPjpxuZ8jqQBaAZLQVWhkNI9sbMVBVIpTS8Moim UcarjkNjhcIJp4/WWsZYEaYu1UaSJaSmhAB5FkZVShvJCbrBwbdbwcMJQJ1DRg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781322; a=rsa-sha256; cv=none; b=vdsjb7l/TYq2mKOEgn1ixh+OdwytzqaTV/5owgiC5V/omDKzNdGeSFmeaIY7R731vCyP/i BxAGBV7icGgq2cESoG8+8OXnRp1ND5f+43//a+8qqWvXl76QIYZZqoPkYfi/nnsowSltIG w8b9ExZmBq/ygGFmzAtlchsndCUpNkB0Eie6lSCs1LXRtn19qr6f5jQZ4hscyRutmH+g6U P0mMnI5GFhF70jeu9JDBEsPRXRTpNsj9sVUw2lk/CVq2AgYR8EQ2cY8F0tl1HDY7l1lxH8 2goElQUGkLh5ztCC1wg6O/ykYw0RgcpF+pPRkU4yRVX3eYfrkDdJIAS4G6u6TA== 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 4QqRT61lCmz17dZ; Mon, 26 Jun 2023 12:08: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 35QC8gjU083188; Mon, 26 Jun 2023 12:08:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8gc1083187; Mon, 26 Jun 2023 12:08:42 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:42 GMT Message-Id: <202306261208.35QC8gc1083187@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 3df3e9a27d5f - stable/13 - LinuxKPI: 802.11: fix IEEE80211_TX_INFO_DRIVER_DATA_SIZE List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 3df3e9a27d5f5cc4dedc2d4003bbb049c471f789 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=3df3e9a27d5f5cc4dedc2d4003bbb049c471f789 commit 3df3e9a27d5f5cc4dedc2d4003bbb049c471f789 Author: Bjoern A. Zeeb AuthorDate: 2023-05-11 21:35:11 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:14:22 +0000 LinuxKPI: 802.11: fix IEEE80211_TX_INFO_DRIVER_DATA_SIZE Fix the sizing of IEEE80211_TX_INFO_DRIVER_DATA_SIZE so that it also works on 32bit platforms. Otherwise it triggers a compile-time assertion in ath10k for i386. Sponsored by: The FreeBSD Foundation (cherry picked from commit 910a834383587fc6630225200cc66b7965d5102f) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 77045f866e8b..9cef12d825d7 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -755,7 +755,7 @@ struct ieee80211_tx_info { bool is_valid_ack_signal; void *status_driver_data[16 / sizeof(void *)]; /* XXX TODO */ } status; -#define IEEE80211_TX_INFO_DRIVER_DATA_SIZE (5 * sizeof(void *)) /* XXX TODO 5? */ +#define IEEE80211_TX_INFO_DRIVER_DATA_SIZE 40 void *driver_data[IEEE80211_TX_INFO_DRIVER_DATA_SIZE / sizeof(void *)]; }; }; From nobody Mon Jun 26 12:08:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT755shz4k6bc; Mon, 26 Jun 2023 12:08: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 4QqRT73wCHz3jPy; Mon, 26 Jun 2023 12:08:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SWiZdi9UkuaQ/u3N/AQ/n9nKdHVTuA4QsfD9Oj6qZpA=; b=OWxcmCY6Ijiwp/tw4SwvpOMJgm4p3V28fVZPMxfmPOwCSRvWH4vhKRdQo+ecO9FWZaa5PB DeUnLFYB4xltmPOQ66fzNb8lZwBs1CxRgUoAAv2kp2rKnXxL85fJu69IgSeSMulCl3jgd9 KuzJ2lWGo5f9GhHESjpusNp5fX9/6NBxQNTG+3eSEd1lsTnzbpZHfAfBDUiLsMRbKnyyxy lkg74Vwmp2IpouDmeLgV2YCpOEL1Gmvna9wnVLHRH+joUNqt+uXs7mKIGz8fEur0fACeJ4 dOVzbfnfAGxmo2+B+qxTXPa8NzC8XqlT8R4ExXJO9Z/BIEi01h6WyiNcQs66qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SWiZdi9UkuaQ/u3N/AQ/n9nKdHVTuA4QsfD9Oj6qZpA=; b=lv3c+/U2pFFTak7Rc2KQNqqtNSeyRB4lhUtk9xs7Sydmsu9syKfE78gDkSYQd65tkW+mqf CbxOZzjhuII4OylrsKdphGAkFcpxA4iECCDCRUAtTPChKGySYTmS7ditNPXiZ9HdKzRFa8 nK9mj8uyu2qkADU1AOTLduGJyEvEVXIAiEtgJaerbuEygimFy9jP33vrn26UiKAnlsFl/f 32hmu45TBgH2vR8Rz2sjHHPUfWpTtRnplU/z2XHrFvYrgr6c8Wcr2tOqId86iDrbDj+4o2 wsY1EfSPKgQ89IFFZTOkgCCEi0ut+jntTObMfWojCjhfx2eh8w0+dvdpO5D5sg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781323; a=rsa-sha256; cv=none; b=tcvaLb5nyODw/WkfLICw+lmr8fFB0UOZ1uHVLBrviZMY9D6pPCZIWUYGmjpYHvMwX1c8Vs acehw2snnDouBycteC/+7CL5F25l9tK/2qBv+qJ/flf54J/2c4WZDT/PGcn/Xw4RKoV73D BABTRy3Phhq0KpoGAzgg1P1XOk+lgbs/mLJQRjJSDlVe3ANAZvIF/EXbzXUBzKJFeVDSo/ QB0GB8xyl5hKYDpIArPYfl+ZBNhWDWxTwMflzyepgNm/FluF7wWm2ZLBiwex0eWrW68+IL BqxeRX6k7X5TvH9lqb1I2laNnRW4t258Sp/PEhCQFb4LHO5dZqTnMR2RXfXm8Q== 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 4QqRT72mLDz18Ck; Mon, 26 Jun 2023 12:08: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 35QC8hnn083207; Mon, 26 Jun 2023 12:08:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8hb8083206; Mon, 26 Jun 2023 12:08:43 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:43 GMT Message-Id: <202306261208.35QC8hb8083206@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 46f8d147fbc9 - stable/13 - LinuxKPI: add dummy hash.h and kernel_connect() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 46f8d147fbc94f5ea7a2f916a87d25cd3b42cca2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=46f8d147fbc94f5ea7a2f916a87d25cd3b42cca2 commit 46f8d147fbc94f5ea7a2f916a87d25cd3b42cca2 Author: Bjoern A. Zeeb AuthorDate: 2023-05-11 22:19:57 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:14:28 +0000 LinuxKPI: add dummy hash.h and kernel_connect() Add crypto/hash.h and a dummy kernel_connect() needed to compile the ath11k wireless driver. While I hope we will not actually need the hash.h fallbacks, kernel_connect() we will have to deal with once we sort out more QMI bits. (cherry picked from commit d544b53cb0b6bc25f2ba078bd9c07e611095bf29) --- sys/compat/linuxkpi/common/include/crypto/hash.h | 94 +++++++++++++++++++++++ sys/compat/linuxkpi/common/include/linux/socket.h | 11 +++ 2 files changed, 105 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/crypto/hash.h b/sys/compat/linuxkpi/common/include/crypto/hash.h new file mode 100644 index 000000000000..bf401691722a --- /dev/null +++ b/sys/compat/linuxkpi/common/include/crypto/hash.h @@ -0,0 +1,94 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2022 Bjoern A. Zeeb + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _LINUXKPI_CRYPTO_HASH_H +#define _LINUXKPI_CRYPTO_HASH_H + +#include /* for pr_debug */ + +struct crypto_shash { +}; + +struct shash_desc { + struct crypto_shash *tfm; +}; + +static inline struct crypto_shash * +crypto_alloc_shash(const char *algostr, int x, int y) +{ + + pr_debug("%s: TODO\n", __func__); + return (NULL); +} + +static inline void +crypto_free_shash(struct crypto_shash *csh) +{ + pr_debug("%s: TODO\n", __func__); +} + +static inline int +crypto_shash_init(struct shash_desc *desc) +{ + pr_debug("%s: TODO\n", __func__); + return (-ENXIO); +} + +static inline int +crypto_shash_final(struct shash_desc *desc, uint8_t *mic) +{ + pr_debug("%s: TODO\n", __func__); + return (-ENXIO); +} + +static inline int +crypto_shash_setkey(struct crypto_shash *csh, const uint8_t *key, size_t keylen) +{ + pr_debug("%s: TODO\n", __func__); + return (-ENXIO); +} + +static inline int +crypto_shash_update(struct shash_desc *desc, uint8_t *data, size_t datalen) +{ + pr_debug("%s: TODO\n", __func__); + return (-ENXIO); +} + +static inline void +shash_desc_zero(struct shash_desc *desc) +{ + + explicit_bzero(desc, sizeof(*desc)); +} + +/* XXX review this. */ +#define SHASH_DESC_ON_STACK(desc, tfm) \ + uint8_t ___ ## desc ## _desc[sizeof(struct shash_desc)]; \ + struct shash_desc *desc = (struct shash_desc *)___ ## desc ## _desc + +#endif /* _LINUXKPI_CRYPTO_HASH_H */ diff --git a/sys/compat/linuxkpi/common/include/linux/socket.h b/sys/compat/linuxkpi/common/include/linux/socket.h index 3afb9bdfe3ba..8818971fa4c7 100644 --- a/sys/compat/linuxkpi/common/include/linux/socket.h +++ b/sys/compat/linuxkpi/common/include/linux/socket.h @@ -33,6 +33,17 @@ #include +#define AF_QIPCRTR 42 + +static inline int +kernel_connect(int sd, struct sockaddr *sa, size_t salen, int flags) +{ + + /* kern_connectat()? It is used for sockaddr_qrtr by ath1xk/qmi. */ + pr_debug("%s: TODO\n", __func__); + return (-EINVAL); +} + #ifdef notyet static inline int memcpy_toiovec(struct iovec *v, unsigned char *kdata, int len) From nobody Mon Jun 26 12:08:44 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRT85q5Cz4k6hm; Mon, 26 Jun 2023 12:08:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqRT84nPKz3jV0; Mon, 26 Jun 2023 12:08:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781324; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2znRkJeGDGknUATd4uPaeU+QxQRuoyGRDZ3J6pjLSRk=; b=SiZBBnUlSPJUGiU9QUXg8ls4y2hOJnMgPd5WXP/gLfhs78B6USSSy2sTGkhWo5WJHzIauJ pXjcvsCQTccO9FBEH7KtbHw7ge/E51wR9pSByHyy7xgX9KskJcqa6qyrBkQOJ4MiqAfdgW YIfXYLq9KeYNG44EbErGqP/djXzYcRs179ktqp0oPgS2aieaNg+AEeYyKdQU1cuFfCGwy+ aA1elMlTxZ3DNuG89G8/BPVCOr7/UKaV3z2rYQBG/IyndQZPwHkY5VkXEMEnyNvwtU0ys7 K1F/PT96vRoYwHVSBonFHE2dccZ/3f/v/Fl4E5b1Aq6YrHWvQg6fBSEKG9ifyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781324; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2znRkJeGDGknUATd4uPaeU+QxQRuoyGRDZ3J6pjLSRk=; b=kBx1OLamLHTpUBCIeS82Wd7g61WttSvMJudezPzDcCEgAZXyKOVAqmdT8Fsij1nW+YEWLl g0EZcpm+fRv5GqbYFe4b29/bDB66OfMrYSEGHXwnpZTRbkMVNii+q3uTIxslW6b8Bvyj5L mD2vP8c1eE9tE+l1VrQdOtQtkpT80aXaSF5yl9fS7utQs8eaJrbSLYRwBD2gosX5hmZqkv SiPykmoEbk8Ie6vmGZfQ5BDdLyyoCp1fsLOvJU8285Fj7rugZhcLsGg4OAlBnIMx9t2mt9 VG1R0cRg1Y+UAlNfF5y98xM5RbGAMKz68+1HvjNX4FiSsab3e2oIxSxZmWZO/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781324; a=rsa-sha256; cv=none; b=vXXvZl/ujR9wppiaV/VYw3RQ/3sBcljgkdcTYSzgzFKlK6HjDcruvRG3F/1f4ivpxLNA9+ vlVBySnf8pzSeuA7jO40X2mXdteBcOATjfaUkQzaUgfxqoMciz1jIs2bzDfRNMN5MLHAkf yGMp8aFBCz5pTQYDhyjyr9EPfYAxnHbrzuc+DLyruQnCfRffOoMu/6nCk1YG3WN2sDxomm f+CslDoVA78hq6N5l5dzbhMfuhP8oCCLgib74ujRUQIPbry7CA/s++kj9VxD4oHNnAgAoc BTPtC/EVP7GWZjGn9LW0fOKsF+MVDDzc0kDDwnYGFcCUqfIturCXoApB8Ova9Q== 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 4QqRT83rGPz17ZV; Mon, 26 Jun 2023 12:08:44 +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 35QC8itY083232; Mon, 26 Jun 2023 12:08:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8ijh083229; Mon, 26 Jun 2023 12:08:44 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:44 GMT Message-Id: <202306261208.35QC8ijh083229@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6427092f1a09 - stable/13 - LinuxKPI: add ptp_clock_kernel.h List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6427092f1a093640850b1ffe8e87ca80389f4d4d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6427092f1a093640850b1ffe8e87ca80389f4d4d commit 6427092f1a093640850b1ffe8e87ca80389f4d4d Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 21:24:08 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:14:36 +0000 LinuxKPI: add ptp_clock_kernel.h Add the new ptp_clock_kernel.h with structs and dummy functions for kernel ptp support. This is needed for the next iwlwifi update. Sponsored by: The FreeBSD Foundation (cherry picked from commit 972bf40b62f7de0a4c652e4577c551200dfe45a5) --- .../common/include/linux/ptp_clock_kernel.h | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/ptp_clock_kernel.h b/sys/compat/linuxkpi/common/include/linux/ptp_clock_kernel.h new file mode 100644 index 000000000000..b7b0bac0607e --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/ptp_clock_kernel.h @@ -0,0 +1,77 @@ +/*- + * Copyright (c) 2023 The FreeBSD Foundation + * + * This software was developed by Björn Zeeb under sponsorship from + * the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LINUXKPI_LINUX_PTP_CLOCK_KERNEL_H +#define _LINUXKPI_LINUX_PTP_CLOCK_KERNEL_H + +#include +#include +#include /* pr_debug */ +#include /* system_device_crosststamp */ + +/* This very likely belongs elsewhere. */ +struct system_device_crosststamp { + ktime_t device; + ktime_t sys_realtime; + ktime_t sys_monotonic_raw; /* name guessed based on comment */ +}; + +struct ptp_clock_info { + char name[32]; + int max_adj; + void *owner; /* THIS_MODULE */ + int (*adjfine)(struct ptp_clock_info *, long); + int (*adjtime)(struct ptp_clock_info *, s64); + int (*getcrosststamp)(struct ptp_clock_info *, struct system_device_crosststamp *); + int (*gettime64)(struct ptp_clock_info *, struct timespec *); +}; + +static inline struct ptp_clock * +ptp_clock_register(struct ptp_clock_info *ptpci, struct device *dev) +{ + + pr_debug("%s: TODO\n", __func__); + return (NULL); +} + +static inline void +ptp_clock_unregister(struct ptp_clock *ptpc) +{ + pr_debug("%s: TODO\n", __func__); +} + +static inline int +ptp_clock_index(struct ptp_clock *ptpc) +{ + pr_debug("%s: TODO\n", __func__); + return (0); +} + +#endif /* _LINUXKPI_LINUX_PTP_CLOCK_KERNEL_H */ From nobody Mon Jun 26 12:08:45 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTB22cZz4k6sg; Mon, 26 Jun 2023 12:08: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 4QqRT95wm0z3jKh; Mon, 26 Jun 2023 12:08:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781325; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b52qBV2HOi8uR8GLkry2HxnyDEbvWkHM9yGCxJKCP2c=; b=pkiI/U1MTgwJCfJmR1NbAom0Cn8lXDq/AMqY41c3i+tCDdZncuz4/VtczV3ngnUkX1IbWp rtWPxdamW4CnyoRAbdK3F70Nd9F/50vkF6hIlYAEhBHxkhViSfp7Kz7ce0nWI2V47gALVf zX0X3uFNv8t/XPcqidvRg2fyoisyyOzUx/J5vjfuB21Xsq1POHuH9CuSzaJonCr9YK4NhH IlSP1CFHLwJc2DeIdI3A2cE6Jtbx0qb0pmkPvs3WF+m4DMSoS+9HBQA83ySZqqtKRi5B7p +TcS35C9TRNdU1d3iEGLE5Eo45auj8JytLjz7vdZx4ksvKixZOoJ2UPUP6v8ew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781325; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b52qBV2HOi8uR8GLkry2HxnyDEbvWkHM9yGCxJKCP2c=; b=Dl3P37cLRCkgFQ4Ml5vYppA82dlUZxYkSbJd3AbcHmhAHc/IqLM7qFYRQxZ381b0wPnwYl FZM/Kowean/8FKEWdnxjzBPwXAbvzMS81DyLpwwuXvJ2oGD8d3BGb3mYzCN7gxfsYHbA3F Ay9YCbZFHPuMXMtPV1z1afvMDyXeQ0rzQIQtGfry7dfzWT7NIYFuQB37BlgZJH55HyCQVD 8Z0YMDqEXkggrt+FjPxTp301MN/5ozG2KZvm6/SfO3qhg8aqPyIMkhrXBCkOAH8IKgHGWx OZTsgcBkReJvGdmtT2hHO34N4GYyRbSz2IfGwkfLL0eujXf6t9yctg8JOm+6/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781325; a=rsa-sha256; cv=none; b=TqN5TYsnwSf+uQgPB+6FWJOFag2O37FTGyhSKwmTio7PfyVKJFOWBKCY2+7hv157aE0esr 7VJRV6pQto199oZhRfTXQOtH3feNxZY3tUe6gXcUw43ggHsKrmoaDX6gG//O0N9DYDChlF nI+Dib8cX/N4M/PP00f9EC/6/KRkJwfp6548+RCrnPHzBpE3yS5J7bO6JJE0tP770spK5P YHHnzET8lrnJPpFV+EcVtly4Sks/+1r5gIkKm3g71bxGcAG0FuBMBO3BHmKGvJvhJgMdq9 uJ5K8Tkg2hKjstVM1VXrDY0p+kWUnxb/2IJAi0oMcBNWx+WBjYToZdX9UmIeDw== 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 4QqRT94y63z18Lb; Mon, 26 Jun 2023 12:08: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 35QC8jHF083266; Mon, 26 Jun 2023 12:08:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8jvF083265; Mon, 26 Jun 2023 12:08:45 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:45 GMT Message-Id: <202306261208.35QC8jvF083265@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: b30d9f2e5204 - stable/13 - LinuxKPI: skbuff.h: add more (skeleton) functions used by wireless drivers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: b30d9f2e5204b475cf79150542b758c3dab14e70 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b30d9f2e5204b475cf79150542b758c3dab14e70 commit b30d9f2e5204b475cf79150542b758c3dab14e70 Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 21:22:34 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:15:20 +0000 LinuxKPI: skbuff.h: add more (skeleton) functions used by wireless drivers Add a dummy skb_hwtstamps() function for now, and implement skb_mac_header(), skb_reset_mac_header(), and skb_set_mac_header(). Add a dummy implementation of skb_get_hash() until we'll hit and implement it. Add napi_build_skb() and skb_mark_for_recycle(). Sponsored by: The FreeBSD Foundation (cherry picked from commit 262c5e81937ff1682632f33e92c3e42bc92e5a77) (cherry picked from commit 369264acf7d2a317383599141ab2f36ee3d2130c) (cherry picked from commit 1213a6bea8a16dc797efea5a7ed7d6a4d7cb4675) --- sys/compat/linuxkpi/common/include/linux/skbuff.h | 60 ++++++++++++++++++++--- 1 file changed, 53 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index fca161537837..8d4fefdb1a2b 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -1,6 +1,6 @@ /*- - * Copyright (c) 2020-2022 The FreeBSD Foundation - * Copyright (c) 2021-2022 Bjoern A. Zeeb + * Copyright (c) 2020-2023 The FreeBSD Foundation + * Copyright (c) 2021-2023 Bjoern A. Zeeb * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -46,6 +46,7 @@ #include #include #include +#include /* #define SKB_DEBUG */ #ifdef SKB_DEBUG @@ -85,6 +86,10 @@ enum sk_buff_pkt_type { PACKET_OTHERHOST, }; +struct skb_shared_hwtstamps { + ktime_t hwtstamp; +}; + #define NET_SKB_PAD max(CACHE_LINE_SIZE, 32) struct sk_buff_head { @@ -154,6 +159,7 @@ struct sk_buff { uint16_t _flags; /* Internal flags. */ #define _SKB_FLAGS_SKBEXTFRAG 0x0001 enum sk_buff_pkt_type pkt_type; + uint16_t mac_header; /* offset of mac_header */ /* "Scratch" area for layers to store metadata. */ /* ??? I see sizeof() operations so probably an array. */ @@ -928,22 +934,38 @@ skb_header_cloned(struct sk_buff *skb) } static inline uint8_t * -skb_mac_header(struct sk_buff *skb) +skb_mac_header(const struct sk_buff *skb) { SKB_TRACE(skb); - SKB_TODO(); - return (NULL); + /* Make sure the mac_header was set as otherwise we return garbage. */ + WARN_ON(skb->mac_header == 0); + return (skb->head + skb->mac_header); +} +static inline void +skb_reset_mac_header(struct sk_buff *skb) +{ + SKB_TRACE(skb); + skb->mac_header = skb->data - skb->head; } static inline void -skb_orphan(struct sk_buff *skb) +skb_set_mac_header(struct sk_buff *skb, const size_t len) +{ + SKB_TRACE(skb); + skb_reset_mac_header(skb); + skb->mac_header += len; +} + +static inline struct skb_shared_hwtstamps * +skb_hwtstamps(struct sk_buff *skb) { SKB_TRACE(skb); SKB_TODO(); + return (NULL); } static inline void -skb_reset_mac_header(struct sk_buff *skb) +skb_orphan(struct sk_buff *skb) { SKB_TRACE(skb); SKB_TODO(); @@ -1024,6 +1046,30 @@ napi_consume_skb(struct sk_buff *skb, int budget) SKB_TODO(); } +static inline struct sk_buff * +napi_build_skb(void *data, size_t len) +{ + + SKB_TRACE(skb); + SKB_TODO(); + return (NULL); +} + +static inline uint32_t +skb_get_hash(struct sk_buff *skb) +{ + SKB_TRACE(skb); + SKB_TODO(); + return (0); +} + +static inline void +skb_mark_for_recycle(struct sk_buff *skb) +{ + SKB_TRACE(skb); + SKB_TODO(); +} + #define SKB_WITH_OVERHEAD(_s) \ (_s) - ALIGN(sizeof(struct skb_shared_info), CACHE_LINE_SIZE) From nobody Mon Jun 26 12:08:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTC2YK8z4k6yB; Mon, 26 Jun 2023 12:08: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 4QqRTB6dr2z3jd4; Mon, 26 Jun 2023 12:08:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781326; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B6fAfEsTwkalP7LuuHb+0VHhDFh1jpE9ewoeBnX4Z10=; b=oS0GoJbeJ/HSktyABjZwic20TeJkxHnmhY5z+qE4uO79XNuaF7USIK4/ER+CvADuTU4OO8 5QFxwOA4Ltjnv3hINkBmChtmPlMusbGtXPFj+AmmpHqA5CB61uVMUDR9XJa0cnhjWTyFza 8cHAuJm/+XaaDzY3vQG4+up8wQltola452XEyfXKAfO9v6IbsVnqi/n/SsMk4Ibmm15XmD jwK9y2lmiS2SgRZmDQuTQcKloqiA64osAeoCMY80AuSDcpHchYDl2UYsNRMrDbbkLCgSjp 7mxoZo6/ZcJtGEGOkHZbzp0coPjh7aLBtXrTjHu6hUDgWAjDowQxfBrGX8SaDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781326; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B6fAfEsTwkalP7LuuHb+0VHhDFh1jpE9ewoeBnX4Z10=; b=pA51iE28hUxuCWi3chkUMVZqvApsUzaxNY/i+f6UUBqNXldzTeWFhz9EmbjOk6sFTw2QFw w/RSkxa83k1FYK97qUOdZayziJVrEeHWGVK/KSsIM32Y1P2v5sscCOXzQ/A/OVYhIxsA52 iQyrZC02Lj2nl7xl1KpEoFRimT7knxcPYFqon06ERkJqaAhtSVpeo/3CFwr4U7yVip1oyP I1Mj22urVgReHwXGF3BO2kmcE0qO04o6XxQQymLsAYLWM/Sx1JKtd1ht+4QBh584knPAvT VOU9nh0P5HnykhC6w9lQDa70snq7PwD4U5RGcUyBMTkcIDwyucUkEbRsRT1nIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781326; a=rsa-sha256; cv=none; b=uChzlqXszdW3xvFAj+gvUTJuhKB/RcX7QmrktXbkS9Em8wQ2DARyEP809kzqqkH6+5cKWf kITO/3hzDo0cf6YeIVBZE10/behsBSu21tpytATxFo0W8dDZtBJ72ZIct0Ly8Xryf1mHvN Npdy8bO2BAl4FLTwD+LLUxt7SS/t90b7N4MmjNJQFibpVzhzTuy7kKO7eypUKsTs3br9O9 EEugpJNt41cF/ycSu/cw+kRaGjeEvx+AAkT/q7IYd3RXSTn/3i7sH/HzuoI0/jjQ6lIVz9 td0fVlzNQwHNl/rzMCG5S4cr61ZYcvyB9/45WesslUxOZo9AV+BtfDukSAri2w== 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 4QqRTB5lqKz18Ws; Mon, 26 Jun 2023 12:08: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 35QC8kj9083285; Mon, 26 Jun 2023 12:08:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8kN2083284; Mon, 26 Jun 2023 12:08:46 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:46 GMT Message-Id: <202306261208.35QC8kN2083284@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: de3045f3f955 - stable/13 - LinuxKPI: add ns_to_timespec64() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: de3045f3f95565278ae0ce1dcda0a2677c894edc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=de3045f3f95565278ae0ce1dcda0a2677c894edc commit de3045f3f95565278ae0ce1dcda0a2677c894edc Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 21:00:45 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:17:28 +0000 LinuxKPI: add ns_to_timespec64() Add ns_to_timespec64() which does not seem to require anything from us given timespec64 is aliases to timespec. Sponsored by: The FreeBSD Foundation Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D40123 (cherry picked from commit 71fde8e5070c4128e35acdb7f69a01460bce4638) --- sys/compat/linuxkpi/common/include/linux/time.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/time.h b/sys/compat/linuxkpi/common/include/linux/time.h index 2b69ec46935c..59a78887c7e3 100644 --- a/sys/compat/linuxkpi/common/include/linux/time.h +++ b/sys/compat/linuxkpi/common/include/linux/time.h @@ -119,6 +119,8 @@ ns_to_timespec(const int64_t nsec) return (ts); } +#define ns_to_timespec64(_x) ns_to_timespec(_x) + static inline int timespec_valid(const struct timespec *ts) { From nobody Mon Jun 26 12:08:47 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTD2dJLz4k6st; Mon, 26 Jun 2023 12:08: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 4QqRTD0W4wz3jgj; Mon, 26 Jun 2023 12:08:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781328; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1ljpnzsmSlYEMqXDF7S8xFOJaQap9TW67LndjXiql+o=; b=Wlwy4GO+wuaQzWPqAZo4mqLf6gnkUEcQNXyzrwzR5Sp7Eq4Q+rhWG4wTtTGT1bqvkRVRDU fgAXZHvkk7ip6KalvHV7L0nkUBRmnblVuDOtiDKqOmdeSkUxsAF3cukodfGMps3MryfCH3 rwUiobL6OSileC0Ozaltqk/l9WKDxKxG3mqaXOkLr24RoCViVkBFDMEx486i1lL5kMAZ5U 5A3bWaIZM6DDVPxQi6fd/BqUAR25+IEaFmNExYx6vfWb512rEiDuXt7usAsHQURtWWl35C lBpxgt5d/FM58kwTdOxA1+yhaG93bEDtZ25SG61t+o4K3SkwBqBxEXJGdxfXSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781328; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1ljpnzsmSlYEMqXDF7S8xFOJaQap9TW67LndjXiql+o=; b=d9PqqxJJmoe7znqGWsAJB7UPYci4Dsm6vIm/vOXh7sEUgCP2QcW7Q1K3K6Sy8bWGhp6TAV 7ZZ1G9pdAbYg//fupRdUPun3NiDNE0NO4GGWenZCDoLrkDWdNEj0Yj1EwmCtwDivXDfVQf 9M3Nk3aotLfkJXmyBYE5tMj+uKB102bVfPXEh1M689XxeovFngMko0amGoLiIJy6U9VhV0 0edska1LOfI6eS4QVLkBif5F3mozqpe930PbVEjH6go+CMkYDLIjZbXdl4zj9HlegUzxBO GCGK+illE5bumfCGquwlKVZB0K/LQtvutjgCSxpKgbA6RU+B0Oq2gxZGz7zebA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781328; a=rsa-sha256; cv=none; b=ILTBu1yJVKcxTs1z+tDdjzpgtTRDIW1Utcl7+dJLSTGd229/qwkI09ylmrYJ4YlHxAs3IC nzC8qByHtrtxFE/T0KBicqNVz5vA+tUN2doHwGXDwa1QR4Hc5aiJFTyDTD29C7BsoQTY5g RZbolRpC6WX6N2e4Cjl3BmofMh5cKDcUEF6JOo16jWY2COKHnB/KJBaeZNoOY2yQZdzfhA FzXu+xH4GTO0KYdGski8E3k70QZcInNw2EygSqvTHPEvmpKQEMlveKJOfpQpDn0DPtQzN8 ys7ZtemuYsufZc8Ql9UfE1CiG0JAudQHYqcjZAGTzby20Rpa7BOzBeCFZp0zIg== 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 4QqRTC6kwMz17db; Mon, 26 Jun 2023 12:08: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 35QC8ltS083307; Mon, 26 Jun 2023 12:08:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8lMc083306; Mon, 26 Jun 2023 12:08:47 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:47 GMT Message-Id: <202306261208.35QC8lMc083306@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d5881640664c - stable/13 - LinuxKPI: add put_unaligned_le16() and get_unaligned_be64() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: d5881640664cf8740b48888397b90eae32f4fd01 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d5881640664cf8740b48888397b90eae32f4fd01 commit d5881640664cf8740b48888397b90eae32f4fd01 Author: Bjoern A. Zeeb AuthorDate: 2023-05-20 00:52:27 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:17:32 +0000 LinuxKPI: add put_unaligned_le16() and get_unaligned_be64() Add the two new functions needed by wireless drivers by the same implementation pattern we did for different sizes. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40174 (cherry picked from commit ae1e336e05171b80123bf6db7457f19c174accc4) --- sys/compat/linuxkpi/common/include/asm/unaligned.h | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/asm/unaligned.h b/sys/compat/linuxkpi/common/include/asm/unaligned.h index 8a001ec38c3d..c13089b2c5f4 100644 --- a/sys/compat/linuxkpi/common/include/asm/unaligned.h +++ b/sys/compat/linuxkpi/common/include/asm/unaligned.h @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * - * Copyright (c) 2020 The FreeBSD Foundation + * Copyright (c) 2020,2023 The FreeBSD Foundation * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -50,6 +50,15 @@ get_unaligned_le32(const void *p) return (le32_to_cpup((const __le32 *)p)); } +static __inline void +put_unaligned_le16(__le16 v, void *p) +{ + __le16 x; + + x = cpu_to_le16(v); + memcpy(p, &x, sizeof(x)); +} + static __inline void put_unaligned_le32(__le32 v, void *p) { @@ -82,4 +91,11 @@ get_unaligned_be32(const void *p) return (be32_to_cpup((const __be32 *)p)); } +static __inline uint64_t +get_unaligned_be64(const void *p) +{ + + return (be64_to_cpup((const __be64 *)p)); +} + #endif /* _LINUXKPI_ASM_UNALIGNED_H */ From nobody Mon Jun 26 12:08:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTF31Lxz4k6r9; Mon, 26 Jun 2023 12:08: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 4QqRTF1p8pz3jSJ; Mon, 26 Jun 2023 12:08:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781329; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CVouI6fmXT3G6+lYQpGybjSvpZ1ckAoI/53ifnzxWvs=; b=i49/+8et+4gCakyq4uUNZm6VLJQ4ZxOLDhH2iu2S8Zplg5jHs9JGt8LPxLu53Dtgerxa58 Hh0dqtbYV+4FmtIpjKJBVABP9+hnTU/8edBKg4QhTzbRHXyHhInko8ppYYD660dqzKd2P4 e3xVGOapfPIqcQDPuwbJhGKHuL1wEUdyYfUL+Gnn47tigYGVNaVrCtxviGtDOHviw2bq6u me0MyBkInTuq3h0nUyaZMYvutWQLW8UxHqmbR1jMQ7V9Qc+bgDZMWnK/tUVEs6B0aBjFxH rrIvvSv4fRLKNYTwg9CJHAHeT5oxzMJxkGWZcgRKOvDkQvW6/7d4+TWB4U0xJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781329; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CVouI6fmXT3G6+lYQpGybjSvpZ1ckAoI/53ifnzxWvs=; b=BbhWCHAJy+jVhtLgEyGd7F2WuenBzJrxSg4DV7dB5kWzGMbHHvexbq0mVzyf0vVn3COlOH 6vstlFJKSVI5UxgCw6Kc/92pyqO1KhDPZJQMKqMpMBM2Eb/jWAt334sD6if6+WPeRgDQc6 cUIUTouz5gMgxaJpOas/gnIX+JaMacjjJjrfM1cNnFWMpBA/StgF/rH63FFR4/eK81Ug7W 7SR+uoSUPkalssAPRauX1WDuxOISgiP6QD/ThAjjoidgH8SAwiPez1SdLfhlGmSsPcch7T RyrYmIB2TY94pL7HgbXhcHNhYPFBIxQinLpzhO4fXG+RP0BpLI2Au4hgbWweXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781329; a=rsa-sha256; cv=none; b=KdIOsVL1mF3pM9vokbjFTqBnZb6vZiukk09yTcGRumaegFm24XCu/u5rczwI8tCRcGme9f FBQh2MPgS8Oea1tct+V7ch6/t8irp/AAXThmuOP8aNXa3TyZBP4V4EXoyhLQqxczwWYDXe pDFOB0/rtn4DCNRXKrf1R3vi3E5iI6CJHhAOXj0blsMdHpLMGtUo9n9kQMEOpgkrlgLieV jmNfIgG6ZFmhQuRRdU8QAmHLQYXnvYD14J9hlHpHuetpTTB0FkJkKHVSIr5FRvjMOpHuLM wMZRlYwPo1zVz0C5aPzN3qpKUtVxwsS5jK1k5rG9/oA6Fq8txmZ/U0w/VOAtuA== 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 4QqRTF0csZz18Cl; Mon, 26 Jun 2023 12:08: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 35QC8m9U083326; Mon, 26 Jun 2023 12:08:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8mZK083325; Mon, 26 Jun 2023 12:08:48 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:48 GMT Message-Id: <202306261208.35QC8mZK083325@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 41ca81606eb5 - stable/13 - LinuxKPI: netdevice: add dev_set_threaded() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 41ca81606eb512990f377c9156e9b5c650c29f3d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=41ca81606eb512990f377c9156e9b5c650c29f3d commit 41ca81606eb512990f377c9156e9b5c650c29f3d Author: Bjoern A. Zeeb AuthorDate: 2023-05-20 00:51:01 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:17:39 +0000 LinuxKPI: netdevice: add dev_set_threaded() Add dev_set_threaded() to the dummy functions of netdevice.h in order to keep an upcoming wireless driver compiling. While here also update the name of a function argument for consistency. (cherry picked from commit 6153bef9ec961786d79c52e51c6908324661e26e) --- sys/compat/linuxkpi/common/include/linux/netdevice.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/netdevice.h b/sys/compat/linuxkpi/common/include/linux/netdevice.h index 8653b5df68bd..64441999538f 100644 --- a/sys/compat/linuxkpi/common/include/linux/netdevice.h +++ b/sys/compat/linuxkpi/common/include/linux/netdevice.h @@ -342,12 +342,20 @@ ether_setup(struct net_device *ndev) } static __inline void -dev_net_set(struct net_device *dev, void *p) +dev_net_set(struct net_device *ndev, void *p) { pr_debug("%s: TODO\n", __func__); } +static __inline int +dev_set_threaded(struct net_device *ndev, bool threaded) +{ + + pr_debug("%s: TODO\n", __func__); + return (-ENODEV); +} + /* -------------------------------------------------------------------------- */ static __inline bool From nobody Mon Jun 26 12:08:50 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTH0Pm7z4k6nc; Mon, 26 Jun 2023 12:08: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 4QqRTG4Trzz3jSs; Mon, 26 Jun 2023 12:08:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781330; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l7gQCamSAEpUPzZ5U0YL1DWRctnr3lYkfZAke0nEfu0=; b=oIxwFOt8Tes96bJVIykb3KFrqdH5EodCpKnuoKHYP/mXnRXECxUOFTuHj8P5EyNKgJwS+5 ssR6x5uMkKJe8bBX24m+2EvYkDOnc287ah8ly8h1WgKFxsnSGvOvoIREFAFX41Uy4I2Ms6 FBPskO/pKEJ4DEnYpzdDVbjGinprr/2gAiZ4WwRbXnufcK4nwaFj+dIZ34AeeizSwnDLeF xKNcMM6v91GFV4QlHpokoIrtE4R4IebF2zNFbLdT+eT66K//nY2AzvOmn70ox7RNhUkswb UohJYYSb0hwBwv0Hq81NKxxEnCvEwfDdOCEHtB+6sRdlzeRmTuMDRkNkXf5vfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781330; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l7gQCamSAEpUPzZ5U0YL1DWRctnr3lYkfZAke0nEfu0=; b=YJL8oL60nfZRyfriHEXwp29Yxr/7tqM/N34dSSrjjCPOYHxyDE9lt8J2mMGqvt3hbBy0+9 eAMWXXuiMuXh0dcc8qpkyJ7CkEAVT9/XxSnN8l9sDqRYCygj1Iurq9ao7Tsz75nwLFqQ5c 0wZZyFMQpYJ/e2j3OBpbfQBXvqWZWCQLgh/mYO6K5UMCeLOzE5k8kr1dgqKP4GFx9mDEyu ag7evVBThS8iHLP0Yu2VIFPtcJI/lyYojZvWIXaHZbCzaGoI/HSrD8UxlP6xPk/3Z8zkSA s9KnPPs2DnOodhornjwuJQzTwrfooi0d7s9GPk6X2KF66tuBP1wh5OyjAmw9Nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781330; a=rsa-sha256; cv=none; b=qUGr6LqLfWjsHlBghkvhUsBUz6cPtfxaT4NgDe/+FErzwy6+O4co8gQ3Jtt1WHRjLG3fPs k0Fq5pjPrgw/HBG0JkVSQGLi3BbUN0K+F3HGgQcIstYhZm62KXe0R4hHP9mHC4/X8Z6TNx i8wXKSPFBpf7a2seZgtwEd/VrJ8I9/hZb9lksZzGKQibwMadyhi5DzuzrtTtbOZODbxDeN PYbYBy4jGPhvMIkbJmsfZpkRRgaSyAsDsMjzKDRZm+Qu80jFXkHbgoBWb0El2N6URasX8N heNLs55oObZHh4rPBAcOcyrEzwcBnLvD2orApUekB50tZAuUeIAvwj/XgTFuHg== 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 4QqRTG1D71z18Ct; Mon, 26 Jun 2023 12:08: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 35QC8o2L083345; Mon, 26 Jun 2023 12:08:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8odM083344; Mon, 26 Jun 2023 12:08:50 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:50 GMT Message-Id: <202306261208.35QC8odM083344@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: adc27210ecb4 - stable/13 - ath10k: ath11k: add specific LinuxKPI support List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: adc27210ecb4d0c6d452a80ade7431c234320d7c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=adc27210ecb4d0c6d452a80ade7431c234320d7c commit adc27210ecb4d0c6d452a80ade7431c234320d7c Author: Bjoern A. Zeeb AuthorDate: 2023-04-18 20:21:37 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:18:50 +0000 ath10k: ath11k: add specific LinuxKPI support Add files needed by ath1?k drivers to linuxkpi/linuxkpi_wlan. This contain (skeleton) implementations of what is needed to compile but specifically mhi/qmi/qrtr will need more work for ath11k. (cherry picked from commit 06a1103fe38677ba6213cae321255f53e9476dcd) (cherry picked from commit 047298203fc3bc2b290f44b9531a7b7d553fe9b7) (cherry picked from commit bee50f894b9e0b51668c83e24bf2ec7c275725eb) --- sys/compat/linuxkpi/common/include/linux/mhi.h | 222 +++++++++++++++++++++ sys/compat/linuxkpi/common/include/linux/qrtr.h | 41 ++++ .../linuxkpi/common/include/linux/soc/qcom/qmi.h | 175 ++++++++++++++++ sys/compat/linuxkpi/common/src/linux_mhi.c | 94 +++++++++ sys/conf/files | 2 + sys/modules/linuxkpi_wlan/Makefile | 3 + 6 files changed, 537 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/mhi.h b/sys/compat/linuxkpi/common/include/linux/mhi.h new file mode 100644 index 000000000000..5f59db81a6db --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/mhi.h @@ -0,0 +1,222 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2022-2023 Bjoern A. Zeeb + * + * 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. + * + * $FreeBSD$ + */ + +#ifndef _LINUXKPI_LINUX_MHI_H +#define _LINUXKPI_LINUX_MHI_H + +#include + +/* Modem Host Interface (MHI) */ + +/* XXX FIXME */ +#define MHI_DB_BRST_DISABLE 0 +#define MHI_ER_CTRL 0 + +enum mhi_callback { + MHI_CB_SYS_ERROR, + MHI_CB_BW_REQ, + MHI_CB_EE_MISSION_MODE, + MHI_CB_EE_RDDM, + MHI_CB_FATAL_ERROR, + MHI_CB_IDLE, + MHI_CB_LPM_ENTER, + MHI_CB_LPM_EXIT, + MHI_CB_PENDING_DATA, +}; + +struct mhi_channel_config { + const char *name; + int auto_queue, dir, doorbell, doorbell_mode_switch, ee_mask, event_ring, lpm_notify, num, num_elements, offload_channel, pollcfg; +}; + +struct mhi_event_config { + int client_managed, data_type, hardware_event, irq, irq_moderation_ms, mode, num_elements, offload_channel, priority; +}; + +struct mhi_device { +}; + +struct mhi_controller_config { + const struct mhi_channel_config *ch_cfg; + struct mhi_event_config *event_cfg; + + int buf_len, max_channels, num_channels, num_events, use_bounce_buf; + + uint32_t timeout_ms; +}; + +struct mhi_controller { + struct device *cntrl_dev; + struct mhi_device *mhi_dev; + void *regs; + int *irq; + const char *fw_image; + + bool fbc_download; + size_t rddm_size; + size_t sbl_size; + size_t seg_len; + size_t reg_len; + int nr_irqs; + unsigned long irq_flags; + uint32_t timeout_ms; + + dma_addr_t iova_start; + dma_addr_t iova_stop; + + int (*runtime_get)(struct mhi_controller *); + void (*runtime_put)(struct mhi_controller *); + void (*status_cb)(struct mhi_controller *, enum mhi_callback); + int (*read_reg)(struct mhi_controller *, void __iomem *, uint32_t *); + void (*write_reg)(struct mhi_controller *, void __iomem *, uint32_t); +}; + +/* -------------------------------------------------------------------------- */ + +struct mhi_controller *linuxkpi_mhi_alloc_controller(void); +void linuxkpi_mhi_free_controller(struct mhi_controller *); +int linuxkpi_mhi_register_controller(struct mhi_controller *, + const struct mhi_controller_config *); +void linuxkpi_mhi_unregister_controller(struct mhi_controller *); + +/* -------------------------------------------------------------------------- */ + +static inline struct mhi_controller * +mhi_alloc_controller(void) +{ + + /* Keep allocations internal to our implementation. */ + return (linuxkpi_mhi_alloc_controller()); +} + +static inline void +mhi_free_controller(struct mhi_controller *mhi_ctrl) +{ + + linuxkpi_mhi_free_controller(mhi_ctrl); +} + +static inline int +mhi_register_controller(struct mhi_controller *mhi_ctrl, + const struct mhi_controller_config *cfg) +{ + + return (linuxkpi_mhi_register_controller(mhi_ctrl, cfg)); +} + +static inline void +mhi_unregister_controller(struct mhi_controller *mhi_ctrl) +{ + + linuxkpi_mhi_unregister_controller(mhi_ctrl); +} + +/* -------------------------------------------------------------------------- */ + +static __inline int +mhi_device_get_sync(struct mhi_device *mhi_dev) +{ + /* XXX TODO */ + return (-1); +} + +static __inline void +mhi_device_put(struct mhi_device *mhi_dev) +{ + /* XXX TODO */ +} + +/* -------------------------------------------------------------------------- */ + +static __inline int +mhi_prepare_for_power_up(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +static __inline int +mhi_sync_power_up(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +static __inline int +mhi_async_power_up(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +static __inline void +mhi_power_down(struct mhi_controller *mhi_ctrl, bool x) +{ + /* XXX TODO */ +} + +static __inline void +mhi_unprepare_after_power_down(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ +} + +/* -------------------------------------------------------------------------- */ + +static __inline int +mhi_pm_suspend(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +static __inline int +mhi_pm_resume(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +static __inline int +mhi_pm_resume_force(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +/* -------------------------------------------------------------------------- */ + +static __inline int +mhi_force_rddm_mode(struct mhi_controller *mhi_ctrl) +{ + /* XXX TODO */ + return (0); +} + +#endif /* _LINUXKPI_LINUX_MHI_H */ diff --git a/sys/compat/linuxkpi/common/include/linux/qrtr.h b/sys/compat/linuxkpi/common/include/linux/qrtr.h new file mode 100644 index 000000000000..1d2af0efdce2 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/qrtr.h @@ -0,0 +1,41 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2022 Bjoern A. Zeeb + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _LINUXKPI_LINUX_QRTR_H +#define _LINUXKPI_LINUX_QRTR_H + +/* Qualcomm IPC Router (QRTR) */ + +#include + +struct sockaddr_qrtr { + sa_family_t sq_family; + uint32_t sq_node; + uint32_t sq_port; +}; + +#endif /* _LINUXKPI_LINUX_QRTR_H */ diff --git a/sys/compat/linuxkpi/common/include/linux/soc/qcom/qmi.h b/sys/compat/linuxkpi/common/include/linux/soc/qcom/qmi.h new file mode 100644 index 000000000000..63e0cd3e45fc --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/soc/qcom/qmi.h @@ -0,0 +1,175 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2022-2023 Bjoern A. Zeeb + * + * 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. + * + * $FreeBSD$ + */ + +#ifndef _LINUXKPI_LINUX_SOC_QCOM_QMI_H +#define _LINUXKPI_LINUX_SOC_QCOM_QMI_H + +/* QMI (Qualcomm MSM Interface) */ + +#include + +enum soc_qcom_qmi_data_type { + QMI_EOTI, + QMI_DATA_LEN, + QMI_OPT_FLAG, + QMI_UNSIGNED_1_BYTE, + QMI_UNSIGNED_2_BYTE, + QMI_UNSIGNED_4_BYTE, + QMI_UNSIGNED_8_BYTE, + QMI_SIGNED_4_BYTE_ENUM, + QMI_STRUCT, + QMI_STRING, +}; + +#define QMI_RESULT_SUCCESS_V01 __LINE__ +#define QMI_INDICATION __LINE__ + +struct qmi_handle; + +enum soc_qcom_qmi_array_type { + NO_ARRAY, + STATIC_ARRAY, + VAR_LEN_ARRAY, +}; + +/* Should this become an enum? */ +#define QMI_COMMON_TLV_TYPE 0 + +struct qmi_elem_info { + enum soc_qcom_qmi_data_type data_type; + uint32_t elem_len; + uint32_t elem_size; + enum soc_qcom_qmi_array_type array_type; + uint8_t tlv_type; + uint32_t offset; + const struct qmi_elem_info *ei_array; +}; + +struct qmi_response_type_v01 { + uint16_t result; + uint16_t error; +}; + +struct qmi_txn { +}; + +struct qmi_service { + uint32_t node; + uint32_t port; +}; + +struct qmi_msg_handler { + uint32_t type; + uint32_t msg_id; + const struct qmi_elem_info *ei; + size_t decoded_size; + void (*fn)(struct qmi_handle *, struct sockaddr_qrtr *, struct qmi_txn *, const void *); +}; + +struct qmi_ops { + int (*new_server)(struct qmi_handle *, struct qmi_service *); + void (*del_server)(struct qmi_handle *, struct qmi_service *); +}; + +struct qmi_handle { + int sock; + + const struct qmi_msg_handler *handler; + struct qmi_ops ops; +}; + + +/* XXX-TODO need implementation somewhere... it is not in ath1xk* */ +extern struct qmi_elem_info qmi_response_type_v01_ei[]; + +static inline int +qmi_handle_init(struct qmi_handle *handle, size_t resp_len_max, + const struct qmi_ops *ops, const struct qmi_msg_handler *handler) +{ + + handle->handler = handler; + if (ops != NULL) + handle->ops = *ops; + + /* We will find out what else to do here. */ + /* XXX TODO */ + + return (0); +} + +static __inline int +qmi_add_lookup(struct qmi_handle *handle, uint32_t service, uint32_t version, + uint32_t service_ins_id) +{ + + /* XXX TODO */ + return (0); +} + +static __inline void +qmi_handle_release(struct qmi_handle *handle) +{ + + /* XXX TODO */ +} + +static __inline int +qmi_send_request(struct qmi_handle *handle, void *x, struct qmi_txn *txn, + uint32_t msd_id, size_t len, const struct qmi_elem_info *ei, void *req) +{ + + /* XXX TODO */ + return (-ENXIO); +} + +static __inline void +qmi_txn_cancel(struct qmi_txn *txn) +{ + + /* XXX TODO */ +} + +static __inline int +qmi_txn_init(struct qmi_handle *handle, struct qmi_txn *txn, + const struct qmi_elem_info *ei, void *resp) +{ + + /* XXX TODO */ + return (-ENXIO); +} + +static __inline int +qmi_txn_wait(struct qmi_txn *txn, uint64_t jiffies) +{ + + /* XXX TODO */ + return (-ENXIO); +} + +#endif /* _LINUXKPI_LINUX_SOC_QCOM_QMI_H */ diff --git a/sys/compat/linuxkpi/common/src/linux_mhi.c b/sys/compat/linuxkpi/common/src/linux_mhi.c new file mode 100644 index 000000000000..fb68f1ef8305 --- /dev/null +++ b/sys/compat/linuxkpi/common/src/linux_mhi.c @@ -0,0 +1,94 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2022 Bjoern A. Zeeb + * + * 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. + * + * $FreeBSD$ + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include + +#include /* pr_debug */ +#include + +static MALLOC_DEFINE(M_LKPIMHI, "lkpimhi", "LinuxKPI MHI compat"); + +struct mhi_controller * +linuxkpi_mhi_alloc_controller(void) +{ + struct mhi_controller *mhi_ctrl; + + mhi_ctrl = malloc(sizeof(*mhi_ctrl), M_LKPIMHI, M_NOWAIT | M_ZERO); + + return (mhi_ctrl); +} + +void +linuxkpi_mhi_free_controller(struct mhi_controller *mhi_ctrl) +{ + + /* What else do we need to check that it is gone? */ + free(mhi_ctrl, M_LKPIMHI); +} + +int +linuxkpi_mhi_register_controller(struct mhi_controller *mhi_ctrl, + const struct mhi_controller_config *cfg) +{ + + if (mhi_ctrl == NULL || cfg == NULL) + return (-EINVAL); + +#define CHECK_FIELD(_f) \ + if (!mhi_ctrl->_f) \ + return (-ENXIO); + CHECK_FIELD(cntrl_dev); + CHECK_FIELD(regs); + CHECK_FIELD(irq); + CHECK_FIELD(reg_len); + CHECK_FIELD(nr_irqs); + + CHECK_FIELD(runtime_get); + CHECK_FIELD(runtime_put); + CHECK_FIELD(status_cb); + CHECK_FIELD(read_reg); + CHECK_FIELD(write_reg); +#undef CHECK_FIELD + + printf("%s: XXX-BZ TODO\n", __func__); + return (0); +} + +void +linuxkpi_mhi_unregister_controller(struct mhi_controller *mhi_ctrl) +{ + + pr_debug("%s: TODO\n", __func__); +} diff --git a/sys/conf/files b/sys/conf/files index dc776d09abf5..74f331f1509e 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4647,6 +4647,8 @@ compat/linuxkpi/common/src/linux_kthread.c optional compat_linuxkpi \ compile-with "${LINUXKPI_C}" compat/linuxkpi/common/src/linux_lock.c optional compat_linuxkpi \ compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_mhi.c optional compat_linuxkpi wlan \ + compile-with "${LINUXKPI_C}" compat/linuxkpi/common/src/linux_netdev.c optional compat_linuxkpi \ compile-with "${LINUXKPI_C}" compat/linuxkpi/common/src/linux_page.c optional compat_linuxkpi \ diff --git a/sys/modules/linuxkpi_wlan/Makefile b/sys/modules/linuxkpi_wlan/Makefile index fccd1249bc72..ef86121366c3 100644 --- a/sys/modules/linuxkpi_wlan/Makefile +++ b/sys/modules/linuxkpi_wlan/Makefile @@ -5,6 +5,9 @@ KMOD= linuxkpi_wlan SRCS= linux_80211.c \ linux_80211_macops.c +# QCA ath11k support. +SRCS+= linux_mhi.c + SRCS+= opt_wlan.h SRCS+= ${LINUXKPI_GENSRCS} From nobody Mon Jun 26 12:08:51 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTH5KgJz4k6t7; Mon, 26 Jun 2023 12:08: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 4QqRTH2yN9z3jYq; Mon, 26 Jun 2023 12:08:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e6FxtJNfwlV9yKlqfLw7Phu5XhABtT09qsrtGJhFl1g=; b=XoOEZsgUDjUrU7Ie/jd3ARzRAGJ1N9yeya4tbdCS4GUCLMKPGxkAoFN0J55NCjZrOtyyeP wZ0CgKwFrsG/7ItbAJroqLfTNd05xO2bawKFNUypqbN6Bg4wTUTmp7HBPXgbw4gvzC9YIM t8xYQwclysKKmLDJzqFVqQFd5JEb0KmgipVfgI8c+sIHyLrA9hdOae33ovYEX7niQVQWnP EmTjKQ2J77qf2EUNaWkG3nEInSqQcBGJx3XukFwQUTgkqXleLojlGN+oNGg3ku0ZgbKm/6 1v7u68U3aUaS6IRMNDwCgmDV/abzalpcnjlrPeMnLS+g4Ydy/0jes7fRmWaH4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e6FxtJNfwlV9yKlqfLw7Phu5XhABtT09qsrtGJhFl1g=; b=MCozWxL/A89D9oVWKI+zhWG50+D+CtsyCvPTgfMoGNuU62+85uLb05H06orpuBR8UUgBzY ywVt3LLayk1eRlbffYUUlilzwAqR/7doQBksJG9TWZCZOD7n3zZNuycwANL8e4jFV/6z6F xVYHLGOJrLduBLrR6DXCCe2X60b8G5UTY/fOot+ZmMdxivmBIhpDSoZGPW7+6ya9+z/Jrl +Z0bjDBssKoiBeaoa0RyS+KwqWoTx34Hblt/mR7/xMPvh5qOI6hRCqx6WqBlidKpVW5vA9 2+xJIbgxa/xSeVZzF/zOhbcOeToX/kMdz4//Sadaztg2mOSj/WdrUpGrP3gCYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781331; a=rsa-sha256; cv=none; b=AsAol50DY93Fj85Xt+hh4zbX9AD1sQijKPb/ub0dyL1RVjJX2uL7zLgALPuLT8i1eIl0Vp M8vhh99PILFUiwiJw0huZzN/Xa9z1FTNWYy3+GIWhDgSiRNVWCyakIhQDIDUtFgPag+/YC Y9TEatdl4LwyliNCwziNFUJHkYu8pPQmZa/nr0XriC6sClvGBc03LSnsKpgCGhyTwJDoVD jJ5UQdubdlGnB00go2KwVqRzcbPQmcHz8GuxzPBomPW+sh5rZyhuZ0m+EZOjqIwHX6sxm4 REDBU+KwqORaK8cg1MFSj5qpxywvaTRh35h+B34/ySTswtDWl/hs/RNBFBx8mQ== 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 4QqRTH1w1Bz18P0; Mon, 26 Jun 2023 12:08:51 +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 35QC8pY1083371; Mon, 26 Jun 2023 12:08:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8pKa083370; Mon, 26 Jun 2023 12:08:51 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:51 GMT Message-Id: <202306261208.35QC8pKa083370@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d6f5ea1dc1b3 - stable/13 - LinuxKPI: add further dummy header files List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: d6f5ea1dc1b32021fa623c27bfcfa17f9e4e2567 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d6f5ea1dc1b32021fa623c27bfcfa17f9e4e2567 commit d6f5ea1dc1b32021fa623c27bfcfa17f9e4e2567 Author: Bjoern A. Zeeb AuthorDate: 2023-05-20 00:41:45 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:19:17 +0000 LinuxKPI: add further dummy header files Wireless drivers try to include these files. Add them empty for no better reason yet. Sponsored by: The FreeBSD Foundation (cherry picked from commit b7afaf8a411a0536691feabb024ffd5afb579eb5) (cherry picked from commit 6a1c5037363aebd14333bb759237d2b19a1608d8) (cherry picked from commit ab55b58b5c515148e6ef65422c9fda17085f07cd) --- sys/compat/linuxkpi/dummy/include/linux/kstrtox.h | 0 sys/compat/linuxkpi/dummy/include/linux/of.h | 0 sys/compat/linuxkpi/dummy/include/linux/of_irq.h | 0 sys/compat/linuxkpi/dummy/include/linux/thermal.h | 0 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/sys/compat/linuxkpi/dummy/include/linux/kstrtox.h b/sys/compat/linuxkpi/dummy/include/linux/kstrtox.h new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/sys/compat/linuxkpi/dummy/include/linux/of.h b/sys/compat/linuxkpi/dummy/include/linux/of.h new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/sys/compat/linuxkpi/dummy/include/linux/of_irq.h b/sys/compat/linuxkpi/dummy/include/linux/of_irq.h new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/sys/compat/linuxkpi/dummy/include/linux/thermal.h b/sys/compat/linuxkpi/dummy/include/linux/thermal.h new file mode 100644 index 000000000000..e69de29bb2d1 From nobody Mon Jun 26 12:08:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTJ5TTKz4k6tD; Mon, 26 Jun 2023 12:08: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 4QqRTJ4BkGz3jnX; Mon, 26 Jun 2023 12:08:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Frss8uFL2JTLYyqqT6nKPxSYHrcmqTuKhqs1+S5ie1M=; b=jb6uLhfLq81pUJ69DJC0NrdNxgHskCu20tYOF+KSLb93F6mbrFREVG050Nb5wwtnI0OgL8 o4SxVqrUWo0/5A3hj+3HoO7eJNup/yamTk4ld3D5VMnMbtlg+FGQL37khlqyxQx9CHbTP6 zPh6XIQrw/HBfbgbYaML8eCfohczkg516Mcj1hrhPoAQalMBD4u+WabmhLwWY+M3fLeRnA GGUufNkaDr+rHKmMjkh9j9CG3gTvSHQ76IRTtWlwvU9z4nMtMcur9MgEimqrDX4D2vExZc bRexkqYvU70V0tejTj4Cg6eT/+tXL/UbeXulvqhT1WbfGhCzdBoV/V6iOaNFXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Frss8uFL2JTLYyqqT6nKPxSYHrcmqTuKhqs1+S5ie1M=; b=P4jmcOa3VJiVSeRlp5hd1w6yue8gX37+EyFHZ8z96xLXW6LqCQ3AlyQoiDZUo0PRcOQYrU bH09Oz7XOASmeAP5v4/JfnvVK52pZFpVPfef4eSQ4kGcaiCyQFpC3V/vaDj+qLmhr4huwB tDQGhvbMQhDnq0dTX2wGMqn7z+m7Nt/WuhES1VNoR1HPXT7jpm6GLF/4hQN7Se32X1IzIA 3uQ3a4LG7LMzhjJEEfHJ4FjI2OjoxTfqywBfZsh6LBBTmfLhfsY1D/eHaG2/Ep21tPZ6Oc oxuXN72NLgaM5/WIK0nXbfkLm2IJrKWPFaNzKD/16sfzeIRXfootwXRuzkxLNg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781332; a=rsa-sha256; cv=none; b=KB10tZLLx3cTPIQ+7GTJIbeVEvMsH1Tu3YQKm8ehYO3U2FcWHI76216GLMItIK6fLPX5QW B8lkTh6mxf/tq9aRqxtqiI0S6u6rYGsXvVDguCdaFmStKKXIru+TYyguhwJTxCGoRIEl0Q PLunlk5s7S6xqhpIHGj12wxhx1w02aSZHQk7XNyufF3hMGpJVSjn/NSH2EPw0ZoRUqDwUu PrUx6Ljq3LK4QRPPGxgSfQS7UyoPrpZshB4HcEKwykvPHCvjYf2U/lnxx/v35DBqSh3uX2 EEp8YxSAPWxhbxGuiVZxCzqJFCBDCxhHHF0EB4UqfS4nFPJaOQJIsos1LzqGfA== 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 4QqRTJ302bz18X1; Mon, 26 Jun 2023 12:08: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 35QC8q4H083390; Mon, 26 Jun 2023 12:08:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8qTp083389; Mon, 26 Jun 2023 12:08:52 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:52 GMT Message-Id: <202306261208.35QC8qTp083389@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e7c58fc886ec - stable/13 - LinuxKPI: implement pci_rescan_bus() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: e7c58fc886ec09fe16bb544a2a3b2e9fcfbc0008 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e7c58fc886ec09fe16bb544a2a3b2e9fcfbc0008 commit e7c58fc886ec09fe16bb544a2a3b2e9fcfbc0008 Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 20:59:30 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:19:42 +0000 LinuxKPI: implement pci_rescan_bus() Try to implement pci_rescan_bus(). pci_rescan_method() is already doing most of the job. We only have to do the count for the return value again ourselves. Sponsored by: The FreeBSD Foundation Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D40122 (cherry picked from commit 525dd4acaacc59b815131caccfdebc905d4d7bff) --- sys/compat/linuxkpi/common/include/linux/pci.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index 55435f6b72bc..f3c495ff1a21 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -277,6 +277,7 @@ _Static_assert(sizeof(struct pci_driver) == __PCI_DRIVER_SIZE, struct pci_bus { struct pci_dev *self; + /* struct pci_bus *parent */ int domain; int number; }; @@ -1425,6 +1426,29 @@ pci_stop_and_remove_bus_device(struct pci_dev *pdev) { } +static inline int +pci_rescan_bus(struct pci_bus *pbus) +{ + device_t *devlist, parent; + int devcount, error; + + if (!device_is_attached(pbus->self->dev.bsddev)) + return (0); + /* pci_rescan_method() will work on the pcib (parent). */ + error = BUS_RESCAN(pbus->self->dev.bsddev); + if (error != 0) + return (0); + + parent = device_get_parent(pbus->self->dev.bsddev); + error = device_get_children(parent, &devlist, &devcount); + if (error != 0) + return (0); + if (devcount != 0) + free(devlist, M_TEMP); + + return (devcount); +} + /* * The following functions can be used to attach/detach the LinuxKPI's * PCI device runtime. The pci_driver and pci_device_id pointer is From nobody Mon Jun 26 12:08:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTK6lV9z4k71t; Mon, 26 Jun 2023 12:08: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 4QqRTK4tXCz3jsq; Mon, 26 Jun 2023 12:08:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gMmbjsKkTHg3egHnUN0UPcgOQen7TkJs9c/MwtFNu5U=; b=xOYFMrxm0urUA1LrKJ7LdgFhQr4DR58+w4ubbwGX35/ErSvhk3+9Zbj6zJq/npNtcJ0scY 7nkCUVki/o9G7IYuXwaRpZFTREp3nxLaSKpSV97ka571KyMu+PAx2kqJzPacQgCfLWz9uJ nZO2NJwoAK3w8RtHk0p9x1hnYneU6F5nNFN/iRNhDp9yusosr9FDqsua30WtTYSQ/xta1D su5qhf1QQUfYWDGRjTYf23dQd+q434Cw6U/SGc1cEfm6pmne/riKbg9+PkWZbuCZ48WdT0 69VC4bnMS9Tm08+kOK7x8HMtg2Ne5B8QMuKGxZVNyYCyN5TW1DCu9dMcSqBdWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gMmbjsKkTHg3egHnUN0UPcgOQen7TkJs9c/MwtFNu5U=; b=stZNHI32+ciahaUD6TpTLujHYwYAa0Rrq+JvV+7P4XJ7XkE4tmHjlRkgWBkiwweSGRRJ5p Y4tij5IexfXIOIIFfBa+9rMz+cfxg/vDThwUyf5IkXndeuMrN9iUv7GTvw2eah8mA9LPXw +ixESQOy02XZbAiRl5QCXoCy+h5a1sgUD2NzJJWKc/Yif02o7163FnzDXFuUnaLZcAy7xm e0y0oonz3BjxbEUInXZMTJ4zlvtObNpy34ZoWDW1k+BviV4opCSMhQyKWeyRZxPFiF4XV1 oWdKMuOAsniX9p9pyz95pf0tSj/tQfgh3SRyH5xo4CsSVj9JS5oNV+dvhu/C3A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781333; a=rsa-sha256; cv=none; b=U1HuIjZiLi3VY/N1LuMJo+w/mTurs7mkBeTVSp/CxjU78bimZkJZd+IPAE5ItqPrU4Nlv5 m0ZAFnWBYU7R1MgVvR7rlF7buT28t6H2zIDyyiA7JhqYFNx07GOFPMDtHu7uhLDw4QaBbf yHLv3Hyo45AXpsfpM26cg364UeApTG9hQhELl4R3Fk6c5SGhn9SnDUlISDtDtQkDasizVm O7vduokv1VyQW6QLG4sN6Ec2AsWnKKD49Cgglf+WSr1E1kg099VgOWq77IkxxoK670KNH9 0u02rbWn6iGjGRn7RiMHk8lAUytjNeiOh8VWBgbC74CxHGqH9l53ABsuQQi8fg== 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 4QqRTK3yjGz17ZZ; Mon, 26 Jun 2023 12:08: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 35QC8rkR083409; Mon, 26 Jun 2023 12:08:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8rVG083408; Mon, 26 Jun 2023 12:08:53 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:53 GMT Message-Id: <202306261208.35QC8rVG083408@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 8e77643e0441 - stable/13 - LinuxKPI: pci: add PCI_COMMAND_MEMORY List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 8e77643e0441f6894776e784d1562f1462a6e624 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=8e77643e0441f6894776e784d1562f1462a6e624 commit 8e77643e0441f6894776e784d1562f1462a6e624 Author: Bjoern A. Zeeb AuthorDate: 2023-05-23 23:11:06 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:19:45 +0000 LinuxKPI: pci: add PCI_COMMAND_MEMORY Add another PCI alias to our native defines for a wireless driver. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40247 (cherry picked from commit 7d7d12ba7765902f51dabb259a186ca3b1a2d351) --- 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 f3c495ff1a21..c2643a27b910 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -113,6 +113,7 @@ MODULE_PNP_INFO("U32:vendor;U32:device;V32:subvendor;V32:subdevice", \ #define PCI_DEVICE_ID PCIR_DEVICE #define PCI_COMMAND PCIR_COMMAND #define PCI_COMMAND_INTX_DISABLE PCIM_CMD_INTxDIS +#define PCI_COMMAND_MEMORY PCIM_CMD_MEMEN #define PCI_EXP_DEVCTL PCIER_DEVICE_CTL /* Device Control */ #define PCI_EXP_LNKCTL PCIER_LINK_CTL /* Link Control */ #define PCI_EXP_LNKCTL_ASPM_L0S PCIEM_LINK_CTL_ASPMC_L0S From nobody Mon Jun 26 12:08:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTL6hGzz4k6rb; Mon, 26 Jun 2023 12:08: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 4QqRTL5gDMz3jyg; Mon, 26 Jun 2023 12:08:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a1SkeeX7FFB9EuWbWg2RmIIrwRe6cFz/QMDp1utizsE=; b=GZoos1BN2OQXSs1Fns/K/VBjDacyRBvpks53OFsp/YQMdkCM203TTszYrsOgF/sTm8/WND Lgb0Bs4QB6foHQBM0Qo/eeZgw6hUnVb1OjT2MHH+hFsxwYEC4VmnXFXUxeVcFaAjidJ0NI EOHCHWeFNoU/qQYYBkvSIP9opPgKrFlQyIgrXTb2WLHeVvnOktnCDAjJ/3/nrJMvQrxZm3 FYvQBwO79rf4RUJB20QgFWqQ8gTm3Ok2wWOKvDcEITPJKtQI3HY8dZazI+rMf2qfI3daEM zh80btkss35pB5uRWkeD96nlLo+fHWMsPZT0ySUqQDeuZF3PoYgmRUZQj0a16g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a1SkeeX7FFB9EuWbWg2RmIIrwRe6cFz/QMDp1utizsE=; b=asKKMCfl0e4910O5Fbi3aGM6wu6Q61MsbreW2ICBIhYNWvi5ExWnckFS238EVTYFObr7ln RAfVe3qdbcOd7HwxjAyrQSjtDqP1Y4DajU2aZ9dv3PtVIc8aObBszQAHnA8xxLqgEYljq9 xnB11+DrIs5p9b+Ht17py/gJz0HOM52w43/J5ftexpgxzYhocwtLwl5rMX9OQhn5xMSWI4 nsE/mlMeTSuj9cawtBoCReNgIYF62A3oUwt22fcar37wnMdZzk1LBqdgOY8pDRLh4+YB0S 9IF7Nsc+usd/uKeB5GeaVzkYPgRGunIQE1y/8w+Td9FDxzEP3gslusYryafsXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781334; a=rsa-sha256; cv=none; b=IkjKLVpIkwmOhX2dmjWn3uBkdqWwXxLFHZu9XwRbQ+TqFZLd2TB4GHmX4ouDS7QeqDOnIA Q5r1pxfyEY1pG4yE+NYayqZ2H4N782lXnusPyM/RVWs1btgojI0iDOdWpuGZ1YNtUbeuEX nwbBSNYdyFmHI+urNHrYSPjadg+q304hcTKYDpi2ywX/5SYrHkX8pIoF7UN4iW4hWXXzIt 0410e5cJqQK9XlfuvkI2hqhTP0bPaiJFN+h1f6lmUFw6IIxgEeuOKG7aL19xjltAwshuzF AO58jOhnoauOTh+5j20JwqY3MqFjf/pC7nXRco6kvf9zRkT2EylZnkW4dFN8GQ== 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 4QqRTL4mRrz18P1; Mon, 26 Jun 2023 12:08: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 35QC8sTm083428; Mon, 26 Jun 2023 12:08:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8sO6083427; Mon, 26 Jun 2023 12:08:54 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:54 GMT Message-Id: <202306261208.35QC8sO6083427@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 50b27a0771b1 - stable/13 - LinuxKPI: pci: update struct msi_desc List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 50b27a0771b112bba2b52ed137903c49947e884d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=50b27a0771b112bba2b52ed137903c49947e884d commit 50b27a0771b112bba2b52ed137903c49947e884d Author: Bjoern A. Zeeb AuthorDate: 2023-05-20 00:48:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:19:50 +0000 LinuxKPI: pci: update struct msi_desc It seems struct msi_desc is setup differently (or was changed) compared to how we added it a while ago. Catch up in order to keep drivers directly accessing fields compiling. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40175 (cherry picked from commit 17bde9cbc6fc3ac219aa11243c0b75025786f628) --- sys/compat/linuxkpi/common/include/linux/pci.h | 8 ++++++-- sys/compat/linuxkpi/common/src/linux_pci.c | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index c2643a27b910..9cc56237482c 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -312,13 +312,17 @@ struct msi_msg { uint32_t data; }; -struct msi_desc { - struct msi_msg msg; +struct pci_msi_desc { struct { bool is_64; } msi_attrib; }; +struct msi_desc { + struct msi_msg msg; + struct pci_msi_desc pci; +}; + /* * If we find drivers accessing this from multiple KPIs we may have to * refcount objects of this structure. diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index 88a6b749a043..4ee3e3dc5838 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -1016,7 +1016,7 @@ lkpi_pci_msi_desc_alloc(int irq) desc = malloc(sizeof(*desc), M_DEVBUF, M_WAITOK | M_ZERO); - desc->msi_attrib.is_64 = + desc->pci.msi_attrib.is_64 = (msi->msi_ctrl & PCIM_MSICTRL_64BIT) ? true : false; desc->msg.data = msi->msi_data; From nobody Mon Jun 26 12:08:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTN38mxz4k6wn; Mon, 26 Jun 2023 12:08: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 4QqRTM6lgkz3jrj; Mon, 26 Jun 2023 12:08:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JztP+vtUHSTKuC4H0cRpSm8LBGoIwznQPO7ORgAINJI=; b=wzH7LVUAl2/IPh0Xn+4WukUprUK/jrfAfwWyNUwr7NnxRKajlsrVqb6LkZZqKVzNYmUOEc i2RfiitpcCAnHPPGFt2lux6pjvFI6Mo61PL+3OveBC/+uqw7/p0VNZPny4l4M3bsemYoTX EemAfhJikEUbBdswnvbuABISTeMw+Qt9sa+XR0rkhz+nZImaTsilTXMQ5fT6xohA1Ss0W2 7Ntd3v8WnlPqronTnu84aF5HBQUdmdNmXdpCA7OYlOwamjHG4OgO8dx9SlISPuFYceliSq NKP6CssgyK97Bpcu8Iiy2kd3WIc3roCx3C1xunEuF72ujiqz9Qa6hYFUT22Dug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JztP+vtUHSTKuC4H0cRpSm8LBGoIwznQPO7ORgAINJI=; b=Hm1Bb9V65U7071vDhWAEwEYmnpl1cMvz715Sa+xOczEmyN2vt+npgUDF/SCWfne2N28Mb1 UDtF4hNbUmy1f0Fy5yCyBoAUFggKegWSgdiQf3iJ00vD/jWTVJNHGnvhbXLJAKS6QepqkV uN+/eBwO1e5Z2PfjsP6KzxptpxK0H8H9nmJT8zcQw+QTazB4/OTTFHmg6HI7IumyGba2tT 83UvQL6/Qt76aXFQ9+fV2jrzBuX6Bs2OGrK2xYHg8grxjhy/i+0tOLpOCV+JcNzv667uXi LoXicty6lu+sxv9mCUvp3vfMZMRHO9McBp2qxELoTSH5/zttjBq2KYbPWomhlQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781336; a=rsa-sha256; cv=none; b=s3ceRUNf2ykAIaO+0c/sRxy48i73Lw1V0O4tYwaC4yLDRLN5JPY9kCESikGvadWiCJtK1c 49S5edlOBICRnwUcKOpLen6Sr03nI0w+1gdhqj6W52rGNr47fyhVPwuqNK0dbWsySdvjyb j/nv4qvqrNOP3NEN73UC7nWpYAlR2h4FjepCS1w/zvJy/iutgyUBMWPf4sn0pXi9V2FpqZ w98uhnZfAMO8KoEMcWTSz+NCCwYn0+qj4ONFgDDkApak2qIeP1nZFiqTTCFhnodCyWaLsF k0GjgquyMkO8bzk1+n236Gm/+34p2UNcdGsVSRaBmefmvO2tc0CcAH+BkW1YbQ== 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 4QqRTM5qs5z17dd; Mon, 26 Jun 2023 12:08: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 35QC8tgh083453; Mon, 26 Jun 2023 12:08:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8tjI083452; Mon, 26 Jun 2023 12:08:55 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:55 GMT Message-Id: <202306261208.35QC8tjI083452@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 523d17b26290 - stable/13 - LinuxKPI: add utsname for init_utsname() with release List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 523d17b262905c8dab686025edc337d91c0f3a86 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=523d17b262905c8dab686025edc337d91c0f3a86 commit 523d17b262905c8dab686025edc337d91c0f3a86 Author: Bjoern A. Zeeb AuthorDate: 2023-05-23 23:12:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:20:21 +0000 LinuxKPI: add utsname for init_utsname() with release A wireless dirver is requesting release from the result of init_utsname(). Populate the field on startup. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40248 (cherry picked from commit ad513b4dba3e330b6f2714bdde4d864898c4222e) --- sys/compat/linuxkpi/common/include/linux/utsname.h | 51 ++++++++++++++++++++++ sys/compat/linuxkpi/common/src/linux_compat.c | 4 ++ 2 files changed, 55 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/utsname.h b/sys/compat/linuxkpi/common/include/linux/utsname.h new file mode 100644 index 000000000000..1f7f4b7f4289 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/utsname.h @@ -0,0 +1,51 @@ +/*- + * Copyright (c) 2023 Bjoern A. Zeeb + * + * 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. + * + * $FreeBSD$ + */ + +#ifndef _LINUXKPI_LINUX_UTSNAME_H +#define _LINUXKPI_LINUX_UTSNAME_H + +#include +#include + +struct _utsname { + char release[OSRELEASELEN]; +}; + +struct uts_namespace { + struct _utsname name; +}; + +extern struct uts_namespace init_uts_ns; + +static inline struct _utsname * +init_utsname(void) +{ + + return &init_uts_ns.name; +} + +#endif /* _LINUXKPI_LINUX_UTSNAME_H */ diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index 4ceb33c348f6..dce3cdcc2de3 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -83,6 +83,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -139,6 +140,7 @@ struct class linux_class_misc; struct list_head pci_drivers; struct list_head pci_devices; spinlock_t pci_lock; +struct uts_namespace init_uts_ns; unsigned long linux_timer_hz_mask; @@ -2815,6 +2817,8 @@ linux_compat_init(void *arg) */ for (i = 0; i < MAXCPU; i++) CPU_SET(i, &static_single_cpu_mask[i]); + + strlcpy(init_uts_ns.name.release, osrelease, sizeof(init_uts_ns.name.release)); } SYSINIT(linux_compat, SI_SUB_DRIVERS, SI_ORDER_SECOND, linux_compat_init, NULL); From nobody Mon Jun 26 12:08:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTP1p4nz4k6wt; Mon, 26 Jun 2023 12:08: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 4QqRTP0gjNz3jtr; Mon, 26 Jun 2023 12:08:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781337; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lcXP22bKmEfJp+suO8GJ0/HYEbHAxhCCYCk0EF55tXk=; b=C/uLCDB7SgorQHjN+LXdOHUgUt24/Q0kClbUXIw2H/pvGh9hSQYpImbGu7mj2oZelWsSg+ n1XLeTxOdXnkSPJtp70bMhaAQNnK5CF35uJWXrjoPC3DoG8K8ctWXyuZhjzYfCd0PmWi1o aMtYDY5pYECS42VIXOOMIHJ/9TdAfdXuwi6bYTG4CmHrxEAxzbH1zSPp2S/NMryx15vp9x 0qHqepYYMpX/6OW4zfcq+KcRXUt3mUPr0Vyep8kLuwho2LUn4ZfvbCfTS3G6n06wXoH/vF /ii7z0B3aMW4aqJsL4FiWbF4KPTrMRJ6ku6x7joqGpMmjX1kv8Q9z5aCFN0cgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781337; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lcXP22bKmEfJp+suO8GJ0/HYEbHAxhCCYCk0EF55tXk=; b=m0t4fl8f9B1HnOWRyMKANFKoLkD6AUc/ij2b9iQfarl4tjgGRvRqInJnQ/+RT9Qf2nQBSy vdYBWzbVDoQnR7LIS2EWhrZTyW/+HLG/EVcvOeQHPikryMY1SkRbO4s3m99U0XfqthfdPp HtJS82dsL/5m1a2hpayGrS+RVg6qt27Tkda7gpomFhwEcYDsB3FKj8fRY16le4iUT6k6yj 9blznrNW79FMRxXDsz/6Ce8WNC76Z6hYAXGhwX2LmOQI2OZIecE30KMitXGtSYjH35vXwO +ptUD6eGH5FY+QDjIZIFHtaB84tvceZNyETvazMMgO2EdRdgjWfuDHIMXZ1W3A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781337; a=rsa-sha256; cv=none; b=iwavu3m+IEs9ODcRbuEHJkEGOvBoXMwLkx94kKJ3m42rIe9VFOiG8NnPEPyZLj3FudQA+z PuZDsOrFtiNYD8OSH+PLpAbRoFlauPHG6E8VeUE+MeERtIeSLE9c9ohD+0Sya3MRQe8ixM l6n2HC/dKNe0z6rdtjLQVGiyDMtPic1HQEuI8xdUmvNyNQBvPiy52SN9dxvCe9Smj69fiR OLgDZihvBOwXNGbcL3/fYARwI+3WwaTsVnhtOqQYaX58YFGysoMgRENKDhyC5S3rBHp8s6 h1tRYP8NPP51pau/keOaq9MikDMWf/CWEL2NCEIW2mz0r8T60hTm32a6RQ17gQ== 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 4QqRTN6tmGz18X2; Mon, 26 Jun 2023 12:08: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 35QC8uYu083478; Mon, 26 Jun 2023 12:08:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8unc083477; Mon, 26 Jun 2023 12:08:56 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:56 GMT Message-Id: <202306261208.35QC8unc083477@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: bd0b4de28d6b - stable/13 - LinuxKPI: uuid: add guid_gen() and guid_copy() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: bd0b4de28d6b1fb598b0e2bd5f3713ac427cbda7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=bd0b4de28d6b1fb598b0e2bd5f3713ac427cbda7 commit bd0b4de28d6b1fb598b0e2bd5f3713ac427cbda7 Author: Bjoern A. Zeeb AuthorDate: 2023-05-23 23:15:12 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:20:27 +0000 LinuxKPI: uuid: add guid_gen() and guid_copy() Add function used by a wireless driver. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40249 (cherry picked from commit c1b6e9121e889608b86530d1a37047797dfeb460) --- sys/compat/linuxkpi/common/include/linux/uuid.h | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/uuid.h b/sys/compat/linuxkpi/common/include/linux/uuid.h index 31a018497f78..63b77dd7d0bc 100644 --- a/sys/compat/linuxkpi/common/include/linux/uuid.h +++ b/sys/compat/linuxkpi/common/include/linux/uuid.h @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * - * Copyright (c) 2021 The FreeBSD Foundation + * Copyright (c) 2021,2023 The FreeBSD Foundation * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -33,6 +33,8 @@ #ifndef _LINUXKPI_LINUX_UUID_H #define _LINUXKPI_LINUX_UUID_H +#include + #define UUID_STRING_LEN 36 #define GUID_INIT(x0_3, x4_5, x6_7, x8, x9, x10, x11, x12, x13, x14, x15) \ @@ -59,4 +61,19 @@ typedef struct { char x[16]; } guid_t; +static inline void +guid_gen(guid_t *g) +{ + + get_random_bytes(g, 16); + g->x[7] = (g->x[7] & 0x0f) | 0x40; + g->x[8] = (g->x[8] & 0x3f) | 0x80; +} + +static inline void +guid_copy(guid_t *dst, const guid_t *src) +{ + memcpy(dst, src, sizeof(*dst)); +} + #endif /* _LINUXKPI_LINUX_UUID_H */ From nobody Mon Jun 26 12:08:58 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTQ2t6Yz4k706; Mon, 26 Jun 2023 12:08: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 4QqRTQ1mCgz3k3W; Mon, 26 Jun 2023 12:08:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AtIHkZKMFEzhYbIvE8kLHugg3uLTSznyrJIH+H5yMDo=; b=ermZhp/AyPe0OanE0wqL+bJiKZj4Ic/lRhHwg1Sn8jzEzhSdBgOsPK9kVyQeCmUKfIXKlA svSjoLc1GZxPtNRk8GfYwOySQjCRuW2YigwEqgOA37+1E/3HpxLgvdOmcgYmHobO3j/K5I exAY2ouZfbFdCT54rjRZmQ2MCINCMSrxAmnx6iVXXcrHv4KNczpesM6fN9WXIxn6misXo2 e1O56osGSUCC4lNHaFvuPHTFrqadjAOFlxFmfcmEM6tNppGFK3kFXin6qwtjSm4knRLqJd uPaSzmQMgzwOKt5ZJPxoQuS3ELnzjkFW+KbEhIh52JtXPoqq+5gRZI4X7I48+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AtIHkZKMFEzhYbIvE8kLHugg3uLTSznyrJIH+H5yMDo=; b=Sld7u4zSkhPpVFa/c1YcQ+BpzWM0buEU4ZxxNkDueF9w/gxKlCCRxqb7b9fg85yWxlgGpg hPoXUhMbQNXF66JpjME9yJM7pnI/RzRYKyzYT+ZqDkO6/qymStwgvfN9UVMqRUveOblCFM H0mKEHRsqddwCwCROlvAgA9UeaWK4oxKZaUukvA+u41nyIn2KPzy068gwDlf4S+B3oTdTt G51RloDBdTyP7PATGeDWmbeV/JWK+j5q/7OWdGuPGBmCY6gDGD+EU06XBJQ8O6YjztXHFd mRuPj28DhaXtsvKaAoQ8E2bSAA8/DnO3B82eOrB0aqAn4NMfFETxcZZJbdZQqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781338; a=rsa-sha256; cv=none; b=CBnYp7BfF2e3j/LzEEN/8sFUf+rimO0bVa7tLoTgWYkiDETNdoGhpsnoO8NV0wo99tttHF acNaImSGKjG52GwBsf+ADwaNGO2J1iutGU1SDG539AhP24xtEarsnbMJUNcOtIDVUgTRFT uwDN6l2PYk3B0V/4ySHQQHjc/bLIox2AzM1FOVLln4beVnBpdvYELOc2rCst9bIUd9nR8v RWkGpUdyfZGLTR8iQU/ipsdyw8zuVLjmSwHx7BFXo7GhlW1k62UnhSUvBplZ9I6c+aXgS7 EFKu8emp9Kw+V0GrLq9t1I7g9QQlUCY/0GHNhQakBPhlbDL4pTpicJSIA55BcA== 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 4QqRTQ0sk8z18Cv; Mon, 26 Jun 2023 12:08: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 35QC8wGj083497; Mon, 26 Jun 2023 12:08:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8wb7083496; Mon, 26 Jun 2023 12:08:58 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:58 GMT Message-Id: <202306261208.35QC8wb7083496@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: bf22f62d9a1a - stable/13 - LinuxKPI: add dummy rhashtable implementation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: bf22f62d9a1adfb3d4865110f01bcd3b1e4253a1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=bf22f62d9a1adfb3d4865110f01bcd3b1e4253a1 commit bf22f62d9a1adfb3d4865110f01bcd3b1e4253a1 Author: Bjoern A. Zeeb AuthorDate: 2023-05-20 00:45:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:20:32 +0000 LinuxKPI: add dummy rhashtable implementation Add a skeleton implementation of rhashtable in order to keep an upcoming wireless driver compiling. We'll implement it as soon as we get there. Reviewed by: emaste (previous version before his suggested changes) Differential Revision: https://reviews.freebsd.org/D40176 (cherry picked from commit a30a0d940daef2df51371cf142790109e2019fa0) --- .../linuxkpi/common/include/linux/rhashtable.h | 89 ++++++++++++++++++++++ 1 file changed, 89 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/rhashtable.h b/sys/compat/linuxkpi/common/include/linux/rhashtable.h new file mode 100644 index 000000000000..273ea235b801 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/rhashtable.h @@ -0,0 +1,89 @@ +/*- + * Copyright (c) 2023 Bjoern A. Zeeb + * + * 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. + * + * $FreeBSD$ + */ + +#ifndef _LINUXKPI_LINUX_RHASHTABLE_H +#define _LINUXKPI_LINUX_RHASHTABLE_H + +#include /* pr_debug */ + +struct rhash_head { +}; + +struct rhashtable_params { + uint16_t head_offset; + uint16_t key_len; + uint16_t key_offset; + uint16_t nelem_hint; + bool automatic_shrinking; +}; + +struct rhashtable { +}; + +static inline int +rhashtable_init(struct rhashtable *rht, + const struct rhashtable_params *params) +{ + + pr_debug("%s: TODO\n", __func__); + return (-1); +} + +static inline void +rhashtable_destroy(struct rhashtable *rht) +{ + pr_debug("%s: TODO\n", __func__); +} + +static inline void * +rhashtable_lookup_fast(struct rhashtable *rht, const void *key, + const struct rhashtable_params params) +{ + + pr_debug("%s: TODO\n", __func__); + return (NULL); +} + +static inline void * +rhashtable_lookup_get_insert_fast(struct rhashtable *rht, + struct rhash_head *obj, const struct rhashtable_params params) +{ + + pr_debug("%s: TODO\n", __func__); + return (NULL); +} + +static inline int +rhashtable_remove_fast(struct rhashtable *rht, + struct rhash_head *obj, const struct rhashtable_params params) +{ + + pr_debug("%s: TODO\n", __func__); + return (-ENOENT); +} + +#endif /* _LINUXKPI_LINUX_RHASHTABLE_H */ From nobody Mon Jun 26 12:08:59 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTR3rpgz4k78y; Mon, 26 Jun 2023 12:08: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 4QqRTR34gDz3kBD; Mon, 26 Jun 2023 12:08:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781339; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EDiPa4k7wNDVZ0gqaBiywTxUoGuem/BSs33Bv0mb5Yo=; b=HmoCAWxhN1nKm+VIzDkZPxkvWFf4ua5k0VF9RXY5suQD70k8tWJ40G5EMEJuiyg38zXOkh mcXzEdgquixYSkxZJpaB91CTWbj9V4uBm2bJnF5hiy8eMUeJgSZZPQz408mVOgm+yqZAwX NzcouxYDweIWABUdCJB8hEcENhhKHaffFvGgCrD4auUeQQZ11nlUcydh3Dk9RyH3aO2+qN BaIVO8YWl1d8EQmP4L5oapFEg0jBbnt62L6QMthVwAqQ3Ija7Wyj8dYktykFJaiaBgpX2h 6Gaxe72dLiwq797O28gHEEpxQMHAqm+avO53wg/31KoQrOei0Mdp61W7uqL6cA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781339; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EDiPa4k7wNDVZ0gqaBiywTxUoGuem/BSs33Bv0mb5Yo=; b=sVYTdFxOxOqQEg8CeQr2HRLSgLtS3rO6CkqK5nSyaMxnLK1n0vqjuSjoJbWH8csvjmq8Uf HkFH1axTnC/W2YdLI/Mt5OHWxXFW6CB3Rj44lVrKR+VbuPpsJhhso23p0IpGVGRzpg1yZF K5acZIyCKI6UljpT4Qum62T8Hx/x6QZW+8azr9ldVaU+oUl2Otu+95pbZBapB8+WDvkUKa KtZjFDbnO8S0jND9A3pH1EDQMajbdwiOiNZIYVymT8RE5Mdwi3SdC5jXZ0mKWxUAH2b8uL B7ZcsV/n2B77EkVvpiEfpHq8kPNkklNyP7f0vlICNMj+Kj0+F/sFDCIO/VmJRQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781339; a=rsa-sha256; cv=none; b=F+W8aCqDL1byq5Id7pCfw28ydjLuxPBUnzZTZPJgvtTRj5+wVs851Hpdb2iZ2V2PAy/7R+ buF/92sJxJDv//U3wyJIvZWUVmr7WYLYaXIlbZJnEBlhmNwOqGWlrXSUIzXz8GcCIVuYf+ hcTM5YRYWUpNW+8trr3cjSzdHCTNkG6lTb02u/DUTlFDOiaUp2XNj9ug2KtJRI3Vg7n4uR vDC/AQoFJMqFBynG6yEcUM9YsSGkbqTQuezSRTAyQPYqOlybQWA4QJnrpX5EshYRcgBf8F +mBbsdfAJh7lqLInxHUCGWSCvgtZAaDsogmOZA6La74zV6GrHcuJPid6ebCCmA== 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 4QqRTR1z3gz18P2; Mon, 26 Jun 2023 12:08: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 35QC8xsZ083517; Mon, 26 Jun 2023 12:08:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC8xRu083516; Mon, 26 Jun 2023 12:08:59 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:08:59 GMT Message-Id: <202306261208.35QC8xRu083516@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 9a37368d2beb - stable/13 - LinuxKPI: add ktime_get_real_ts64() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 9a37368d2beb26a236e9f91fbd5caefc055d0ef6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=9a37368d2beb26a236e9f91fbd5caefc055d0ef6 commit 9a37368d2beb26a236e9f91fbd5caefc055d0ef6 Author: Bjoern A. Zeeb AuthorDate: 2023-05-23 23:10:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:20:38 +0000 LinuxKPI: add ktime_get_real_ts64() Add a wrapper for ktime_get_real_ts64() used by a wireless driver. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40246 (cherry picked from commit b889315da3009256c5078e629a28763d981b70ad) --- sys/compat/linuxkpi/common/include/linux/ktime.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/ktime.h b/sys/compat/linuxkpi/common/include/linux/ktime.h index e0722aa2589b..ebb82d7787c4 100644 --- a/sys/compat/linuxkpi/common/include/linux/ktime.h +++ b/sys/compat/linuxkpi/common/include/linux/ktime.h @@ -190,6 +190,7 @@ timespec64_to_ns(struct timespec64 *ts) #define ktime_get_ts(ts) getnanouptime(ts) #define ktime_get_ts64(ts) getnanouptime(ts) #define ktime_get_raw_ts64(ts) getnanouptime(ts) +#define ktime_get_real_ts64(ts) getnanotime(ts) #define getrawmonotonic64(ts) getnanouptime(ts) static inline int64_t From nobody Mon Jun 26 12:09:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTS6kf8z4k70K; Mon, 26 Jun 2023 12:09: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 4QqRTS3mSbz3jyT; Mon, 26 Jun 2023 12:09:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781340; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DV+UwG+fpXW64dfnT9B4C8Ygtyu65p/Dsk9T5C2+mBg=; b=nQ1VAR+09RlyV9tD27ztaj2SZGsAE9IwgHj24OzuuJOCnGwXhxZ3gQgr8DrEVaDyk+Kjhu MzScKDymhZeo0DHvZEMjc4VLi3/8dzIFfLaEj7V/f4si0Q7/g5eZ2QpCp6fMHKKH2cOYdy Nu1+EZBBE9I4G1gV5tpGZ5jwX+YLoNkvIl1RW+vWDMY3Zasg+JP7Vz8vOy3rSFSaWopO/t AegqakOewcfFH+9uxqlNrHj6RV7yq46ccy80pz5fZ60nMAifzTvmzbkXh16+nl2zwUbnNR j+tqSFMJgF8yrJQewntuYa9Q9f8H/OpURZO0Ny0rsLjdyEd5SFlGvKh4Eza1bA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781340; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DV+UwG+fpXW64dfnT9B4C8Ygtyu65p/Dsk9T5C2+mBg=; b=BpkBDXKPINmYOMjpFjOwskhCZXN249DBWq1uuBg9RBXWAVcb+51TofoLAhzyIWa7Xw+8rL ZVHa0r2seWBp+yW5oduAyGAeyc11oz4YDqKLOAgAPZTZdowCs7LE1crzLghzrHtIULeLYc Oo9ipRy06aqm1vO3t6jYti2nyY7XcU1YeXyShefIrHm4kvhMeT0/0dXtsMo5ULUxgNJmSG 0sfZQDZG95REb5ACbdbY2TB63CR2e295WkNTURAVBPCwhUcZCeW+P+A0NcG/K/grvUw/c0 wsCefhKoBenNrmwDa2k0HG4PDxF9OQwe67DaXiF4gloqJJieauQi1jwiD5AQ0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781340; a=rsa-sha256; cv=none; b=nKRTzzNz0ollyOd1GYX3ueUBaBRYYOc5ysoWkz+GN0dSVK2Zn34/BSCurwxDwEh0g820cq 1GFFPn4YWDwSPfSG7gzxaI7YNW1TfNOtB/UiB71rjo0UhcdzZItQ9a3Z2O8k2mRXdQA9wE QbKKPsAkEN5l2BAFq/iKtFwD4nQUg68FZlzwHej5cU89sbrD5p3Kd5ABJRFm8sHjb42hfv Ji/K21mTClFaUKNuO5Oy1vlNql0tv9Dhy9v0a8cN1wQM97j8Ius671QkH4c7zJoWgVNv3z Zd8VU7O0khKPiMZCjcgBDXo4yN5IzzFPmcuO9xkiZkTIcAWkU0qFfLK5l2xIhw== 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 4QqRTS2szLz17df; Mon, 26 Jun 2023 12:09: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 35QC90br083543; Mon, 26 Jun 2023 12:09:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC90tT083542; Mon, 26 Jun 2023 12:09:00 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:00 GMT Message-Id: <202306261209.35QC90tT083542@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 28dc06cfb4d9 - stable/13 - LinuxKPI: Add linux/stddef.h and add struct_group(...) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 28dc06cfb4d9249bdf6fe7ace75284309e56d6f1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=28dc06cfb4d9249bdf6fe7ace75284309e56d6f1 commit 28dc06cfb4d9249bdf6fe7ace75284309e56d6f1 Author: Bjoern A. Zeeb AuthorDate: 2023-05-17 22:22:13 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:22:30 +0000 LinuxKPI: Add linux/stddef.h and add struct_group(...) Merge the original addition of stddef.h. (cherry picked from commit 7c7419f60cafa4f666f5a22b5e5f090081516cd2) Add a struct_group() macro needed by a wireless driver. Sponsored by: The FreeBSD Foundation Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D40138 (cherry picked from commit 7c0c69d1a0f3735e315a48436bffbd482f956270) --- sys/compat/linuxkpi/common/include/linux/stddef.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/stddef.h b/sys/compat/linuxkpi/common/include/linux/stddef.h new file mode 100644 index 000000000000..a3bc6b13765e --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/stddef.h @@ -0,0 +1,15 @@ +/* Public domain */ + +#ifndef _LINUXKPI_LINUX_STDDEF_H_ +#define _LINUXKPI_LINUX_STDDEF_H_ + +#include + +#define struct_group(NAME, ...) \ + union { \ + struct { __VA_ARGS__ }; \ + struct { __VA_ARGS__ } NAME; \ + } + +#endif /* _LINUXKPI_LINUX_STDDEF_H_ */ + From nobody Mon Jun 26 12:09:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTT5xhFz4k6lN; Mon, 26 Jun 2023 12:09: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 4QqRTT4vfhz3kBw; Mon, 26 Jun 2023 12:09:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781341; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RRKncrdV3HtEqGDSQ4UTGwzn98La9RhOqwRNTBYBJbw=; b=AkDf+ib4WR4QRKAg1KX0HzjxZD6fwqPBbEEqqLd8eGc+3BI6Veut9YhW0MCZ4Ugey363+n HcvSSUpbJVFvy32f4lanZ+hA9RnW0ywptJznUyUSwTCZIaJUMtopngb4jjnD0cFsnlpB2p jeiir26wgRXSLE9tZKYdUoLcc9tdZZif9qWrn2RLkNfpw0Z8E6+IvAl/QMeWq1tHeuses7 Q7znByuUErQP3e0JMGDeh5nOws4mvPwH2yn0Mrbir6lmoJNzM/3b7qA17udXe/i02X/UFB /2xl4/xTT66eUauSQYwAmKSl/RtKaw5Y5FoXHQ4LCwYkKISLPygxqdwSPoct1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781341; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RRKncrdV3HtEqGDSQ4UTGwzn98La9RhOqwRNTBYBJbw=; b=eLaPXKoma4vCg0NSSxPbEoPbOppBuFRY41ppzPRIfL0xTl9UBHlqn6FPR9UybxuGtScqVQ wNAk+p0spSdJZ6fBDZ2UOwbjZwjPYx9Tym5UBV5S0A6EIS2qQgZE2tgmkOipbvl+fW6Om+ v8D1jcrgACMBtPjCkTNiSSpwYy6y8C//AmWjQFDz0FJn+G3Ae/8heuzjXxLwiKTzhjsE3j Kln/i88yxPT4z7moSfmcNLHbo3DHdzxkVX0wlHE65mGZq/xmSKM2JPpYMuBZHVhdUEhsXS 6lDnZQ2GLRGmqVzw93DfPmUTmKmjUJF7eGF0dYuRoQgEHuS8xha7hAp0+nHqXg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781341; a=rsa-sha256; cv=none; b=Zr1iP0MsuhVJ7KhpNMNlNwhhR7ern/1YEDS4euFzmXvUtXlLw0fKACK2TaHTSLMWHsMYO7 UtHKuXAjkjPUdaTA2FIxJNuICMEOnOANQIBSAZ0eKMukDxNjT2wTXpW6l5JjZPy7FMqm90 S8Ue6WCNCpNlL47ryf+A7W6K/zOrME+6x2PpQ33+DFe+8dT8/NY06uB8RUO2u45cW8DNVW s7+pRdpRfVAcwe1dxVNPh5q6AeHCcVepNRZYCXR2AhlbQ5t5GCxS9GmR1quzlklM6g58+v +228JF2yPFBmbWC4z1dvSIpkQAoA27VVFjE1al9t4ZQK0wLvyBamIdqPHSTC+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 4QqRTT41x0z18RW; Mon, 26 Jun 2023 12:09: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 35QC91SR083566; Mon, 26 Jun 2023 12:09:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC91Op083565; Mon, 26 Jun 2023 12:09:01 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:01 GMT Message-Id: <202306261209.35QC91Op083565@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6faade07b16b - stable/13 - LinuxKPI: add devm_ioremap() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6faade07b16bfb0bfbe5ee02595a0705a797274d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6faade07b16bfb0bfbe5ee02595a0705a797274d commit 6faade07b16bfb0bfbe5ee02595a0705a797274d Author: Bjoern A. Zeeb AuthorDate: 2023-05-20 00:53:21 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:25:42 +0000 LinuxKPI: add devm_ioremap() Given we do not seem to support ioremap() do not support the "devm" version either and simply return NULL, which means we do not have to keep track of the memory to be freed on device free later. Sponsored by: The FreeBSD Foundation Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D40173 (cherry picked from commit 4cbd427788ec625f17c1ecdfccbb7b06c1c908d9) --- sys/compat/linuxkpi/common/include/linux/io.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/io.h b/sys/compat/linuxkpi/common/include/linux/io.h index 4eb69bca6141..2a63af5d61bf 100644 --- a/sys/compat/linuxkpi/common/include/linux/io.h +++ b/sys/compat/linuxkpi/common/include/linux/io.h @@ -399,6 +399,13 @@ void *_ioremap_attr(vm_paddr_t phys_addr, unsigned long size, int attr); #define _ioremap_attr(...) NULL #endif +struct device; +static inline void * +devm_ioremap(struct device *dev, resource_size_t offset, resource_size_t size) +{ + return (NULL); +} + #ifdef VM_MEMATTR_DEVICE #define ioremap_nocache(addr, size) \ _ioremap_attr((addr), (size), VM_MEMATTR_DEVICE) From nobody Mon Jun 26 12:09:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTV6mxRz4k7Fn; Mon, 26 Jun 2023 12:09:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqRTV5vWZz3kT1; Mon, 26 Jun 2023 12:09:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781342; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jIhfau2LgMNbbsh06q75zKIns9MPKtTR0KrxV/ycN3w=; b=dyYP5nfmnn5vAoJz2hJ+F2+dSmGlsIm1YidVjm/R1mSxqJclkVfX3u3zFtDbM7ZGxkhXLg 9zx1ATNQQ5+4yW4fvALLSjtw0unfeZPWjjeSOoLthiBgj2rUKXWLoJbngzmqJsV9G0hkbt shTskOMdnH3jtpc+5w/d07Ti/m0nCyG9vwiWzc7/MpDgxmAzN+gc+r0SLIGN+LYWp9kwQA mEk1c0EW2ueUAleOi8IZCwwgcvf1/x1HhloyV4AXoWgT82+GZz5w+mKUB6/sLSF3DRMn6J XpzAs6kItCk6mLjcbFNzdeaXQaoCb3PW9EEPbFowbkbXQHYwGt70I0fFlTWD7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781342; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jIhfau2LgMNbbsh06q75zKIns9MPKtTR0KrxV/ycN3w=; b=hkqoN2ls5wzz87qOZAalDmSC+3NzNqn0vmwEHHLYQ5vervVJRJJvk+nQ3HAaBcQ5/dRHix bfMt5AVyhQnNUQmyAHv/yYukkxUintDwDGdpb4Lb2kB+Alb8D9+ZZmi9MXvN4RsVrrMnqN eNAzOUenvRqZ3SZ2Ngoex3+CWEB06+w3KGJG7F3NeRidrAY4pbvAZsDe7Y58LNZGeSCKfz gt0/qvSb3/3hOFp5BFjZcKoMgdHOqSE2skBFI5r5J4p3WpTJGOPNKHLQMaIFthifJd8/Py 8gyRmm/3WX9nQkrr4UoU5UM5iNVX1KfYgjZvOGXcfbr4oXSm454E7OJqJIy79w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781342; a=rsa-sha256; cv=none; b=CjrM99LrgYGi3ZTn3HTOVb7iNA2jRAy6xuYcCertsQo9zlKD926J8IHuRxP2WNKB9vPwpo P5SshNZnGdKJngicdexdBSsNHgVykDLHkJVEmg7BqvpYP3kNwWoQzlK6s9U1SpEqx1Cj+g mat4HVpYWiC6J6FenHGY3WI3qNFQpjAbpyAuxR/O8BukUM9/Lk3B1hG1wjP/8hIA5Wm6fu DoogqC2rkIHemC7HvQPprwUI1Cxih2euBB4uO7lYMt5dc+bN5YLON8LnWZzKuYd5XyYvi6 3bOkU3iav6zt7ti07DqeshNaxM3a2RqWetcbtkLEnDqNrAv9/bKoQAeCUNMQKQ== 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 4QqRTV4xFzz18Lc; Mon, 26 Jun 2023 12:09: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 35QC92TR083593; Mon, 26 Jun 2023 12:09:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC92cv083592; Mon, 26 Jun 2023 12:09:02 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:02 GMT Message-Id: <202306261209.35QC92cv083592@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 0dd2a3b488f0 - stable/13 - LinuxKPI: implement timer_{delete,shutdown}_sync() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 0dd2a3b488f00df7871288fa6b85b304a7a40fc5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=0dd2a3b488f00df7871288fa6b85b304a7a40fc5 commit 0dd2a3b488f00df7871288fa6b85b304a7a40fc5 Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 21:02:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:25:47 +0000 LinuxKPI: implement timer_{delete,shutdown}_sync() Implement timer_{delete,shutdown}_sync(), which do not seem to require anything additional to the already existing del_timer_sync(). Sponsored by: The FreeBSD Foundation Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D40124 (cherry picked from commit 2e07e885d65973f13d6111f7e0fcfb848a68082e) --- sys/compat/linuxkpi/common/include/linux/timer.h | 2 ++ sys/compat/linuxkpi/common/src/linux_compat.c | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/timer.h b/sys/compat/linuxkpi/common/include/linux/timer.h index 3432bfc46c4f..7b2f589a3047 100644 --- a/sys/compat/linuxkpi/common/include/linux/timer.h +++ b/sys/compat/linuxkpi/common/include/linux/timer.h @@ -83,6 +83,8 @@ extern void add_timer(struct timer_list *); extern void add_timer_on(struct timer_list *, int cpu); extern int del_timer(struct timer_list *); extern int del_timer_sync(struct timer_list *); +extern int timer_delete_sync(struct timer_list *); +extern int timer_shutdown_sync(struct timer_list *); #define timer_pending(timer) callout_pending(&(timer)->callout) #define round_jiffies(j) \ diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index dce3cdcc2de3..a1bf711a421e 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -2148,6 +2148,20 @@ del_timer_sync(struct timer_list *timer) return (1); } +int +timer_delete_sync(struct timer_list *timer) +{ + + return (del_timer_sync(timer)); +} + +int +timer_shutdown_sync(struct timer_list *timer) +{ + + return (del_timer_sync(timer)); +} + /* greatest common divisor, Euclid equation */ static uint64_t lkpi_gcd_64(uint64_t a, uint64_t b) From nobody Mon Jun 26 12:09:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTX004Yz4k79F; Mon, 26 Jun 2023 12:09: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 4QqRTW6XNgz3kFl; Mon, 26 Jun 2023 12:09:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cv9o6ISW6I2ZzmcOsnV0trz0ly4LLEKcGdYTtmA6VRw=; b=PbAjTvDN6GKQNn8SqeWfR61G37hwXz2dtsPzrMFzowrd5a+8Emkkp7VxG2wyI8IS9t+Qwc Y8UqRhDrXI0KZ/dXi1UACLhtAAPWC8Cz+BBs1RsN7afJYOrp1cQfGUQNn/l5qEvYlnV0cA a1RPM8K+e7VDblec2DnEZ2WuHba+laSUjcxpeAN7dR7aj/TvsS6RValPoK0G82W/t78l8m JZ3R+v70ke9xg7M3736BW73bh8CCjWqiWGrXJDPSovvGji61ug2UbPK0qG9HUeURO5u/UK DNa6qlNYJSL9UiE463Yf2hapUIEr2Wdp8ofDoGshKXM0ORdwojvbkn5JLIjgEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cv9o6ISW6I2ZzmcOsnV0trz0ly4LLEKcGdYTtmA6VRw=; b=dVtVbjNt5O2MlIy/TRL1UI4hH1fwuU3jKwQlHhUl92csdziQcgjKPa583XIT6x6K7Jdwjz 6A/2Hr12i8wWoGlf3o/FKFh5lEv0YVWo3S/W7FSWMueLvqF5XbSiFPM37QLs3k5/92L8Iq gQzCgALlweoP84o/hf87zXBTZ6Tk/RdvspWnaiwW9MA8s5kJsZujumj7TuXAoiYDsBoHC7 xPyvSzuuH2hTdhehhACu+QFxTMkgrp9SBye+SnRCalFEu/3ModZNlzWtUhJfBzgSgTG+H3 1UwlSoeX/x8b9jkcB/tLmviOEVNUTruahuEQFl6urX8L+7QRZEr1zuHnJDVf0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781343; a=rsa-sha256; cv=none; b=PmYn1xmI05GMtK0CDkIc0TO7nFhdavGhjOR6wEYJ//kF47XL6zslplPqeh1b1mno4UsKPh ZcARJyTJatKq0J04wkt5UXRtNE6CU/Td165pkcdBl3Oev92GRrCaaw81MT5Vdzw9X8NGHD ZKVlQk56C2q+x3MQsz6+lFkHUAZ/SdHZq6c9KZaZwkvZ5cKcPRy5oqw/sCJLLxB1r6vG2z eXc8flfB+XOcUaoahoUHqOSRvNJ1EobxL59QwdSbXzRnvwkkJB3sNRMFDr7IzleT+7jmSN YfJhzvRHql/7w2RJvX9ypdZf+yGhwkK9Wvu9KtRY/wCAWm3lTdA6CVHwkyOwmQ== 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 4QqRTW5d3sz18Cx; Mon, 26 Jun 2023 12:09: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 35QC937v083614; Mon, 26 Jun 2023 12:09:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC93Jm083613; Mon, 26 Jun 2023 12:09:03 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:03 GMT Message-Id: <202306261209.35QC93Jm083613@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 38a7e400656f - stable/13 - LinuxKPI: 802.11: correct HE_MAC_CAP3 values List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 38a7e400656f305389a76b4a1d2971b60ff7193c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=38a7e400656f305389a76b4a1d2971b60ff7193c commit 38a7e400656f305389a76b4a1d2971b60ff7193c Author: Bjoern A. Zeeb AuthorDate: 2023-06-10 22:56:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:25:53 +0000 LinuxKPI: 802.11: correct HE_MAC_CAP3 values While we had assigned dummy values so far to HE, correct the HW_MAC_CAP3 values to avoid compile time errors of drivers when shifting values out of range. Sponsored by: The FreeBSD Foundation (cherry picked from commit 51117ed11640e40e877872065ea039e9f97a9cd0) --- sys/compat/linuxkpi/common/include/net/cfg80211.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 8b73dc1abe3f..250f07ee0669 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -614,15 +614,14 @@ struct linuxkpi_ieee80211_regdomain { #define IEEE80211_HE_MAC_CAP2_MU_CASCADING 0x40 #define IEEE80211_HE_MAC_CAP2_TRS 0x80 -#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_VHT_2 0x1 -#define IEEE80211_HE_MAC_CAP3_OMI_CONTROL 0x2 -#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_1 0x10 -#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_2 0x20 -#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_3 0x40 -#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_MASK 0x70 +#define IEEE80211_HE_MAC_CAP3_OMI_CONTROL 0x02 +#define IEEE80211_HE_MAC_CAP3_OFDMA_RA 0x04 +#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_1 0x08 +#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_2 0x10 +#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_3 0x18 +#define IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_MASK 0x18 +#define IEEE80211_HE_MAC_CAP3_FLEX_TWT_SCHED 0x40 #define IEEE80211_HE_MAC_CAP3_RX_CTRL_FRAME_TO_MULTIBSS 0x80 -#define IEEE80211_HE_MAC_CAP3_FLEX_TWT_SCHED 0x80 -#define IEEE80211_HE_MAC_CAP3_OFDMA_RA 0x80 #define IEEE80211_HE_MAC_CAP4_AMDSU_IN_AMPDU 0x1 #define IEEE80211_HE_MAC_CAP4_BQR 0x2 From nobody Mon Jun 26 12:09:04 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTY1bTTz4k77C; Mon, 26 Jun 2023 12:09: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 4QqRTY0b9jz3kLy; Mon, 26 Jun 2023 12:09:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781345; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VE8NqAisBcEJPok93R2HZz+X0Tu60Yt/vnXvq8BPt8c=; b=vDk4i8v/bTdwYJWOocFqVp4Owu86aNJm9RrAIa8PKScnLgWk6WuZDqE+07Nun3EWACALVX tRaK7QRJfp0pCeIy+oY348VOCd9o6SmNJBEpVviWV7hC1ZtJWzYarQfvTvUN4+Lz48mQ9j b5vdROw3PiGIcAV/oIGJDFCEvmeD8knYdr6QoeabdQjFBvMdmZFC+Enr3slzANFUyceyw2 UQ7SeNIdW09yEK8s0MfjneEerw7RS87MFeP0kPX7bkMStliR+zN4i8MehnBY+pWvkcUpGr FyhWSv6Ye+/UKdaPv50lRzbp2635q3C9Z+MPoPJNGb/AIurkXLyMeytHmM1tgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781345; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VE8NqAisBcEJPok93R2HZz+X0Tu60Yt/vnXvq8BPt8c=; b=TF3UY7iXuumvys5yaktk2UMAqUxCWnEGAflveBBLjGWDAZDb2HlWN50PY2jJSVFULIhcbq +SRLtbPOhRQnQcKsfdw6XMIArchojyYZ8KLiLxLgEwA2mXFHF72JGcM/D0hbeC/ZJvGTbt xU1nFhEV7uVT+cPlLhFTDmvAKrNw/7pBtQdJvtg+FrR1ZeanreobQXGfqATyueI843t9wQ MfSpUPt9CmWhRMkKgRhlorZxL7Bw80DN8NeacIExghHVo3pnpot2sdj0wG4F18JwjfF3Wc vr3jd4HGk1h8i3Izd7kxo1QHuwmaOy68eCbvzY53zp7loFRwytyhpdKatQehmw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781345; a=rsa-sha256; cv=none; b=btTcTEm/Z2L2V4XUj+sVHOx1wm65bitaB9jXHWJgsCbEl6Lat+N422B+AEOEVYMENg6mY8 X2qeleJlUfs+p5GlahG21ioNzJXycLKd/GSTAlhcUZUBXLmQVhubXd+TJpsVVzi/YDTP4Q yHOUgzOiekxD67wFKLCeWJODCl0locWPFO3470mXLqHXxC5jYBx+h5aIFrV6Qb3dxLtoL2 NMQIcf8zkQr8qv0v/mn5DRr9CqC8YtemVIpmJazUSUcfzRIueRp97l4+cMhckAUxATKwiR slPLG3sU3M84liCeDQtDCSY5pFyXJ0QSWd056iah230V7N87TghePirCCmOu0A== 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 4QqRTX6klCz18Ld; Mon, 26 Jun 2023 12:09: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 35QC94vL083633; Mon, 26 Jun 2023 12:09:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC94Cn083632; Mon, 26 Jun 2023 12:09:04 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:04 GMT Message-Id: <202306261209.35QC94Cn083632@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 2c284913a976 - stable/13 - LinuxKPI: 802.11: improve scan handling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 2c284913a97600a2c2bc1ee4fee4cdc0c4c2791c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=2c284913a97600a2c2bc1ee4fee4cdc0c4c2791c commit 2c284913a97600a2c2bc1ee4fee4cdc0c4c2791c Author: Bjoern A. Zeeb AuthorDate: 2023-06-10 21:53:56 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:26:03 +0000 LinuxKPI: 802.11: improve scan handling Under certain circumstances a hw_scan may be downgraded to a software scan. Handle these situations better and make sure we free resources in all cases once. [1] Also leave a note about scanning all bands (or we would have to switch bands manually). In both cases hardware doing and driver saying seem not entirely consistent for all and all firmware. Sponsored by: The FreeBSD Foundation Reported by: imp [1] (cherry picked from commit 3206587a20de9810b549ba8fd0032f7ab884bbec) --- sys/compat/linuxkpi/common/src/linux_80211.c | 72 ++++++++++++++++++---- .../linuxkpi/common/src/linux_80211_macops.c | 21 ++++--- 2 files changed, 72 insertions(+), 21 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index d0b760cd6f4f..eefa3de54125 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2669,12 +2669,7 @@ sw_scan: int band, i, ssid_count, common_ie_len; uint32_t band_mask; uint8_t *ie, *ieend; - - if (!ieee80211_hw_check(hw, SINGLE_SCAN_ON_ALL_BANDS)) { - IMPROVE("individual band scans not yet supported"); - /* In theory net80211 would have to drive this. */ - return; - } + bool running; ssid_count = min(ss->ss_nssid, hw->wiphy->max_scan_ssids); ssids_len = ssid_count * sizeof(*ssids); @@ -2688,6 +2683,18 @@ sw_scan: ss->ss_chans[ss->ss_next + i]); band_mask |= (1 << band); } + + if (!ieee80211_hw_check(hw, SINGLE_SCAN_ON_ALL_BANDS)) { + IMPROVE("individual band scans not yet supported, only scanning first band"); + /* In theory net80211 should drive this. */ + /* Probably we need to add local logic for now; + * need to deal with scan_complete + * and cancel_scan and keep local state. + * Also cut the nchan down above. + */ + /* XXX-BZ ath10k does not set this but still does it? &$%^ */ + } + chan_len = nchan * (sizeof(lc) + sizeof(*lc)); common_ie_len = 0; @@ -2704,10 +2711,7 @@ sw_scan: common_ie_len, hw->wiphy->max_scan_ie_len); } - KASSERT(lhw->hw_req == NULL, ("%s: ic %p lhw %p hw_req %p " - "!= NULL\n", __func__, ic, lhw, lhw->hw_req)); - - lhw->hw_req = hw_req = malloc(sizeof(*hw_req) + ssids_len + + hw_req = malloc(sizeof(*hw_req) + ssids_len + s6ghzlen + chan_len + lhw->supbands * lhw->scan_ie_len + common_ie_len, M_LKPI80211, M_WAITOK | M_ZERO); @@ -2737,7 +2741,7 @@ sw_scan: c = ss->ss_chans[ss->ss_next + i]; lc->hw_value = c->ic_ieee; - lc->center_freq = c->ic_freq; + lc->center_freq = c->ic_freq; /* XXX */ /* lc->flags */ lc->band = lkpi_net80211_chan_to_nl80211_band(c); lc->max_power = c->ic_maxpower; @@ -2774,12 +2778,48 @@ sw_scan: lvif = VAP_TO_LVIF(vap); vif = LVIF_TO_VIF(lvif); + + LKPI_80211_LHW_SCAN_LOCK(lhw); + /* Re-check under lock. */ + running = (lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0; + if (!running) { + KASSERT(lhw->hw_req == NULL, ("%s: ic %p lhw %p hw_req %p " + "!= NULL\n", __func__, ic, lhw, lhw->hw_req)); + + lhw->scan_flags |= LKPI_LHW_SCAN_RUNNING; + lhw->hw_req = hw_req; + } + LKPI_80211_LHW_SCAN_UNLOCK(lhw); + if (running) { + free(hw_req, M_LKPI80211); + return; + } + error = lkpi_80211_mo_hw_scan(hw, vif, hw_req); if (error != 0) { ieee80211_cancel_scan(vap); - free(hw_req, M_LKPI80211); - lhw->hw_req = NULL; + /* + * ieee80211_scan_completed must be called in either + * case of error or none. So let the free happen there + * and only there. + * That would be fine in theory but in practice drivers + * behave differently: + * ath10k does not return hw_scan until after scan_complete + * and can then still return an error. + * rtw88 can return 1 or -EBUSY without scan_complete + * iwlwifi can return various errors before scan starts + * ... + * So we cannot rely on that behaviour and have to check + * and balance between both code paths. + */ + LKPI_80211_LHW_SCAN_LOCK(lhw); + if ((lhw->scan_flags & LKPI_LHW_SCAN_RUNNING) != 0) { + free(lhw->hw_req, M_LKPI80211); + lhw->hw_req = NULL; + lhw->scan_flags &= ~LKPI_LHW_SCAN_RUNNING; + } + LKPI_80211_LHW_SCAN_UNLOCK(lhw); /* * XXX-SIGH magic number. @@ -2790,6 +2830,12 @@ sw_scan: LKPI_80211_LHW_SCAN_LOCK(lhw); lhw->scan_flags &= ~LKPI_LHW_SCAN_HW; LKPI_80211_LHW_SCAN_UNLOCK(lhw); + /* + * XXX If we clear this now and later a driver + * thinks it * can do a hw_scan again, we will + * currently not re-enable it? + */ + vap->iv_flags_ext &= ~IEEE80211_FEXT_SCAN_OFFLOAD; ieee80211_start_scan(vap, IEEE80211_SCAN_ACTIVE | IEEE80211_SCAN_NOPICK | diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index 762a54e4a823..16b502b1ca49 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -43,8 +43,9 @@ __FBSDID("$FreeBSD$"); #ifdef LINUXKPI_DEBUG_80211 #define LKPI_80211_TRACE_MO(fmt, ...) \ if (linuxkpi_debug_80211 & D80211_TRACE_MO) \ - printf("LKPI_80211_TRACE_MO %s:%d:_" fmt "\n", \ - __func__, __LINE__, __VA_ARGS__) + printf("LKPI_80211_TRACE_MO %s:%d: %d %d %u_" fmt "\n", \ + __func__, __LINE__, curcpu, curthread->td_tid, \ + (unsigned int)ticks, __VA_ARGS__) #else #define LKPI_80211_TRACE_MO(...) do { } while(0) #endif @@ -215,18 +216,22 @@ lkpi_80211_mo_hw_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct lkpi_hw *lhw; int error; + /* + * MUST NOT return EPERM as that is a "magic number 1" based on rtw88 + * driver indicating hw_scan is not supported despite the ops call + * being available. + */ + lhw = HW_TO_LHW(hw); if (lhw->ops->hw_scan == NULL) { - /* XXX-BZ can we hide other scans like we can for sta_add..? */ - error = EOPNOTSUPP; + /* Return magic number to use sw scan. */ + error = 1; goto out; } - lhw->scan_flags |= LKPI_LHW_SCAN_RUNNING; - LKPI_80211_TRACE_MO("hw %p vif %p sr %p", hw, vif, sr); + LKPI_80211_TRACE_MO("CALLING hw %p vif %p sr %p", hw, vif, sr); error = lhw->ops->hw_scan(hw, vif, sr); - if (error != 0) - lhw->scan_flags &= ~LKPI_LHW_SCAN_RUNNING; + LKPI_80211_TRACE_MO("RETURNING hw %p vif %p sr %p error %d", hw, vif, sr, error); out: return (error); From nobody Mon Jun 26 12:09:05 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTZ1zFzz4k79M; Mon, 26 Jun 2023 12:09: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 4QqRTZ1M3cz3kML; Mon, 26 Jun 2023 12:09:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781346; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z9eES1opOEZTjFzyPO8Bxcngbgt+PTVYvUT0CkSj/1Q=; b=BMoQmc5zXQh/HHYWIr1OWKlCl9/kXiWiMQo1ety1ebeL8bUG8QWDLGqEQ+FcQdGA1gH+6R uu6+HPyf3+/Y52pKHSM4zb+9uiHPL2OlJS5hHIsbccY/P/8jv229SHDhUJhA1NTTfVVYVd VGVRmaIiatEm2TPED089d6XWjyttnjXvCOfgKItfltIV2ha14qbTjVtf+bFcGq6nsolGfS JRw5F2x4wPGj9gsJESA4YGvDT09BC3cNlI9891qwtftL+iLRHzl3NGPy57z1kfVi54XoyT DDYvMhuv2MO/IjfddWVelqOnVxVRBTEPlBQOUsVXvPOrEldRyBM2ha0bP4NJiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781346; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z9eES1opOEZTjFzyPO8Bxcngbgt+PTVYvUT0CkSj/1Q=; b=uoIKoCYQ08QJsdeGG4alxrU2Yodkdr28gL0dl3bxojBW3xNxwHBNCTCIlsRaIKbAU7Xqn3 RpjOG/TespWfplH2oHwsju7wK4vXZeS7+IdpkNuvCtM5IRJaYf7LJUgFcceoqac07EiBzu SjBu6ZPOQuui45zlqsylREEpn6Hivz/+adLsovNEKAQPvS/euYKVDJsiGJd2hmQOnpCspu oXbiab+4IXZeeKsCRyGkBpVXBrPGY3+o1WegNuula14M2lq/+TDAO8GkFaPGaPAyjYDWOy z45yRhfNrPVzcC/hLKcPBaD2FrfW/NkvhpL+VFQESAVigMm7TVS9vmMcImfm5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781346; a=rsa-sha256; cv=none; b=WzGLlm5PPlHFy6/PKi0qSLFS01ZMCdB4KwmIneoTSoIb32U0+bFI88xCqDpAZuTU/mmU7O ggtdgmAm+2fIFkiY2H3BBun1aoONDwGmVz2DiYpj/2QhGoAqL2Dsr1KCUPiG3PW7aob3JU NGQ0ALoqgEa+cdNoIh8ScnwLnChSFVwnHUwuEy/QRGXz+YtRgfY9MLra0IIZRYy7Ke/TXR lE/ZveesIFlM/DySytZwYUWboGrxgYRoG8V9/mXvfG+ntzCxIcF/sFRibzF39lI71+jHzL p5UPA+jxiue44Ddhz1ztzBse8aKj4LQOFiVpvqq/ki1OBCVC6N5pw4dE1t9Imw== 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 4QqRTZ0Rfrz18TY; Mon, 26 Jun 2023 12:09: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 35QC95Md083652; Mon, 26 Jun 2023 12:09:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC95FK083651; Mon, 26 Jun 2023 12:09:05 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:05 GMT Message-Id: <202306261209.35QC95FK083651@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 992075d8f9ed - stable/13 - LinuxKPI: 802.11: initialize txq List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 992075d8f9edb9db87bc1361227bebdec7222d86 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=992075d8f9edb9db87bc1361227bebdec7222d86 commit 992075d8f9edb9db87bc1361227bebdec7222d86 Author: Bjoern A. Zeeb AuthorDate: 2023-06-10 22:18:38 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 09:26:15 +0000 LinuxKPI: 802.11: initialize txq In 5a9a0d7803382321b5f9fff1deae5fb08463cf1a we omitted the initialization of the per-hw txq settings. Fix this. Sponsored by: The FreeBSD Foundation Fixes: 5a9a0d7803382321b5f9fff1deae5fb08463cf1a (cherry picked from commit a5ae63edd59453f23d51a0cc61922bd3e1e4cce4) --- sys/compat/linuxkpi/common/src/linux_80211.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index eefa3de54125..adf8391bbe9c 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -3521,6 +3521,7 @@ linuxkpi_ieee80211_alloc_hw(size_t priv_len, const struct ieee80211_ops *ops) struct ieee80211_hw *hw; struct lkpi_hw *lhw; struct wiphy *wiphy; + int ac; /* Get us and the driver data also allocated. */ wiphy = wiphy_new(&linuxkpi_mac80211cfgops, sizeof(*lhw) + priv_len); @@ -3534,6 +3535,10 @@ linuxkpi_ieee80211_alloc_hw(size_t priv_len, const struct ieee80211_ops *ops) LKPI_80211_LHW_SCAN_LOCK_INIT(lhw); sx_init_flags(&lhw->lvif_sx, "lhw-lvif", SX_RECURSE | SX_DUPOK); TAILQ_INIT(&lhw->lvif_head); + for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) { + lhw->txq_generation[ac] = 1; + TAILQ_INIT(&lhw->scheduled_txqs[ac]); + } /* * XXX-BZ TODO make sure there is a "_null" function to all ops From nobody Mon Jun 26 12:09:07 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTb2rxFz4k7Cg; Mon, 26 Jun 2023 12:09: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 4QqRTb25wwz3kVv; Mon, 26 Jun 2023 12:09:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781347; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zjMREq/U1xZTs1jrICgiXaK4vRsxPwHOxYQJEzFo8AA=; b=crtEx97CQnq8Dzly5IIwgTqLmmAJFjYvHps088BknZNKuxmUbiXsTW3Gc+AdaI1W+g/JX9 dRI1ubXoFKRT8mzxUx1hXnrso7Y7kHVWxIRyGwIdY8HtuK3WF4j9+P9tXcYNO1B6Z57cZA mHPp2tfQ0wiCAZc4jcPnDSv61hEZFQpA8oG+73NUhc78Ln/rNDrDXFfIIRA+yor2xWpadM SDqiHe6ssQWSGjuJvWQodjndVjTIb3mtIk7a3C3pnIKCVjrcARdJZW+c3dvSgu8I+zUYv0 I79/RauYkU5Hk1eglBbr+m3zn34uGS8BTHQ/mj7cVxIFyO1oGqsjohGiBumFEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781347; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zjMREq/U1xZTs1jrICgiXaK4vRsxPwHOxYQJEzFo8AA=; b=AX8BD7jrwjTzQuyN4OCczE1hYOAyuEVllzDqu+DYleqMjlPMizAFuSuhHSicyEhTr3xAyf 5H//IYa1xk7DxIU9a99ZJD8UcBXVUlqfB36D1UaqPXGQGegwwGpGMKIGR0WKT3vmViH77t l2AxArAD7biYDmnKc5NDphajxUpdgHH1KVXWFS+qI7TTSYDP47yn1JTuZWoikztLfeC4b5 kfk2N3KlEj49z6niPQYXos4YPSjeKJ2ftlviIrJZbBcxZDM9bDgUz0TG7nLXj9ip7bpgTy aPgbeQdfJIisXSMLfS5D9Tz1YseoPb5SoigeUK0Dow8476oyKZPaFxSnmgxZWw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781347; a=rsa-sha256; cv=none; b=pwhiZurDeiEL9SoVSQtjMVhpVgrGiMrsQX2pF8mAE0spOqMkJgUGwX+XbtcNAIcckMvr+Q cVp97obpk885u08r+3eaiANrFiY6dQsBWoafNh5NP4KXB4+wyq6bm0XwAUVa0BHmE9Hciz fEj4/AV5zQ5SLWlpnI7oy8WHAN7OG09yeiup2MtKjwI40KSxVniz8mdbb6EdUTEK+r0sc3 IWjiqtdmQ+pGL4OK/E0movOMEq3aFPDXPi/7NXDMXx/sNVqHPZYy1y4Fso1VPHCIbPr9Qk iQ7Xgg/niC18JaOD8Itq41LHK/fcXwETdLnID3p8BvqtVMtcPmLjopH2wMfuVg== 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 4QqRTb196lz18P3; Mon, 26 Jun 2023 12:09: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 35QC97cZ083671; Mon, 26 Jun 2023 12:09:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC97lQ083670; Mon, 26 Jun 2023 12:09:07 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:07 GMT Message-Id: <202306261209.35QC97lQ083670@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6c9bcecfb296 - stable/13 - net80211: fail for unicast traffic without unicast key List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6c9bcecfb296b96a383012e02bc9582260588339 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6c9bcecfb296b96a383012e02bc9582260588339 commit 6c9bcecfb296b96a383012e02bc9582260588339 Author: domienschepers AuthorDate: 2022-11-10 00:00:00 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 12:02:00 +0000 net80211: fail for unicast traffic without unicast key Falling back to the multicast key may cause unicast traffic to leak. Instead fail when no key is found. For more information see the 'Framing Frames: Bypassing Wi-Fi Encryption by Manipulating Transmit Queues' paper. [ I updated the commit message to reference the paper and the code comment to record historic behaviour as discussed in private email. ] (cherry picked from commit 61605e0ae5d8f34b89b8e71e393f3006f511e86a) --- sys/net80211/ieee80211_crypto.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index 59760d1e7d9c..f5941392465b 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -560,13 +560,17 @@ ieee80211_crypto_get_txkey(struct ieee80211_node *ni, struct mbuf *m) /* * Multicast traffic always uses the multicast key. - * Otherwise if a unicast key is set we use that and - * it is always key index 0. When no unicast key is - * set we fall back to the default transmit key. + * + * Historically we would fall back to the default + * transmit key if there was no unicast key. This + * behaviour was documented up to IEEE Std 802.11-2016, + * 12.9.2.2 Per-MSDU/Per-A-MSDU Tx pseudocode, in the + * 'else' case but is no longer in later versions of + * the standard. Additionally falling back to the + * group key for unicast was a security risk. */ wh = mtod(m, struct ieee80211_frame *); - if (IEEE80211_IS_MULTICAST(wh->i_addr1) || - IEEE80211_KEY_UNDEFINED(&ni->ni_ucastkey)) { + if (IEEE80211_IS_MULTICAST(wh->i_addr1)) { if (vap->iv_def_txkey == IEEE80211_KEYIX_NONE) { IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_CRYPTO, wh->i_addr1, @@ -578,6 +582,8 @@ ieee80211_crypto_get_txkey(struct ieee80211_node *ni, struct mbuf *m) return &vap->iv_nw_keys[vap->iv_def_txkey]; } + if (IEEE80211_KEY_UNDEFINED(&ni->ni_ucastkey)) + return NULL; return &ni->ni_ucastkey; } From nobody Mon Jun 26 12:09:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRTc4mpmz4k77f; Mon, 26 Jun 2023 12:09: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 4QqRTc30wrz3kgj; Mon, 26 Jun 2023 12:09:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qw1Zyo9JifWrTBSmCrCwJr1DUzlfdPAc3IvGVJ3zrk4=; b=Xv8+hawZqIJi3E1dGaM8opHT7/JeDvXvGfyBuycLaUhKBfoZhCVkOYqMbGbnfrHCtDP4en 69RvqIIgCyDc8FEyKPW5+zweFawmRVvi5CdTf3waVSCjz4o25SECw6ahRWYRRM5xTarR/y 7Kad3uquIvDTyDJMUQhABavRN1mYuc/l/r+Q8cLwCHDctY2YH9dIrnPLrCLZtXYcidAtdB i99wcqHWAmtff4NzD729JQ5wTz1CtW4geeF9IGGtwGlZmJfTa0PT/37vfPmw+erGJI3ZIA 4PsZ6L2yFcnA5gIIFTKFF1gxs0WZaX1h2Tzyfm1atLE6lF2mLjoRs7U97140vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687781348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qw1Zyo9JifWrTBSmCrCwJr1DUzlfdPAc3IvGVJ3zrk4=; b=uSqloxy29yzkO1dGhMwtu6WSuD/BVH2T2Q642I5Jx0C9U2O8vNW4RyiiQ6rsHAwlDLmWSN M42gD7BYhRpnck1OLNZKUUuNFW0FdcFPbkRayiwfhlHE76mgngZqkkRuXzHL3uZQJ2XXVA /fKvSrY/d3L83e27HS0UzRC+hGCTrW+pyXOuDbv4os25AwkNIQmAyYgAR4FOjmdO8mw3sJ Fu4JpHh4gmW5InQ8pptkOJhOXWeGkJIcJ3xavlC4HM8V0YC4ITz46rg52gtu/btQM9BZj7 2yL4+0rCc1zZiSOsEFd80j4K3m0r2CezjEYakKs+lxHE9yFhwJ1te6I80Tqb7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687781348; a=rsa-sha256; cv=none; b=eIeAXTP0JjwVLGMUw4oqwsOK/03+1n54/QHTo4dZBDOz8dF7G+fI3V/pO3SLQYeNcaN1ee D0unDjr/AIx7ER5I4ColqvQ8/qwSsVvNu3oIFxp9HEpX3mLkNYA5n5L9Br0CPhFM/vDZIs 7WHkZ6lJl8nTYN81SbmZRl9ahPKe5qRJafCS+Y4oRN2SeGeuib+4w6k0T6POSoyQEHkGtt 3+QrMBfROZniZ8HJ2qqPPWvfmN5JBs7dUqe/eetJbm19W4IJJHPPZdwtbEdeRkejFS13Ht ppzvkUGf+Wl6YyF0WNMeihkQYoG+N4bWb2G8NUzlH1MqBh0mwrQRaeCwQj/dnw== 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 4QqRTc26zgz18TZ; Mon, 26 Jun 2023 12:09:08 +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 35QC98BX083696; Mon, 26 Jun 2023 12:09:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QC98nH083695; Mon, 26 Jun 2023 12:09:08 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:09:08 GMT Message-Id: <202306261209.35QC98nH083695@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e982b1cf1fe1 - stable/13 - Bump __FreeBSD_version to 1302506 for merges of LinuxKPI changes. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: e982b1cf1fe1dc0b84dc24f03d1c21e3fe6bdef3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e982b1cf1fe1dc0b84dc24f03d1c21e3fe6bdef3 commit e982b1cf1fe1dc0b84dc24f03d1c21e3fe6bdef3 Author: Bjoern A. Zeeb AuthorDate: 2023-06-26 12:05:50 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 12:05:50 +0000 Bump __FreeBSD_version to 1302506 for merges of LinuxKPI changes. Sponsored by: The FreeBSD Foundation --- sys/sys/param.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/param.h b/sys/sys/param.h index b57c5afb5d05..6a0328d8aa45 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -60,7 +60,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1302505 /* Master, propagated to newvers */ +#define __FreeBSD_version 1302506 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Mon Jun 26 12:29:38 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqRxG4bnyz4kSkT; Mon, 26 Jun 2023 12:29: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 4QqRxG4BSwz46x7; Mon, 26 Jun 2023 12:29:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687782578; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jy8n+XmFsuYsmNMnOFOo5CwDqgTq22twiZGXItMGVZc=; b=OgKI7lu/7CKZtDV/uaTfiYOLiq6pbNB4mPhA9LyZ5hfPQMlyYwJG9Mly8KxqGYi4TTWQid 2jye0qfJarhNlz4oclPAB4IM/Tu/JSRvHvRxzdycYOGuu/PUvNpMnB5FSc9256Fm+bdPfI MJZK1JnlfrwkpR1H8VM9RonCC46vWMA1vuuCT+tkDdu8MqG/ArV3Mw9ub8GT9BT92pwNEK yUWpZoom70/QP4ILoeV/nm57vAEBll+PwijOwARhP2IqoMB+fLDDdNPkXCxegPMTL6Zrj8 yPs1qm+2iZZAK6VgU9CCGEqnBKgeC45mLshMZ9XvCcViOwsNR2qepJDJiLbblQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687782578; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jy8n+XmFsuYsmNMnOFOo5CwDqgTq22twiZGXItMGVZc=; b=dbzRG355w9KipGRcZ7e35HNkh3CpEx9/G979Jj+OpoIXCI1ZLqvJM7bbysijIERy45qDmp mbbIWJgsNFeQBhdGXrPbU+9jSxA+oKmCdOrjLxHjXGeLg1Kt6FPduZookuod63QCElYQOO uGbZzXuEzPRHXG/uxKLruHWdwUXbF5SUvVik9Wsix4u9J61xjrwnzCuJzP+4o2o3apIc0p KVBHJfEm2quvRk2HK49kw+RS+EzMuilPYfYoD91fJaj8x3JmoBJjreigrABGMtZcpXm0Zb LE+n8lIO/+0Hk9qSFBRTMnoIYEz1SqG2nmEzE7aPcAXYwgWu/tn8DWD/4D2M0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687782578; a=rsa-sha256; cv=none; b=GNwbfHyt9s0MPsyJxoVi26ojHg/Qtk8CFv044nbZPz+0lVCIYs6Fjlht7suRw/ScJPJzGv 3eWSbrfRzfsNOE7E/4JHbbccNvk1lS5W9vs6aA29vKjNCY9k5fdgvCMcZ26qyM5UD2xfkp iN+6YRkKIFJoo+GbELisli46gHZMWHfUGYwk3mcTRti0R8V1/kTwt5G8ErlYwwtPczzHoI nqy1CfCa3WLehLPC54I2Q1+3f6UY2tZyWMNYmXvFrMJVtIkegKiFy/44AtpLig19zgEROq N4z8bCKLn+AgUzdKh5TmSScQiGgZJs9HZjEmjksHBQ3xRuXBDzLXS3apEh7zAw== 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 4QqRxG3H5vz194W; Mon, 26 Jun 2023 12:29: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 35QCTcJd017509; Mon, 26 Jun 2023 12:29:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QCTcVk017507; Mon, 26 Jun 2023 12:29:38 GMT (envelope-from git) Date: Mon, 26 Jun 2023 12:29:38 GMT Message-Id: <202306261229.35QCTcVk017507@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 84d538470bce - stable/12 - net80211: fail for unicast traffic without unicast key List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/12 X-Git-Reftype: branch X-Git-Commit: 84d538470bced9b1a45064c7845c92551a15e3e1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=84d538470bced9b1a45064c7845c92551a15e3e1 commit 84d538470bced9b1a45064c7845c92551a15e3e1 Author: domienschepers AuthorDate: 2022-11-10 00:00:00 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-06-26 12:28:52 +0000 net80211: fail for unicast traffic without unicast key Falling back to the multicast key may cause unicast traffic to leak. Instead fail when no key is found. For more information see the 'Framing Frames: Bypassing Wi-Fi Encryption by Manipulating Transmit Queues' paper. [ I updated the commit message to reference the paper and the code comment to record historic behaviour as discussed in private email. ] (cherry picked from commit 61605e0ae5d8f34b89b8e71e393f3006f511e86a) --- sys/net80211/ieee80211_crypto.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index d565b3511170..0e605bf13a43 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -560,13 +560,17 @@ ieee80211_crypto_get_txkey(struct ieee80211_node *ni, struct mbuf *m) /* * Multicast traffic always uses the multicast key. - * Otherwise if a unicast key is set we use that and - * it is always key index 0. When no unicast key is - * set we fall back to the default transmit key. + * + * Historically we would fall back to the default + * transmit key if there was no unicast key. This + * behaviour was documented up to IEEE Std 802.11-2016, + * 12.9.2.2 Per-MSDU/Per-A-MSDU Tx pseudocode, in the + * 'else' case but is no longer in later versions of + * the standard. Additionally falling back to the + * group key for unicast was a security risk. */ wh = mtod(m, struct ieee80211_frame *); - if (IEEE80211_IS_MULTICAST(wh->i_addr1) || - IEEE80211_KEY_UNDEFINED(&ni->ni_ucastkey)) { + if (IEEE80211_IS_MULTICAST(wh->i_addr1)) { if (vap->iv_def_txkey == IEEE80211_KEYIX_NONE) { IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_CRYPTO, wh->i_addr1, @@ -578,6 +582,8 @@ ieee80211_crypto_get_txkey(struct ieee80211_node *ni, struct mbuf *m) return &vap->iv_nw_keys[vap->iv_def_txkey]; } + if (IEEE80211_KEY_UNDEFINED(&ni->ni_ucastkey)) + return NULL; return &ni->ni_ucastkey; } From nobody Mon Jun 26 16:30:39 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqYHP1QB9z4kZh1; Mon, 26 Jun 2023 16:30: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 4QqYHN1dJbz46Bp; Mon, 26 Jun 2023 16:30:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687797040; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gXg8FxS8XjnEGBnkp6xIj48wjlqxqCpxyfIEHNtBdqM=; b=Q70Xf9IaLK5Qk8e0N44EWa8ioMqbT4ZvfHHfyucbULRcFaZWaqFPcLjlEJx3gmay/qygGv c502VfQA/g0wMyP/VvZookpfrgyTRI0myjI6pAQMblH5SP8oSyYErsgQNpkmgcIE64AP25 RBtvsdR6IJhSscy2Hr4kOUCT/9FXWA81ErIX2tNZJUYGnnHZZYzeihgtvXgM5dOJlr30E8 EGtSnd2glfbtT+zaUAEag1dmttE0lJlPaG19+ehUWQLucbjKUuiexPChzOEgUFVRVaqL69 We6bFI9q1ZFA9gxiV1Vu4vOMkyhSNvsRhEAcKG7YWgyMxTIj+fJ/3s805Gafrw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687797040; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gXg8FxS8XjnEGBnkp6xIj48wjlqxqCpxyfIEHNtBdqM=; b=fn3arE8vXqI5AbznXqqCL0aQLPkm5d4AacqV9pVGItG+1r4DRIMEuiUEPl/m2BoeS4IWZW tqDGMVmGF9N3Tl2bxT1VuZX8WUHwyZ78TZLX1wvUEKVDczp/meiv7AkHODljZhKYoifhKO uj/rjXX4QfXJ2Ebb3y4kDOn6Dfku7aI4TESomKKtyTqMA4F4k7RJDFU96o/NJQ98f5XxtJ Pdkn8+ZXKqCfL/SNwt+UJkGbqeWoWP9RPdmWZZRlCbXvSmW9fqmEFs0ghjMMjYxtVaEUKY 4keXsod/UjBVcYTUkpcFsDZRThi3kB6dNzMYH46sn8xVsBx2LeLf+QI0mp62bQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687797040; a=rsa-sha256; cv=none; b=jAovL9T0uMHaitv7i/5qGLRNzI7Qm7o5Phu8qUywKAfZfgQ3JEeacNwHYXiGQ+Qgst+7d1 jzyR+QPJ+LNv+VUleLHC/dD7ZLwn2r2oEhOmGNaZk802OyTNccJz7SeDqGHkbPbC0llvBd s98ZEoVR5duvaJ+du2HPYs0sh1nRTpQoslJ8f8y5gKjyKst81fHAtiy04A0jybMy25N6Zm O4eRvMppq/kO3HhmYhMoisoexfmf17+8XCOPdTNZEkaKH2scjnM9IKYGVS+4n//+9KiycO GTRiJS9njcggw9gyD/+FQ8koCR154uSfpVz4ZL7T8isyDsB84leGsLdj6/Ef/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 4QqYHN0Q0DzHRH; Mon, 26 Jun 2023 16:30: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 35QGUdXV025492; Mon, 26 Jun 2023 16:30:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QGUdRk025491; Mon, 26 Jun 2023 16:30:39 GMT (envelope-from git) Date: Mon, 26 Jun 2023 16:30:39 GMT Message-Id: <202306261630.35QGUdRk025491@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 6403f0ac1281 - stable/13 - seq: fix potential NULL ptr reference List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6403f0ac1281a9f95f387c98ef17f88f59714e56 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=6403f0ac1281a9f95f387c98ef17f88f59714e56 commit 6403f0ac1281a9f95f387c98ef17f88f59714e56 Author: Mariusz Zaborski AuthorDate: 2022-09-30 17:36:04 +0000 Commit: Ed Maste CommitDate: 2023-06-26 16:30:31 +0000 seq: fix potential NULL ptr reference asprintf(3) allocates memory, and there isn't any guarantee of success. MFC after: 2 weeks Obtained from: OpenBSD (cherry picked from commit 94c4f663bab58ec07584786dd76866011d5b2506) --- usr.bin/seq/seq.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/usr.bin/seq/seq.c b/usr.bin/seq/seq.c index 7559dbd9ce20..47ba0b7ce3af 100644 --- a/usr.bin/seq/seq.c +++ b/usr.bin/seq/seq.c @@ -199,8 +199,12 @@ main(int argc, char *argv[]) * loop held true due to a rounding error and we still need to print * 'last'. */ - asprintf(&cur_print, fmt, cur); - asprintf(&last_print, fmt, last); + if (asprintf(&cur_print, fmt, cur) < 0) { + err(1, "asprintf"); + } + if (asprintf(&last_print, fmt, last) < 0) { + err(1, "asprintf"); + } if (strcmp(cur_print, last_print) == 0 && cur != last_shown_value) { fputs(last_print, stdout); fputs(sep, stdout); From nobody Mon Jun 26 16:30:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqYHP3X3Hz4kZh3; Mon, 26 Jun 2023 16:30: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 4QqYHP2VdXz46Bt; Mon, 26 Jun 2023 16:30:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687797041; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xLXbu4UnNaBIE+iMuP9A+xVGwiEstvjoXv1ZuRdZ3Cg=; b=KtVFtEk8B2zHBJ9NCIfT0l10eEgB4QAiFjTKSR3HTW4dSGZ5iJmNnpmVHvHe6VZFX+784U Poba5Gw5w2jkpdNWNgWf0Yzx0/KTaWWiXhndTUw4PSRlfU2MhjWShuCYTeQvZniS+YV9F/ nfOAWnu+c2+AnB7ZYi2cPXL4zHs4Sc2GrrG9Enf8qLKnor9JYVEjekz7+dX9WJRKktxP0G iilrPu4myE+u7XtTrR47NeIGJrMgZxKqp0hZ7gyn8rNzCyKSZpapeklMjSDa4hYW5Tl5mZ PcnleuMu1kFVHUpn6g17vicjsNrmoehsJGc0VBVWaW3YIpwRwmapsnhSQ8a0Eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687797041; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xLXbu4UnNaBIE+iMuP9A+xVGwiEstvjoXv1ZuRdZ3Cg=; b=lzMP5M/7pWijUa4MWA5Ac1l8YteK1jy3n3t2esBAvSdxYywY7V5PZF3K3Hwhfe5fCkyt5J LYR+bKT/2kYPZLBHkxY9mdN9a2Bo1KUXb6WUtXwFw+y0vl3HRyoYC6CBJk7g8LVEpIz/rf ncHei3oe5n4CRD3Bkp/y0RLSX1zvMSxvvuEfDQKmG061phrc60+oIgbSdIito+iz7/WQ0F +cu5dPNGUaBuOg38tQDyB5sjHv2Mej7aerKByXT8d7VDdSKw/O8uqxckoBhs9jbG7G4nYd NJIoc6ht3A17uMT74eguTa37MCgQqVH7lfx46cdqnOobmA+9RLtgsF+FFA+lgg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687797041; a=rsa-sha256; cv=none; b=tSqIsd0aWvWFx/enNSmI+Q84YITf3PimTJCmz+TZXbjpVEKH5pl24YK9F6NrbRDvfq2GJG MBijGAavhC4/k98Nydi6zh1naUp32QBFavYDJmHM40LyX7hcJ9z4u5TfGLETTItYxMOiXt LFqg9LgCpTuHaNMcxlFluHGFiJiVtyFfjEc/PlDY+cWAe1Q0FKXMH6EMmOboT8OBFkgoFQ nBjtnxt/xDL776H5yyC58vL/edt2j/qD1on+LnOgo0KRVEmUCYj2aWG4BRPYSTwLqz1CWH oAuAR+6VkGJ2R3AN5ejd9f7azRMbs6r0JD/1hAADcFbeivbZgBWHpbDzR3iz2w== 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 4QqYHP1LmYzH1q; Mon, 26 Jun 2023 16:30: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 35QGUfXU025523; Mon, 26 Jun 2023 16:30:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QGUfUN025518; Mon, 26 Jun 2023 16:30:41 GMT (envelope-from git) Date: Mon, 26 Jun 2023 16:30:41 GMT Message-Id: <202306261630.35QGUfUN025518@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 5b59888c3d0d - stable/13 - seq: fix style nits List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 5b59888c3d0dab25d672a0c2e8eba3ba938ff2f7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=5b59888c3d0dab25d672a0c2e8eba3ba938ff2f7 commit 5b59888c3d0dab25d672a0c2e8eba3ba938ff2f7 Author: Mariusz Zaborski AuthorDate: 2022-09-30 17:38:34 +0000 Commit: Ed Maste CommitDate: 2023-06-26 16:30:31 +0000 seq: fix style nits MFC after: 2 weeks (cherry picked from commit 6da5e5d649ba255d41318daccc24e7af6984e0b1) --- usr.bin/seq/seq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/seq/seq.c b/usr.bin/seq/seq.c index 47ba0b7ce3af..823e8c2c4da0 100644 --- a/usr.bin/seq/seq.c +++ b/usr.bin/seq/seq.c @@ -151,7 +151,7 @@ main(int argc, char *argv[]) if (argc > 1) first = e_atof(argv[0]); - + if (argc > 2) { incr = e_atof(argv[1]); /* Plan 9/GNU don't do zero */ From nobody Mon Jun 26 16:30:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqYHQ65Ylz4kZmv; Mon, 26 Jun 2023 16:30: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 4QqYHQ46pkz46Hf; Mon, 26 Jun 2023 16:30:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687797042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wpXEJ4kedeHIG2jVhNW61OgwSyPT+IaLlbl0WkEM66o=; b=vQ2mGJWldpmLTSWtpB7CLNqsxnhtZ/sdWQ8sEYaMS0Z6ocmFls5UKk3ecYY6+ZtKmsdeZs LlN2yDv3iGhnYopx7AX6rAfshmZSTHmvf/kv0g2cKx+ZHTp7TW1yIdk6emqfbTYI5+K0Pf m9YPTIvss4XHGvIKb8kMAJ3OaAjb8VYFKPaA8RuVejqr75KaKehayBKGvjURjY9zvtOeZc Mjt+2jWu8FViDRC7AlUtsM/XT5etIqTxcSmJp/AS01Mwn0YMaxBMuOiAJeC0wEZWuCNvhU yTLMb9MmD5NoV4KWgVA89OF9Cw9I/TdzTpY4cevOWmMEChuomNu/+dkoG3odxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687797042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wpXEJ4kedeHIG2jVhNW61OgwSyPT+IaLlbl0WkEM66o=; b=iTsuMjGGiz9dKXBaMPF+Zdzj+fYSUCMZ+zabjkxhZ2dgAlHvhO7kPYA+UHuBr3kpRsvnnm F9kbv1ZNn7IITeMj0UPMNoxYxC+xHSH0/dwmPagCzITKvBRnr7mRFmpN1s9OuHtLtz1fPL rSkLJ4h+uodcVEIvrsHP1L8fgCsSpI1MdBbUJLlwH5rP4ohe4T0iPnXcYWP5rjndiOZcD0 46wCyC+h5yzK4sIwHpxLrtcxB1JQ/DWiz9n7lBYrVcX7QL0ESmcKnF/c6F2kgOHxVm60LM hDZHwxldRW3WiBa0IV6yt6HK8geMjBTqwKC4DARNKFJeXhBfxFbm6R26l5j5QQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687797042; a=rsa-sha256; cv=none; b=NStI1A0ClukdWNURGHwn7JSQv0M2f5SvTeZE1yGObE/oL6gESO6s8IWHGXLJ6+2qeuv+OB S4RGNfiQr8O4KBjIHNVEz6CC3NnSgX96qrqRPVAxiWsTH7AgY4UEOwFsj2qDjIoRL9pLAN G6ERDuRwN02HYkkien10/hhhijWnyek46AxzfRayeWI3RJYmDHygc2cC3wqhaXFLoXjgLa QxnkK/tG624HEBeAQK9DARyUn4wgiRzcb6ahiqXp0zjmo37dj7Rt7eHNRIFc8662U72ZL8 ytwCTR1YZ0sUHcbve7FE3fB7dFw3U3LG1yfrGEehXM/GpdipBj5WxxDe3AmDQg== 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 4QqYHQ2FbQzGmp; Mon, 26 Jun 2023 16:30: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 35QGUgkk025543; Mon, 26 Jun 2023 16:30:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QGUgGJ025542; Mon, 26 Jun 2023 16:30:42 GMT (envelope-from git) Date: Mon, 26 Jun 2023 16:30:42 GMT Message-Id: <202306261630.35QGUgGJ025542@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 70af4d57c18f - stable/13 - seq: fix check for rounding error/truncation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 70af4d57c18fbcb46e3d7d7501cad756f812bed3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=70af4d57c18fbcb46e3d7d7501cad756f812bed3 commit 70af4d57c18fbcb46e3d7d7501cad756f812bed3 Author: Ed Maste AuthorDate: 2023-06-19 01:37:06 +0000 Commit: Ed Maste CommitDate: 2023-06-26 16:30:31 +0000 seq: fix check for rounding error/truncation Based on OpenBSD 30f0fd29ba6c: > We need to compare the printable version of the last value displayed, > not the floating point representation. Otherwise, we may print the > last value twice. PR: 271964 Reported by: Daniel Kolesa Reviewed by: yuripv Obtained from: OpenBSD Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D40601 (cherry picked from commit e54db9a9ccd588f650a2e57bf9d1cbbafc0e12eb) --- usr.bin/seq/seq.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/usr.bin/seq/seq.c b/usr.bin/seq/seq.c index 823e8c2c4da0..50c6b6022967 100644 --- a/usr.bin/seq/seq.c +++ b/usr.bin/seq/seq.c @@ -88,14 +88,14 @@ main(int argc, char *argv[]) { const char *sep, *term; struct lconv *locale; - char pad, *fmt, *cur_print, *last_print; - double first, last, incr, last_shown_value, cur, step; + char pad, *fmt, *cur_print, *last_print, *prev_print; + double first, last, incr, prev, cur, step; int c, errflg, equalize; pad = ZERO; fmt = NULL; first = 1.0; - last = incr = last_shown_value = 0.0; + last = incr = prev = 0.0; c = errflg = equalize = 0; sep = "\n"; term = NULL; @@ -186,7 +186,7 @@ main(int argc, char *argv[]) cur = first + incr * step++) { printf(fmt, cur); fputs(sep, stdout); - last_shown_value = cur; + prev = cur; } /* @@ -194,10 +194,9 @@ main(int argc, char *argv[]) * * We might have, so check if the printable version of the last * computed value ('cur') and desired 'last' value are equal. If they - * are equal after formatting truncation, but 'cur' and - * 'last_shown_value' are not equal, it means the exit condition of the - * loop held true due to a rounding error and we still need to print - * 'last'. + * are equal after formatting truncation, but 'cur' and 'prev' are not + * equal, it means the exit condition of the loop held true due to a + * rounding error and we still need to print 'last'. */ if (asprintf(&cur_print, fmt, cur) < 0) { err(1, "asprintf"); @@ -205,12 +204,17 @@ main(int argc, char *argv[]) if (asprintf(&last_print, fmt, last) < 0) { err(1, "asprintf"); } - if (strcmp(cur_print, last_print) == 0 && cur != last_shown_value) { + if (asprintf(&prev_print, fmt, prev) < 0) { + err(1, "asprintf"); + } + if (strcmp(cur_print, last_print) == 0 && + strcmp(cur_print, prev_print) != 0) { fputs(last_print, stdout); fputs(sep, stdout); } free(cur_print); free(last_print); + free(prev_print); if (term != NULL) fputs(term, stdout); From nobody Mon Jun 26 19:52:29 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqdmG0nMHz4gWY0; Mon, 26 Jun 2023 19:52:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqdmF6cZMz3RFD; Mon, 26 Jun 2023 19:52:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809149; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6DcrzqbCEC0z4BfPAwfhZ8odkT0kUen7eZWCpOgSxlI=; b=tXa91vB3m8Jj/nlmR1lZie0JjGxsA2Hb0C6OqO1Qh/+MPUvKfBuW625pUH1K9pzW19jDkx aenq6j3mZp5wiTQxHywqc9PqHyluUHuNkYUc0EHiLF+Un7MHZU5tkbI/rZkxR2E7fv/oMC i3PSbku+hBpxhWIBlpSx1wGjLhjcVDM84T+gVTFc8LO1oqJNt7qGkW9Cvc/8bc1zh4A/nc mv6i5oZ+O9pDFMkThI2sp6xll2XnEkQ2a7z9IrKAUa5lt9rSjpLlXdR4N5jas4BB8KWUn6 53vJqQRYIPIK07pTHoz+o/CsoZHn1GSMJ25wQ/KcNoBasWCZ6SHELLpQ1l/Daw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809149; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6DcrzqbCEC0z4BfPAwfhZ8odkT0kUen7eZWCpOgSxlI=; b=wbtN/S9DgaYlLKfq1GaKX3mBigl+BcM+APX+exNGap35MM1tGshxEFVWOd535dQoxxxVwF 3Mo+AQg3uOh1zGp3j+dq8d4YlF5IX7OmkVicc4/+ShikRxBrC73es/I/GZ3HkOyUHbu3TH +AR9R8HteQf+2kBUdri4zKQdPKXsJ3jd8qnab8zIrJDUNlKLGxKca2J838oTFHONcxP3NI RYoDV+zn51Xdj/ijQpM0aG+O20oO2BO97CvULyW9n9ye/tdkFEIf9Lar42IIBjH1O/7q+7 /mur6jeY+YEFWWnyUFWCDBu7/SxtCFntJyyQslumqgQhLT4Jnr43dofurKS3zA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687809149; a=rsa-sha256; cv=none; b=kdDXsDNt4vZgDPebEKltmJSO8Hc7iiXvbSg2PMAOLA08fROCwUPqJLnN5dru4AbL5JAqzm djMVWYZnyw0gazQ1iTYKE0kNwQMphk9kiJ/xv0kRj4ut4IlDu8DDS4ACfoe51b/bBtlvsK NYxxf2kdzMqquNxkWMVBGCi/+PHuCUQVOSzL7qcGqV100HbPbQDU7qDulHcgD71dBP2TqY 0OWyzI49M/FOKA1QBVtBP3mBoJRzEDd0sMtEIa9S1hL3+clKhXV4fyKAQ4BG/tBhgHsj5c Nd/A3OCoNj840KJRzFAuKE5COq5MHodzJB99Am9kfz2oGrL8cCVCmIg8q/B69Q== 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 4QqdmF5hmMzNNc; Mon, 26 Jun 2023 19:52: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 35QJqTfQ063641; Mon, 26 Jun 2023 19:52:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QJqT5g063640; Mon, 26 Jun 2023 19:52:29 GMT (envelope-from git) Date: Mon, 26 Jun 2023 19:52:29 GMT Message-Id: <202306261952.35QJqT5g063640@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 8beff65a4a2d - stable/13 - x86: Add defines for a couple of thermal and PM bits List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 8beff65a4a2d230c1937df876c7041ea3f5c2f04 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=8beff65a4a2d230c1937df876c7041ea3f5c2f04 commit 8beff65a4a2d230c1937df876c7041ea3f5c2f04 Author: Mark Johnston AuthorDate: 2023-06-19 17:26:07 +0000 Commit: Mark Johnston CommitDate: 2023-06-26 19:52:08 +0000 x86: Add defines for a couple of thermal and PM bits MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit e60316d1eac91000e187ae248839fca31143090c) --- sys/x86/include/specialreg.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index 1b109b48818b..2d3d2b8080ae 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -338,7 +338,9 @@ #define CPUTPM1_HWP_PECI_OVR 0x00010000 #define CPUTPM1_HWP_FLEXIBLE 0x00020000 #define CPUTPM1_HWP_FAST_MSR 0x00040000 +#define CPUTPM1_HW_FEEDBACK 0x00080000 #define CPUTPM1_HWP_IGN_IDLE 0x00100000 +#define CPUTPM1_THREAD_DIRECTOR 0x00800000 /* Ebx. */ #define CPUTPM_B_NSENSINTTHRESH 0x0000000f From nobody Mon Jun 26 19:52:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqdmH1rwgz4gWhV; Mon, 26 Jun 2023 19:52: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 4QqdmH0V4Pz3R8g; Mon, 26 Jun 2023 19:52:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809151; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mAgf1ASUkauytZjSdLECBBaD82pn/PirKmO1g5d1AOg=; b=KXYfj+HuVdHZIQ5HyTUX5SxJLuhN4U3cnH5aiZdvGk/leZApwTUTcnwKe6xwpP8H6i/n4H InRdsbbiKkdwvYW0yxnehms1GQFaVy8HppI0tM2U0T//Z42hcQ3KE1VVptgsoTWoZ5Mt3T ract0QFocHUq1+wAqNszp2vdTFOZ3AD4tZTay7zwZy3bA5GY2m+q0IDvm5ifSIqwJNKH7H nH8QsNlml9mgkNFoF2dOW1v+4dV2a4Nd2P882LhOenYfBJnEIMAibauc+44yZTSzaBJWrf cmh/IbJxLVELQRr8pYc3BfGLD3evVHFn/uYw3CKRtF1tZJ8JCPSffPPX9ZR1bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809151; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mAgf1ASUkauytZjSdLECBBaD82pn/PirKmO1g5d1AOg=; b=G9knfGTsnIWZfcXZfLi/P0jZPtiCNaphXSotQopnxlObGGdn4DaoyVzdd5aPpuAHEACkrQ T/8xIResMWl8A73qCM/vcL8vnLst/RU0eCG9TnUwAXY3DkdtNtNEdkh44eJuzfZ+5Gi+hc D904LVoP/g72T8QnR1NjxkqksjcWZvfIo1MePSF+UB0O72fNdiTXD22oIyq2cMS08XoffR KjZc98VVQEXftl9jK8yiqDb+lGq1SoLHaLvoE8m2z6mPpDKqCfdy9oVRaaaLxhU23fEp59 1fMgVvnd38B+Gu9NnPWjEL7OYwwH+afbKvhVRZ3C8Eam3dcA9EY1ftYiT5em0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687809151; a=rsa-sha256; cv=none; b=d7rrf2WQIbT/JRmwVAcDA9XLBAmgifUVE5wqsDVPCMn1Qk8ErOqtiRi7W5uEkVHoC69plX eukUwWkJfRvmdXf+sfs0r0W92EExhnFN5ujfgrreqwZL06iUJ6g6FFCfCcTmI6om5P6F2V UPiFmXxU4q4+39t30AXS8yWVtC0nfIU3MyvrwJDCXL9OQLPVTv5lX/tmwu6fWytiirYmio DJtn3wdminbISPMIO1ilZUjHBGerJaQWmEN3WIV1jJ5NNJjnHzkLmGRXQYE3h8q03l47KP KQdyNAG0gR0L2sJ20z9JAl0TXVWFzJaLkWSislJJn9IqOiH/iNcNDJFl90S0Kg== 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 4QqdmG6crpzN3R; Mon, 26 Jun 2023 19:52:30 +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 35QJqUFV063662; Mon, 26 Jun 2023 19:52:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QJqUIm063661; Mon, 26 Jun 2023 19:52:30 GMT (envelope-from git) Date: Mon, 26 Jun 2023 19:52:30 GMT Message-Id: <202306261952.35QJqUIm063661@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: d93451762782 - stable/13 - bhyve: Remove some unneeded includes of segments.h List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: d93451762782c89ab01480615e2f4da154b7733c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d93451762782c89ab01480615e2f4da154b7733c commit d93451762782c89ab01480615e2f4da154b7733c Author: Mark Johnston AuthorDate: 2023-06-08 21:24:45 +0000 Commit: Mark Johnston CommitDate: 2023-06-26 19:52:08 +0000 bhyve: Remove some unneeded includes of segments.h They are not needed and are specific to x86. No functional change intended. MFC after: 1 week Sponsored by: Innovate UK (cherry picked from commit 6d1dfc87416f451164e79ebdc4a0fb53b001bfd9) --- usr.sbin/bhyve/inout.c | 1 - usr.sbin/bhyve/snapshot.c | 1 - usr.sbin/bhyve/task_switch.c | 1 - 3 files changed, 3 deletions(-) diff --git a/usr.sbin/bhyve/inout.c b/usr.sbin/bhyve/inout.c index 225697906393..6e58f544b452 100644 --- a/usr.sbin/bhyve/inout.c +++ b/usr.sbin/bhyve/inout.c @@ -37,7 +37,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include diff --git a/usr.sbin/bhyve/snapshot.c b/usr.sbin/bhyve/snapshot.c index 37aba32a1929..3f805192bb99 100644 --- a/usr.sbin/bhyve/snapshot.c +++ b/usr.sbin/bhyve/snapshot.c @@ -47,7 +47,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #ifndef WITHOUT_CAPSICUM #include diff --git a/usr.sbin/bhyve/task_switch.c b/usr.sbin/bhyve/task_switch.c index 0dfb536f09f8..1aac3c4bfea4 100644 --- a/usr.sbin/bhyve/task_switch.c +++ b/usr.sbin/bhyve/task_switch.c @@ -34,7 +34,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include From nobody Mon Jun 26 19:52:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqdmJ2VlSz4gWn1; Mon, 26 Jun 2023 19:52:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqdmJ1k5yz3RJD; Mon, 26 Jun 2023 19:52:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KHNvtzYaDhcahfcQt/BoApDg8bkT13PDhUaX96EF/A8=; b=FjMrQ3HZVgn9fKHMiRtS6XqS4XSoNREiF8zDDqXlD244sMiONziSOQuHZbskieQ8IQJ8Ox 11X/dL+MAcLtvBJVoBQTBjcd4pIpqWOzqQpAWLh+6mBoKoPlmt5xKKyXjYhlty9SI1Hr70 lR7Vcz1ilU0KdZVGAcVjqhglZItbsJomhGLZjWO0SpENX0na7ibMQ1VjpbZDXcdT8+vFQR xUucltgxvT1IBo52mRw14Yx7kQBwIFZFC538NLWzcCkM4Nb7+qNndtu/7c7EHrUzkK4cJo hXhAnUsIPNfmV6AgST3GQK4sTv0jyQQxGAqJEA/GYPTfEUQakmZOfDnG1DFziQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KHNvtzYaDhcahfcQt/BoApDg8bkT13PDhUaX96EF/A8=; b=VRV8HDyHE/7yBvMfUbheTNS5qW4kHDI0v6i37ZMko7uXQkCRo9uIucHcumnAHFYIQ19R3B xdhDGIKtXgvwwd+jHJElGZm38bHbkqxlUp8qsEgvY0BXrOIGcZsvvci1rPCss5yK6p3CJ2 oXaLijnckT8h3w1EH9dEAIeNLw+uxNycBYseFMIgNMWLNP0sLrefZl7W2UKAYlCD/4Ames iAhp6ok+iISUwnNd6IPoCYBOI0tYhqJpOTeNPWF3wlf1cTaHkrA6REyiGK55dDF/+yWXaf 2GF4u/Le9ILDrH3OtkAkXrBggYoT+ESAdJhDENCRA9LFBKM671f5ujs28e2hPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687809152; a=rsa-sha256; cv=none; b=gHMXN9nHQ81K1bC3kEERxThIJTGiwZwkYp5vAQDFFrwxxoab3p9wVFTFh5soTMMFdn3xIX bY2l+dlU0ybCbb9fRGUnO9xPoqc1Fs1NKHbyXBHg3UO5cYbD7V2QIPrT7QMABzMKDIzfmn AvmSzin7mWaLxeabvbUawWXPaCEBWODSKD+d609q0YvojzFbhIHUik8A8CZ/o1jELDySfI abNPjVYZMBAuERbadJkOiUSfgxPn/ob7MyEanmEUcwC8QXEo24Qy7Ltt6T3mh8vqJDYcT8 G0bgY2VmSMVxl6oc3CUK+mHQGTYgR+R6irB7xOAPvUVnE0AhczEEOAmunCvliQ== 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 4QqdmJ0T2SzN3T; Mon, 26 Jun 2023 19:52: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 35QJqVKb063688; Mon, 26 Jun 2023 19:52:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QJqVCu063687; Mon, 26 Jun 2023 19:52:31 GMT (envelope-from git) Date: Mon, 26 Jun 2023 19:52:31 GMT Message-Id: <202306261952.35QJqVCu063687@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: b44b64eeff1d - stable/13 - hwpstate_amd: calculate power if P-state info comes from MSR List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: b44b64eeff1dac47fe0c0922a471b9785c27d266 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b44b64eeff1dac47fe0c0922a471b9785c27d266 commit b44b64eeff1dac47fe0c0922a471b9785c27d266 Author: Johannes Totz AuthorDate: 2023-06-12 16:00:15 +0000 Commit: Mark Johnston CommitDate: 2023-06-26 19:52:08 +0000 hwpstate_amd: calculate power if P-state info comes from MSR Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D40140 (cherry picked from commit e74dd9577fb00518834a1bf07fad8c1d4c978d7a) --- sys/x86/cpufreq/hwpstate_amd.c | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/sys/x86/cpufreq/hwpstate_amd.c b/sys/x86/cpufreq/hwpstate_amd.c index 3193cbd908cc..3760b40ad397 100644 --- a/sys/x86/cpufreq/hwpstate_amd.c +++ b/sys/x86/cpufreq/hwpstate_amd.c @@ -85,6 +85,8 @@ __FBSDID("$FreeBSD$"); #define AMD_10H_11H_CUR_DID(msr) (((msr) >> 6) & 0x07) #define AMD_10H_11H_CUR_FID(msr) ((msr) & 0x3F) +#define AMD_17H_CUR_IDIV(msr) (((msr) >> 30) & 0x03) +#define AMD_17H_CUR_IDD(msr) (((msr) >> 22) & 0xFF) #define AMD_17H_CUR_VID(msr) (((msr) >> 14) & 0xFF) #define AMD_17H_CUR_DID(msr) (((msr) >> 8) & 0x3F) #define AMD_17H_CUR_FID(msr) ((msr) & 0xFF) @@ -447,6 +449,9 @@ hwpstate_get_info_from_msr(device_t dev) did = AMD_10H_11H_CUR_DID(msr); fid = AMD_10H_11H_CUR_FID(msr); + hwpstate_set[i].volts = CPUFREQ_VAL_UNKNOWN; + hwpstate_set[i].power = CPUFREQ_VAL_UNKNOWN; + hwpstate_set[i].lat = CPUFREQ_VAL_UNKNOWN; /* Convert fid/did to frequency. */ switch (family) { case 0x11: @@ -467,6 +472,29 @@ hwpstate_get_info_from_msr(device_t dev) } fid = AMD_17H_CUR_FID(msr); hwpstate_set[i].freq = (200 * fid) / did; + /* Vid step is 6.25mV, so scale by 100. */ + hwpstate_set[i].volts = + (155000 - (625 * AMD_17H_CUR_VID(msr))) / 100; + /* + * Calculate current first. + * This equation is mentioned in + * "BKDG for AMD Family 15h Models 70h-7fh Processors", + * section 2.5.2.1.6. + */ + hwpstate_set[i].power = AMD_17H_CUR_IDD(msr) * 1000; + switch (AMD_17H_CUR_IDIV(msr)) { + case 3: /* divide by 1000 */ + hwpstate_set[i].power /= 10; + case 2: /* divide by 100 */ + hwpstate_set[i].power /= 10; + case 1: /* divide by 10 */ + hwpstate_set[i].power /= 10; + case 0: /* divide by 1 */ + ; + } + hwpstate_set[i].power *= hwpstate_set[i].volts; + /* Milli amps * milli volts to milli watts. */ + hwpstate_set[i].power /= 1000; break; default: HWPSTATE_DEBUG(dev, "get_info_from_msr: %s family" @@ -476,10 +504,6 @@ hwpstate_get_info_from_msr(device_t dev) return (ENXIO); } hwpstate_set[i].pstate_id = i; - /* There was volts calculation, but deleted it. */ - hwpstate_set[i].volts = CPUFREQ_VAL_UNKNOWN; - hwpstate_set[i].power = CPUFREQ_VAL_UNKNOWN; - hwpstate_set[i].lat = CPUFREQ_VAL_UNKNOWN; } return (0); } From nobody Mon Jun 26 19:52:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QqdmK2gNPz4gWdx; Mon, 26 Jun 2023 19:52:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QqdmK29jvz3hDJ; Mon, 26 Jun 2023 19:52:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809153; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xddWsu/rcXy5XBOLChNIFb6oYxMNK/jTwpmgv+NDAik=; b=NAY8Bd5YEL92D57JQccvO9bZd4BS8rIwCOh4buYZUfZP3rRcvar+1YHKzXF9zd3WwNAGG+ KEMo9Bl1v0VrXPKAME3WgoxWH5iMnWqHx1gp1ldrZTWLxJ8Pz0Z994YJTS7iOcanx7MUOF 4/p4HGG3gv73E8GzS9yO11dh9/0yGTl6Wxy+OH9TpuT5X8pEXUA9t/mT2Iv8thZLlIA1Il 8Lv86YeYTDD/4pcFfmzX+5IW8Jyl8w2PEoojh4VXf4HRUWreToKNDwvhOJy/Z0awIHsOJE JYCA/L4wZrodFF6vlIWfM+PLL+xriaL9U8RnO239qpeExhUJEK5gUdn1yCnj+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687809153; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xddWsu/rcXy5XBOLChNIFb6oYxMNK/jTwpmgv+NDAik=; b=ldxOr7ndpqarr1GCTI/JVdJ1+hABnfVy33Y46/yfbVOmHyZTfx70orscbnmscK+enHiyqI 5eHJ9AfJVjnJjboVqAk9kvspfF6RWDg+/Q8qk3f8HvI3lWAayYJhiKeGiQXdgrB5BT3jS7 JZpqpJJTYRducmKjDH4VUe846Qk/zcCoktd9/aAWyPunPkWFmIZt9YZxbJvXQyEIAuyEqE kwyZqo4+5CWy4PH2h0YLZ/hWGqs3RK51S2qqkkZq0QN9TYv4VE7gnX0fbCOCsOyC7/PqdV TBn7kNaHi1iyl/TAM2M3Cm8PXiIx7X5/mc5JmKTZYAFrq850N1h8a0NtrEEr+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687809153; a=rsa-sha256; cv=none; b=vK3+qN4TVz4dpU7lsmgpuuFOosbW3ZOajuGBEBqVXzh73kM0z5dTn+RbghxJrHWSLHZW8E ulqj1V1mzX8JzMxM7ov4APbbB6ME+boXjGXYQGexWUni8lYwHX7cKTjlyV+xNSlbZf5TT8 Ljwi+pOxhKycQyTiPg6AUYVieovu45QGbC6gtpW3mjn3bOsyZNYGd0lfxMhsvAFeM13TK0 vyTKRkOd8tIVt93omJ0/XION2dkyKXno+/E+rXrormkBIxl5rnqjhmn2e87evhZ8cZjwcF QCOfUOy0shKNrYSl9y6PjAHjFy6Himq3Jso4kItgOrk/XmGfInHRQ85VyqeXNw== 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 4QqdmK17kPzNXl; Mon, 26 Jun 2023 19:52: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 35QJqXqO063709; Mon, 26 Jun 2023 19:52:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35QJqXdC063708; Mon, 26 Jun 2023 19:52:33 GMT (envelope-from git) Date: Mon, 26 Jun 2023 19:52:33 GMT Message-Id: <202306261952.35QJqXdC063708@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 861fae6089cd - stable/13 - bhyve: Include vmm.h via the usual path List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 861fae6089cd75641ebb2ca629d30da95d158473 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=861fae6089cd75641ebb2ca629d30da95d158473 commit 861fae6089cd75641ebb2ca629d30da95d158473 Author: Mark Johnston AuthorDate: 2023-06-08 21:25:25 +0000 Commit: Mark Johnston CommitDate: 2023-06-26 19:52:08 +0000 bhyve: Include vmm.h via the usual path No functional change intended. MFC after: 1 week Sponsored by: Innovate UK (cherry picked from commit 1da1a2643649ef83a5ddb2df16010dd2a48c1347) --- usr.sbin/bhyve/kernemu_dev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/bhyve/kernemu_dev.c b/usr.sbin/bhyve/kernemu_dev.c index 2fa0c3dc1f35..503c40462715 100644 --- a/usr.sbin/bhyve/kernemu_dev.c +++ b/usr.sbin/bhyve/kernemu_dev.c @@ -31,7 +31,7 @@ __FBSDID("$FreeBSD$"); #include #include -#include +#include #include struct vm; struct vm_hpet_cap; From nobody Tue Jun 27 15:30:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qr7vw3bxRz4kYCW; Tue, 27 Jun 2023 15:30: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 4Qr7vw332dz3rDk; Tue, 27 Jun 2023 15:30:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687879852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QNEF0/a3y/XJI+Bm/JF0yQtBK+PfmIebYjS8e+j2kzE=; b=DHM/eNtEDwz56g6ov7Zukovh3vwrfEJXdkA+ae6Op7j4LbRZND/NW7B6LbNodmljtcJtMF 961lRtEnOVRHRKew+v16dFac0YGQt2n3eup7DMLuLnRTO2lJPdTnLaoKmyexu+JK+UqoPd PzzEIj6HzloqlpGBLsfTQDa+gHDWHq8bmkqpwpf6eKy/njz0EjaEuen9K9VwGKON6ZsfeV QCukUQrcR9qqJHlSv6Pzyq5WrG57PrC7u5PDn/Pmte2CEYpTqw/Ttu1NdqYUk56oHeIVAz kceR6+Vq0nqoz31JvvyOcYj9jr2DQO5l2KF6IengdatV9t5+AhvJfNbYGfaPPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687879852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QNEF0/a3y/XJI+Bm/JF0yQtBK+PfmIebYjS8e+j2kzE=; b=DNhb7STfAwJKHx4ZxXDXv99G76XAd68idLFVl3/gWG1xaXZtKadJDeYrwTqjipTZVqvzp2 oktwilYoJN3i77ZO0v9wn02g5YMMIOxSQMXELv3SqDP/Agp48C73/ks3V0uXTwSdLTX9kf F2K+onfzQPbzRHlIQDrd0+4+YJ6W8knNwDlzos8o0UHj/XBzVJyApzEHddFeb3MUpaV9N+ KPK12xGcGn8xtHFAZEhM6lGsP1RXhGO7d/8Z3sjb5xEE2HTXItj16Ong20+zok0Pacm3Hs YeLPbTYZZexJPnEo/E3WNPYuBAH1WUJLSzBc/cER2/bFXfCu0sgFBJKko5qlaw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687879852; a=rsa-sha256; cv=none; b=lUEc9BJyM0d11OPCau1KnKdglJPe2xPK8d6efXCFOHQamdp81HgzTq9E9JPEC5mSPFEDtM GDMunk8Uo1UpP8P5aSp9iPPtTPLecHit6+906elP3J5ghWpEmH5NxOEB1CxHCQFGT+SE+o jbTDklQQuvB5AwRdvii8Mi5+DdGkP8C3JzLq2iJz7EGoLYkCvI+hOLJtlS6GqOzGR8ASLM 46jJBUiDvwgPPAoaIpo7A4hCaheAFzyTGkP9jm3CZwky7P581wanRpDBIHIwzCe41Jyowy nNWJ3Y7dQcJpB5RpQ7Ecma+yrMGVt4vCc7VE0/dpWUNwfkrwJI6IyLzEkDl0Pw== 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 4Qr7vw1Tb8zxhD; Tue, 27 Jun 2023 15:30: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 35RFUqdm033472; Tue, 27 Jun 2023 15:30:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35RFUqiB033471; Tue, 27 Jun 2023 15:30:52 GMT (envelope-from git) Date: Tue, 27 Jun 2023 15:30:52 GMT Message-Id: <202306271530.35RFUqiB033471@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: cea84a423599 - stable/13 - cap_net.3: fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: cea84a42359937cc4abd1f07bc25a4d97496d34c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=cea84a42359937cc4abd1f07bc25a4d97496d34c commit cea84a42359937cc4abd1f07bc25a4d97496d34c Author: Shawn Webb AuthorDate: 2023-06-21 00:47:19 +0000 Commit: Ed Maste CommitDate: 2023-06-27 14:00:27 +0000 cap_net.3: fix typo Signed-off-by: Shawn Webb --- lib/libcasper/services/cap_net/cap_net.3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libcasper/services/cap_net/cap_net.3 b/lib/libcasper/services/cap_net/cap_net.3 index e74f7dd70d67..532da5e6ad59 100644 --- a/lib/libcasper/services/cap_net/cap_net.3 +++ b/lib/libcasper/services/cap_net/cap_net.3 @@ -128,7 +128,7 @@ CAPNET_DEPRECATED_NAME2ADDR name resolution is allowed with CAPNET_BIND bind syscall is allowed CAPNET_CONNECT connect syscall is allowed CAPNET_CONNECTDNS connect syscall is allowed to the values - returned from privies call to + returned from previous call to the cap_getaddrinfo or cap_gethostbyname .Ed .Pp From nobody Tue Jun 27 17:22:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrBNB5kYLz4f69V; Tue, 27 Jun 2023 17:22:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QrBNB5GNVz3jDf; Tue, 27 Jun 2023 17:22:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687886522; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wCWZUZojmppVkA+ig4+9/BTwMrWNA3ie//Me12AXY5U=; b=RFU9b7vfFpd4jzRGUBYMUgWVsBUSzYFy9wqGnln05rL3/BGONoLICtRSzaWaCfFiHUJfNU A0wZNs/A8CBsH1Sy0W848Aw6Ygme1C12ZLzHvWmL3gFY8W0ZaSJUXJpcLWoOhvfHsJLyXo oeAs/4dsuaZu+NBvEEFNxJlgN4psxzLJU8zPfSv8XAVCBni41p6Visq1Wpw05x7EloJxfE Bsfq9xa3YP04NkRior9yc93iNUPJvdLFC2gdWNyXBndkQIY84MXbynLwiPxwma8hYf8MED BUhutjbHIJYxLBcrQLsvRZXhPqP2axj/hxN9piWIIcsyUCp3QWHCMFWN5/6B9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687886522; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wCWZUZojmppVkA+ig4+9/BTwMrWNA3ie//Me12AXY5U=; b=eKKsDQWI9G+70/71AkktprhISz0gDsDtKUgB78q/JEt5jd+YsWqIgi8qA8b0YeofQns+bC WPkLIsYKHhvui8kRxAgOUXf88mjGmQvMYB6sGsXgG2yb1utWOkctfxxN2QKQ+oRl+OFRb6 AnwHaksczCUdNeTEgazs3z36sKvGayE6rkElZxneX1Fn+UUOGRq8jshHhC0FdEqrmOnmUI rSkohP8KLXSTMMx2exjWsqUVjPla/R7G+Hq0MlfSAsYEHJArVlYE7YxIbijLhiriFt8xIC D7YvuqaKoSZHg6aBC8jQBgZiawaydXnkugZBH8T1/+Lkr9KIojOI0phg4JKPUA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687886522; a=rsa-sha256; cv=none; b=C8wQg/SzgUZAwXdf9RLEO/d2t+GlQuKbWwkA7nB/H4RRrqZxRF0A1nCBdBhWz3DX6X7Cya nCcPy5cy74qm5/qxg7cf1xv9ZtMW6gEFGhDo6N3Mhr45KFc4xJjWQ1cmR251H5SMByFnf0 dIzsLz73dpHK7neqFGBBWclB3QV+CIFuO6cNEWKyodx8EVocRvtCiG+K9spMUKdHDIvagG qU7/aU7xKEeZW0n+xThql98+zpoVoMP2d/rws9WQFUKxVktMm/w3tm/vu8lwKPfJp8Q6K7 +RYnkIkA0r8UlFpJbtUMBt0Ong+UDePKW8nj1TMKrrHNEYUoG/Xlb3Zg+JWe1g== 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 4QrBNB4LvMz10nH; Tue, 27 Jun 2023 17:22: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 35RHM26l021153; Tue, 27 Jun 2023 17:22:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35RHM2bv021152; Tue, 27 Jun 2023 17:22:02 GMT (envelope-from git) Date: Tue, 27 Jun 2023 17:22:02 GMT Message-Id: <202306271722.35RHM2bv021152@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: =?utf-8?Q?Dag-Erling=20Sm=C3=B8rgrav?= Subject: git: 372f51eaf363 - stable/12 - Merge upstream r948: fix race condition in openpam_ttyconv(3). List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/12 X-Git-Reftype: branch X-Git-Commit: 372f51eaf3638036eddeac6710afa00d6582bea4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=372f51eaf3638036eddeac6710afa00d6582bea4 commit 372f51eaf3638036eddeac6710afa00d6582bea4 Author: Dag-Erling Smørgrav AuthorDate: 2020-11-19 05:46:59 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2023-06-27 17:21:25 +0000 Merge upstream r948: fix race condition in openpam_ttyconv(3). (cherry picked from commit a90c7d9aa82430454b3194d6750e0c0c748ac6dc) --- contrib/openpam/CREDITS | 1 + contrib/openpam/lib/libpam/openpam_ttyconv.c | 12 ++++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/contrib/openpam/CREDITS b/contrib/openpam/CREDITS index b40c9d3b4826..a560f9e12c1f 100644 --- a/contrib/openpam/CREDITS +++ b/contrib/openpam/CREDITS @@ -18,6 +18,7 @@ ideas: Ankita Pal Baptiste Daroussin Brian Fundakowski Feldman + Brooks Davis Christos Zoulas Daniel Richard G. Darren J. Moffat diff --git a/contrib/openpam/lib/libpam/openpam_ttyconv.c b/contrib/openpam/lib/libpam/openpam_ttyconv.c index 8066b3b67298..1a50f1c99639 100644 --- a/contrib/openpam/lib/libpam/openpam_ttyconv.c +++ b/contrib/openpam/lib/libpam/openpam_ttyconv.c @@ -94,12 +94,6 @@ prompt_tty(int ifd, int ofd, const char *message, char *response, int echo) int pos, ret; char ch; - /* write prompt */ - if (write(ofd, message, strlen(message)) < 0) { - openpam_log(PAM_LOG_ERROR, "write(): %m"); - return (-1); - } - /* turn echo off if requested */ slflag = 0; /* prevent bogus uninitialized variable warning */ if (!echo) { @@ -115,6 +109,12 @@ prompt_tty(int ifd, int ofd, const char *message, char *response, int echo) } } + /* write prompt */ + if (write(ofd, message, strlen(message)) < 0) { + openpam_log(PAM_LOG_ERROR, "write(): %m"); + return (-1); + } + /* install signal handlers */ caught_signal = 0; action.sa_handler = &catch_signal; From nobody Tue Jun 27 21:02:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrHH103y4z4kcXs; Tue, 27 Jun 2023 21:02: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 4QrHH06V56z4Xmx; Tue, 27 Jun 2023 21:02:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899772; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PPIKmr1Q1p8SAjYVppQur7skshe1VBQrr0P3nKWFeB4=; b=ExLPVHoCTxMTj/K39tYECxeKfNRjUJBqcI2tyuY7jixiRZqzZwwr5DQhQSm3yUdnWiWS5V XGy2F9ffXkSSqw72AtP91GB7sw8TsJRAQoiveFzj8orAZwVIKo6KyzIdHKDK8MC9oT+DxL zls0E1Cmfqj/O4WrH854NxoXLMQv1mH7Z3spt5O+6aMQoUXf7TWyJA8Ln6wym3SRAJi22C e8a/7ABf9K0UXoVUDdufb2jlzzPi1NuvxTldLzUu91jP9X9Ura5Of1PIt2bnIE3jHZvPFE erQr3r5fUW10ckNsDOqsUILF1xfG3Way0yLqEcHohdy06bHcYXiVryK1yk56RQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899772; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PPIKmr1Q1p8SAjYVppQur7skshe1VBQrr0P3nKWFeB4=; b=jPbRs7Tcyime7GqnavzyKwilfSRMdO7dABWIkfoZlwlJIdn4ehkfgISL81YKAJ3Kpf5qTa NXAnb7hBP1wJy7MO/jREcLPq/GQ/kahtPNyU8GVzSRGM/LXLvtptdRZwt1VkH+mn2MIDx2 yoV/PzJVNKZ8adsNhkFFo23tF2/vkl+sW8ZtsMnqI34ISRenEtqJyvgjSSQ0yvbhCE6rGX 5ZAylmtGjHm9nvYm7SAyC+nwtBS8l/NXaV0N5SwwhlR4VAJON0jfA9RVLisG+hHIMOuJEm +Z3ydh95hiEn7Ji75fxm9u3YYKHSW5N8rfUVRb4XBW2i+LGk/n3ik3lUiQShfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687899772; a=rsa-sha256; cv=none; b=EHjA0a60JsVBmaILBitTnSaUzatbNI1lcbj8bEVtU7I4YkdymHjkOJARuQz5zEFrEY6Goh LGVcVHwBt6G4vliu2iEQxEn3fj+zTPvpC8mh1D59UJBSXH0EZQEyYzgpFpUM6wmxbBYagr y2D8vztjELTMymzCyfVIRv/rjaNEPibbU7bneUYWTQNTMTov1kTDX00d16R11BcPveHxsf PHrWQ9O1lF6b4NXSeVrC7ZmqOyu7gRLdKIa3MuXaJKJLWsoC2TrRM/g+NjUXNBYfgoz791 mX+7ueGld6JgVxTYW89EkLS0YHKCv8ba2oD2WLatTWhaxbN7vbuLdu7azfFvxQ== 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 4QrHH05Z5Zz176B; Tue, 27 Jun 2023 21:02: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 35RL2qFf097249; Tue, 27 Jun 2023 21:02:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35RL2qDn097248; Tue, 27 Jun 2023 21:02:52 GMT (envelope-from git) Date: Tue, 27 Jun 2023 21:02:52 GMT Message-Id: <202306272102.35RL2qDn097248@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 7d387749dcdd - stable/13 - e1000: Format em_txrx List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7d387749dcdd61b8f423a3f39da79da18e08c00b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=7d387749dcdd61b8f423a3f39da79da18e08c00b commit 7d387749dcdd61b8f423a3f39da79da18e08c00b Author: Kevin Bowling AuthorDate: 2023-06-09 02:06:04 +0000 Commit: Kevin Bowling CommitDate: 2023-06-27 21:02:42 +0000 e1000: Format em_txrx No functional changes intended. Reviewed by: markj (prior version) Differential Revision: https://reviews.freebsd.org/D30072 (cherry picked from commit 5253d74e4650300815af351cc510a1c392a16584) --- sys/dev/e1000/em_txrx.c | 77 +++++++++++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 31 deletions(-) diff --git a/sys/dev/e1000/em_txrx.c b/sys/dev/e1000/em_txrx.c index aebafca73cca..6bff741ba665 100644 --- a/sys/dev/e1000/em_txrx.c +++ b/sys/dev/e1000/em_txrx.c @@ -42,10 +42,10 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, - u32 *txd_lower); -static int em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, - u32 *txd_upper, u32 *txd_lower); +static int em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, + uint32_t *txd_upper, uint32_t *txd_lower); +static int em_transmit_checksum_setup(struct e1000_softc *sc, + if_pkt_info_t pi, uint32_t *txd_upper, uint32_t *txd_lower); static int em_isc_txd_encap(void *arg, if_pkt_info_t pi); static void em_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); static int em_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); @@ -63,7 +63,7 @@ static int lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, static int lem_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); static void em_receive_checksum(uint16_t, uint8_t, if_rxd_info_t); -static int em_determine_rsstype(u32 pkt_info); +static int em_determine_rsstype(uint32_t pkt_info); extern int em_intr(void *arg); struct if_txrx em_txrx = { @@ -116,7 +116,8 @@ em_dump_rs(struct e1000_softc *sc) cur = txr->tx_rsq[rs_cidx]; printf("qid[%d]->tx_rsq[rs_cidx-1=%d]: %d ", qid, rs_cidx, cur); } - printf("cidx_prev=%d rs_pidx=%d ",txr->tx_cidx_processed, txr->tx_rs_pidx); + printf("cidx_prev=%d rs_pidx=%d ",txr->tx_cidx_processed, + txr->tx_rs_pidx); for (i = 0; i < ntxd; i++) { if (txr->tx_base[i].upper.fields.status & E1000_TXD_STAT_DD) printf("%d set ", i); @@ -132,7 +133,8 @@ em_dump_rs(struct e1000_softc *sc) * **********************************************************************/ static int -em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_lower) +em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, uint32_t *txd_upper, + uint32_t *txd_lower) { if_softc_ctx_t scctx = sc->shared; struct em_tx_queue *que = &sc->tx_queues[pi->ipi_qsidx]; @@ -159,7 +161,8 @@ em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_ TXD->lower_setup.ip_fields.ipcss = pi->ipi_ehdrlen; TXD->lower_setup.ip_fields.ipcse = htole16(pi->ipi_ehdrlen + pi->ipi_ip_hlen - 1); - TXD->lower_setup.ip_fields.ipcso = pi->ipi_ehdrlen + offsetof(struct ip, ip_sum); + TXD->lower_setup.ip_fields.ipcso = + pi->ipi_ehdrlen + offsetof(struct ip, ip_sum); /* * Start offset for payload checksum calculation. @@ -189,7 +192,8 @@ em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_ if (++cur == scctx->isc_ntxd[0]) { cur = 0; } - DPRINTF(iflib_get_dev(sc->ctx), "%s: pidx: %d cur: %d\n", __FUNCTION__, pi->ipi_pidx, cur); + DPRINTF(iflib_get_dev(sc->ctx), "%s: pidx: %d cur: %d\n", __FUNCTION__, + pi->ipi_pidx, cur); return (cur); } @@ -215,15 +219,16 @@ em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_ **********************************************************************/ static int -em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_lower) +em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, + uint32_t *txd_upper, uint32_t *txd_lower) { - struct e1000_context_desc *TXD = NULL; + struct e1000_context_desc *TXD = NULL; if_softc_ctx_t scctx = sc->shared; struct em_tx_queue *que = &sc->tx_queues[pi->ipi_qsidx]; struct tx_ring *txr = &que->txr; int csum_flags = pi->ipi_csum_flags; int cur, hdr_len; - u32 cmd; + uint32_t cmd; cur = pi->ipi_pidx; hdr_len = pi->ipi_ehdrlen + pi->ipi_ip_hlen; @@ -260,7 +265,8 @@ em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_up */ TXD->lower_setup.ip_fields.ipcss = pi->ipi_ehdrlen; TXD->lower_setup.ip_fields.ipcse = htole16(hdr_len); - TXD->lower_setup.ip_fields.ipcso = pi->ipi_ehdrlen + offsetof(struct ip, ip_sum); + TXD->lower_setup.ip_fields.ipcso = pi->ipi_ehdrlen + + offsetof(struct ip, ip_sum); cmd |= E1000_TXD_CMD_IP; } @@ -293,8 +299,9 @@ em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_up if (++cur == scctx->isc_ntxd[0]) { cur = 0; } - DPRINTF(iflib_get_dev(sc->ctx), "checksum_setup csum_flags=%x txd_upper=%x txd_lower=%x hdr_len=%d cmd=%x\n", - csum_flags, *txd_upper, *txd_lower, hdr_len, cmd); + DPRINTF(iflib_get_dev(sc->ctx), + "checksum_setup csum_flags=%x txd_upper=%x txd_lower=%x hdr_len=%d cmd=%x\n", + csum_flags, *txd_upper, *txd_lower, hdr_len, cmd); return (cur); } @@ -309,7 +316,7 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) int nsegs = pi->ipi_nsegs; int csum_flags = pi->ipi_csum_flags; int i, j, first, pidx_last; - u32 txd_flags, txd_upper = 0, txd_lower = 0; + uint32_t txd_flags, txd_upper = 0, txd_lower = 0; struct e1000_tx_desc *ctxd = NULL; bool do_tso, tso_desc; @@ -347,7 +354,8 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) txd_lower |= htole32(E1000_TXD_CMD_VLE); } - DPRINTF(iflib_get_dev(sc->ctx), "encap: set up tx: nsegs=%d first=%d i=%d\n", nsegs, first, i); + DPRINTF(iflib_get_dev(sc->ctx), + "encap: set up tx: nsegs=%d first=%d i=%d\n", nsegs, first, i); /* XXX sc->pcix_82544 -- lem_fill_descriptors */ /* Set up our transmit descriptors */ @@ -383,7 +391,9 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) pidx_last = i; if (++i == scctx->isc_ntxd[0]) i = 0; - DPRINTF(iflib_get_dev(sc->ctx), "TSO path pidx_last=%d i=%d ntxd[0]=%d\n", pidx_last, i, scctx->isc_ntxd[0]); + DPRINTF(iflib_get_dev(sc->ctx), + "TSO path pidx_last=%d i=%d ntxd[0]=%d\n", + pidx_last, i, scctx->isc_ntxd[0]); } else { ctxd->buffer_addr = htole64(seg_addr); ctxd->lower.data = htole32(cmd | txd_lower | seg_len); @@ -391,7 +401,8 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) pidx_last = i; if (++i == scctx->isc_ntxd[0]) i = 0; - DPRINTF(iflib_get_dev(sc->ctx), "pidx_last=%d i=%d ntxd[0]=%d\n", pidx_last, i, scctx->isc_ntxd[0]); + DPRINTF(iflib_get_dev(sc->ctx), "pidx_last=%d i=%d ntxd[0]=%d\n", + pidx_last, i, scctx->isc_ntxd[0]); } } @@ -402,12 +413,15 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) */ if (txd_flags && nsegs) { txr->tx_rsq[txr->tx_rs_pidx] = pidx_last; - DPRINTF(iflib_get_dev(sc->ctx), "setting to RS on %d rs_pidx %d first: %d\n", pidx_last, txr->tx_rs_pidx, first); + DPRINTF(iflib_get_dev(sc->ctx), + "setting to RS on %d rs_pidx %d first: %d\n", + pidx_last, txr->tx_rs_pidx, first); txr->tx_rs_pidx = (txr->tx_rs_pidx+1) & (ntxd-1); MPASS(txr->tx_rs_pidx != txr->tx_rs_cidx); } ctxd->lower.data |= htole32(E1000_TXD_CMD_EOP | txd_flags); - DPRINTF(iflib_get_dev(sc->ctx), "tx_buffers[%d]->eop = %d ipi_new_pidx=%d\n", first, pidx_last, i); + DPRINTF(iflib_get_dev(sc->ctx), + "tx_buffers[%d]->eop = %d ipi_new_pidx=%d\n", first, pidx_last, i); pi->ipi_new_pidx = i; return (0); @@ -538,7 +552,8 @@ em_isc_rxd_refill(void *arg, if_rxd_update_t iru) } static void -em_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, qidx_t pidx) +em_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, + qidx_t pidx) { struct e1000_softc *sc = arg; struct em_rx_queue *que = &sc->rx_queues[rxqid]; @@ -555,7 +570,7 @@ lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget) struct em_rx_queue *que = &sc->rx_queues[rxqid]; struct rx_ring *rxr = &que->rxr; struct e1000_rx_desc *rxd; - u32 staterr = 0; + uint32_t staterr = 0; int cnt, i; for (cnt = 0, i = idx; cnt < scctx->isc_nrxd[0] && cnt <= budget;) { @@ -580,7 +595,7 @@ em_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget) struct em_rx_queue *que = &sc->rx_queues[rxqid]; struct rx_ring *rxr = &que->rxr; union e1000_rx_desc_extended *rxd; - u32 staterr = 0; + uint32_t staterr = 0; int cnt, i; for (cnt = 0, i = idx; cnt < scctx->isc_nrxd[0] && cnt <= budget;) { @@ -605,8 +620,8 @@ lem_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri) struct em_rx_queue *que = &sc->rx_queues[ri->iri_qsidx]; struct rx_ring *rxr = &que->rxr; struct e1000_rx_desc *rxd; - u16 len; - u32 status, errors; + uint16_t len; + uint32_t status, errors; bool eop; int i, cidx; @@ -667,9 +682,9 @@ em_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri) struct rx_ring *rxr = &que->rxr; union e1000_rx_desc_extended *rxd; - u16 len; - u32 pkt_info; - u32 staterr = 0; + uint16_t len; + uint32_t pkt_info; + uint32_t staterr = 0; bool eop; int i, cidx; @@ -756,7 +771,7 @@ em_receive_checksum(uint16_t status, uint8_t errors, if_rxd_info_t ri) * ******************************************************************/ static int -em_determine_rsstype(u32 pkt_info) +em_determine_rsstype(uint32_t pkt_info) { switch (pkt_info & E1000_RXDADV_RSSTYPE_MASK) { case E1000_RXDADV_RSSTYPE_IPV4_TCP: @@ -765,7 +780,7 @@ em_determine_rsstype(u32 pkt_info) return M_HASHTYPE_RSS_IPV4; case E1000_RXDADV_RSSTYPE_IPV6_TCP: return M_HASHTYPE_RSS_TCP_IPV6; - case E1000_RXDADV_RSSTYPE_IPV6_EX: + case E1000_RXDADV_RSSTYPE_IPV6_EX: return M_HASHTYPE_RSS_IPV6_EX; case E1000_RXDADV_RSSTYPE_IPV6: return M_HASHTYPE_RSS_IPV6; From nobody Tue Jun 27 21:02:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrHH22kC0z4kcQH; Tue, 27 Jun 2023 21:02: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 4QrHH20xJZz4Xf1; Tue, 27 Jun 2023 21:02:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899774; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KoT626S7U2Wj7LoS2oTSTQmLn14ApHfCZt/uHd+MVZg=; b=A1EHmYMUeHzHSnSoi4U8tIlNFJE02uqpKYc9HdUoRRXN16U+u+l1SZ1ZcJRE+Q8AXw/tZW wbNSbwBprseTr/JrAXHVlDvGw4ddlELZTwBhFtIKZfkwTqSR6z92tnJHdhprSK7lA+HcmP CTpqa66uCFiwXMsEJAgFlNn3/hBATSUC3+3sFssbNuS6/LJow7eDAYM2C5K9+qrX+1VgYp 8jnZKpdALHhh45b3oLfEGwpV6jZ55Dp3JXq5f1c6yu2zgWQjQOieX8S3C9LeSP9EnpGwg1 U5JyPunmLQjOuhyFx73PiQGLYW6TlRZ9Szs4nvJqy6FsfCG76ztfYmBGMU88rQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899774; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KoT626S7U2Wj7LoS2oTSTQmLn14ApHfCZt/uHd+MVZg=; b=OTRnejS7fZ1EavZs5DRfvP9mB2Ag7Nb/kGttk+fy0u/je/10axqU6UhSbq/jtcy7ZxeCVt g0Ex4h8htRBay9Mb/V9+Lmtbs9dGCzwuVy74qAlh8TN3PpU2hWf7bri3O4Yhnrcb57zEp9 PE9UG0dGTTgylpwz4Px9mVIOfN1rkNdhZifQ+Hd2KWFjzZLIEhlgIksfmFM6lbRubhlZbD BxetuCUqRJ6Z+gBq0PMV6YKr2lEVZf1loDeQmOfszt1llQ7ditDIEvY8qJUpwN/mnSewbi XCb2pTq5BxY65b6sSVrvvVVrnD1657i3mtO5/f2qi74xvXLdE2P/aD7x7Qprkw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687899774; a=rsa-sha256; cv=none; b=WaO4pQ3bDjfWAZvr8Q0uisoWOJUg13UhEu/L9m2n7NPvPq4zhXR9kneqMJNnXrbNNBYQx6 nGnff7OOh1W4NhTXCbmRmOTm5uqKJeewiCpIiGIIEnMsar2nRTGG8aE9QmeCstzBWEUmEJ uW6y3RBSrtOscLoaylosV6LmoaLxvElL4FT0TZpI1sLMhYOmOFAHDgO9RXW10s/g9hmiTz 7LCJLz2ru1OQkvcAd79f43dWJ3FzRDbbOcYL9fiY7PSppT4MnWKp1yz5L7WY+BzClRuQcA 3Enx9PZLzNPZCLbW5AUBzTFLrbqrl+/Q/DvYxz1hQuenCvW0NYMCwHQaoqw7bA== 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 4QrHH16jWGz176C; Tue, 27 Jun 2023 21:02: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 35RL2r2Z097273; Tue, 27 Jun 2023 21:02:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35RL2rWs097272; Tue, 27 Jun 2023 21:02:53 GMT (envelope-from git) Date: Tue, 27 Jun 2023 21:02:53 GMT Message-Id: <202306272102.35RL2rWs097272@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 0b6e5abfb855 - stable/13 - e1000: Add SPDX tag to em_txrx List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 0b6e5abfb855df990c846ef45b90390e561b02e3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=0b6e5abfb855df990c846ef45b90390e561b02e3 commit 0b6e5abfb855df990c846ef45b90390e561b02e3 Author: Kevin Bowling AuthorDate: 2023-06-09 01:42:20 +0000 Commit: Kevin Bowling CommitDate: 2023-06-27 21:02:42 +0000 e1000: Add SPDX tag to em_txrx Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D30072 (cherry picked from commit 034f38cdf864e6794fd63b67bf16c59627576699) --- sys/dev/e1000/em_txrx.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/e1000/em_txrx.c b/sys/dev/e1000/em_txrx.c index 6bff741ba665..255aea6347d2 100644 --- a/sys/dev/e1000/em_txrx.c +++ b/sys/dev/e1000/em_txrx.c @@ -1,4 +1,6 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2016 Nicole Graziano * Copyright (c) 2017 Matthew Macy * All rights reserved. From nobody Tue Jun 27 21:03:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrHJ86b6yz4kdP1; Tue, 27 Jun 2023 21:03: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 4QrHJ85x1Rz4Ygy; Tue, 27 Jun 2023 21:03:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cZjdPG1nML3cojp8TY6IuNWoqe8lWfmSaWgIriLNzTI=; b=o0NDHlrkvsTH+xLyiqyF/2r+GHJnCGbMjGepeL7ix8ymbXEsXVeRydCq4C3xvtMXP7yZke Qp56fgjCrmiK5lyiRbV7zMBrbFVMSUZfzFGDN65/huIbgFHnX73FtMhg9JvHuSsSGDiHwP 4QcdNmYpxuQHZpgHYZBIpaGN5BpkQ05RKewh07P5ABPhBzMxfED5eXoFtkN5jr1Klp8U8P +38wDhYWjKXLqjIv3vMaB47eMJkM7kN5m9z6m4qEu/s4chgQSfflDrpPY6zDKe/fbbIHVo nCH0FCfcbMxsCgO6wlO7R5wQf32ISvVt6l3ThGynODKs5a6hiD+atc4R8/7+ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cZjdPG1nML3cojp8TY6IuNWoqe8lWfmSaWgIriLNzTI=; b=kH1wRMu2Wg9qt1GBkV5UDCLnxM4SyIYjunHvrbj+kp9OE/R0HyD0Xe/pXu1/rqNNL4MWoA 2cvhJm+lJhR2K5qfeeG2XA6Ba6CFvCsZLYruPFSyMxNaYpzFVrlH76X+trjZ1IDK2tVlae y42v+9O5xWLxDV75CM0Eexc9AFqG4g4Y2YRWt8M9YsZ1uNWzd9M14WTfg+XlqwndByGqRw yi1kUr7C7zGmdiRMsOxp01WjGmCh70N1zXEsTewgK2XqybMUjwsCdgr9ZF4YeaSZQs3+Pn fUeKSKZWMCaS9xXqPHhoerU9MrWveTqAtyxO3ZU4ixLDVp2wmdl4ObNeMJLukA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687899832; a=rsa-sha256; cv=none; b=i+fwp9lPb44m9O0/xtNVzeNbvEfWuowqR7G7tLPHcnoPmzd8QUARGGFGS++G1HaiMBE82p UlYb3tWhma9eA2VJxUF4albQxnWkiixVNOJxpC+GY2MM0xH3IXyC2NDd/LJD5HBuQsRpct m/ZQrxPSvqJvdK1FCorW6XpQtOv096myGBXYmRzUVeTMwdwWxb0j9Whf+xz0cf/4poP93W 9xkLnudL0cJJP1DbQe1r/uqu72xA8c8MwiEVUy7MNnBfh64b7n2ddSMLZGJLdb37XnCx7N de1xzg+ksVuJoUkUlSjHLEkzwnmSt6rTnCqqDBpBNOKwKGMNi7bTwcOsDaHjLg== 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 4QrHJ84zGMz16sB; Tue, 27 Jun 2023 21:03: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 35RL3qxB097733; Tue, 27 Jun 2023 21:03:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35RL3qDw097732; Tue, 27 Jun 2023 21:03:52 GMT (envelope-from git) Date: Tue, 27 Jun 2023 21:03:52 GMT Message-Id: <202306272103.35RL3qDw097732@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 670a17e9f978 - stable/12 - e1000: Format em_txrx List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 670a17e9f978a2821960fe3dcd4773469921b14d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=670a17e9f978a2821960fe3dcd4773469921b14d commit 670a17e9f978a2821960fe3dcd4773469921b14d Author: Kevin Bowling AuthorDate: 2023-06-09 02:06:04 +0000 Commit: Kevin Bowling CommitDate: 2023-06-27 21:03:36 +0000 e1000: Format em_txrx No functional changes intended. Reviewed by: markj (prior version) Differential Revision: https://reviews.freebsd.org/D30072 (cherry picked from commit 5253d74e4650300815af351cc510a1c392a16584) --- sys/dev/e1000/em_txrx.c | 77 +++++++++++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 31 deletions(-) diff --git a/sys/dev/e1000/em_txrx.c b/sys/dev/e1000/em_txrx.c index aebafca73cca..6bff741ba665 100644 --- a/sys/dev/e1000/em_txrx.c +++ b/sys/dev/e1000/em_txrx.c @@ -42,10 +42,10 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, - u32 *txd_lower); -static int em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, - u32 *txd_upper, u32 *txd_lower); +static int em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, + uint32_t *txd_upper, uint32_t *txd_lower); +static int em_transmit_checksum_setup(struct e1000_softc *sc, + if_pkt_info_t pi, uint32_t *txd_upper, uint32_t *txd_lower); static int em_isc_txd_encap(void *arg, if_pkt_info_t pi); static void em_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); static int em_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); @@ -63,7 +63,7 @@ static int lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, static int lem_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); static void em_receive_checksum(uint16_t, uint8_t, if_rxd_info_t); -static int em_determine_rsstype(u32 pkt_info); +static int em_determine_rsstype(uint32_t pkt_info); extern int em_intr(void *arg); struct if_txrx em_txrx = { @@ -116,7 +116,8 @@ em_dump_rs(struct e1000_softc *sc) cur = txr->tx_rsq[rs_cidx]; printf("qid[%d]->tx_rsq[rs_cidx-1=%d]: %d ", qid, rs_cidx, cur); } - printf("cidx_prev=%d rs_pidx=%d ",txr->tx_cidx_processed, txr->tx_rs_pidx); + printf("cidx_prev=%d rs_pidx=%d ",txr->tx_cidx_processed, + txr->tx_rs_pidx); for (i = 0; i < ntxd; i++) { if (txr->tx_base[i].upper.fields.status & E1000_TXD_STAT_DD) printf("%d set ", i); @@ -132,7 +133,8 @@ em_dump_rs(struct e1000_softc *sc) * **********************************************************************/ static int -em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_lower) +em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, uint32_t *txd_upper, + uint32_t *txd_lower) { if_softc_ctx_t scctx = sc->shared; struct em_tx_queue *que = &sc->tx_queues[pi->ipi_qsidx]; @@ -159,7 +161,8 @@ em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_ TXD->lower_setup.ip_fields.ipcss = pi->ipi_ehdrlen; TXD->lower_setup.ip_fields.ipcse = htole16(pi->ipi_ehdrlen + pi->ipi_ip_hlen - 1); - TXD->lower_setup.ip_fields.ipcso = pi->ipi_ehdrlen + offsetof(struct ip, ip_sum); + TXD->lower_setup.ip_fields.ipcso = + pi->ipi_ehdrlen + offsetof(struct ip, ip_sum); /* * Start offset for payload checksum calculation. @@ -189,7 +192,8 @@ em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_ if (++cur == scctx->isc_ntxd[0]) { cur = 0; } - DPRINTF(iflib_get_dev(sc->ctx), "%s: pidx: %d cur: %d\n", __FUNCTION__, pi->ipi_pidx, cur); + DPRINTF(iflib_get_dev(sc->ctx), "%s: pidx: %d cur: %d\n", __FUNCTION__, + pi->ipi_pidx, cur); return (cur); } @@ -215,15 +219,16 @@ em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_ **********************************************************************/ static int -em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_upper, u32 *txd_lower) +em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, + uint32_t *txd_upper, uint32_t *txd_lower) { - struct e1000_context_desc *TXD = NULL; + struct e1000_context_desc *TXD = NULL; if_softc_ctx_t scctx = sc->shared; struct em_tx_queue *que = &sc->tx_queues[pi->ipi_qsidx]; struct tx_ring *txr = &que->txr; int csum_flags = pi->ipi_csum_flags; int cur, hdr_len; - u32 cmd; + uint32_t cmd; cur = pi->ipi_pidx; hdr_len = pi->ipi_ehdrlen + pi->ipi_ip_hlen; @@ -260,7 +265,8 @@ em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_up */ TXD->lower_setup.ip_fields.ipcss = pi->ipi_ehdrlen; TXD->lower_setup.ip_fields.ipcse = htole16(hdr_len); - TXD->lower_setup.ip_fields.ipcso = pi->ipi_ehdrlen + offsetof(struct ip, ip_sum); + TXD->lower_setup.ip_fields.ipcso = pi->ipi_ehdrlen + + offsetof(struct ip, ip_sum); cmd |= E1000_TXD_CMD_IP; } @@ -293,8 +299,9 @@ em_transmit_checksum_setup(struct e1000_softc *sc, if_pkt_info_t pi, u32 *txd_up if (++cur == scctx->isc_ntxd[0]) { cur = 0; } - DPRINTF(iflib_get_dev(sc->ctx), "checksum_setup csum_flags=%x txd_upper=%x txd_lower=%x hdr_len=%d cmd=%x\n", - csum_flags, *txd_upper, *txd_lower, hdr_len, cmd); + DPRINTF(iflib_get_dev(sc->ctx), + "checksum_setup csum_flags=%x txd_upper=%x txd_lower=%x hdr_len=%d cmd=%x\n", + csum_flags, *txd_upper, *txd_lower, hdr_len, cmd); return (cur); } @@ -309,7 +316,7 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) int nsegs = pi->ipi_nsegs; int csum_flags = pi->ipi_csum_flags; int i, j, first, pidx_last; - u32 txd_flags, txd_upper = 0, txd_lower = 0; + uint32_t txd_flags, txd_upper = 0, txd_lower = 0; struct e1000_tx_desc *ctxd = NULL; bool do_tso, tso_desc; @@ -347,7 +354,8 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) txd_lower |= htole32(E1000_TXD_CMD_VLE); } - DPRINTF(iflib_get_dev(sc->ctx), "encap: set up tx: nsegs=%d first=%d i=%d\n", nsegs, first, i); + DPRINTF(iflib_get_dev(sc->ctx), + "encap: set up tx: nsegs=%d first=%d i=%d\n", nsegs, first, i); /* XXX sc->pcix_82544 -- lem_fill_descriptors */ /* Set up our transmit descriptors */ @@ -383,7 +391,9 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) pidx_last = i; if (++i == scctx->isc_ntxd[0]) i = 0; - DPRINTF(iflib_get_dev(sc->ctx), "TSO path pidx_last=%d i=%d ntxd[0]=%d\n", pidx_last, i, scctx->isc_ntxd[0]); + DPRINTF(iflib_get_dev(sc->ctx), + "TSO path pidx_last=%d i=%d ntxd[0]=%d\n", + pidx_last, i, scctx->isc_ntxd[0]); } else { ctxd->buffer_addr = htole64(seg_addr); ctxd->lower.data = htole32(cmd | txd_lower | seg_len); @@ -391,7 +401,8 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) pidx_last = i; if (++i == scctx->isc_ntxd[0]) i = 0; - DPRINTF(iflib_get_dev(sc->ctx), "pidx_last=%d i=%d ntxd[0]=%d\n", pidx_last, i, scctx->isc_ntxd[0]); + DPRINTF(iflib_get_dev(sc->ctx), "pidx_last=%d i=%d ntxd[0]=%d\n", + pidx_last, i, scctx->isc_ntxd[0]); } } @@ -402,12 +413,15 @@ em_isc_txd_encap(void *arg, if_pkt_info_t pi) */ if (txd_flags && nsegs) { txr->tx_rsq[txr->tx_rs_pidx] = pidx_last; - DPRINTF(iflib_get_dev(sc->ctx), "setting to RS on %d rs_pidx %d first: %d\n", pidx_last, txr->tx_rs_pidx, first); + DPRINTF(iflib_get_dev(sc->ctx), + "setting to RS on %d rs_pidx %d first: %d\n", + pidx_last, txr->tx_rs_pidx, first); txr->tx_rs_pidx = (txr->tx_rs_pidx+1) & (ntxd-1); MPASS(txr->tx_rs_pidx != txr->tx_rs_cidx); } ctxd->lower.data |= htole32(E1000_TXD_CMD_EOP | txd_flags); - DPRINTF(iflib_get_dev(sc->ctx), "tx_buffers[%d]->eop = %d ipi_new_pidx=%d\n", first, pidx_last, i); + DPRINTF(iflib_get_dev(sc->ctx), + "tx_buffers[%d]->eop = %d ipi_new_pidx=%d\n", first, pidx_last, i); pi->ipi_new_pidx = i; return (0); @@ -538,7 +552,8 @@ em_isc_rxd_refill(void *arg, if_rxd_update_t iru) } static void -em_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, qidx_t pidx) +em_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, + qidx_t pidx) { struct e1000_softc *sc = arg; struct em_rx_queue *que = &sc->rx_queues[rxqid]; @@ -555,7 +570,7 @@ lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget) struct em_rx_queue *que = &sc->rx_queues[rxqid]; struct rx_ring *rxr = &que->rxr; struct e1000_rx_desc *rxd; - u32 staterr = 0; + uint32_t staterr = 0; int cnt, i; for (cnt = 0, i = idx; cnt < scctx->isc_nrxd[0] && cnt <= budget;) { @@ -580,7 +595,7 @@ em_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget) struct em_rx_queue *que = &sc->rx_queues[rxqid]; struct rx_ring *rxr = &que->rxr; union e1000_rx_desc_extended *rxd; - u32 staterr = 0; + uint32_t staterr = 0; int cnt, i; for (cnt = 0, i = idx; cnt < scctx->isc_nrxd[0] && cnt <= budget;) { @@ -605,8 +620,8 @@ lem_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri) struct em_rx_queue *que = &sc->rx_queues[ri->iri_qsidx]; struct rx_ring *rxr = &que->rxr; struct e1000_rx_desc *rxd; - u16 len; - u32 status, errors; + uint16_t len; + uint32_t status, errors; bool eop; int i, cidx; @@ -667,9 +682,9 @@ em_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri) struct rx_ring *rxr = &que->rxr; union e1000_rx_desc_extended *rxd; - u16 len; - u32 pkt_info; - u32 staterr = 0; + uint16_t len; + uint32_t pkt_info; + uint32_t staterr = 0; bool eop; int i, cidx; @@ -756,7 +771,7 @@ em_receive_checksum(uint16_t status, uint8_t errors, if_rxd_info_t ri) * ******************************************************************/ static int -em_determine_rsstype(u32 pkt_info) +em_determine_rsstype(uint32_t pkt_info) { switch (pkt_info & E1000_RXDADV_RSSTYPE_MASK) { case E1000_RXDADV_RSSTYPE_IPV4_TCP: @@ -765,7 +780,7 @@ em_determine_rsstype(u32 pkt_info) return M_HASHTYPE_RSS_IPV4; case E1000_RXDADV_RSSTYPE_IPV6_TCP: return M_HASHTYPE_RSS_TCP_IPV6; - case E1000_RXDADV_RSSTYPE_IPV6_EX: + case E1000_RXDADV_RSSTYPE_IPV6_EX: return M_HASHTYPE_RSS_IPV6_EX; case E1000_RXDADV_RSSTYPE_IPV6: return M_HASHTYPE_RSS_IPV6; From nobody Tue Jun 27 21:03:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrHJB19P1z4kdKJ; Tue, 27 Jun 2023 21:03: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 4QrHJ974ldz4YsM; Tue, 27 Jun 2023 21:03:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JLtBXPC9cAGiAGQ1I0g4WNrO5gJ1QoJtetdHYla0NF8=; b=lTisA2xDlrv7NiPNlWEB1UHcP+bOLUUWMERkGq8o2oxq7TrEVbFIaKaHuOfNyI2b5RM989 5sYs+iehdGTjtAv7+undzLIT6LqlGw7XGjEEeFpG8F8QAkiNAyf4JhQ9hrNiKobLgDyV6W +aG9H1UHdz3jg8sEzKZm+0xkhNboZEnIwJeA4BARNTOHMSEUT6QGLGiRIpdgD/3kH5fiBj Vpc1C6APEjkUQBi0FxMkFYNjfwJ41c42y2/Mu4E4YZyvXEyHectnsxNwbK9Y/DJ7Fh/NqU jEybAT+6YZGHv8TC7L1b2QDmlVfupYVZ1f54SqdDU0J6tFWzYy/RmYS0Abgkfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687899834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JLtBXPC9cAGiAGQ1I0g4WNrO5gJ1QoJtetdHYla0NF8=; b=H6vqVveshwNlAnRXMrzMlwFJHM6NTNPrP+DQRE8JTMP68jpE6b7zvZiEljuTO74AvoyWyk 2tqix7/7PFsWMaR74LQ45x2C7b3OSugeLUKoKLx7atS5E2MOXkdU/rOhVL7rsNgbxpIV4Y WHDv6aysIbB4dRpVR+x5Z4G8O1ZOmlGVQuDmtM24rELD73NN5/yIHmMaakhIh23NRzqaio 07jOAuQI7QxlQbqy1U0X1lnfyXfjgyzVQrsxsrpDkbVIpydhHi+7GJ7w0GARXvgIyQ3v7H gzb1P9TUpiwz4t/5NOWIc9bI+Ih56EzmC9egXnwCypCW/P2ub2d+NmfnxgqWaA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687899834; a=rsa-sha256; cv=none; b=CV7kotqkBVE5mDUETPKeDd21na80ww6IaniJjiuT2LUgDOcNun5J62wq+Xfg6ygtdPtxqH hUGH6l8D5xLHpg++B+yCltVBLxCdJqv+9fwM5IKjEL39SqdksNugUCBnSOVM1QYO+dWM2o +OWnT0Nk7/8XD9oMG7nnnEazClG5jXTJMi8Tm3R3PZRlFmd6eqF09YTWoQjLC7uMxGp16m SOfwK2Ex3opja39qy8s+JdRKwXWdY3SN1atzakDkM0OLx/r+xlMlSBIQ9rsnv6Yaij1H7J 7Pn/WAvSRZXltzK1RoiCmj73lKxNf+ElFGP+vlhbwOGVP4fl2ZHHAqtOBjNAGw== 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 4QrHJ95vFrz16m9; Tue, 27 Jun 2023 21:03: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 35RL3rcD097756; Tue, 27 Jun 2023 21:03:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35RL3rpF097755; Tue, 27 Jun 2023 21:03:53 GMT (envelope-from git) Date: Tue, 27 Jun 2023 21:03:53 GMT Message-Id: <202306272103.35RL3rpF097755@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: dac6aa05f8da - stable/12 - e1000: Add SPDX tag to em_txrx List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: dac6aa05f8da6421bc2e18be65a342a75ef31029 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=dac6aa05f8da6421bc2e18be65a342a75ef31029 commit dac6aa05f8da6421bc2e18be65a342a75ef31029 Author: Kevin Bowling AuthorDate: 2023-06-09 01:42:20 +0000 Commit: Kevin Bowling CommitDate: 2023-06-27 21:03:43 +0000 e1000: Add SPDX tag to em_txrx Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D30072 (cherry picked from commit 034f38cdf864e6794fd63b67bf16c59627576699) --- sys/dev/e1000/em_txrx.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/e1000/em_txrx.c b/sys/dev/e1000/em_txrx.c index 6bff741ba665..255aea6347d2 100644 --- a/sys/dev/e1000/em_txrx.c +++ b/sys/dev/e1000/em_txrx.c @@ -1,4 +1,6 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2016 Nicole Graziano * Copyright (c) 2017 Matthew Macy * All rights reserved. From nobody Wed Jun 28 00:57:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrNTR3DQCz4kJJN; Wed, 28 Jun 2023 00:57: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 4QrNTR2m25z46YM; Wed, 28 Jun 2023 00:57:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NeKosSUkdUTpclSGs0IF8xbV4IvRMJpoPtwuSRnxfl0=; b=m8tbZiCy3Nja/n4ScyM5DyKZhPOMpDN+ZrGg0yOJK5ItLKvoZjI0l0g3VxWxohfo5GBGFz 7iP7WDkNqCHmWTi/6HQwcAUMsACO5dFH2SFPH8yxfW+b6SQqnlJzp2CejAPt7ocQ0jxSPM MUmzJQN6rV9Ie9RGGsqbPtBfhdbcbrlyQoG9JEudXRoO7Urd46k1t6EHt9F+L2qbimwL7Q UXSIQ2zb9jhM7f5a0AJtddtHTFJvjHrLG336mygCL4IBi79FsVapM5XIRR8DPMwWrXbxLn powIlNoQ+TTmSPJiWLOLF2BYTJM5q5T7eU80eb7Q8yB9OcK3W5Z2/zPJ7iAFSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NeKosSUkdUTpclSGs0IF8xbV4IvRMJpoPtwuSRnxfl0=; b=HL2WJGZkQJWgDzwH1ij3y0EFvawLNR6hENvRu6Ilq9Nf1qfHdOF4pxjLmArzg0M9fNQl+t nz2bRS8p2JweIKZMWblp00uYYs9WGZRDnOVLQPGdlUuAcUwYP5Knt4YHG6xDIZCvs0T4Ug 8XFftrB+J0cXyuIPHZb+BgWhNProgvtnM8RWazwaljmmP10ZsbJ9C4HT5CoaLtLvoraDOC pUBU/oA7P/Ih6MBhd9ywU6qH04bswCLdtDAq/V7vyAmY+rFNUUzCbTL4UdvMHGFpG85WSE DfY83IbxEsPYpCjjiQ3XKmeIZryxUZzY3iZek9Z1SpEd6bneATnwNOps6FBNwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687913835; a=rsa-sha256; cv=none; b=K+53dsxMO46mql37MhHRzQrG5epTs+SsxQVPswHy+Ts9am406tdAswhphI9esDxUEubk3z 4oS6AzYMluWCZbRwYQ5MOKP1M9gUujN3drKp70mGoivTGmrFh35qAWz72H0JNG+F1jKnZx 9kGa9cf8/ZLYmrVU+cPJEGGgRSBrgW59toxzaI1BPr4Yj+daHH9ygKeRAiafdfVx1T5Mm1 gcMMR5QT6ARf2o7G3aySEh/mt9vZue9tn9T1/0BBMYfsk6eAWwYwcGShc0kpRUl72lZVcf 77kSVMACRMHqBqoKyjkWgd28NDSawwqYpHJMbkWZE854vsOo8WL40TzG27u5PA== 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 4QrNTR1rSLzF1V; Wed, 28 Jun 2023 00:57: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 35S0vFZB079094; Wed, 28 Jun 2023 00:57:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S0vFDc079093; Wed, 28 Jun 2023 00:57:15 GMT (envelope-from git) Date: Wed, 28 Jun 2023 00:57:15 GMT Message-Id: <202306280057.35S0vFDc079093@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: ca461ad3dec4 - stable/13 - top(8): designate the sorted_state[] array as constant List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ca461ad3dec4cf90879bee18080ee31effe3652e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ca461ad3dec4cf90879bee18080ee31effe3652e commit ca461ad3dec4cf90879bee18080ee31effe3652e Author: Konstantin Belousov AuthorDate: 2023-06-19 13:49:19 +0000 Commit: Konstantin Belousov CommitDate: 2023-06-27 21:04:14 +0000 top(8): designate the sorted_state[] array as constant (cherry picked from commit 5c6393451f58c4e6c92410ae66e28c899bfacdb9) --- usr.bin/top/machine.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/top/machine.c b/usr.bin/top/machine.c index 2fbdb8551bb0..c11851ebce63 100644 --- a/usr.bin/top/machine.c +++ b/usr.bin/top/machine.c @@ -1261,7 +1261,7 @@ compare_tid(const void *p1, const void *p2) * that reflects this ordering. */ -static int sorted_state[] = { +static const int sorted_state[] = { 0, /* not used */ 3, /* sleep */ 1, /* ABANDONED (WAIT) */ From nobody Wed Jun 28 00:57:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrNTS4NlSz4kJLV; Wed, 28 Jun 2023 00:57: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 4QrNTS3cvjz46sH; Wed, 28 Jun 2023 00:57:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913836; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QncGCnfgDLQYapnxUtA7nC2YQ1GYhmExHy9r+BAAaU0=; b=RqdCw34Mc1qocPA6yIYKtO37cQNpOXnHXibPdZMkZ/3qGqY9oVTleg93XSPvkUxz0WeCbb 4BMLSTeN21hYxrxs08qv2gWuJ9Pqcdq+Ero61boGHulkkfoJRFe+S6VUntDWUYcMprqi6R v/6QfiYitStZcDlNL1XcDvO3HyKXT5AMQfqNBICR9qv3DvIh1rQDB5Yi5TktpaBSOPQZQH /KFyT+5v/Sz0mbzb/Rn50shbWjxKooyauOTI8vJGL0Lixh7Fj4C2llelAZVeUFYWSj6eon jt4Edl3ezWBwmSbDra+SBkJ2Th22lWhBjOdhs5HvbblBQQbg5fNJiiML/r1yqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913836; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QncGCnfgDLQYapnxUtA7nC2YQ1GYhmExHy9r+BAAaU0=; b=EHtNQxPf7Klv19UpuRmUMAREz/348i1Xqjaz86DlqgHerGVvcrn/XM36rtNPwpNbMXPI5N QTK+y4HoHbzkVwFKQO7a22EKfxZ1Nxt74J+JUFCPmKmZr2BGNxS+bSBHqyGmkacwE0va7x ACyV6VferST8oF4cOzv172PpdyBD1yrI3BlyZZLw1cAMQLM+15Oy4IzL2RgAsMuutrKnhh gK/gpmXX0FQkzrND+QOGRu6Mmkb+r+JyN68f/szj16rtl7mLrEJK0bGg2iMuby9wzh0sRe rZHTEbinOXEqMrECGIfMwECjENWHNF2kRSRe1d4/5nplDRgU3QsCFCKyRcFo/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687913836; a=rsa-sha256; cv=none; b=qtu80LaSmC4yROLiIENEVYemcNHcLK5mEZCt1tiCOXM2ES1BfZQgAOm/p7r8s2KScuNH98 bVEkYjoWHHV33Qu2HEoMWgpczY5BpGcXarxhdfbmTyySx4eMbD/SB/GdLJG1E4jY3MqN4g 4CQDW4a8VmREiEvcXW/kQXMfAyTbqXHDqAka05utrW5+gcR4KdusoKU5D5lNJzkK7gfThp yjlFOaXgAKhTrCn8UaCx4ijuldXtmURF8XryU00AJoNbIFR1XM3qxIm+bExFymPf7x+s06 B2Oy+NKRZ23wx725nNu+d0jRwteySJpWNblleFqUwn2yMrGuGQwUBTQ2uMjd0g== 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 4QrNTS2kgvzF1b; Wed, 28 Jun 2023 00:57: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 35S0vGx0079116; Wed, 28 Jun 2023 00:57:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S0vGwq079115; Wed, 28 Jun 2023 00:57:16 GMT (envelope-from git) Date: Wed, 28 Jun 2023 00:57:16 GMT Message-Id: <202306280057.35S0vGwq079115@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: deb1289c9e6a - stable/13 - top(8): use designated initializers for sorted_state[] List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: deb1289c9e6a225ad05d4d0d710f3c42297e14df Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=deb1289c9e6a225ad05d4d0d710f3c42297e14df commit deb1289c9e6a225ad05d4d0d710f3c42297e14df Author: Konstantin Belousov AuthorDate: 2023-06-19 13:52:05 +0000 Commit: Konstantin Belousov CommitDate: 2023-06-27 21:04:15 +0000 top(8): use designated initializers for sorted_state[] (cherry picked from commit bc2ac2585aa89c110861972aeb243719ea5012b8) --- usr.bin/top/machine.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/usr.bin/top/machine.c b/usr.bin/top/machine.c index c11851ebce63..033861d3f7fb 100644 --- a/usr.bin/top/machine.c +++ b/usr.bin/top/machine.c @@ -1262,13 +1262,12 @@ compare_tid(const void *p1, const void *p2) */ static const int sorted_state[] = { - 0, /* not used */ - 3, /* sleep */ - 1, /* ABANDONED (WAIT) */ - 6, /* run */ - 5, /* start */ - 2, /* zombie */ - 4 /* stop */ + [SIDL] = 3, /* being created */ + [SRUN] = 1, /* running/runnable */ + [SSLEEP] = 6, /* sleeping */ + [SSTOP] = 5, /* stopped/suspended */ + [SZOMB] = 2, /* zombie */ + [SWAIT] = 4, /* intr */ }; From nobody Wed Jun 28 00:57:17 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrNTV0tX3z4kJFx; Wed, 28 Jun 2023 00:57: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 4QrNTT49Hjz46xw; Wed, 28 Jun 2023 00:57:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913837; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SFweqlQsrWToCItx+KD2Sn4STwvE/wJix4ZTe1mhTJA=; b=g9X08xcPvFPiiWL1euKiDtlxZKILPL/7z5LnWF4AvrtRW5z1eJhowJv7IhPvDWYNrF+p6r ntw63uIv+Zz59ZvIY4qWZXE1R+2tDPfwKRNNjHAywAB2/hM34tQ6SFyukpKSxlIuFRLrlJ 4JMxW7FGRkedRRiWpxrH/vHRh9MIJ9i6WhpmZDBzDC8sMkHYAyfyHCHJAVvQ2nkubTmamZ KuEnajoEvWwcA5Iaas2gCEv4iYEUlV5/KTrwIhHcZChH0sDcBYy1cki08p5yyTlufOnPXW hKnpC8TeCGi77bfG0TlAkBItZk6ZYRYDn8dzrY7t7Pbc9prmJmP66ynqTX0+3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913837; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SFweqlQsrWToCItx+KD2Sn4STwvE/wJix4ZTe1mhTJA=; b=PWh7oCMbFHEp88xTiZSMhnQGDiq1vA7WjlUHNP8B1wZp0q86ON6qKlqgdDZVoxH9a1dApv Z3oI3dt1uYh+GB93VniUExNCBIs7NcyFVbiug4lkXojANRQ7FPthvAS38qCNxUeVbueF1a Ev497Aadod5VjDyJHCx/WVllrkAAjQulP8XM/spEmuPt6Ir1By++X+jFM3vaLlp37sxUx3 i+WfyJadAbTLUys/zuC/lW61ACnxrIA3yHMW2Z9JYyJMhP4PfdHv0eYo4J2d7UmM+jwB3h FgXj/9hCmRD/BjRCvcB/rY6IWmuVZKjyJaoBW3EKB52l2+CuWAISydVB6n7gLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687913837; a=rsa-sha256; cv=none; b=CFXXxIaJ6uzXurcyFmHEhJfPvQvM/quZk6/MYfzMfHUdUTa4ea93RxwxfKzHWuAc5YLZGK PiwJY7zbNmuYbRtwBkRsbipE6c+Ygl4IsRtIrYe9lDKdeNvbvl5Cb+Ck5cbCWmS0tXuddZ MFAS75LaJJkoJiAB4P46UQcqXLiMl2DH75p421yH6iiAlVUvsx/RZ6JcP+s2FvwpVL4H/9 RchHqkRAvz7CuIBw8E5gdW5KZYRtKDV8lijAmFIzhnQ2O1YNKGAKu7qGT6SniJOtScUutT NC2Sw4i2E4QVHIzXeAoGZrbOB85momi1+OlM7McDmLnX3Efu0KbDDwXA5VGJYw== 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 4QrNTT3C6JzDnJ; Wed, 28 Jun 2023 00:57: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 35S0vHxU079142; Wed, 28 Jun 2023 00:57:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S0vHLX079141; Wed, 28 Jun 2023 00:57:17 GMT (envelope-from git) Date: Wed, 28 Jun 2023 00:57:17 GMT Message-Id: <202306280057.35S0vHLX079141@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 8a5c2ed0c7f6 - stable/13 - top(8): document the actual sort order for process sorting List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 8a5c2ed0c7f66cfa5c3b40696c9b531be17886a5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=8a5c2ed0c7f66cfa5c3b40696c9b531be17886a5 commit 8a5c2ed0c7f66cfa5c3b40696c9b531be17886a5 Author: Konstantin Belousov AuthorDate: 2023-06-19 15:57:00 +0000 Commit: Konstantin Belousov CommitDate: 2023-06-27 21:04:15 +0000 top(8): document the actual sort order for process sorting (cherry picked from commit d636fc5bd1e218d2eb4d017b93ee59f5db5c8507) --- usr.bin/top/machine.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/usr.bin/top/machine.c b/usr.bin/top/machine.c index 033861d3f7fb..15788fe53443 100644 --- a/usr.bin/top/machine.c +++ b/usr.bin/top/machine.c @@ -1256,9 +1256,9 @@ compare_tid(const void *p1, const void *p2) * distinct keys. The keys (in descending order of importance) are: * percent cpu, cpu ticks, state, resident set size, total virtual * memory usage. The process states are ordered as follows (from least - * to most important): WAIT, zombie, sleep, stop, start, run. The - * array declaration below maps a process state index into a number - * that reflects this ordering. + * to most important): run, zombie, idle, interrupt wait, stop, sleep. + * The array declaration below maps a process state index into a + * number that reflects this ordering. */ static const int sorted_state[] = { From nobody Wed Jun 28 00:57:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrNTW2XHJz4kJC9; Wed, 28 Jun 2023 00:57: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 4QrNTV4hVDz476H; Wed, 28 Jun 2023 00:57:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e+NXLuLadSyBwc3dlL9bLvOgekwbMOHOs4hHbCf5yeo=; b=Ul8P1TAGhKoXo7BMVdrumGl5dTh3yp94JPoV9ba9m0C+bLvxqWEdN0t2II4Op6MKEuZrtq ZiuD5hFwga4QtZkgbH7jN9jR3EMo4E2zpUjun0lug4G5OdaZfMDyfgTqSw5KD0ylSQ9tUf FfnjOzNcjOVYzA2UvNOGLDmc0ZFoluOOZD/KYuGClFQ74QEfIv1ZXcMuHTF0srdsrtp67h IwU4RA1R6GQSgpHDJoZgdCmkSeNxFllHout3Nj2HVsi9fCsZkCUrmaqGFmzTrNOip+6xwA ADr5eUE58CGoG7C+0aXJIe4DaVx7AdshLZ/Mvkjy514+C4iCuY0BSXVdZFGY0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e+NXLuLadSyBwc3dlL9bLvOgekwbMOHOs4hHbCf5yeo=; b=h0dH7gbyjUw8rUcGqqDpCM1D7Q3990sNHs+NS3phveG0C3vqwjEWG7zNgWVFbqAUZMqEDe VWz0HtRvZZU86+E2YtmV4P1aqp9eXfwqQUG025tJj2ypkBwe/qCFl4SBxae0mvRzkdaD6i 6e6A9QGyneMhRvBv6g2ji3Pe8UTNO3us5O8uPsAHHwyayYzhGySzvYvTPJpr7tORd+AMUj 3fyvDvtrpXe5G9wxyCgG2Ceg84A043uTLk3Bwlb10hiEEYN7+/+kr+dzu4PPxllo83o/es L3Ti5hAO/d2j8cyjgdWjVkcNHheEZqvUu1clzqZZcQk3rO2rDFU7surYXvdp3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687913838; a=rsa-sha256; cv=none; b=Ft7G3mNbmQ5zsRRcrpDp/igsa2tjgFh/9JW5mgd2pQc/bpzf/VRIOPTUzux2Es4FizYDaL nBGhf3kki2hqWJzdpLzWUAf+0rSI/YyqW2v847ORs9HW8vITr9c3k06tb3B/L4ySUAPf/1 JsOoRCkMeTxbaWX3P3rNfGO+2gQZIy5s5M6N5UJaxJ+N60btiCI/BNKcDv6Ky3ysca+FjG +1zlDyYQZtgcKX9/Vzdom5V/QtDFWRoej3syZzEX2Lk6fHGj66ZldMnjTet/mknyjab1jv xO3JW/zEgiaMeEmRbZljIo6/pL8TBKfIN61yiTPqoat9BpmR3ZNEKic6TDAatA== 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 4QrNTV3pbPzDrT; Wed, 28 Jun 2023 00:57: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 35S0vIbU079161; Wed, 28 Jun 2023 00:57:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S0vIa7079160; Wed, 28 Jun 2023 00:57:18 GMT (envelope-from git) Date: Wed, 28 Jun 2023 00:57:18 GMT Message-Id: <202306280057.35S0vIa7079160@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 732e4df3b388 - stable/13 - top(8): add missed SLOCK state to the sorted_state[] List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 732e4df3b3884790588bc97392895b832dbbc0b6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=732e4df3b3884790588bc97392895b832dbbc0b6 commit 732e4df3b3884790588bc97392895b832dbbc0b6 Author: Konstantin Belousov AuthorDate: 2023-06-19 16:00:15 +0000 Commit: Konstantin Belousov CommitDate: 2023-06-27 21:04:16 +0000 top(8): add missed SLOCK state to the sorted_state[] (cherry picked from commit 6a5e6a50bd55c3fb4933abe1edaad3a928700c42) --- usr.bin/top/machine.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/top/machine.c b/usr.bin/top/machine.c index 15788fe53443..1785db8b9dc4 100644 --- a/usr.bin/top/machine.c +++ b/usr.bin/top/machine.c @@ -1267,7 +1267,7 @@ static const int sorted_state[] = { [SSLEEP] = 6, /* sleeping */ [SSTOP] = 5, /* stopped/suspended */ [SZOMB] = 2, /* zombie */ - [SWAIT] = 4, /* intr */ + [SLOCK] = 7, /* blocked on lock */ }; From nobody Wed Jun 28 00:57:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrNTX1S90z4kJNy; Wed, 28 Jun 2023 00:57: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 4QrNTW5kdRz4798; Wed, 28 Jun 2023 00:57:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ATFwdIs1pVx1NAmictf1RuiXqTkWrMg3Ygz5r2fTzCc=; b=BOIWXFAeCyVydBUhunzd9l+THMXXyDeVQvBoPzen0nbyIAg8fpfUliuGNxpzpUTI+QClxM zJeJkyT0rXcD7f6PzWk0X7xiO8nPIfz2NsneXzG9/kmSzM67Lv5+vNht8dJXGKPqO4V50l 1P1qdZSEPHFdxA2qwc+s2Wm+WP8To6+0jAVo8uG12eRPRFzcamKa9OQIMUNOuBoUuO+eMy EXl7+Zh8aRQg3moWI83GRW1EWNT2vhoK7zLtVTBZkHt/KBuz50JvhStWD7p0kkkydIJa4n iPFYm9rzVJwCe+qPqXes4zzfmNOR8loRRsyoe76HL8BFeQ9mfsu9gRfKZbY1vg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687913839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ATFwdIs1pVx1NAmictf1RuiXqTkWrMg3Ygz5r2fTzCc=; b=Iwl9KcfduNt/WDRd+qbI8nODiOlrJfjKVKr64/rWrUTqYH3ZQxtE60z2VpnhguHnuDqC3r vvmzHp1NCY0Uap77faA1BoxMtNYtuFgLFrlhiyxFOMIxx05xmgFk9HcTq73RMsKXOwVZXT bw8g6L2pd5toJyj0tj4B1rPS4BD9Lz4mQA1hoXHUT8KKg+6Gp+N3ViO7QTz441eZGuJxTA 450yqL6KYjTB/K6S+qfbX6F+jt140MX6tfDzHKccMCE2//tuJahp79dd52Drhrk2aYcrQp 1+hLvzHM98qb9RL8nNAGzmOdp7UrLpriSvMa0I2B8sM8Wz+czfbaPPKvjbiDaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687913839; a=rsa-sha256; cv=none; b=mIj+l+t4jKFLPwzE29c/ccP/R5JT5TKqapKkLjZx0YnFWMwfsDOqgJN+gnSeFzCcCz7HLo w4HdiRISvDcY6vY390ycovlnSdW4TdD931ntxXtEZ/5O9YS3TlowGBCnJRs46oCUjM/70d /Xm+3r8GUIieM4UXDXEOs6w11eZFv1CWYQQz5AMjv5XT2A73+5ztj0x4FuVgB9OQi5BMZH cOl/vZpCe+8o9TfFk2IKzStXkvOv/Al2iCvoo970gCKsyQPylP9TllPW658bAHsk+1XYhN eFtCKlqqILL4h2JUqXRiZqevGlNg9YaUMkyXR633FlG4+46wSXMdQgF3GM+Wjg== 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 4QrNTW4kmQzDj6; Wed, 28 Jun 2023 00:57: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 35S0vJoj079180; Wed, 28 Jun 2023 00:57:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S0vJnw079179; Wed, 28 Jun 2023 00:57:19 GMT (envelope-from git) Date: Wed, 28 Jun 2023 00:57:19 GMT Message-Id: <202306280057.35S0vJnw079179@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 15347d162287 - stable/13 - top(8): restore erronously removed SWAIT array element List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 15347d16228773e715400577cc01d0b56244976a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=15347d16228773e715400577cc01d0b56244976a commit 15347d16228773e715400577cc01d0b56244976a Author: Konstantin Belousov AuthorDate: 2023-06-21 05:43:11 +0000 Commit: Konstantin Belousov CommitDate: 2023-06-27 21:04:16 +0000 top(8): restore erronously removed SWAIT array element (cherry picked from commit 5bd5470a2c975b8d3c841a68ac66bd0a3acdf966) --- usr.bin/top/machine.c | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/top/machine.c b/usr.bin/top/machine.c index 1785db8b9dc4..414b92560523 100644 --- a/usr.bin/top/machine.c +++ b/usr.bin/top/machine.c @@ -1267,6 +1267,7 @@ static const int sorted_state[] = { [SSLEEP] = 6, /* sleeping */ [SSTOP] = 5, /* stopped/suspended */ [SZOMB] = 2, /* zombie */ + [SWAIT] = 4, /* intr */ [SLOCK] = 7, /* blocked on lock */ }; From nobody Wed Jun 28 01:33:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrPGt17Wbz4kxlW; Wed, 28 Jun 2023 01:33: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 4QrPGs5ddjz3Ddp; Wed, 28 Jun 2023 01:33:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AZstMLRQcKpjmlwblU9/HKBnEmgFqKuHrKDEUaecl9o=; b=bvKUQybzi+mFaE3xmswutrkEZ5Q0rLMLZiGlIs7fvHFYwaiLWASFhTV2ObJURA/dTdZ/sM AVcCAPznSAog9Xvmds84ZhkeR9R+oRl1hlHrQg1MBjtngoMNEKRsrhUOnBkpciOxfxPoEV 3quMLqRSJMuPznGZ4y5MXXE4tUNyNoy2nZrRRgQRmMACGK3yVEZVdyxNfUksqQ0+0nsjKO ASr8QlyDsQQ5LjpabxrNXsYpqzwiHUAXMVfGKyYMyx7cEUZ0NcyS+gRksKoYkeUmSrNjUB Xqcw31Swy2uddoC06iXzRWBizdLLPPgXOVFnwuwE31bXTyuwF5XZG6WlWcJ5GA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AZstMLRQcKpjmlwblU9/HKBnEmgFqKuHrKDEUaecl9o=; b=qJAQlTwLRu46fNWItwKh30V8HMGyknntPjqzjNv5qzVIDol635G7PY9ArE61VvaJ2CNfb7 0tVHHFDrLJPK0FPHgp8Xui2cZBSL4urMU+ahvlXm+UgO9DI5MCOBozG45JnPi318PGO3uu bEkGMaqdOWEenQy/79FPoINvk2yubBsJVgP/ICjkfLRvPdRAGA682KvJn4y6l+DfERW3nL vtLrszLHYEolQmEq/XEjkKqluJmdW3dJndjveXzELnrjCnC19acq1ab/Gly90edmRicdAy A8ILxPzkzvfG8m8YLARm5GTWoPry+XdfonIxzuZBrNHaSK09xD1pX/MjIjbUpQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687915989; a=rsa-sha256; cv=none; b=HlNQJhC2St6xqjQSJE7QJ3fCKh9DwnVQzGn8n6+sjxlTU3+w7zOcI1I7EiTN9NennI1ol4 s8a4FZAl5Nd47P4tpOU700sFjW009+miOfBGRu11XRXrdRlBqBavA6U9xtsizPGXTT58Ad LGzKiSAN6+gMNVCbrMgcmajvvU7MSr2PlX0fOGqX72U0wQKJ5sBYrmpRdksBRZOf0VkvSL a6OVVoXYmO8YbHFrzCkDbfAjDf2CWVQmfWA9MrnpJVzt/gMn7Gh8yx397IfHx4nt67Liv7 1UBba5AYlXiLDAfBMuPPxS/DpVs9sQ6R3GHFhH3jiUQ0spFiaPEoCJAk77WB3A== 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 4QrPGs4lJJzG1b; Wed, 28 Jun 2023 01:33: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 35S1X97L045115; Wed, 28 Jun 2023 01:33:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S1X9OJ045114; Wed, 28 Jun 2023 01:33:09 GMT (envelope-from git) Date: Wed, 28 Jun 2023 01:33:09 GMT Message-Id: <202306280133.35S1X9OJ045114@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 5771c3bd1df8 - stable/13 - systat: Fix a bunch of use after frees in fetch_ifstat(). List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 5771c3bd1df809113214abbbc3f42d8e05277b4a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=5771c3bd1df809113214abbbc3f42d8e05277b4a commit 5771c3bd1df809113214abbbc3f42d8e05277b4a Author: John Baldwin AuthorDate: 2022-11-22 19:11:42 +0000 Commit: John Baldwin CommitDate: 2023-06-28 01:32:47 +0000 systat: Fix a bunch of use after frees in fetch_ifstat(). I think this was probably just a typo. initifstat() continues around a similar loop if the mib data fails to fetch, and fetch_ifstat() was already using a FOREACH_SAFE loop here so expected to keep going. Calling clearifstat() from the fetch routine also seems wrong, and the sort_interface_list() call triggered by the existing needsort = 1 will itself set needclear to trigger a future clearifstat(). Reported by: GCC 12 -Wuse-after-free Differential Revision: https://reviews.freebsd.org/D36823 (cherry picked from commit f6fdf9214a657351e78c68aac1888e674c0481f6) --- usr.bin/systat/ifstat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/systat/ifstat.c b/usr.bin/systat/ifstat.c index 82e3429dbfda..d5e43cf1d0aa 100644 --- a/usr.bin/systat/ifstat.c +++ b/usr.bin/systat/ifstat.c @@ -299,7 +299,7 @@ fetchifstat(void) SLIST_REMOVE(&curlist, ifp, if_stat, link); free(ifp); needsort = 1; - clearifstat(); + continue; } else if (strcmp(ifp->dev_name, ifp->if_mib.ifmd_name) != 0 ) { /* a device was removed and another one was added */ format_device_name(ifp); From nobody Wed Jun 28 01:33:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrPGv3KFNz4kxp7; Wed, 28 Jun 2023 01:33: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 4QrPGt6khHz3DTJ; Wed, 28 Jun 2023 01:33:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P6Px+PWKaFdGelQb2FtQ/RLCU6EksKBM5h8Pp7hjF3o=; b=JH3Q9nrAwpbUneBfm1Kt0buyUVytT66WVrTy3GlXVmkZTMfU9wEIyC3U8SEx2H7sMv9cbw 0Pmrm8cg5gBE+C/UXnwQrnjlKwELmUdL2rIY5fu7jiPsHeA8YNgA6npAqW8+3gt76QK+2m aV7yun5s62m0D32YjWpJM3z9fcmq1S10osRl/bpeZn6ogQ9ye7DUDNyhqZhPZqnTWdudfm PDIMNGnQ5SB2HIIz5vsBfNapXQfhRE3yieCoa4SAEIdKmIwsXrSTREzagIMPpwtkR4oJNy yhDsytVFnsw6sN081agoeYu/k4aYK6pAFyIDrOKAi0HqKV7sETfbzFhoTGBbOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P6Px+PWKaFdGelQb2FtQ/RLCU6EksKBM5h8Pp7hjF3o=; b=b6lkGGQBvQ62a+nn5pz2brYmx3R1ACwNTvTPHb29C7OripphR/n5L2JNQTVrwHv1eBdCyA w2bXjtvizoOZtJLkIInxBfUdF/h4XVM6c6r6MxCyWJXTWELHUJXgcVfSKGX1dR2KvWxACe K3sXoobR2KvXMdQReaJ1ngtuu5ZD5KVjiqZZMr4DGKCbM5JEYDIZF76NCsQw3bzRIXw0yL j5ACVuJtAlBLXLq+FOUMlTyTQdpfnql4inSwlz9KRpKtvAadl+JiR0sEeUC2x4z2C+WACs GVLyXK7+Gbq+0e9sVn+gSwvV8EYajtjNFEAb/iizLU73eNv2wqk1f+6E9ObD6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687915991; a=rsa-sha256; cv=none; b=Ne9EcHS0k8hiC80PWW8d8nG+RBIfM4Bjxg4lP8TFdcY3QtpJ03Atfnzv4GrYS6qGb1JdV8 CT4rkWTF9Zpo8E6UH1J/lzMQ+5BuXWrdL8SFfrXiI9nrK0BpH4MTYSer2F0bEPkZwvRlMo TGUwqBIPiYNRev4zO4klXAlzl8vD1wLoqxiPTGumIW90SCePmYN6w0SKNnagHKyA/AMwMV FrZU7RCOXU+8oKwx04LzIYQUHnsn6GbRhuI5AROtSgyylAju05wKB72RpuLnhW1+kyng84 UQCzmhesgzlWKOKrW7kuTgFkHx20JYubl2W6x+kfISEg5f8S6/HogLAci4dCyg== 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 4QrPGt5SKYzFcm; Wed, 28 Jun 2023 01:33: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 35S1XAoi045139; Wed, 28 Jun 2023 01:33:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S1XApw045138; Wed, 28 Jun 2023 01:33:10 GMT (envelope-from git) Date: Wed, 28 Jun 2023 01:33:10 GMT Message-Id: <202306280133.35S1XApw045138@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: ed19cb27bde8 - stable/13 - ether_demux: Defer stripping the Ethernet header. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ed19cb27bde8c87ece83e390b0fd40991abdc9b3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=ed19cb27bde8c87ece83e390b0fd40991abdc9b3 commit ed19cb27bde8c87ece83e390b0fd40991abdc9b3 Author: John Baldwin AuthorDate: 2022-11-30 22:38:51 +0000 Commit: John Baldwin CommitDate: 2023-06-28 01:32:47 +0000 ether_demux: Defer stripping the Ethernet header. This avoids having to undo it before invoking NetGraph's orphan input hook. Reviewed by: ae, melifaro Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D37510 (cherry picked from commit 79b679942352a7f10d759fdee1892aa251e0f439) --- sys/net/if_ethersubr.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index 25daf13ccef6..9a614fbe6844 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -886,11 +886,9 @@ ether_demux(struct ifnet *ifp, struct mbuf *m) /* * Reset layer specific mbuf flags to avoid confusing upper layers. - * Strip off Ethernet header. */ m->m_flags &= ~M_VLANTAG; m_clrprotoflags(m); - m_adj(m, ETHER_HDR_LEN); /* * Dispatch frame to upper layer. @@ -918,6 +916,10 @@ ether_demux(struct ifnet *ifp, struct mbuf *m) default: goto discard; } + + /* Strip off Ethernet header. */ + m_adj(m, ETHER_HDR_LEN); + netisr_dispatch(isr, m); return; @@ -930,11 +932,6 @@ discard: if (ifp->if_l2com != NULL) { KASSERT(ng_ether_input_orphan_p != NULL, ("ng_ether_input_orphan_p is NULL")); - /* - * Put back the ethernet header so netgraph has a - * consistent view of inbound packets. - */ - M_PREPEND(m, ETHER_HDR_LEN, M_NOWAIT); (*ng_ether_input_orphan_p)(ifp, m); return; } From nobody Wed Jun 28 01:33:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrPGw1Hfdz4ky71; Wed, 28 Jun 2023 01:33: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 4QrPGw0gRTz3DwD; Wed, 28 Jun 2023 01:33:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915992; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jAYsN3PMmHXdVJoIc+C2RAQBZqEE207ELv3pRsFZv/E=; b=YFRtyspC8OZm9/A07j390gRg16bK165NC7TpKiUgZxIXy/koj1qZjgEVcXktLowujro/CT 81uIuE0PTkC/2AcSlU05XjWIIANoOkWfLNABGNNHUrfiWu54WFkhqJVB9yqhBizcj8HmaG xmq/utlpBU46ZDxZJHfXIhp0AYOE8IjbvG5zqCC60gLqIgLfIzHd6iJmOBdoFJ4IQqMxmK EVFigaDmhgZYjtlG6pznJ676sWp/DfFfwrCYWFLSvkRl+6pTWvZjfQTcZKOrOgoPo5pbZG pLtCE9oO4BTd4owEP7/1Xg/j4RKtScnEVfG/mTe9Uc0BlMiprSYSSfXfhaKYYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915992; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jAYsN3PMmHXdVJoIc+C2RAQBZqEE207ELv3pRsFZv/E=; b=Szf7HnKrdKG3EVPGlL4f23gkqbo1XWcEXYShoqUxwPouxs1tdVR22fOKArTNRYW1Ihqgdn DXAdctIZfK/VoGmU5dWAlhgre/0kaE8gMcBrK8dCuZam+biwsaSXrOtenp7PF/CvOUVO8d aWHNRq8yY3IMBGzdie2aOCi3fVHMtw63Z1EW7dsGbUg5nWM8z2RTQ7kVAhwy3UFT4toFQT qG9FPJyvEIsPUXDHVISqUrisxJJR2AnYxz1CejZf6o/WrYvnKCBL97MV1s/SJb7sXhwuEQ TCCStX9ioIYMqyxLRPbub9O/72qiJUAN8EMX0ib5XDsk77PJWMi+EwJ67FurZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687915992; a=rsa-sha256; cv=none; b=ks9Nj/Iwlt+KUmWka95J9n7C9+xf0wuGYc/kffnDT0ejLFcArbGX4pZA0rLeNCOyZPBqJr lLxWRSkTgeo1cKco8OcXtGzu1ge5oJQP+qMBeGn3/lnBMjsac8I7eoGpmAsZm6l0xx1YLy aA0Ad6DDHqLBDQRaJa4jH+oWJmUqTX02ohiIHSRh6HtAb+Jc9CznO/QCcf0QlfaXKuMZMq 7rNkFUy6y6x3QrVeeZekWWlth6uBi1ng/VwiM09j5CJzRVst2Z7y381WYRowxUvvcSO43h //W6PSTV+obdLx0547ZnE5b8uKz8BLzHaKrOBZWnssgr6NPBf4CgefpJ2HhdFQ== 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 4QrPGv6jl0zFyB; Wed, 28 Jun 2023 01:33: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 35S1XBmm045158; Wed, 28 Jun 2023 01:33:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S1XBDk045157; Wed, 28 Jun 2023 01:33:11 GMT (envelope-from git) Date: Wed, 28 Jun 2023 01:33:11 GMT Message-Id: <202306280133.35S1XBDk045157@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 7148e1593b68 - stable/13 - : Decay expression passed to fallback version of __generic() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 7148e1593b6866bfaf5d640d099af1931d053459 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=7148e1593b6866bfaf5d640d099af1931d053459 commit 7148e1593b6866bfaf5d640d099af1931d053459 Author: John Baldwin AuthorDate: 2023-01-27 00:28:22 +0000 Commit: John Baldwin CommitDate: 2023-06-28 01:32:47 +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 (cherry picked from commit 9d2f9798175586bdcd3423443804fbbc0cffb8d2) --- 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 3d45271d3e31..28e464122e58 100644 --- a/sys/sys/cdefs.h +++ b/sys/sys/cdefs.h @@ -313,6 +313,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) || \ @@ -322,7 +325,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 Wed Jun 28 01:33:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrPGx1l8qz4ky7D; Wed, 28 Jun 2023 01:33: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 4QrPGx104vz3Dnw; Wed, 28 Jun 2023 01:33:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z7zBacHDQs5XDzK3EQhCsiEsNuCmOtS3dUUC7vdeZwA=; b=ac3x7TdgRXh/pCNkK7sQcl3t2Ul/XcbfdW68YgnNo31+9UFZ9I+pWl5O4gl2MppO07PCtq Pj0ISBII4WciUVEBDXaMa4PVdsUznU5sX2B3b/5Ql6Qp7c3DiaAssCpLkalnm5vvTTZBJC Kz0jP/86b555yY3YJX4uZZm6AB0BE7DtvYUBt/rCoNLQy+Ak9NrkOskGuw6Nipqiefn4J1 PBU84ZX26WQhjT5AXfglP+BgOKVXFvqkaHqvQUq6FnUBL8Vekuqqm7r0yjnLcvBI0GqviS /xpO6fzwM3coB7fiTxCqMyodesNC3tmB90jRYMKiXTqeuynGgzUwTzrKYyQvIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687915993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z7zBacHDQs5XDzK3EQhCsiEsNuCmOtS3dUUC7vdeZwA=; b=KpAh4GMuSOv7BMlSlfLeqy0Tri5GwUwqvKQ/dVXg49NXrXTpj0KrjpGh1Nr7WLRMBI8ZLe vLCod092U8CbUG5fWtILgO0cwfb+3jk9J+9X2WePsMeQUUaIk/IN55Wwy8TlK2ZYRhnFhJ QgswjTM0wst2UQqQCn91LOxgQLGHQj+VYxR4WYPe2mhWXiMyN2xef7TESuWSaQtJSM8lRL 1Do7JDcJDNhRA2uaz5VYYgFQgUx7nOPV/N1XUt+Vb/WtyGWuah0lbkk4RG3En9uiTGA/4k 2dBsfzAbkBioGanLixGVzppcHv4cwG6u6irn9rvIlPnDYPNWGThOptprmMyraA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687915993; a=rsa-sha256; cv=none; b=g4fTwxwx90rPkgd6oOJhMVLzhJCTMTH+Dh/mOE8mLjWa+A4/czlDjbWxeGp/9qKFBJOajl qyqrjFEsT1OxikTBolwSbutVDJlsT7yI0a8utkY/tJN29noun2MQMqCOsz/W3zyMptaFkS /W8SaPc/LeX3aKCTcKCr9BR5R5dP5eub+LZ/rT3CFER6oMB+D+UxtXD4AoBuPU1eDZ/ouc E8iQvlzRO194YIJNVRIqSROoEgfwddZG67SV+dOGq1+K08B5azniJewR7Q6LhhHB9XMcBP DBFhepKo1ooPv8HgO4qcaEbU64t8pdpfuzBDRiAGwDGXSYrHL3WepBmrRcGfTA== 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 4QrPGx00LSzFlM; Wed, 28 Jun 2023 01:33: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 35S1XCss045177; Wed, 28 Jun 2023 01:33:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S1XCkN045176; Wed, 28 Jun 2023 01:33:12 GMT (envelope-from git) Date: Wed, 28 Jun 2023 01:33:12 GMT Message-Id: <202306280133.35S1XCkN045176@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 12ce57e6d3e7 - stable/13 - pcib: Allocate the memory BAR with the MSI-X table. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 12ce57e6d3e770db9ca83a8cbaa8f332515ce3d7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=12ce57e6d3e770db9ca83a8cbaa8f332515ce3d7 commit 12ce57e6d3e770db9ca83a8cbaa8f332515ce3d7 Author: John Baldwin AuthorDate: 2023-06-19 16:15:48 +0000 Commit: John Baldwin CommitDate: 2023-06-28 01:32:47 +0000 pcib: Allocate the memory BAR with the MSI-X table. This is required for pci_alloc_msix() to work and to thus use MSI-X interrupts for PCI-e hotplug. Reported by: cperciva Reviewed by: cperciva MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D40581 (cherry picked from commit e6b838363fb473b5e35a8ae6a1da5e15f5b52960) --- sys/dev/pci/pci_pci.c | 23 ++++++++++++++++++----- sys/dev/pci/pcib_private.h | 1 + 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index b735da657a6c..4284b1cbf567 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -1324,7 +1324,7 @@ static int pcib_alloc_pcie_irq(struct pcib_softc *sc) { device_t dev; - int count, error, rid; + int count, error, mem_rid, rid; rid = -1; dev = sc->dev; @@ -1336,9 +1336,17 @@ pcib_alloc_pcie_irq(struct pcib_softc *sc) */ count = pci_msix_count(dev); if (count == 1) { - error = pci_alloc_msix(dev, &count); - if (error == 0) - rid = 1; + mem_rid = pci_msix_table_bar(dev); + sc->pcie_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + &mem_rid, RF_ACTIVE); + if (sc->pcie_mem == NULL) { + device_printf(dev, + "Failed to allocate BAR for MSI-X table\n"); + } else { + error = pci_alloc_msix(dev, &count); + if (error == 0) + rid = 1; + } } if (rid < 0 && pci_msi_count(dev) > 0) { @@ -1386,7 +1394,12 @@ pcib_release_pcie_irq(struct pcib_softc *sc) error = bus_free_resource(dev, SYS_RES_IRQ, sc->pcie_irq); if (error) return (error); - return (pci_release_msi(dev)); + error = pci_release_msi(dev); + if (error) + return (error); + if (sc->pcie_mem != NULL) + error = bus_free_resource(dev, SYS_RES_MEMORY, sc->pcie_mem); + return (error); } static void diff --git a/sys/dev/pci/pcib_private.h b/sys/dev/pci/pcib_private.h index af0b70a7add3..0dea325b6436 100644 --- a/sys/dev/pci/pcib_private.h +++ b/sys/dev/pci/pcib_private.h @@ -134,6 +134,7 @@ struct pcib_softc uint16_t pcie_link_sta; uint16_t pcie_slot_sta; uint32_t pcie_slot_cap; + struct resource *pcie_mem; struct resource *pcie_irq; void *pcie_ihand; struct task pcie_hp_task; From nobody Wed Jun 28 09:16:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrbYW2bHkz4jrJk; Wed, 28 Jun 2023 09:16: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 4QrbYV68Fcz3mYb; Wed, 28 Jun 2023 09:16:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687943790; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z+S1xaRq0+auGMuxHjv01gPUIpASQX38XhF+lupwBJQ=; b=mDcaOAPDUw+DnO3IEZdzD6f0JL2xpyp7Aj8Ir+tKhR6sWZw+JVcxRoqAi5CElBhU6LhBpW Ubqtj5iCZl7z96Lj1XqYrAwtGUt2rG0HkNrfXqYlmCXjZIsPrDxEHwSscEMZjXiKB0SF9h r2sGVeDZ/f74zqo9GCYaa/mOwMT8CSjbaOqJnAg4RL4tBYvJ3QS/wSx/sG78+NaOyM/rdy caq24/niotVw+XjJkjZF7UbH1Ij8Po9rHkDsBELCSDT2glh1+fkLtLtOzTnxI7aVckLVNM IH6tEI3WWj9EbU9Ku9PJ6sze5s+9V4NXdJnYw6W7crgAEDq0ATZ024MzYAC5pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687943790; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z+S1xaRq0+auGMuxHjv01gPUIpASQX38XhF+lupwBJQ=; b=vKpXL7ylY/5k4cqy9JIe2QFl++t0HTFPckZAyDt+iB/sj0w9kxhLREkW9eWBwG9YOj6EuF BXkkQakWF9oDm4THqR6NsizMiikg6K2RYsycT3LkrE7kCAA4wh9IpU3y4LZsSOTRKfZNGk T5/gV+bQw4UZuhPAqxaWsQKqum97HYPgHwLSUkffi5L8gUlAkwLbCtYVbnR9cng9PGPknL n+qmDxrRW8paAKKYrN384TAM4IUkYv8Y07+PQO4H/0lripwR+Py2Rj4LF/IdazpOA3+eNc 1L/R5kgJV6U4z3anV7O4S7OjxshboAO+DoGGTb/oCd0O73/Qvd5CR4ZVdG+R7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687943790; a=rsa-sha256; cv=none; b=itDEvCCCcRR6zAvRYv4We3Y0qFt+g1XmLTP1qLCaC6jA9sNzV0acTF6cjzGAGCzhQuileQ jpBtbkQc6w/L+qT6KzDY31pfy7x1hPIt6ZRwz6+6Q+Zg90znuLb6c4Ix7E/pF4LeQj5VDo RCHoOI8H2eO/vtDk7EyERYKK7Au5c9gEtEOVoWClTxQcTPzveMe4JlvEqSPqf5yDaXaYTo fJyPehhzPc52kUaImM4fm7E443iE3QOKfFyhLzedF/oBLwG732NLala/Zc86uOkzmsn+UX JEkemVnf+a2/Q8KKzXB5o5gPuETffbmzxWw1qIG4fGOgq2vbe/UJOyYEnMK/rg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4QrbYV5CV8zSdL; Wed, 28 Jun 2023 09:16:30 +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 35S9GUOg010119; Wed, 28 Jun 2023 09:16:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S9GUtM010118; Wed, 28 Jun 2023 09:16:30 GMT (envelope-from git) Date: Wed, 28 Jun 2023 09:16:30 GMT Message-Id: <202306280916.35S9GUtM010118@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: d0076c7a8653 - stable/12 - netinet: re-read IP length after PFIL hook List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/12 X-Git-Reftype: branch X-Git-Commit: d0076c7a86538d295ca2508dddc5d5429a2c4ff7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=d0076c7a86538d295ca2508dddc5d5429a2c4ff7 commit d0076c7a86538d295ca2508dddc5d5429a2c4ff7 Author: Kristof Provost AuthorDate: 2023-06-02 14:38:30 +0000 Commit: Kristof Provost CommitDate: 2023-06-28 09:15:59 +0000 netinet: re-read IP length after PFIL hook The pfil hook may modify the packet, so before we check its length (to decide if it needs to be fragmented or not) we should re-read that length. This is most likely to happen when pf is reassembling packets. In that scenario we'd receive the last fragment, which is likely to be a short packet, pf would reassemble it (likely exceeding the interface MTU) and then we'd transmit it without fragmenting, because we're comparing the MTU to the length of the last fragment, not the fully reassembled packet. See also: https://redmine.pfsense.org/issues/14396 Reviewed by: cy MFC after: 3 weeks Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D40395 (cherry picked from commit 185c1cddd7ef34db82bc3a25b3c92556416a4e55) --- sys/netinet/ip_output.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index 93b41376f3c2..a2e4513f1118 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -584,6 +584,7 @@ sendit: case 0: /* Continue normally */ ip = mtod(m, struct ip *); + ip_len = ntohs(ip->ip_len); break; case -1: /* Need to try again */ From nobody Wed Jun 28 09:16:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrbYW3msHz4jrLt; Wed, 28 Jun 2023 09:16: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 4QrbYW17BNz3mfv; Wed, 28 Jun 2023 09:16:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687943791; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z1Nlva4m0O0p0us6Uabl0yWbxzeMgkLNm9qInDK+OrI=; b=JKpLHw60Hm/UT+7+hCFZF5rYElVUAuTDC9uUR0H7cSmB+HM4ohT7WdMzO7G/TOq61CFPT4 cgbBdBeWPa0MgLXaGEKpTcyZf4I77t/2zFCH32cjYm6fD/M8zF0TM/BnEcUQ1fN7wPondt qSPFzsVpehTt7XJqffdutRv4VcTOU0xfg7tJZ6Ceb6L3u5L0iBs2vJ/tYjHtNciataXx+T h9pFKa1rgfcFc2j8xOV4zhabgKHtFcpZ3TDJ2tbRXmRnFip0QXA70UyB27UNf/V/HdT8CT /QZ38+4XIUTYpff1TWxu8PxODhsMcMt8foCfb2aIEs6n7Y80SSSJZiBUKW43Mw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687943791; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z1Nlva4m0O0p0us6Uabl0yWbxzeMgkLNm9qInDK+OrI=; b=Jl5xApSC97SujUCAhFzjmU+ngnLa1U8VC1HF2IKGgo7X6hq6SZ4gvbATBsMrzXsiepDE5Q /8Mn9cUr6cHcHI7ASSIIcafRsCOOzcMeehPPe/Dc8pQ+172taIn/5HEdAUriKNIBJTvAT9 neO+GP4pZAIMRGaSTCzTFoTuJBwuZWJxLhTEfsI2VYY5Sg9GWOC5WrfUqNP3XpGhREXBMS 2xW7YDRgx+DXI3icJboi64TdcMc6a30F5fezqcgWmcI5WPntTe1zdnEJsrAvrLJon/U0DU acAIQX/BjTLNfepf1hjERsZJRrDpc/IUxNFPcvuOQmDsLhxS2/sXcL25DPPyLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687943791; a=rsa-sha256; cv=none; b=xb5bLu0WQWyURpmh5Lv1PtZUpd68cZFChRrVP12EYZt2ZXV/hL8UPcqKKv08MoFpR7gWah xdw9mj3VclFOziaUICsrQ9+Rz/qr3KdPzrU/NBmmKpMYSgAz2SdYWpaYP/luwUf1E2A/3c P+68je5o2TxeCgK5pHcaSrLck2C9jjN50k7FIuLWALC1XbGY5y0J1aTBclLnbV99RZ/rB2 8yvSO09bn/5Ckzukyz/0+1iMOpoFelBb8f2/GM45D2umsRyk2gJDHf24vJwJ1ACCLglPY8 a5JbQiHTJ+pBtkAH98zu6qACy7lUg4jGb37CsQLB80PXy/tIjLQBRPzOlvAQnw== 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 4QrbYW0DP3zStJ; Wed, 28 Jun 2023 09:16: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 35S9GU4m010186; Wed, 28 Jun 2023 09:16:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35S9GURj010185; Wed, 28 Jun 2023 09:16:30 GMT (envelope-from git) Date: Wed, 28 Jun 2023 09:16:30 GMT Message-Id: <202306280916.35S9GURj010185@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 0da2f02c1b2a - stable/13 - netinet: re-read IP length after PFIL hook List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 0da2f02c1b2a2fb0daca8625a1992ee3a0426f44 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=0da2f02c1b2a2fb0daca8625a1992ee3a0426f44 commit 0da2f02c1b2a2fb0daca8625a1992ee3a0426f44 Author: Kristof Provost AuthorDate: 2023-06-02 14:38:30 +0000 Commit: Kristof Provost CommitDate: 2023-06-28 09:15:14 +0000 netinet: re-read IP length after PFIL hook The pfil hook may modify the packet, so before we check its length (to decide if it needs to be fragmented or not) we should re-read that length. This is most likely to happen when pf is reassembling packets. In that scenario we'd receive the last fragment, which is likely to be a short packet, pf would reassemble it (likely exceeding the interface MTU) and then we'd transmit it without fragmenting, because we're comparing the MTU to the length of the last fragment, not the fully reassembled packet. See also: https://redmine.pfsense.org/issues/14396 Reviewed by: cy MFC after: 3 weeks Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D40395 (cherry picked from commit 185c1cddd7ef34db82bc3a25b3c92556416a4e55) --- sys/netinet/ip_output.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index 595957afe146..60aac79886c3 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -705,6 +705,7 @@ sendit: case 0: /* Continue normally */ ip = mtod(m, struct ip *); + ip_len = ntohs(ip->ip_len); break; case -1: /* Need to try again */ From nobody Wed Jun 28 18:00:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrqBY27TJz4kPt4; Wed, 28 Jun 2023 18:00: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 4QrqBX5hFKz44Jm; Wed, 28 Jun 2023 18:00:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687975252; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WPdrgWz2x51Hz9zqZVjLgFcU8UFUxo+kOIk/S58rVI0=; b=T1YFQ8aaqg2zm3pnWyhNTbkdFiGOK1L63IALg+XGMd+OkxNntLxAHip7bml0NsS3GBRNNh zPtDe4bxE2PBxCI2Klg/bbcgP/ZmT/22+XqGXuKkKHOJjFEDtf1cCDf09/WNKfIi7O3K0c kkP4eBg8jIsfFWsSrUguso8n4pic3ueG3TVZZF5xUhsA8Lpg7uUYDUKto7VkafZvqxiIIn Snktdsb+Mh51kj105f+5jrem+5iN8gwrutO7rwOOKisjjw3RPKZJpIa1wOP2nSerMoFpCR RO6nNWamSiemHeb/3RtSRq7WWr6h7aWBMXaGJ47KO6vfFlNzNaXNzsrvwCJGXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687975252; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WPdrgWz2x51Hz9zqZVjLgFcU8UFUxo+kOIk/S58rVI0=; b=VWXwftz65af2Ap6i2bWk1GSk9NqPICsyDh/Ua/tePYIwcyThF15x7GbxKe9Yz874wl57mw lt0fmIQfJl8PYv91bDPbNzQyizbvDjhWfiIhoWb3wDvcprk7RS6WWuVqRZ6LOCmA1mCElJ DQC2E6uateLTelKkp+RjXStfyYtG9gvBtovnoNRmJ2yXHdkb5FD/yCzUKHEkZr0zjPLugF 0o11wR4SdR6SSPjfxlA0taxA0xbY/Kpzxp6cZsfEwI3skCy96ZzAQuSzebWeUJi4WVPrHT 4pI5fU6byJz5F04ME8/LBQUr2TnbGMPwU/GYN6ucz7dRm3nrrtTln6NdT/j15w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687975252; a=rsa-sha256; cv=none; b=mgJuBr1teg6lNtOpR3qorsauWLOeyBDkrvy1gABjA6uJq/9uhck+CilEPoUOMAYhtDMe/t 6dHAr6ko578D0qt2Is4GK7ielmVIDXpDQ5bRLC7QvKNl8FtXm+jYp537SIdogQjl/TLir+ hKOPKs7ElxV110ywXUflNcJwtDtQLEWMS0mOBbkvAvV62ewxYy1/h5X1YeYbLdkvx2+cM5 MFsVDQn/z6kPcSbRnaqU2u+/OCCze0Ie56zETM7tipPRxDZjRK3v/jr1Mp/VW5e6S8rH8o BS6jUe3s3Z0x3BlC1t84e29laEl+Cy6nTc5RNDjkM6J+qAzQT9Ls/4+hqKUCaQ== 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 4QrqBX4mHBzjjM; Wed, 28 Jun 2023 18:00: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 35SI0qZS088377; Wed, 28 Jun 2023 18:00:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35SI0quc088376; Wed, 28 Jun 2023 18:00:52 GMT (envelope-from git) Date: Wed, 28 Jun 2023 18:00:52 GMT Message-Id: <202306281800.35SI0quc088376@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 1706d72e36a0 - stable/13 - Apply llvm fix for hanging gcc builds on 32-bit arm List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1706d72e36a03da4e5c2bd166362dabf8f2b1d6a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=1706d72e36a03da4e5c2bd166362dabf8f2b1d6a commit 1706d72e36a03da4e5c2bd166362dabf8f2b1d6a Author: Dimitry Andric AuthorDate: 2023-06-19 18:32:40 +0000 Commit: Dimitry Andric CommitDate: 2023-06-28 17:59:58 +0000 Apply llvm fix for hanging gcc builds on 32-bit arm Merge commit 962c306a11d0 from llvm-project (by Florian Hahn): [LV] Don't consider pointer as uniform if it is also stored. Update isVectorizedMemAccessUse to also check if the pointer is stored. This prevents LV to incorrectly consider a pointer as uniform if it is used as both pointer and stored by the same StoreInst. Fixes #61396. PR: 271992 Reported by: John F. Carr MFC after: 3 days (cherry picked from commit dbbaf77801a8f30e49731395e85757f339f345bf) --- .../llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp index 5fd4e45d80fb..9d95cb25efa0 100644 --- a/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -4627,11 +4627,17 @@ void LoopVectorizationCostModel::collectLoopUniforms(ElementCount VF) { WideningDecision == CM_Interleave); }; - // Returns true if Ptr is the pointer operand of a memory access instruction - // I, and I is known to not require scalarization. + // I, I is known to not require scalarization, and the pointer is not also + // stored. auto isVectorizedMemAccessUse = [&](Instruction *I, Value *Ptr) -> bool { - return getLoadStorePointerOperand(I) == Ptr && isUniformDecision(I, VF); + auto GetStoredValue = [I]() -> Value * { + if (!isa(I)) + return nullptr; + return I->getOperand(0); + }; + return getLoadStorePointerOperand(I) == Ptr && isUniformDecision(I, VF) && + GetStoredValue() != Ptr; }; // Holds a list of values which are known to have at least one uniform use. @@ -4679,8 +4685,8 @@ void LoopVectorizationCostModel::collectLoopUniforms(ElementCount VF) { if (isa(I) && Legal->isUniformMemOp(I)) addToWorklistIfAllowed(&I); - if (isUniformDecision(&I, VF)) { - assert(isVectorizedMemAccessUse(&I, Ptr) && "consistency check"); + if (isVectorizedMemAccessUse(&I, Ptr)) { + assert(isUniformDecision(&I, VF) && "consistency check"); HasUniformUse.insert(Ptr); } } From nobody Wed Jun 28 18:15:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QrqWG2GSqz4kXw6; Wed, 28 Jun 2023 18:15: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 4QrqWG1jXwz48ts; Wed, 28 Jun 2023 18:15:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687976122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OL267aC1C5s18Yaf8kKUpAvIWdE+lsiLf7HvywgMXEc=; b=W9OTQaYS8sFgPnxK5SmUHhj3u6NDZoJxlp9JSrCRpO34LKb5seDmbXRm6D9CRLLTkK5zaA BNn2yDhWYHaYaPyYC5XM445Z2T9hVW69eFKSxxoE6290SnWSkuFu6hK8S6GQO3cGMmgdtO /r7a9mBKnV9Bcghn766H+P/jYFtRgsa6DELpXPn4vlAVzdb0fnb5jRh72KE/rzQ3xh8m1q S95EoyRcE0zYA8nSjLS7BctPNGbiBHI0lZKMpnwUX/KTORwoZke1ky/MiiwaO2cBERW1pa b/ele0umQuMnmImdCzliZ0wOMcsLWCE0PFI2ax0IHSmsT7tfLEdupVGmZW0zeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687976122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OL267aC1C5s18Yaf8kKUpAvIWdE+lsiLf7HvywgMXEc=; b=etmwUV75tBOi8V7IJWj+d4LbQrlPKTadbdfnNdVIMOEyeVHsmCj+fGef13joMgqP9gihk+ WV3QfE22mGptmebjo6S7/24l3JoUDb4+YE5iiqReIAdqrWc+EO9oDMHNyNTtniacaJMyIL ZRhC52QvMA19HWAK54e4LuDOJ6AOVwgOuZfjtD650y8Llf5gmyXiXTsBU2YumHNB1qPeIv SCgkWvjCHjmL0nze04TmcQsnmSMdfjhlXUp3muM9NDh0gSezBQWjtwEdbJ+5V4L+Vi5rre iy19Fhe8/AmokA9hwNG6Ca3r3CzIZs2aN3cCX7cpcuy5SfFYpGaFw6RDNJTT9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687976122; a=rsa-sha256; cv=none; b=BI4cMrJKvAUEoQ8APsKj0TW9czWI+LKq6CVZiKMCgSSd4eOkDi5KthlD5xXGyhmVewyo/M qo20+oDUbThtqxzDtMt10w73QooTnYe6l3OKH15ZI4MLs7ENSdqtah+B6EEMehC4voKRuV 6ffwUVdqB4ytaAOZDjQSNPHO4zUA7bPtx9HwJo7wYyQkU2qhIGlGst4bNHUYx8LWZj8/x5 7RAa2uuJUOf7dUp4do3knV9+GwOeogYjPrrhvtN0kxNPwfXx+3BDDk6uQIiJYcBdVYqksj Yvc77eDwPFB6Ar7pmXQ5gKRtm7NEFyp0QuFcvjdRxRGzKOf6BlVRNHfxc3ifDw== 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 4QrqWG0n19zkR3; Wed, 28 Jun 2023 18:15: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 35SIFM8T009238; Wed, 28 Jun 2023 18:15:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35SIFMLk009237; Wed, 28 Jun 2023 18:15:22 GMT (envelope-from git) Date: Wed, 28 Jun 2023 18:15:22 GMT Message-Id: <202306281815.35SIFMLk009237@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 2846052cd44e - stable/12 - Apply llvm fix for hanging gcc builds on 32-bit arm List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 2846052cd44ec28a99af774127f578d626d6f368 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=2846052cd44ec28a99af774127f578d626d6f368 commit 2846052cd44ec28a99af774127f578d626d6f368 Author: Dimitry Andric AuthorDate: 2023-06-19 18:32:40 +0000 Commit: Dimitry Andric CommitDate: 2023-06-28 18:00:06 +0000 Apply llvm fix for hanging gcc builds on 32-bit arm Merge commit 962c306a11d0 from llvm-project (by Florian Hahn): [LV] Don't consider pointer as uniform if it is also stored. Update isVectorizedMemAccessUse to also check if the pointer is stored. This prevents LV to incorrectly consider a pointer as uniform if it is used as both pointer and stored by the same StoreInst. Fixes #61396. PR: 271992 Reported by: John F. Carr MFC after: 3 days (cherry picked from commit dbbaf77801a8f30e49731395e85757f339f345bf) --- .../llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp index 671bc6b5212b..d131f48a7af3 100644 --- a/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/contrib/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -5415,11 +5415,17 @@ void LoopVectorizationCostModel::collectLoopUniforms(ElementCount VF) { WideningDecision == CM_Interleave); }; - // Returns true if Ptr is the pointer operand of a memory access instruction - // I, and I is known to not require scalarization. + // I, I is known to not require scalarization, and the pointer is not also + // stored. auto isVectorizedMemAccessUse = [&](Instruction *I, Value *Ptr) -> bool { - return getLoadStorePointerOperand(I) == Ptr && isUniformDecision(I, VF); + auto GetStoredValue = [I]() -> Value * { + if (!isa(I)) + return nullptr; + return I->getOperand(0); + }; + return getLoadStorePointerOperand(I) == Ptr && isUniformDecision(I, VF) && + GetStoredValue() != Ptr; }; // Holds a list of values which are known to have at least one uniform use. @@ -5458,8 +5464,8 @@ void LoopVectorizationCostModel::collectLoopUniforms(ElementCount VF) { if (isa(I) && Legal->isUniformMemOp(I)) addToWorklistIfAllowed(&I); - if (isUniformDecision(&I, VF)) { - assert(isVectorizedMemAccessUse(&I, Ptr) && "consistency check"); + if (isVectorizedMemAccessUse(&I, Ptr)) { + assert(isUniformDecision(&I, VF) && "consistency check"); HasUniformUse.insert(Ptr); } } From nobody Thu Jun 29 08:19:57 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFn4XlMz4knSt; Thu, 29 Jun 2023 08:19: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 4QsBFn464dz3sbf; Thu, 29 Jun 2023 08:19:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9S0CGklsE3pzcPKa5nacwuCfy5k483OVsMimsTYWe7g=; b=EKVefaO5fY7gtiz8v/uy7N5/AZUhmSiKQ0iYmgN+7pPXlDakRkboBu1aARnxDZm7gD3nLz MWdtzdZDjXbOElkwbcj8lq3SRy7wqA6vbdG2qTDqECImeGbHgwdEOcW58QK1nv+COciaU8 u88L06JwE4Pydpp5qP7JX0AjnxbDkSjZKKGsh5oNETNjRuLI87LBxujYd0rZ67qNt+C4P7 Vx/I37Q4LOj9/uKh2jPBOip14jEiV4DrX/7k8WInv7RqrdUVC5GTTPUcPIRDkyicA58gVt WiBL1nu+3Z+CmO0KiTj02ikM678dgPGd0IR4GzGRwV/6lMIfAdG92Rcu35o7Pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9S0CGklsE3pzcPKa5nacwuCfy5k483OVsMimsTYWe7g=; b=eg7SFjPhWzPbxSqcVwZCsH3hQ+FJNTNwsJjkTP6JhFRIUtEIUuxO1LzXE4qwDHsWmZ5YpI DMzL3QalWknMSHrJXcVijmWuHQV2/zKlw/xwRJnfnYmZNXjztXEvvg2+uZ23sEx6SfaIPQ Splg9vxWLetptIHLh/fWd8nLD2Nml13H5+YRK76/C108rzUolzWvZKclLVttKejCBUKS+s lpKEYA9ZdpqLOFA6ws73tWuiO2aOfDVSvBFRvLtI45Kp2zmyYg0QYIzRbAn7YuZc1SFuw7 B+lUubdgoF2icXEz/5D+JslNAgQPgyXv+MzLANNvZMZF1dmAaekbOCWxQOe5CQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026797; a=rsa-sha256; cv=none; b=Sf8vxjOMT0WDo86CSoz0zERFTsaX/Je2xDctiwxqWhqKxOn2u4iNdk7iGRiu+9GfgS2ZsG nPv2yvL3T9RvnTe6c6wfAXz7R5gpynao0eNNBYvsCfkbbFd36c2pU8Rf8zlhG27utrLx0G 7V/10GPI7Hxx42wU902QPCePoqAolvaI9Ra0h2VLghnWZk95b5+uLEEKYbTk2hpGHivtBC LpDN3/Iqpthy7kjh/Xy0R5ue1xMv6JAGzy3fWIiJBkYoipG5DqasGC8HxAw9nlw3emh+2F EccUPwx6GyqpxaE/Ju+ookD2Qram2UoNM83A9NSDTyYWe3MeY7LoCxGI2D8mEw== 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 4QsBFn34S7z17QG; Thu, 29 Jun 2023 08:19:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8JvO1074467; Thu, 29 Jun 2023 08:19:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8JvfF074466; Thu, 29 Jun 2023 08:19:57 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:19:57 GMT Message-Id: <202306290819.35T8JvfF074466@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: fdab8b794ac3 - stable/13 - linsysfs(4): Keep Linux compatible sysfs the same as Ubuntu List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: fdab8b794ac3e84dacf0fea586b330197baf6f76 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=fdab8b794ac3e84dacf0fea586b330197baf6f76 commit fdab8b794ac3e84dacf0fea586b330197baf6f76 Author: Vico Chen AuthorDate: 2023-03-25 10:41:04 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:13 +0000 linsysfs(4): Keep Linux compatible sysfs the same as Ubuntu By checking Ubuntu, there is no `/sys/subsystem' in sysfs. To compatible with Ubuntu, delete the 'subsystem' creation in Linux compatible module. On the other hand, the sysfs `/sys/subsystem' cause failure for some Linux udev cases. In Linux udev source code, there is a function named `scan_devices_all', and it will scan `/sys/subsystem' if it is existed, but now there are nothing in /sys/subsystem `, and it returns empty to cause some use cases failed. Reviewed by: dchagin Differential Revision: https://reviews.freebsd.org/D38885 MFC after: 1 month XMFC with: ifAPI (cherry picked from commit 1f0c8bfd650422a30aa6fcf01da860b8d43628a8) --- sys/compat/linsysfs/linsysfs.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/sys/compat/linsysfs/linsysfs.c b/sys/compat/linsysfs/linsysfs.c index 9ec066ac34c4..afb4e6466006 100644 --- a/sys/compat/linsysfs/linsysfs.c +++ b/sys/compat/linsysfs/linsysfs.c @@ -680,9 +680,6 @@ linsysfs_init(PFS_INIT_ARGS) /* /sys/kernel/debug, mountpoint for lindebugfs. */ pfs_create_dir(kernel, "debug", NULL, NULL, NULL, 0); - /* /sys/subsystem/... */ - dir = pfs_create_dir(root, "subsystem", NULL, NULL, NULL, 0); - return (0); } From nobody Thu Jun 29 08:19:58 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFp6MSbz4knT1; Thu, 29 Jun 2023 08:19: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 4QsBFp5YzWz3sWf; Thu, 29 Jun 2023 08:19:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026798; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=spX6D6rXptJzzDqCjK2llHo5OJX3f3dOKgQM1iAElL8=; b=fRFjYDqNZbBSsrmg/81SpcHonOrACLiee4i7z3gzmH8rfHk5sPG0H5BZ+Tsdivh4loKxGI R/a0+W0kQkm6U1ry5PEZb2g5CA1uCKCD0FWvU4u3fg1gJJl5lYKBdeRVb68l7g9MA4jTIj HPvkRZ72cyrhmDq11NaHAGVRx4oheBkof8nkKbjSaKVBA1e+8n3U7QlH/yJLi9ukP17QMB EGGiAqg0xt/XZHMUKs2DSjhJZOvu6k7zbcD8qoDlcuS8+xqWyROO8dHpZNIY0ov94wcRm5 nsJ9DzdlgAVEOCJDVZAoj9e1ladPPDjk0cJJcGg5a/TAz/ZcnCuG31U78+vDlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026798; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=spX6D6rXptJzzDqCjK2llHo5OJX3f3dOKgQM1iAElL8=; b=yRyWmKdjdF5MLXYQo80O2REMFB0vKVbRuX4w1u/NE/COWxPXBZihkSx2xrpw1FDJ2B+0Vy HSnKJ3C0e53e9/u+Bh8F05gK70o1GaqRcg0TUhUHnZKO3UQrVhT5zM7h3HiCIDkM7/zyca bUGeviHo3ANMVIdsfHhexaT/7Z5vj5msvJMgWcPGJ5+t2995WRd4cfNlnLJ5h+BqB5TmFg NOw8CMIFjdvbKyM+cWK/RovYpAhopdQ7fjhHThxNM7pSg/oEyljjUNbVZu6C/bhQO98bTg 4qui2SWSjBUROADsQdkGhdg+gb6nZvDyrHt8aeeYLRS4pvTsx4vwTjv+J7cRxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026798; a=rsa-sha256; cv=none; b=L9AwA8JuA3WfIN79k9R+VEgzD5zEz4TWvNXB37vo1MODgosHwUQvo631A7GtnBW2EHcBSY bgyZfsTGp2GJ9f+xU12hYgDibIDq86kzyRr41/riSRIMi7kG6k2ZPUReVQpGICWrw48cmh WH/k49cQmT95yfptvzjxPVo/It0U/Ih+fUFKokuMGAjoQSPrXUxGrXPDmsscH+t+F5HDGx Dbc8eIk2gY/qwNntCoBK/gmkxb0pcdCmIufb29zJ7DtDJtc5yBK8vL5aWsAzHoQ+8iy3Fk wb9i9ugOq3KTlgF4wiqJj9tFvzs7CfismgoQwvpI+fUNeMDc0y6Jb7T9g/n5wg== 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 4QsBFp3VrMz17q1; Thu, 29 Jun 2023 08:19:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8JwBh074492; Thu, 29 Jun 2023 08:19:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Jws5074491; Thu, 29 Jun 2023 08:19:58 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:19:58 GMT Message-Id: <202306290819.35T8Jws5074491@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 14ee31bcccfb - stable/13 - pseudofs: Microoptimize struct pfs_node List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 14ee31bcccfbd6ef14548f0129fcaa5a113e4c82 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=14ee31bcccfbd6ef14548f0129fcaa5a113e4c82 commit 14ee31bcccfbd6ef14548f0129fcaa5a113e4c82 Author: Dmitry Chagin AuthorDate: 2023-04-02 08:20:07 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:17 +0000 pseudofs: Microoptimize struct pfs_node Since 81167243b the size of struct pfs_node is 280 bytes, so the kernel memory allocator takes memory from 384 bytes sized bucket. However, the length of the node name is mostly short, e.g., for Linux emulation layer it is up to 16 bytes. The size of struct pfs_node w/o pfs_name is 152 bytes, i.e., we have 104 bytes left to fit the node name into the 256 bytes-sized bucket. Reviewed by: des Differential revision: https://reviews.freebsd.org/D39381 MFC after: 1 month (cherry picked from commit 7f72324346ea154a92671fc913dbe82c0287501a) --- sys/fs/pseudofs/pseudofs.c | 8 +++++--- sys/fs/pseudofs/pseudofs.h | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/fs/pseudofs/pseudofs.c b/sys/fs/pseudofs/pseudofs.c index 3c82021a8148..15a714e23bc6 100644 --- a/sys/fs/pseudofs/pseudofs.c +++ b/sys/fs/pseudofs/pseudofs.c @@ -72,18 +72,20 @@ pfs_alloc_node_flags(struct pfs_info *pi, const char *name, pfs_type_t type, int { struct pfs_node *pn; int malloc_flags; + size_t len; - KASSERT(strlen(name) < PFS_NAMELEN, + len = strlen(name); + KASSERT(len < PFS_NAMELEN, ("%s(): node name is too long", __func__)); if (flags & PFS_NOWAIT) malloc_flags = M_NOWAIT | M_ZERO; else malloc_flags = M_WAITOK | M_ZERO; - pn = malloc(sizeof *pn, M_PFSNODES, malloc_flags); + pn = malloc(sizeof(*pn) + len + 1, M_PFSNODES, malloc_flags); if (pn == NULL) return (NULL); mtx_init(&pn->pn_mutex, "pfs_node", NULL, MTX_DEF | MTX_DUPOK); - strlcpy(pn->pn_name, name, sizeof pn->pn_name); + memcpy(pn->pn_name, name, len); pn->pn_type = type; pn->pn_info = pi; return (pn); diff --git a/sys/fs/pseudofs/pseudofs.h b/sys/fs/pseudofs/pseudofs.h index 158f74575e33..e355e5f5609f 100644 --- a/sys/fs/pseudofs/pseudofs.h +++ b/sys/fs/pseudofs/pseudofs.h @@ -219,7 +219,6 @@ struct pfs_info { * is not enforcable by WITNESS. */ struct pfs_node { - char pn_name[PFS_NAMELEN]; pfs_type_t pn_type; int pn_flags; struct mtx pn_mutex; @@ -240,6 +239,7 @@ struct pfs_node { struct pfs_node *pn_nodes; /* (o) */ struct pfs_node *pn_last_node; /* (o) */ struct pfs_node *pn_next; /* (p) */ + char pn_name[]; /* Keep it last */ }; /* From nobody Thu Jun 29 08:19:59 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFr0m4mz4knQn; Thu, 29 Jun 2023 08:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBFq5Xh3z3sfY; Thu, 29 Jun 2023 08:19:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UuCvCVnvkPoFyG7yvPWqk771eCXXxBDghd3gQHZxggI=; b=TjPQhrREoa+8kOdzcme8vzcfg3Ws7eMHEIIwgs1XQgFpx2pRIQHsXzp4VZkz0HC8q/HxJm +KjKmTHe4QKWyq1mCKq2QGhgIl5C0q5Lrw0EAL3gD3ytvZ7N7DxDDt7eHSF2E9hXjHQKEN hBtTr8OGIWeV9l/lHnnLqCa2EWjjFJtMqoIpD1Fg/SMYV9COlFOraRkW8ocWX+mIdU6dT6 SQcI2UNoc37K1U8fWSZCwu7kPVl0c7LZ9UYWwx1v0Di6TRqePwRbUAi154ct5x7OwYeuhb IIsivWbYylPvoDo2/BV3LTpM0i10ygVmWXe28cwcsOHezMxoS9BgYXz+U8HL/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UuCvCVnvkPoFyG7yvPWqk771eCXXxBDghd3gQHZxggI=; b=hM1SYNDeMQazHhCofyhWkbytS6LmR4Y9thgknWF1HOM1vwUGQARhvsrVQ97fDpqlp23UcS +mFkE3Mo28oyvk2r//M3xJO5r2HmZBZpagSaCy7/szYNkjWg8MS9MiA6UkRU9shzmCPex9 5qJY6dpWSXmA8X/yRzGRytiFPUvEGIF3IVhkeo+JvEH7SxQ/20wpBZkHeaPKWAmVOd+91G pFGRmiRIkBPPYULzahomJYy6azjTDY8vN9bCKU7Oo8zbuQmYLTa/FPKj35ozHDAG3vXOeW yhBfPYZE3zMk7yXRsjKV3cujzp3itBR/IiZqOots7F/nbteSuoAvc2iiieNvgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026799; a=rsa-sha256; cv=none; b=dMhAGcR58f0dbgrQLM7ibfqJpMOsPhFBbaeIMBcol5bsJv/1pXcOL2LM+ZDG4Dbv/HmhM+ I1mdsgtGo6XRB9Ka4nLhitD3+ThwXrKyZH4rEAGrH2dCOF5zmkD/K/vjlBcHB1BhinxvCw r1cdbpDp7QjGf8aU5taDijuexRX9aGlx5xnfKRx9YOBqR9LjcfgQAqgdxWN4GzZ329n0XM mQO789e2wfkRJ07ziXSBxhPEZ/WH7T+BKxM0/CKk4x3Qzj5fLF4JVW3W2YATSCYXJ2FxVD SI9C+waVyyNAKpPHCk9mEUxrNg38rqiXPPTlJwuoKQGD9n6FrT62wvAqchaS3g== 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 4QsBFq4cMhz17sN; Thu, 29 Jun 2023 08:19:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8JxFh074511; Thu, 29 Jun 2023 08:19:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8JxD9074510; Thu, 29 Jun 2023 08:19:59 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:19:59 GMT Message-Id: <202306290819.35T8JxD9074510@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: c38bb48b04c9 - stable/13 - pseudofs: Allow vis callback to be called for a named node List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: c38bb48b04c9bb24e549eee6a099d9f9362b1ae8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=c38bb48b04c9bb24e549eee6a099d9f9362b1ae8 commit c38bb48b04c9bb24e549eee6a099d9f9362b1ae8 Author: Dmitry Chagin AuthorDate: 2023-04-02 08:21:15 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:17 +0000 pseudofs: Allow vis callback to be called for a named node This will be used later in the linsysfs module to filter out VNETs. Reviewed by: des Differential revision: https://reviews.freebsd.org/D39382 MFC after: 1 month (cherry picked from commit 405c0c04edb6143405426da6a5273f4c5998d594) --- sys/fs/pseudofs/pseudofs_internal.h | 7 ++++--- sys/fs/pseudofs/pseudofs_vnops.c | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/sys/fs/pseudofs/pseudofs_internal.h b/sys/fs/pseudofs/pseudofs_internal.h index 2cc8f32b1d01..85df317d30cc 100644 --- a/sys/fs/pseudofs/pseudofs_internal.h +++ b/sys/fs/pseudofs/pseudofs_internal.h @@ -156,9 +156,10 @@ pn_vis(PFS_VIS_ARGS) { PFS_TRACE(("%s", pn->pn_name)); - KASSERT(pn->pn_vis != NULL, ("%s(): no callback", __func__)); - KASSERT(p != NULL, ("%s(): no process", __func__)); - PROC_LOCK_ASSERT(p, MA_OWNED); + if (pn->pn_vis == NULL) + return (1); + if (p != NULL) + PROC_LOCK_ASSERT(p, MA_OWNED); pfs_assert_not_owned(pn); return ((pn->pn_vis)(PFS_VIS_ARGNAMES)); } diff --git a/sys/fs/pseudofs/pseudofs_vnops.c b/sys/fs/pseudofs/pseudofs_vnops.c index 29bb1544e7ad..f58b1f8bdc47 100644 --- a/sys/fs/pseudofs/pseudofs_vnops.c +++ b/sys/fs/pseudofs/pseudofs_vnops.c @@ -119,7 +119,7 @@ pfs_visible(struct thread *td, struct pfs_node *pn, pid_t pid, if (p) *p = NULL; if (pid == NO_PID) - PFS_RETURN (1); + PFS_RETURN (pn_vis(td, NULL, pn)); proc = pfind(pid); if (proc == NULL) PFS_RETURN (0); @@ -826,7 +826,7 @@ pfs_iterate(struct thread *td, struct proc *proc, struct pfs_node *pd, } else if (proc != NULL) { visible = pfs_visible_proc(td, *pn, proc); } else { - visible = 1; + visible = pn_vis(td, NULL, *pn); } if (!visible) goto again; From nobody Thu Jun 29 08:20:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFr738xz4knFs; Thu, 29 Jun 2023 08:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBFr61Lgz3slK; Thu, 29 Jun 2023 08:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=McZ/o/sYj5pdub2ENN2M/5DPqUwKIhvL4UbnO3QV7mY=; b=ewmZML1UeBEBKI+o2JLAGv9t8wcja9JDwlsrtwIYeOkmZU58rsw6ou9j7iFc5w6ZuV52kY 60g0j/A2aWcDLvMVa1YXX/NlL3Gt0eSHY4HPYsasbNBHZGqqz/FEFJS8jILs+zCK2M0cPK ojxkvXoEbN389764BsgInc7eqvyRfRvNFJIEfooMfoh9bEFEYoUfBsDLpH11r1wDohwEy1 kJEyu/Q+ATCmyTqA9j7xce8TIlUe39tLKTGNSerZ3XMkR0DPPXlOEd8YPtofwlsZscxWsE fw5hMjyafKDzXMiKWhRyc1aSNDaQMLnAAzlZZW7eycYREZl/IqOzIY+Ptzq8tQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=McZ/o/sYj5pdub2ENN2M/5DPqUwKIhvL4UbnO3QV7mY=; b=hIrEjWs7o/iNKJam/DOTdYXeG3tazgpOipQX0LpTYrU9zIYT2M6n1oZOXvNwRaYtjJIkhF pTrcPQVB2kobqmOm3FQmJYwXrLGOTNtowPIuQ29exY4uXKsHPkg8BaeLqYdTodFM+X8/n1 mi9gfTvQh7J+Z55sP2IbWy3BIDNtsX2qemCCf79ZNhYWN8uPusbb3PROBYQoY3RzqLVOQz Ka9Kpx1RU5X7py9KrvMVHzenOjwxc/h4nFGUXR6w/KDggC8dKPP86MMoCTEQFKpHE4+PbY PfFjd2mEaQFqeCyUQFGga7p02eKzZ1hFoCz8bgHRsWnnOD5dDxY9eo1z1s2xnQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026800; a=rsa-sha256; cv=none; b=SgkmIPArFr0wgW29L4KlfpF+UR87cNCTos7Bg+Et4Qg0S+eM4tmLvDrKQmPfRiUPS9PBm7 CUJ/TDwvWUP48r47nr+JCf7J18eo9lDHMVLvmNFQgrBNTH6ztrylxAOqD6CN+gzySOZKL2 Rtsup1MPQsu2VTbvQWCl/5nIV3MbM+qJSrmIQfn9CODK1MpmP5NhDEMQZ1ERWKX89QXUvW tu38xCz5IYY7DiH+zy6QYfMdXFNOiz3gbv+JCHDrr/38V/7ca0f6+SNutnHLa8Mj9W3KZE csMi+rBLYSukg3R20z5B1bzFatAkUjWAAFDzEZrQEHkL+Cl7QXOQZZuajkgAiA== 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 4QsBFr52lnz17gd; Thu, 29 Jun 2023 08:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K0o5075734; Thu, 29 Jun 2023 08:20:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K0XL075715; Thu, 29 Jun 2023 08:20:00 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:00 GMT Message-Id: <202306290820.35T8K0XL075715@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: b73e978d7d17 - stable/13 - pseudofs: Simplify pfs_visible_proc List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: b73e978d7d17c8e7c995d631c722c654b12df1cd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=b73e978d7d17c8e7c995d631c722c654b12df1cd commit b73e978d7d17c8e7c995d631c722c654b12df1cd Author: Dmitry Chagin AuthorDate: 2023-04-02 08:24:10 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:17 +0000 pseudofs: Simplify pfs_visible_proc Reviewed by: des Differential revision: https://reviews.freebsd.org/D39383 MFC after: 1 month (cherry picked from commit a32ed5ec05d9bc01b8e70b45ff510d2f972a0877) --- sys/fs/pseudofs/pseudofs_vnops.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/sys/fs/pseudofs/pseudofs_vnops.c b/sys/fs/pseudofs/pseudofs_vnops.c index f58b1f8bdc47..e0c795ed2a25 100644 --- a/sys/fs/pseudofs/pseudofs_vnops.c +++ b/sys/fs/pseudofs/pseudofs_vnops.c @@ -90,21 +90,17 @@ pn_fileno(struct pfs_node *pn, pid_t pid) static int pfs_visible_proc(struct thread *td, struct pfs_node *pn, struct proc *proc) { - int visible; if (proc == NULL) return (0); PROC_LOCK_ASSERT(proc, MA_OWNED); - visible = ((proc->p_flag & P_WEXIT) == 0); - if (visible) - visible = (p_cansee(td, proc) == 0); - if (visible && pn->pn_vis != NULL) - visible = pn_vis(td, proc, pn); - if (!visible) + if ((proc->p_flag & P_WEXIT) != 0) return (0); - return (1); + if (p_cansee(td, proc) != 0) + return (0); + return (pn_vis(td, proc, pn)); } static int From nobody Thu Jun 29 08:20:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFt0JMsz4knY7; Thu, 29 Jun 2023 08:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBFs6tsNz3srP; Thu, 29 Jun 2023 08:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c/Rz9zNb/GnAJKbzBTxMcr6SncfBKCZpmcCU40brrDI=; b=KDPsyZsM8h4lH0MjzmK+6eWwJuAgnk5YHQ1vqmOIChw0I6DAwKp62c++DbCD8OzIW3gjmf c/ueM1Q1mhw5EYKiPRLa1cDP0Q/uO+gr1tvFApgtJKHi0alrOy2v4/qhiQVljwkEIIsfHG ejhtxKwwvPXFZqHLuDb1NPQvGIMr661e+u+SAXTHlCugk/uKQIIp4RYZ/OXJDXEmYOzWwF AIm7iowwJFLAV4P3nEt9H8feGPZYbp9ORvPF7LJRyJPxV3E8NCNO93jL6Z9yV9ftXJP+1B fQALTHa/Yoj6muGAIGNaKm5IpMOqsnLNLHayAhsHPVyHrZ5reDju6mTYGCvsdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c/Rz9zNb/GnAJKbzBTxMcr6SncfBKCZpmcCU40brrDI=; b=GnI1w91BjJphXOs8oEI8rseCTQ8ot7NtO+6dQVEXlub+JSv1T/jrdvjtNe6VlsYPvrrs1z TFEVaI9XNPfNxU1zSvPSwcwWTTvtKrgA4Hc/ZiPfTjXBGRmPeZn5f73TxOLQ+sebrarpuL KXiE2nESxDPoGOVKAN315b0y4yjEzZqdRG3P1ruDpNF3BEAl1Q/qs0uLSttyWowniZZ1Ou qwa+78Zh5pu5Uuk3JvUhMNZZr0kBKYKWkWwuVv5RzUPXoRDPAmjM2kaRiM/ertxSNpq5ud KjeaTpVnTCWjmiv2XiVAuAjqBB+qBSya8BgKTGQx7/V5Kn1BVhLOjYkE+bAOFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026802; a=rsa-sha256; cv=none; b=MzP1XcmloGpxtqoMYDACKgjnSXGOeIukKY4jxGQ+UTBTNneixkRn6Haxva23jRGXq1wZZt Uanw/qbngkeGUb8m7elgYt4y9rsaYTzXMepDAjhyi2w716hMIuqZ+JPglF+7cdSgNYUrob 57CA6YWmWPsAGJikDX86Xil6Dy8Hq8COKcFdxc9MWkvVFMmb1zHusPOYRG7ZD991VgiWM0 Je55sLHCPH2ss8QtMBfa0/om3skMTwjEZo3Qs/W+W3b/uQnL/IoVtjrWeSyN8TonktVZLp JqldhGFnVIIHuLvZ7ID3t6Zj77eV72agGpZf97GX4/5s2qTd9yRzC4kH+C1t1A== 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 4QsBFs5Y6Hz17QJ; Thu, 29 Jun 2023 08:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K1w9076471; Thu, 29 Jun 2023 08:20:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K1pg076468; Thu, 29 Jun 2023 08:20:01 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:01 GMT Message-Id: <202306290820.35T8K1pg076468@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 49f134373de6 - stable/13 - linux(4): Modify close_range syscall to match Linux List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 49f134373de627561875087827dc1508405a89e3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=49f134373de627561875087827dc1508405a89e3 commit 49f134373de627561875087827dc1508405a89e3 Author: Dmitry Chagin AuthorDate: 2023-04-04 20:23:24 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:18 +0000 linux(4): Modify close_range syscall to match Linux MFC after: 2 weeks (cherry picked from commit 1c27dce1f8979e7bbe3ca51f4f2db38b202042a0) --- sys/amd64/linux/syscalls.master | 8 ++++++-- sys/amd64/linux32/syscalls.master | 8 ++++++-- sys/arm64/linux/syscalls.master | 8 ++++++-- sys/i386/linux/syscalls.master | 8 ++++++-- 4 files changed, 24 insertions(+), 8 deletions(-) diff --git a/sys/amd64/linux/syscalls.master b/sys/amd64/linux/syscalls.master index 896bbcc5e652..90476b15433f 100644 --- a/sys/amd64/linux/syscalls.master +++ b/sys/amd64/linux/syscalls.master @@ -2097,8 +2097,12 @@ l_size_t usize ); } -436 AUE_NULL STD { - int linux_close_range(void); +436 AUE_CLOSERANGE STD { + int linux_close_range( + l_uint first, + l_uint last, + l_uint flags + ); } 437 AUE_NULL STD { int linux_openat2(void); diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master index 935f44d5b34f..4561667dc3cc 100644 --- a/sys/amd64/linux32/syscalls.master +++ b/sys/amd64/linux32/syscalls.master @@ -2524,8 +2524,12 @@ l_size_t usize ); } -436 AUE_NULL STD { - int linux_close_range(void); +436 AUE_CLOSERANGE STD { + int linux_close_range( + l_uint first, + l_uint last, + l_uint flags + ); } 437 AUE_NULL STD { int linux_openat2(void); diff --git a/sys/arm64/linux/syscalls.master b/sys/arm64/linux/syscalls.master index c31e85956ca2..647fd0262e8c 100644 --- a/sys/arm64/linux/syscalls.master +++ b/sys/arm64/linux/syscalls.master @@ -1771,8 +1771,12 @@ l_size_t usize ); } -436 AUE_NULL STD { - int linux_close_range(void); +436 AUE_CLOSERANGE STD { + int linux_close_range( + l_uint first, + l_uint last, + l_uint flags + ); } 437 AUE_NULL STD { int linux_openat2(void); diff --git a/sys/i386/linux/syscalls.master b/sys/i386/linux/syscalls.master index d0e23e90cc38..a5b246c0822a 100644 --- a/sys/i386/linux/syscalls.master +++ b/sys/i386/linux/syscalls.master @@ -2542,8 +2542,12 @@ l_size_t usize ); } -436 AUE_NULL STD { - int linux_close_range(void); +436 AUE_CLOSERANGE STD { + int linux_close_range( + l_uint first, + l_uint last, + l_uint flags + ); } 437 AUE_NULL STD { int linux_openat2(void); From nobody Thu Jun 29 08:20:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFt6t1Jz4knJC; Thu, 29 Jun 2023 08:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBFt6gtDz3spR; Thu, 29 Jun 2023 08:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=p/3X3xGkAlQDiV23cMrgTfow17HDPQiJXcQNPugLRuM=; b=r/Fiw5pqdSSL8tumfebZdHJvTPRGjEEc0raIhFR6GuL8lXJY+SLT5SZQJcutgkR7pcb+A9 3VMGiSl4hOb1geOYMcQS6DGCToFbi62vNvae9naHQhV8TOinrkz+FIi6vvM3kVzmaaJufo IOBk3PcrnCXWZXUoQYx8WGpPJ0YJbOkVTftxQOkL2uuuozB4zJlhZtlSdhle460q7ySYSj FaXEOxxfTBYOzYiv1LjwgczzzmQ3B5bCagcReWXW08C45NM55j0eUAkKIOU50LBfMVzMfa nHG210ekU1nrczgnkfgfuArTHrj5dj1wSSXS6pMjOTIibr3muvvmOr1mc9QDsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=p/3X3xGkAlQDiV23cMrgTfow17HDPQiJXcQNPugLRuM=; b=RX1WUpv04nJBM65RKeOocOix7PLU+2/yya1Xo/9C9StxwZqpG4oPy0NkVPFx+QI/a1vhyv dUoOnXing05JxMqt9ATUtnDNvup0ayCFbHLIBS8bTsymWnN/yvPG4HUzf+swCYaoWdfl/O khBDt8aO7iE2HjvIMiziD4WHWQjoddA9p7O0Fg1uEMSAN3T+Uf5Xp8hxbHudPA6fDoIogh nuru/qnT36Mo55x9oGnW+MXiX0D+yGCw9awzYOOhlZ82lMAmONwnqoWr7wUv9SaF5LNCjU 4a7s8zoCnm4xsRFKVaktGnye33SJ6xvLy+I+4435UPv68LiY2f9bsepXPowsdQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026802; a=rsa-sha256; cv=none; b=i7FW7iXndBiBvlCEbNRFFNNiZwrFMzGjLBAIbS7t/+QJYo7klpFwnA+PdK0b34WVJhGUxS 4YS1f3XOtJpCdz6Ao6vi2sY5xINa8LEPZCUJyVJYkOzQfu3FV8jUS6qpKJvqATgwlSb9jh Ul8vWxHm35SQvO9CHjW/Sr2tiYzYbJDoPJ7j5aMiNW0efX9T3HTJRfEmWuA7QZO+mjeEBW cHRYrYkypgHwi2MFBJUl7sWwf3f0CcaCXJxvqPbvK/7+2fA85E1hELcamUlK3naCmjxs2W yrp3DbHiPwtz4iqq8zZzOujawbtHJf286kZtr0kdlKN//jSDnwY80iW+psrQew== 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 4QsBFt5cSwz17sP; Thu, 29 Jun 2023 08:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K2sR076730; Thu, 29 Jun 2023 08:20:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K2pD076723; Thu, 29 Jun 2023 08:20:02 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:02 GMT Message-Id: <202306290820.35T8K2pD076723@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 416e0455c488 - stable/13 - linux(4): Regen for close_range syscall List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 416e0455c488d500537911c4e54f356036de7cba Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=416e0455c488d500537911c4e54f356036de7cba commit 416e0455c488d500537911c4e54f356036de7cba Author: Dmitry Chagin AuthorDate: 2023-04-04 20:23:37 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:22 +0000 linux(4): Regen for close_range syscall MFC after: 2 weeks (cherry picked from commit 50111714f5a46add66264d48456c32b7d3d0036a) --- sys/amd64/linux/linux_proto.h | 6 ++++-- sys/amd64/linux/linux_sysent.c | 2 +- sys/amd64/linux/linux_systrace_args.c | 22 +++++++++++++++++++++- sys/amd64/linux32/linux32_proto.h | 6 ++++-- sys/amd64/linux32/linux32_sysent.c | 2 +- sys/amd64/linux32/linux32_systrace_args.c | 22 +++++++++++++++++++++- sys/arm64/linux/linux_proto.h | 6 ++++-- sys/arm64/linux/linux_sysent.c | 2 +- sys/arm64/linux/linux_systrace_args.c | 22 +++++++++++++++++++++- sys/i386/linux/linux_proto.h | 6 ++++-- sys/i386/linux/linux_sysent.c | 2 +- sys/i386/linux/linux_systrace_args.c | 22 +++++++++++++++++++++- 12 files changed, 104 insertions(+), 16 deletions(-) diff --git a/sys/amd64/linux/linux_proto.h b/sys/amd64/linux/linux_proto.h index de8456e16562..fcb4a718a665 100644 --- a/sys/amd64/linux/linux_proto.h +++ b/sys/amd64/linux/linux_proto.h @@ -1363,7 +1363,9 @@ struct linux_clone3_args { char usize_l_[PADL_(l_size_t)]; l_size_t usize; char usize_r_[PADR_(l_size_t)]; }; struct linux_close_range_args { - register_t dummy; + char first_l_[PADL_(l_uint)]; l_uint first; char first_r_[PADR_(l_uint)]; + char last_l_[PADL_(l_uint)]; l_uint last; char last_r_[PADR_(l_uint)]; + char flags_l_[PADL_(l_uint)]; l_uint flags; char flags_r_[PADR_(l_uint)]; }; struct linux_openat2_args { register_t dummy; @@ -2028,7 +2030,7 @@ int linux_mount_setattr(struct thread *, struct linux_mount_setattr_args *); #define LINUX_SYS_AUE_linux_fspick AUE_NULL #define LINUX_SYS_AUE_linux_pidfd_open AUE_NULL #define LINUX_SYS_AUE_linux_clone3 AUE_NULL -#define LINUX_SYS_AUE_linux_close_range AUE_NULL +#define LINUX_SYS_AUE_linux_close_range AUE_CLOSERANGE #define LINUX_SYS_AUE_linux_openat2 AUE_NULL #define LINUX_SYS_AUE_linux_pidfd_getfd AUE_NULL #define LINUX_SYS_AUE_linux_faccessat2 AUE_NULL diff --git a/sys/amd64/linux/linux_sysent.c b/sys/amd64/linux/linux_sysent.c index 708ae7e50c72..23f923402f9d 100644 --- a/sys/amd64/linux/linux_sysent.c +++ b/sys/amd64/linux/linux_sysent.c @@ -453,7 +453,7 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fspick, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 433 = linux_fspick */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_open, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 434 = linux_pidfd_open */ { .sy_narg = AS(linux_clone3_args), .sy_call = (sy_call_t *)linux_clone3, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 435 = linux_clone3 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ + { .sy_narg = AS(linux_close_range_args), .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_CLOSERANGE, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_openat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 437 = linux_openat2 */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_getfd, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 438 = linux_pidfd_getfd */ { .sy_narg = AS(linux_faccessat2_args), .sy_call = (sy_call_t *)linux_faccessat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 439 = linux_faccessat2 */ diff --git a/sys/amd64/linux/linux_systrace_args.c b/sys/amd64/linux/linux_systrace_args.c index 44d2b92b066c..d03f99f10f26 100644 --- a/sys/amd64/linux/linux_systrace_args.c +++ b/sys/amd64/linux/linux_systrace_args.c @@ -2695,7 +2695,11 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) } /* linux_close_range */ case 436: { - *n_args = 0; + struct linux_close_range_args *p = params; + iarg[0] = p->first; /* l_uint */ + iarg[1] = p->last; /* l_uint */ + iarg[2] = p->flags; /* l_uint */ + *n_args = 3; break; } /* linux_openat2 */ @@ -7077,6 +7081,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + switch (ndx) { + case 0: + p = "l_uint"; + break; + case 1: + p = "l_uint"; + break; + case 2: + p = "l_uint"; + break; + default: + break; + }; break; /* linux_openat2 */ case 437: @@ -8607,6 +8624,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_openat2 */ case 437: /* linux_pidfd_getfd */ diff --git a/sys/amd64/linux32/linux32_proto.h b/sys/amd64/linux32/linux32_proto.h index a03ae004ff7d..d76b685b17e6 100644 --- a/sys/amd64/linux32/linux32_proto.h +++ b/sys/amd64/linux32/linux32_proto.h @@ -1669,7 +1669,9 @@ struct linux_clone3_args { char usize_l_[PADL_(l_size_t)]; l_size_t usize; char usize_r_[PADR_(l_size_t)]; }; struct linux_close_range_args { - register_t dummy; + char first_l_[PADL_(l_uint)]; l_uint first; char first_r_[PADR_(l_uint)]; + char last_l_[PADL_(l_uint)]; l_uint last; char last_r_[PADR_(l_uint)]; + char flags_l_[PADL_(l_uint)]; l_uint flags; char flags_r_[PADR_(l_uint)]; }; struct linux_openat2_args { register_t dummy; @@ -2466,7 +2468,7 @@ int linux_mount_setattr(struct thread *, struct linux_mount_setattr_args *); #define LINUX32_SYS_AUE_linux_fspick AUE_NULL #define LINUX32_SYS_AUE_linux_pidfd_open AUE_NULL #define LINUX32_SYS_AUE_linux_clone3 AUE_NULL -#define LINUX32_SYS_AUE_linux_close_range AUE_NULL +#define LINUX32_SYS_AUE_linux_close_range AUE_CLOSERANGE #define LINUX32_SYS_AUE_linux_openat2 AUE_NULL #define LINUX32_SYS_AUE_linux_pidfd_getfd AUE_NULL #define LINUX32_SYS_AUE_linux_faccessat2 AUE_NULL diff --git a/sys/amd64/linux32/linux32_sysent.c b/sys/amd64/linux32/linux32_sysent.c index 9e24074d30ed..51697f74d360 100644 --- a/sys/amd64/linux32/linux32_sysent.c +++ b/sys/amd64/linux32/linux32_sysent.c @@ -453,7 +453,7 @@ struct sysent linux32_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fspick, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 433 = linux_fspick */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_open, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 434 = linux_pidfd_open */ { .sy_narg = AS(linux_clone3_args), .sy_call = (sy_call_t *)linux_clone3, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 435 = linux_clone3 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ + { .sy_narg = AS(linux_close_range_args), .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_CLOSERANGE, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_openat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 437 = linux_openat2 */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_getfd, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 438 = linux_pidfd_getfd */ { .sy_narg = AS(linux_faccessat2_args), .sy_call = (sy_call_t *)linux_faccessat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 439 = linux_faccessat2 */ diff --git a/sys/amd64/linux32/linux32_systrace_args.c b/sys/amd64/linux32/linux32_systrace_args.c index 8fc22b1910b3..8dd85ea9720a 100644 --- a/sys/amd64/linux32/linux32_systrace_args.c +++ b/sys/amd64/linux32/linux32_systrace_args.c @@ -3209,7 +3209,11 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) } /* linux_close_range */ case 436: { - *n_args = 0; + struct linux_close_range_args *p = params; + iarg[0] = p->first; /* l_uint */ + iarg[1] = p->last; /* l_uint */ + iarg[2] = p->flags; /* l_uint */ + *n_args = 3; break; } /* linux_openat2 */ @@ -8456,6 +8460,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + switch (ndx) { + case 0: + p = "l_uint"; + break; + case 1: + p = "l_uint"; + break; + case 2: + p = "l_uint"; + break; + default: + break; + }; break; /* linux_openat2 */ case 437: @@ -10273,6 +10290,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_openat2 */ case 437: /* linux_pidfd_getfd */ diff --git a/sys/arm64/linux/linux_proto.h b/sys/arm64/linux/linux_proto.h index 1bff7e30c71f..edfd1d088654 100644 --- a/sys/arm64/linux/linux_proto.h +++ b/sys/arm64/linux/linux_proto.h @@ -1173,7 +1173,9 @@ struct linux_clone3_args { char usize_l_[PADL_(l_size_t)]; l_size_t usize; char usize_r_[PADR_(l_size_t)]; }; struct linux_close_range_args { - register_t dummy; + char first_l_[PADL_(l_uint)]; l_uint first; char first_r_[PADR_(l_uint)]; + char last_l_[PADL_(l_uint)]; l_uint last; char last_r_[PADR_(l_uint)]; + char flags_l_[PADL_(l_uint)]; l_uint flags; char flags_r_[PADR_(l_uint)]; }; struct linux_openat2_args { register_t dummy; @@ -1740,7 +1742,7 @@ int linux_mount_setattr(struct thread *, struct linux_mount_setattr_args *); #define LINUX_SYS_AUE_linux_fspick AUE_NULL #define LINUX_SYS_AUE_linux_pidfd_open AUE_NULL #define LINUX_SYS_AUE_linux_clone3 AUE_NULL -#define LINUX_SYS_AUE_linux_close_range AUE_NULL +#define LINUX_SYS_AUE_linux_close_range AUE_CLOSERANGE #define LINUX_SYS_AUE_linux_openat2 AUE_NULL #define LINUX_SYS_AUE_linux_pidfd_getfd AUE_NULL #define LINUX_SYS_AUE_linux_faccessat2 AUE_NULL diff --git a/sys/arm64/linux/linux_sysent.c b/sys/arm64/linux/linux_sysent.c index 45cf61a5a6e2..5f6124b83c97 100644 --- a/sys/arm64/linux/linux_sysent.c +++ b/sys/arm64/linux/linux_sysent.c @@ -453,7 +453,7 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fspick, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 433 = linux_fspick */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_open, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 434 = linux_pidfd_open */ { .sy_narg = AS(linux_clone3_args), .sy_call = (sy_call_t *)linux_clone3, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 435 = linux_clone3 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ + { .sy_narg = AS(linux_close_range_args), .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_CLOSERANGE, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_openat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 437 = linux_openat2 */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_getfd, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 438 = linux_pidfd_getfd */ { .sy_narg = AS(linux_faccessat2_args), .sy_call = (sy_call_t *)linux_faccessat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 439 = linux_faccessat2 */ diff --git a/sys/arm64/linux/linux_systrace_args.c b/sys/arm64/linux/linux_systrace_args.c index 3e87921a99a4..d57ad97796cd 100644 --- a/sys/arm64/linux/linux_systrace_args.c +++ b/sys/arm64/linux/linux_systrace_args.c @@ -2317,7 +2317,11 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) } /* linux_close_range */ case 436: { - *n_args = 0; + struct linux_close_range_args *p = params; + iarg[0] = p->first; /* l_uint */ + iarg[1] = p->last; /* l_uint */ + iarg[2] = p->flags; /* l_uint */ + *n_args = 3; break; } /* linux_openat2 */ @@ -6152,6 +6156,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + switch (ndx) { + case 0: + p = "l_uint"; + break; + case 1: + p = "l_uint"; + break; + case 2: + p = "l_uint"; + break; + default: + break; + }; break; /* linux_openat2 */ case 437: @@ -7467,6 +7484,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_openat2 */ case 437: /* linux_pidfd_getfd */ diff --git a/sys/i386/linux/linux_proto.h b/sys/i386/linux/linux_proto.h index f86a5a0bb136..f877c94a73fb 100644 --- a/sys/i386/linux/linux_proto.h +++ b/sys/i386/linux/linux_proto.h @@ -1662,7 +1662,9 @@ struct linux_clone3_args { char usize_l_[PADL_(l_size_t)]; l_size_t usize; char usize_r_[PADR_(l_size_t)]; }; struct linux_close_range_args { - register_t dummy; + char first_l_[PADL_(l_uint)]; l_uint first; char first_r_[PADR_(l_uint)]; + char last_l_[PADL_(l_uint)]; l_uint last; char last_r_[PADR_(l_uint)]; + char flags_l_[PADL_(l_uint)]; l_uint flags; char flags_r_[PADR_(l_uint)]; }; struct linux_openat2_args { register_t dummy; @@ -2463,7 +2465,7 @@ int linux_mount_setattr(struct thread *, struct linux_mount_setattr_args *); #define LINUX_SYS_AUE_linux_fspick AUE_NULL #define LINUX_SYS_AUE_linux_pidfd_open AUE_NULL #define LINUX_SYS_AUE_linux_clone3 AUE_NULL -#define LINUX_SYS_AUE_linux_close_range AUE_NULL +#define LINUX_SYS_AUE_linux_close_range AUE_CLOSERANGE #define LINUX_SYS_AUE_linux_openat2 AUE_NULL #define LINUX_SYS_AUE_linux_pidfd_getfd AUE_NULL #define LINUX_SYS_AUE_linux_faccessat2 AUE_NULL diff --git a/sys/i386/linux/linux_sysent.c b/sys/i386/linux/linux_sysent.c index 4328cae47f0c..de0493a6dda6 100644 --- a/sys/i386/linux/linux_sysent.c +++ b/sys/i386/linux/linux_sysent.c @@ -453,7 +453,7 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fspick, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 433 = linux_fspick */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_open, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 434 = linux_pidfd_open */ { .sy_narg = AS(linux_clone3_args), .sy_call = (sy_call_t *)linux_clone3, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 435 = linux_clone3 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ + { .sy_narg = AS(linux_close_range_args), .sy_call = (sy_call_t *)linux_close_range, .sy_auevent = AUE_CLOSERANGE, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 436 = linux_close_range */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_openat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 437 = linux_openat2 */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pidfd_getfd, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 438 = linux_pidfd_getfd */ { .sy_narg = AS(linux_faccessat2_args), .sy_call = (sy_call_t *)linux_faccessat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 439 = linux_faccessat2 */ diff --git a/sys/i386/linux/linux_systrace_args.c b/sys/i386/linux/linux_systrace_args.c index 419c067199c0..27d277e98aa3 100644 --- a/sys/i386/linux/linux_systrace_args.c +++ b/sys/i386/linux/linux_systrace_args.c @@ -3248,7 +3248,11 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) } /* linux_close_range */ case 436: { - *n_args = 0; + struct linux_close_range_args *p = params; + iarg[0] = p->first; /* l_uint */ + iarg[1] = p->last; /* l_uint */ + iarg[2] = p->flags; /* l_uint */ + *n_args = 3; break; } /* linux_openat2 */ @@ -8533,6 +8537,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + switch (ndx) { + case 0: + p = "l_uint"; + break; + case 1: + p = "l_uint"; + break; + case 2: + p = "l_uint"; + break; + default: + break; + }; break; /* linux_openat2 */ case 437: @@ -10379,6 +10396,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; /* linux_close_range */ case 436: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_openat2 */ case 437: /* linux_pidfd_getfd */ From nobody Thu Jun 29 08:20:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFw2vSTz4knTN; Thu, 29 Jun 2023 08:20: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 4QsBFv6zmVz3snF; Thu, 29 Jun 2023 08:20:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x0ZCR8M3XYE5hjadg4lDgXE+bm+2xfDS62y6f8Xyp8U=; b=IwygQHGi8lnN9YgsS5K0MFeFx/+QBEV9I1NcCYeZ9bXgEu4uf1ToMFqGShsTr4YlotpH+n gtK0nMeHfIoB34f5X89SjCUWzFtHHtHTJrUuyjZHtgXnqWECucfhD1c/ZTwILF7WyrlfI7 p2sEooBjDG2MrsvTi5w+54BUqIywfBhoyhxkUwtdoZZjg1gHfUSg427DypUsRSxksEqxi8 AQmJ1+4Zi+S4i/WONhpyZig8X8gBpj3wdK28Hngqgyx0HsCLVN4ZxApJVutH3pCaiZC9GC AY+VZy5xhIlYRzBw1zaAKMkBDEO1rYhV5fLv5MVvF2XD5UQc0egcuWwCVxWJxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x0ZCR8M3XYE5hjadg4lDgXE+bm+2xfDS62y6f8Xyp8U=; b=OMDUW0KusGGR3UxaEDZAsfYYC9C9b8Y0L9dVgMh2FdxHGHCey3RCIPPo+UQeDLcQ+/Sq8X w56s8EYdytngJTfEZU2s6+j1O8z1J9bUG2Z2J6Z4YHyCVZDIWUt5AFV+bsk4zfThVP5HT1 23uBq46UKBrlIJ6d8kalaekBnTOZ+Ed2xsz421S8p+pet01evFOO6T8n5F+lhoYadfn4CP izx7j9KYlTlEGRId/1y+FVVcar/KEN8yfxeVQikdkTdY264snEohslS7xzezLdttxd6+r9 oUOI+LvHSWO7d1j6ByAXmbzZHh1BZxmXzZRYoG+n19FI1/EHhiKbnL8xf6B92w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026804; a=rsa-sha256; cv=none; b=SZ/cLXSWBGCMhJZAyDzIIk6tWiwne46/MCqeNf8zv+3NiHDVkzdnimPmaN1vXPi0PFSEX9 7Di4726bfwiKV6w2vW+u/SU9v9AzNZQH3OskK2QQ3yT4dO58RmCRxxl90y5HpYPavdNgMp NvDD6RFhDAT42hV86IJiQBdZFWhFiT+EQApArw5FxMpG+OCmkOd9aRr3yddQ2DEi65ewG1 dYjL4xXLfDkl2Fz4ZMe+CRIwH3OXJJACXxxHyzSkMNx4DR+yw/yadtNBRcF7jf2nMsguEC B4D3ypXpq/pc7UDmlSfdWMT7esHK+rixiW6om4tNZBT9zhRY/INlCCdLnLI6uQ== 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 4QsBFv642Pz17NM; Thu, 29 Jun 2023 08:20:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K3NF076975; Thu, 29 Jun 2023 08:20:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K3mE076972; Thu, 29 Jun 2023 08:20:03 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:03 GMT Message-Id: <202306290820.35T8K3mE076972@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 10b49af72e5d - stable/13 - linux(4): Deduplicate linux_copyout_auxargs() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 10b49af72e5d9f4ac0fdfa9f239f48022604cae5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=10b49af72e5d9f4ac0fdfa9f239f48022604cae5 commit 10b49af72e5d9f4ac0fdfa9f239f48022604cae5 Author: Dmitry Chagin AuthorDate: 2023-04-22 19:16:02 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:26 +0000 linux(4): Deduplicate linux_copyout_auxargs() Export default MINSIGSTKSZ value for the x86 until we do not preserve AVX registers in the signal context. Differential Revision: https://reviews.freebsd.org/D39644 MFC after: 1 month (cherry picked from commit 7d8c98398302b939b97310d31883ebdab8c0b938) --- sys/amd64/linux/linux.h | 2 +- sys/amd64/linux/linux_sysvec.c | 56 ++++++--------------------------- sys/amd64/linux32/linux.h | 2 +- sys/amd64/linux32/linux32_sysvec.c | 64 ++++++-------------------------------- sys/arm64/linux/linux_sysvec.c | 58 +++++----------------------------- sys/compat/linux/linux_elf.c | 54 ++++++++++++++++++++++++++++++++ sys/compat/linux/linux_elf.h | 2 ++ sys/i386/linux/linux.h | 2 +- sys/i386/linux/linux_sysvec.c | 64 +++++++------------------------------- 9 files changed, 98 insertions(+), 206 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index b31b520cb573..305c4c43a471 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -90,7 +90,7 @@ typedef struct { /* * Miscellaneous */ -#define LINUX_AT_COUNT 20 /* Count of used aux entry types. */ +#define LINUX_AT_COUNT 21 /* Count of used aux entry types. */ struct l___sysctl_args { diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 2ad1868db8d4..5e7bc96d0148 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -206,52 +206,14 @@ linux_set_fork_retval(struct thread *td) frame->tf_rax = 0; } -static int -linux_copyout_auxargs(struct image_params *imgp, uintptr_t base) +void +linux64_arch_copyout_auxargs(struct image_params *imgp, Elf_Auxinfo **pos) { - Elf_Auxargs *args; - Elf_Auxinfo *argarray, *pos; - struct proc *p; - int error, issetugid; - - p = imgp->proc; - args = (Elf64_Auxargs *)imgp->auxargs; - argarray = pos = malloc(LINUX_AT_COUNT * sizeof(*pos), M_TEMP, - M_WAITOK | M_ZERO); - - issetugid = p->p_flag & P_SUGID ? 1 : 0; - AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO_EHDR, linux_vdso_base); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP, cpu_feature); - AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); - AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); - AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); - AUXARGS_ENTRY(pos, AT_PHENT, args->phent); - AUXARGS_ENTRY(pos, AT_PHNUM, args->phnum); - AUXARGS_ENTRY(pos, AT_BASE, args->base); - AUXARGS_ENTRY(pos, AT_FLAGS, args->flags); - AUXARGS_ENTRY(pos, AT_ENTRY, args->entry); - AUXARGS_ENTRY(pos, AT_UID, imgp->proc->p_ucred->cr_ruid); - AUXARGS_ENTRY(pos, AT_EUID, imgp->proc->p_ucred->cr_svuid); - AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); - AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); - AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); - AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP2, 0); - if (imgp->execpathp != 0) - AUXARGS_ENTRY_PTR(pos, LINUX_AT_EXECFN, imgp->execpathp); - if (args->execfd != -1) - AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); - AUXARGS_ENTRY(pos, LINUX_AT_PLATFORM, PTROUT(linux_platform)); - AUXARGS_ENTRY(pos, AT_NULL, 0); - - free(imgp->auxargs, M_TEMP); - imgp->auxargs = NULL; - KASSERT(pos - argarray <= LINUX_AT_COUNT, ("Too many auxargs")); - - error = copyout(argarray, (void *)base, - sizeof(*argarray) * LINUX_AT_COUNT); - free(argarray, M_TEMP); - return (error); + + AUXARGS_ENTRY((*pos), LINUX_AT_SYSINFO_EHDR, linux_vdso_base); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP, cpu_feature); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP2, 0); + AUXARGS_ENTRY((*pos), LINUX_AT_PLATFORM, PTROUT(linux_platform)); } /* @@ -622,7 +584,7 @@ struct sysentvec elf_linux_sysvec = { .sv_psstrings = LINUX_PS_STRINGS_LA48, .sv_psstringssz = sizeof(struct ps_strings), .sv_stackprot = VM_PROT_ALL, - .sv_copyout_auxargs = linux_copyout_auxargs, + .sv_copyout_auxargs = __linuxN(copyout_auxargs), .sv_copyout_strings = __linuxN(copyout_strings), .sv_setregs = linux_exec_setregs, .sv_fixlimit = NULL, @@ -637,6 +599,8 @@ struct sysentvec elf_linux_sysvec = { .sv_schedtail = linux_schedtail, .sv_thread_detach = linux_thread_detach, .sv_trap = linux_vsyscall, + .sv_hwcap = NULL, + .sv_hwcap2 = NULL, .sv_onexec = linux_on_exec_vmspace, .sv_onexit = linux_on_exit, .sv_ontdexit = linux_thread_dtor, diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index c77897344506..0449790bd981 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -103,7 +103,7 @@ typedef struct { /* * Miscellaneous */ -#define LINUX_AT_COUNT 21 /* Count of used aux entry types. +#define LINUX_AT_COUNT 22 /* Count of used aux entry types. * Keep this synchronized with * linux_fixup_elf() code. */ diff --git a/sys/amd64/linux32/linux32_sysvec.c b/sys/amd64/linux32/linux32_sysvec.c index a67f2166deb0..2a7860cc3381 100644 --- a/sys/amd64/linux32/linux32_sysvec.c +++ b/sys/amd64/linux32/linux32_sysvec.c @@ -139,61 +139,15 @@ LINUX_VDSO_SYM_INTPTR(kern_tsc_selector); LINUX_VDSO_SYM_INTPTR(kern_cpu_selector); LINUX_VDSO_SYM_CHAR(linux_platform); -static int -linux_copyout_auxargs(struct image_params *imgp, uintptr_t base) +void +linux32_arch_copyout_auxargs(struct image_params *imgp, Elf_Auxinfo **pos) { - Elf32_Auxargs *args; - Elf32_Auxinfo *argarray, *pos; - int error, issetugid; - - args = (Elf32_Auxargs *)imgp->auxargs; - argarray = pos = malloc(LINUX_AT_COUNT * sizeof(*pos), M_TEMP, - M_WAITOK | M_ZERO); - - issetugid = imgp->proc->p_flag & P_SUGID ? 1 : 0; - AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO, __kernel_vsyscall); - AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO_EHDR, linux_vdso_base); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP, cpu_feature); - AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); - /* - * Do not export AT_CLKTCK when emulating Linux kernel prior to 2.4.0, - * as it has appeared in the 2.4.0-rc7 first time. - * Being exported, AT_CLKTCK is returned by sysconf(_SC_CLK_TCK), - * glibc falls back to the hard-coded CLK_TCK value when aux entry - * is not present. - * Also see linux_times() implementation. - */ - if (linux_kernver(curthread) >= LINUX_KERNVER_2004000) - AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); - AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); - AUXARGS_ENTRY(pos, AT_PHENT, args->phent); - AUXARGS_ENTRY(pos, AT_PHNUM, args->phnum); - AUXARGS_ENTRY(pos, AT_BASE, args->base); - AUXARGS_ENTRY(pos, AT_FLAGS, args->flags); - AUXARGS_ENTRY(pos, AT_ENTRY, args->entry); - AUXARGS_ENTRY(pos, AT_UID, imgp->proc->p_ucred->cr_ruid); - AUXARGS_ENTRY(pos, AT_EUID, imgp->proc->p_ucred->cr_svuid); - AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); - AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); - AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); - AUXARGS_ENTRY(pos, LINUX_AT_RANDOM, PTROUT(imgp->canary)); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP2, 0); - if (imgp->execpathp != 0) - AUXARGS_ENTRY(pos, LINUX_AT_EXECFN, PTROUT(imgp->execpathp)); - if (args->execfd != -1) - AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); - AUXARGS_ENTRY(pos, LINUX_AT_PLATFORM, PTROUT(linux_platform)); - AUXARGS_ENTRY(pos, AT_NULL, 0); - - free(imgp->auxargs, M_TEMP); - imgp->auxargs = NULL; - KASSERT(pos - argarray <= LINUX_AT_COUNT, ("Too many auxargs")); - - error = copyout(argarray, (void *)base, - sizeof(*argarray) * LINUX_AT_COUNT); - free(argarray, M_TEMP); - return (error); + AUXARGS_ENTRY((*pos), LINUX_AT_SYSINFO, __kernel_vsyscall); + AUXARGS_ENTRY((*pos), LINUX_AT_SYSINFO_EHDR, linux_vdso_base); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP, cpu_feature); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP2, 0); + AUXARGS_ENTRY((*pos), LINUX_AT_PLATFORM, PTROUT(linux_platform)); } static void @@ -847,7 +801,7 @@ struct sysentvec elf_linux_sysvec = { .sv_psstrings = LINUX32_PS_STRINGS, .sv_psstringssz = sizeof(struct linux32_ps_strings), .sv_stackprot = VM_PROT_ALL, - .sv_copyout_auxargs = linux_copyout_auxargs, + .sv_copyout_auxargs = __linuxN(copyout_auxargs), .sv_copyout_strings = linux_copyout_strings, .sv_setregs = linux_exec_setregs, .sv_fixlimit = linux32_fixlimit, @@ -862,6 +816,8 @@ struct sysentvec elf_linux_sysvec = { .sv_schedtail = linux_schedtail, .sv_thread_detach = linux_thread_detach, .sv_trap = NULL, + .sv_hwcap = NULL, + .sv_hwcap2 = NULL, .sv_onexec = linux_on_exec_vmspace, .sv_onexit = linux_on_exit, .sv_ontdexit = linux_thread_dtor, diff --git a/sys/arm64/linux/linux_sysvec.c b/sys/arm64/linux/linux_sysvec.c index 7e1e35e6bae3..709566ee15bc 100644 --- a/sys/arm64/linux/linux_sysvec.c +++ b/sys/arm64/linux/linux_sysvec.c @@ -115,7 +115,6 @@ LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE); /* DTrace probes */ LIN_SDT_PROBE_DEFINE0(sysvec, linux_exec_setregs, todo); -LIN_SDT_PROBE_DEFINE0(sysvec, linux_copyout_auxargs, todo); LINUX_VDSO_SYM_CHAR(linux_platform); LINUX_VDSO_SYM_INTPTR(kern_timekeep_base); @@ -160,55 +159,14 @@ linux_set_syscall_retval(struct thread *td, int error) } } -static int -linux_copyout_auxargs(struct image_params *imgp, uintptr_t base) +void +linux64_arch_copyout_auxargs(struct image_params *imgp, Elf_Auxinfo **pos) { - Elf_Auxargs *args; - Elf_Auxinfo *argarray, *pos; - struct proc *p; - int error, issetugid; - - LIN_SDT_PROBE0(sysvec, linux_copyout_auxargs, todo); - p = imgp->proc; - - args = (Elf64_Auxargs *)imgp->auxargs; - argarray = pos = malloc(LINUX_AT_COUNT * sizeof(*pos), M_TEMP, - M_WAITOK | M_ZERO); - - issetugid = p->p_flag & P_SUGID ? 1 : 0; - AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO_EHDR, linux_vdso_base); - AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, LINUX_MINSIGSTKSZ); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP, *imgp->sysent->sv_hwcap); - AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); - AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); - AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); - AUXARGS_ENTRY(pos, AT_PHENT, args->phent); - AUXARGS_ENTRY(pos, AT_PHNUM, args->phnum); - AUXARGS_ENTRY(pos, AT_BASE, args->base); - AUXARGS_ENTRY(pos, AT_FLAGS, args->flags); - AUXARGS_ENTRY(pos, AT_ENTRY, args->entry); - AUXARGS_ENTRY(pos, AT_UID, imgp->proc->p_ucred->cr_ruid); - AUXARGS_ENTRY(pos, AT_EUID, imgp->proc->p_ucred->cr_svuid); - AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); - AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); - AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); - AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP2, *imgp->sysent->sv_hwcap2); - if (imgp->execpathp != 0) - AUXARGS_ENTRY_PTR(pos, LINUX_AT_EXECFN, imgp->execpathp); - if (args->execfd != -1) - AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); - AUXARGS_ENTRY(pos, LINUX_AT_PLATFORM, PTROUT(linux_platform)); - AUXARGS_ENTRY(pos, AT_NULL, 0); - - free(imgp->auxargs, M_TEMP); - imgp->auxargs = NULL; - KASSERT(pos - argarray <= LINUX_AT_COUNT, ("Too many auxargs")); - - error = copyout(argarray, (void *)base, - sizeof(*argarray) * LINUX_AT_COUNT); - free(argarray, M_TEMP); - return (error); + + AUXARGS_ENTRY((*pos), LINUX_AT_SYSINFO_EHDR, linux_vdso_base); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP, *imgp->sysent->sv_hwcap); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP2, *imgp->sysent->sv_hwcap2); + AUXARGS_ENTRY((*pos), LINUX_AT_PLATFORM, PTROUT(linux_platform)); } /* @@ -423,7 +381,7 @@ struct sysentvec elf_linux_sysvec = { .sv_psstrings = LINUX_PS_STRINGS, .sv_psstringssz = sizeof(struct ps_strings), .sv_stackprot = VM_PROT_READ | VM_PROT_WRITE, - .sv_copyout_auxargs = linux_copyout_auxargs, + .sv_copyout_auxargs = __linuxN(copyout_auxargs), .sv_copyout_strings = __linuxN(copyout_strings), .sv_setregs = linux_exec_setregs, .sv_fixlimit = NULL, diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index 43df9508d470..9b2c38aba444 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -488,3 +488,57 @@ linux_trans_osrel(const Elf_Note *note, int32_t *osrel) return (true); } + +int +__linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) +{ + Elf_Auxargs *args; + Elf_Auxinfo *aarray, *pos; + struct proc *p; + int error, issetugid; + + p = imgp->proc; + issetugid = p->p_flag & P_SUGID ? 1 : 0; + args = imgp->auxargs; + aarray = pos = malloc(LINUX_AT_COUNT * sizeof(*pos), M_TEMP, + M_WAITOK | M_ZERO); + + __linuxN(arch_copyout_auxargs)(imgp, &pos); + /* + * Do not export AT_CLKTCK when emulating Linux kernel prior to 2.4.0, + * as it has appeared in the 2.4.0-rc7 first time. + * Being exported, AT_CLKTCK is returned by sysconf(_SC_CLK_TCK), + * glibc falls back to the hard-coded CLK_TCK value when aux entry + * is not present. + * Also see linux_times() implementation. + */ + if (linux_kernver(curthread) >= LINUX_KERNVER_2004000) + AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); + AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); + AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); + AUXARGS_ENTRY(pos, AT_PHENT, args->phent); + AUXARGS_ENTRY(pos, AT_PHNUM, args->phnum); + AUXARGS_ENTRY(pos, AT_BASE, args->base); + AUXARGS_ENTRY(pos, AT_FLAGS, args->flags); + AUXARGS_ENTRY(pos, AT_ENTRY, args->entry); + AUXARGS_ENTRY(pos, AT_UID, imgp->proc->p_ucred->cr_ruid); + AUXARGS_ENTRY(pos, AT_EUID, imgp->proc->p_ucred->cr_svuid); + AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); + AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); + AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); + AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); + if (imgp->execpathp != 0) + AUXARGS_ENTRY(pos, LINUX_AT_EXECFN, PTROUT(imgp->execpathp)); + if (args->execfd != -1) + AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); + AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, LINUX_MINSIGSTKSZ); + AUXARGS_ENTRY(pos, AT_NULL, 0); + + free(imgp->auxargs, M_TEMP); + imgp->auxargs = NULL; + KASSERT(pos - aarray <= LINUX_AT_COUNT, ("Too many auxargs")); + + error = copyout(aarray, PTRIN(base), sizeof(*aarray) * LINUX_AT_COUNT); + free(aarray, M_TEMP); + return (error); +} diff --git a/sys/compat/linux/linux_elf.h b/sys/compat/linux/linux_elf.h index 87b21c4a14b2..8f134cd4e233 100644 --- a/sys/compat/linux/linux_elf.h +++ b/sys/compat/linux/linux_elf.h @@ -42,6 +42,8 @@ struct note_info_list; void __linuxN(prepare_notes)(struct thread *, struct note_info_list *, size_t *); +void __linuxN(arch_copyout_auxargs)(struct image_params *, Elf_Auxinfo **); +int __linuxN(copyout_auxargs)(struct image_params *, uintptr_t); int __linuxN(copyout_strings)(struct image_params *, uintptr_t *); bool linux_trans_osrel(const Elf_Note *note, int32_t *osrel); diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 43bf3ca126b6..61ab5e40fe1d 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -95,7 +95,7 @@ typedef struct { /* * Miscellaneous */ -#define LINUX_AT_COUNT 20 /* Count of used aux entry types. +#define LINUX_AT_COUNT 21 /* Count of used aux entry types. * Keep this synchronized with * linux_fixup_elf() code. */ diff --git a/sys/i386/linux/linux_sysvec.c b/sys/i386/linux/linux_sysvec.c index ce61cfdec205..fb6f01adf66d 100644 --- a/sys/i386/linux/linux_sysvec.c +++ b/sys/i386/linux/linux_sysvec.c @@ -138,60 +138,14 @@ linux_fixup(uintptr_t *stack_base, struct image_params *imgp) return (0); } -static int -linux_copyout_auxargs(struct image_params *imgp, uintptr_t base) +void +linux32_arch_copyout_auxargs(struct image_params *imgp, Elf_Auxinfo **pos) { - Elf32_Auxargs *args; - Elf32_Auxinfo *argarray, *pos; - int error, issetugid; - - issetugid = imgp->proc->p_flag & P_SUGID ? 1 : 0; - args = (Elf32_Auxargs *)imgp->auxargs; - argarray = pos = malloc(LINUX_AT_COUNT * sizeof(*pos), M_TEMP, - M_WAITOK | M_ZERO); - - AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO_EHDR, linux_vdso_base); - AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO, __kernel_vsyscall); - AUXARGS_ENTRY(pos, LINUX_AT_HWCAP, cpu_feature); - /* - * Do not export AT_CLKTCK when emulating Linux kernel prior to 2.4.0, - * as it has appeared in the 2.4.0-rc7 first time. - * Being exported, AT_CLKTCK is returned by sysconf(_SC_CLK_TCK), - * glibc falls back to the hard-coded CLK_TCK value when aux entry - * is not present. - * Also see linux_times() implementation. - */ - if (linux_kernver(curthread) >= LINUX_KERNVER_2004000) - AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); - AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); - AUXARGS_ENTRY(pos, AT_PHENT, args->phent); - AUXARGS_ENTRY(pos, AT_PHNUM, args->phnum); - AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); - AUXARGS_ENTRY(pos, AT_FLAGS, args->flags); - AUXARGS_ENTRY(pos, AT_ENTRY, args->entry); - AUXARGS_ENTRY(pos, AT_BASE, args->base); - AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); - AUXARGS_ENTRY(pos, AT_UID, imgp->proc->p_ucred->cr_ruid); - AUXARGS_ENTRY(pos, AT_EUID, imgp->proc->p_ucred->cr_svuid); - AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); - AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); - AUXARGS_ENTRY(pos, LINUX_AT_PLATFORM, PTROUT(linux_platform)); - AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); - if (imgp->execpathp != 0) - AUXARGS_ENTRY_PTR(pos, LINUX_AT_EXECFN, imgp->execpathp); - if (args->execfd != -1) - AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); - AUXARGS_ENTRY(pos, AT_NULL, 0); - - free(imgp->auxargs, M_TEMP); - imgp->auxargs = NULL; - KASSERT(pos - argarray <= LINUX_AT_COUNT, ("Too many auxargs")); - - error = copyout(argarray, (void *)base, - sizeof(*argarray) * LINUX_AT_COUNT); - free(argarray, M_TEMP); - return (error); + AUXARGS_ENTRY((*pos), LINUX_AT_SYSINFO_EHDR, linux_vdso_base); + AUXARGS_ENTRY((*pos), LINUX_AT_SYSINFO, __kernel_vsyscall); + AUXARGS_ENTRY((*pos), LINUX_AT_HWCAP, cpu_feature); + AUXARGS_ENTRY((*pos), LINUX_AT_PLATFORM, PTROUT(linux_platform)); } static void @@ -649,6 +603,8 @@ struct sysentvec linux_sysvec = { .sv_schedtail = linux_schedtail, .sv_thread_detach = linux_thread_detach, .sv_trap = NULL, + .sv_hwcap = NULL, + .sv_hwcap2 = NULL, .sv_onexec = linux_on_exec_vmspace, .sv_onexit = linux_on_exit, .sv_ontdexit = linux_thread_dtor, @@ -677,7 +633,7 @@ struct sysentvec elf_linux_sysvec = { .sv_psstrings = LINUX_PS_STRINGS, .sv_psstringssz = sizeof(struct ps_strings), .sv_stackprot = VM_PROT_ALL, - .sv_copyout_auxargs = linux_copyout_auxargs, + .sv_copyout_auxargs = __linuxN(copyout_auxargs), .sv_copyout_strings = __linuxN(copyout_strings), .sv_setregs = linux_exec_setregs, .sv_fixlimit = NULL, @@ -692,6 +648,8 @@ struct sysentvec elf_linux_sysvec = { .sv_schedtail = linux_schedtail, .sv_thread_detach = linux_thread_detach, .sv_trap = NULL, + .sv_hwcap = NULL, + .sv_hwcap2 = NULL, .sv_onexec = linux_on_exec_vmspace, .sv_onexit = linux_on_exit, .sv_ontdexit = linux_thread_dtor, From nobody Thu Jun 29 08:20:04 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFx1gtXz4knRD; Thu, 29 Jun 2023 08:20: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 4QsBFx0Ktvz3snT; Thu, 29 Jun 2023 08:20:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E6T7cS4DwLyAPEfUU0hU5ZW7HY/Xgvx7XwDxtmDW3JY=; b=ggGEAg2JLQp/RYkSW7pIpXacHCV5Y8JTTpXfXN2jBRRaoIUpGIBb19EdOrsIaE+jcS1Q8a p8RtykL4VDP+6pSJFmkhFLohXAb7vneLeQaO+2HMi4Gn8X8EVO5lzUugUzV/tGBdJIBoqk GoFOxItMFUulZQFVXLHvMuw+WWAGboIi0o4nAF/C+QlIVVolzub8Py31vANC6TfxUjqplu YTR56LHm6sGQFymcNf4NVeH6BMpvRqnHFIx7+BLeWkAHS1vMOtXr0xjLIlQI5IEFNugIFe wZZ4pR1exv0TgEsaLN2DTQ4NhM0b1nrvqpnxqpdi3p+2Pt+s2w36nGXzDMO9VQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E6T7cS4DwLyAPEfUU0hU5ZW7HY/Xgvx7XwDxtmDW3JY=; b=y2DHtLPTGb0Lm0gzTqTLr+oCzmBEZvANVa67hQR2kPLDwLt95FeMsHo9I79YmwBffB4bPE bVR5a1ZC+hJLihHxF4LSf1G/ta2w3qhKbHecW5WbDgCx/AsZHucvlGAesvr35woQaUNlFZ TVgrU5EDduzHmQ5kQog9H/k5HvW3Y8J/sxLv9c2cFh/LifX8o/bxS3N1wpbngz3XBo1qWX xlTESs3g9Cxdt3rO2N+IqXDE8BX7QPI+f0ne8IUeRNmSTrPgATDHXdspy59BX0nQeDQHS+ 7PkJsDLP9kJvimMR3Z8vzXvRuO1SFpLXoSp9cT1Ye8y37j+Y81D/bRk053j0WQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026805; a=rsa-sha256; cv=none; b=aJExGZgIBXA6HJA7DyyRbs6gFf0W6jorS3DoOmMXrMOs4UEviKE1Y3BJyxM+ljcsNMbkbM R7ntPFSr6JCy6UcGtfYZQwuFSntw1fWrKEfLBogctaHzLFQTVAUmXG7Ie2roipvUcqt2s2 EqPDAnSrsUYl5qk3Ao4W8W6RLR7Vv7+BuDdQci/QFzXyBeIWCp5po3DFjKJk0N+TM5v3Z3 5OCzv08yTTBVM5z+jq88b/wiXmkF+g+cHnERS/z/Mh3qdh+2O7FPd/ZH8xlC5oQkAgIPS5 ebOcvXBubaGrIRg6i6cQfvuhKSfqqcpyLV0o4M0J+ZhUkuJ6HoK86ryzAih52w== 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 4QsBFw6YfPz17sQ; Thu, 29 Jun 2023 08:20:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K4vf077225; Thu, 29 Jun 2023 08:20:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K4bE077223; Thu, 29 Jun 2023 08:20:04 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:04 GMT Message-Id: <202306290820.35T8K4bE077223@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: b7ee4a377911 - stable/13 - linux(4): Fix LINUX_AT_COUNT comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: b7ee4a3779118fa76f98fb4be0d4866400b07efa Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=b7ee4a3779118fa76f98fb4be0d4866400b07efa commit b7ee4a3779118fa76f98fb4be0d4866400b07efa Author: Dmitry Chagin AuthorDate: 2023-04-22 19:16:43 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:26 +0000 linux(4): Fix LINUX_AT_COUNT comments Differential Revision: https://reviews.freebsd.org/D39645 MFC after: 1 month (cherry picked from commit 56c5230afdcf2b317d904009abe577e91b382542) --- sys/amd64/linux/linux.h | 5 ++++- sys/amd64/linux32/linux.h | 2 +- sys/arm64/linux/linux.h | 5 ++++- sys/i386/linux/linux.h | 2 +- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index 305c4c43a471..0cf7d02c5833 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -90,7 +90,10 @@ typedef struct { /* * Miscellaneous */ -#define LINUX_AT_COUNT 21 /* Count of used aux entry types. */ +#define LINUX_AT_COUNT 21 /* Count of used aux entry types. + * Keep this synchronized with + * linux_copyout_auxargs() code. + */ struct l___sysctl_args { diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index 0449790bd981..d0c966ad3c92 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -105,7 +105,7 @@ typedef struct { */ #define LINUX_AT_COUNT 22 /* Count of used aux entry types. * Keep this synchronized with - * linux_fixup_elf() code. + * linux_copyout_auxargs() code. */ struct l___sysctl_args { diff --git a/sys/arm64/linux/linux.h b/sys/arm64/linux/linux.h index 8ecadff2e220..bee97691b744 100644 --- a/sys/arm64/linux/linux.h +++ b/sys/arm64/linux/linux.h @@ -81,7 +81,10 @@ typedef struct { #define l_fd_set fd_set /* Miscellaneous */ -#define LINUX_AT_COUNT 21 +#define LINUX_AT_COUNT 21 /* Count of used aux entry types. + * Keep this synchronized with + * linux_copyout_auxargs() code. + */ struct l___sysctl_args { diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 61ab5e40fe1d..c4b70b2a6aaa 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -97,7 +97,7 @@ typedef struct { */ #define LINUX_AT_COUNT 21 /* Count of used aux entry types. * Keep this synchronized with - * linux_fixup_elf() code. + * linux_copyout_auxargs() code. */ struct l___sysctl_args { From nobody Thu Jun 29 08:20:05 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFy1cCBz4knTc; Thu, 29 Jun 2023 08:20: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 4QsBFy15t1z3sqM; Thu, 29 Jun 2023 08:20:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uMD019MOw+m+jTAsnSKrNv+dGqIR7vtX6o9+1LZIyho=; b=pwzNaUs4aW4q1Xan4LWaEsVx35G44c8/YL1McHAzIPl3qIjrg2tfW1m+f0eJ+41oNmWGjY BZJ+PJ2Rx3l2ZjUL4FClKg/yxJ9jPFYm1BZfgMKWqy70035CnOlE1lm0J2w/FfqQjOKFbA dlGC9EiSatvCcjfGQSKgYIexivcBSM/fmlpOfpG4aWC2LgobIJtEjUeXGoaiHn5xwaLR6G SgW9r6CzlH+iSD7YoIlhmUryCQDhTOy4QMcG/jeovt4G/ehYqZBgLQ85SeXIOxmwINAadi Wluw+fLxwL1nRPRxCNLl/1Zh8M2mKK9Esb7LURbV82oGGLH+YlPZl3QNaWPMqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uMD019MOw+m+jTAsnSKrNv+dGqIR7vtX6o9+1LZIyho=; b=kjCluN/12Fv0XXIE2Xh6EYcLjSCP5aqzJ+QW55DuT0x+DoWEANRS+FBTyU0erAU3MyKuhx dLII4tsK/hVFDYFRkRFNiayRo6HZ0/5UP8ZwBAl9BjAPFXSNKY0nxmTCKWFio617dd2FYr EjU8QOai9SkVG5W0E56swdCHOTRLQ4/Fgff0JNfQmeupSvRPdZuEBkzHLgMYm74kwuwK8f DcLiJWBVFFzn439UzDPpcTH4L35SMqhRgycPdZFRZ8P7rdPds7YB8DDUbClWlK9/LaCHeE F4HEqJlk39YaR/JIbX8Dj9yfcd8iG70n3Z0AUbOLUI/mkxMGr20SiK+wzjW8tw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026806; a=rsa-sha256; cv=none; b=v72OE1pcdpNX4eNURv62MGnSMrzlEP++kmKmLKz+S008XKLVWqhBuvgqEl8q/Xt/ZHJYVm W/Gx0aD30vf2EzXar/s81/Obs7FEV2cvI1CkTUVS4MblpCPdwh0nWi1/WWX1CVYIym1flI x93jzxZCwF7aXI8p8n+E88oBRc6wWxXwx3wlmLXVaPs8Ms1/19h4dtS6dvNUqq+6wlJYAs /UPtkSgG2jhj79/BLQI84h4fesJU2p+rHEOoLHp/8Q8CkP2eVfKCU+VHByO2IAwxICZqjT brcAKPvCMHkX2sNixFzZWs2rMZHZ8ML2PEEvBawkWvxzPiHX9EZ/d7XSLdqhEw== 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 4QsBFx72yzz17QK; Thu, 29 Jun 2023 08:20:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K5i2077481; Thu, 29 Jun 2023 08:20:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K5CV077479; Thu, 29 Jun 2023 08:20:05 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:05 GMT Message-Id: <202306290820.35T8K5CV077479@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: de67d174a10c - stable/13 - linux(4): Export the AT_RANDOM depending on the process osreldata List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: de67d174a10c296e6d44499d0c577cd0e9d048ef Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=de67d174a10c296e6d44499d0c577cd0e9d048ef commit de67d174a10c296e6d44499d0c577cd0e9d048ef Author: Dmitry Chagin AuthorDate: 2023-04-22 19:17:17 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:26 +0000 linux(4): Export the AT_RANDOM depending on the process osreldata AT_RANDOM has appeared in the 2.6.30 Linux kernel first time. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D39646 MFC after: 1 month (cherry picked from commit 40c36c4674eb9602709cf9d0483a4f34ad9753f6) --- sys/compat/linux/linux_elf.c | 3 ++- sys/compat/linux/linux_mib.h | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index 9b2c38aba444..d0e547c1b882 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -526,7 +526,8 @@ __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); - AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); + if (p->p_osrel >= LINUX_KERNVER_2006030 || p->p_osrel == 0) + AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); if (imgp->execpathp != 0) AUXARGS_ENTRY(pos, LINUX_AT_EXECFN, PTROUT(imgp->execpathp)); if (args->execfd != -1) diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index 615439b4d107..b1d5a0981a7d 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -58,6 +58,7 @@ int linux_kernver(struct thread *td); #define LINUX_VERSION_STR LINUX_XKERNVERSTR(LINUX_KVERSION.LINUX_KPATCHLEVEL.LINUX_KSUBLEVEL) #define LINUX_KERNVER_2004000 LINUX_KERNVER(2,4,0) +#define LINUX_KERNVER_2006030 LINUX_KERNVER(2,6,30) #define LINUX_KERNVER_2006039 LINUX_KERNVER(2,6,39) #define LINUX_KERNVER_5004000 LINUX_KERNVER(5,4,0) From nobody Thu Jun 29 08:20:06 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBFz1t8Wz4knNM; Thu, 29 Jun 2023 08:20: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 4QsBFz1QVWz3t4g; Thu, 29 Jun 2023 08:20:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026807; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ktrg75QSrrQldCmByER5LLM8KFpKtrbv1i0z3AwBFS4=; b=pTv3lbxw72AjjRqVlxzCd0WFJzOPznc1eGRmbuy6y4S/5sEVxyB78HwosCgS5Ma8wyHIlc RM4ecHWo9YZa3VIKHzaIJuLg3B8on3kiBfjpHhfDd6ARqueLXwvpWg1iDobhTZChByF7IJ yAeM2jCFfWKQn10IIzXVC77uHaGr/ItEczlk1igsYK74jSxFNEfiuNMjPtq8E82XzvUrHF GBt5KiqfF658xE8ILHcIEbBaTEDvTvEnwoZsm3ctNhFecsy4Vjwc8wLs6aQG+jD6Cv9FRY /9I1NviqB2YRPe3odSoBLrOmEiDfKiJmHgOsOn0IHempM7F+QNpVL7Ug/GZNgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026807; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ktrg75QSrrQldCmByER5LLM8KFpKtrbv1i0z3AwBFS4=; b=G5hdq5H5HbKvWb6RtPOG5lPjExU3U6GqGZs4PaB+vlOOy0dGPBm8lXO6mbzoYBDovdID7v alQYqxzLqZEHr0Q4SD72Spp/SoUBB9OTPCN0SzZnHoy8Dx1q7O6giLrOikzxYmy9SY9TR5 7RFttOHFxB0GgpQ/SBbBkuL94+Y3KiJWUyt7IHiGNPJWGoj7fWcNaU3MsYHCvNQ7Ra/1A7 BP5x5yz4pxvIyef8QxdwyK8SXPxxmzfP+5aq+8PvBLN2supvozwmgBlkhs7n2qpBV5cGr3 Urt5LofFxP/tYgdydZYlLMmilseBGpDoX0poENr+oIorRc2EIHG5ulhne/oxCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026807; a=rsa-sha256; cv=none; b=hRXy5WRJ9rqnet6/sG1V/qOmZGHFJig8gUWXOfEs0up93fAppAQ9BfDBpuVBuhgWrs8Ysv 6Ety9xtOjQvkvoxCWSsQqNtqWIEVtWzhugpDXPQE9e8O/+/wFPzjwRwCoAfmc/LhnJPcit zRXYpJiPNhP2iX7q/vxaNrO6eRCa/a0qwcNi56YI5FNpyfgFwK9AXUJthrHh7QBEsP/BS3 cOLTRcqKXDl7iLyYqdbrsMA9fEBeXxwKSXLzRlrjx4DRax7wFO7VdHqVIwwVmF1DzXsoxJ ySUX8qEhEdsuy5NSnpZWW7qqOA72Y2cjQZG7NcKF8Rv/oLwEWfrPi1Z8q4t0Xw== 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 4QsBFz0PlZz17QL; Thu, 29 Jun 2023 08:20:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K6I1077735; Thu, 29 Jun 2023 08:20:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K6Lq077733; Thu, 29 Jun 2023 08:20:06 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:06 GMT Message-Id: <202306290820.35T8K6Lq077733@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 364bdf887ae3 - stable/13 - linux(4): Export the AT_EXECFN depending on the process osreldata List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 364bdf887ae3d9298834038b1a755e4c27719888 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=364bdf887ae3d9298834038b1a755e4c27719888 commit 364bdf887ae3d9298834038b1a755e4c27719888 Author: Dmitry Chagin AuthorDate: 2023-04-22 19:17:36 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:27 +0000 linux(4): Export the AT_EXECFN depending on the process osreldata AT_EXECFN has appeared in the 2.6.26 Linux kernel first time. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D39647 MFC after: 1 month (cherry picked from commit 70eab81d6ffecf0ba4c7f19a8b6389178eda5259) --- sys/compat/linux/linux_elf.c | 3 ++- sys/compat/linux/linux_mib.h | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index d0e547c1b882..a1a04e23d43d 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -528,7 +528,8 @@ __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); if (p->p_osrel >= LINUX_KERNVER_2006030 || p->p_osrel == 0) AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); - if (imgp->execpathp != 0) + if ((p->p_osrel >= LINUX_KERNVER_2006026 || p->p_osrel == 0) && + imgp->execpathp != 0) AUXARGS_ENTRY(pos, LINUX_AT_EXECFN, PTROUT(imgp->execpathp)); if (args->execfd != -1) AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index b1d5a0981a7d..05068bbf1029 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -58,6 +58,7 @@ int linux_kernver(struct thread *td); #define LINUX_VERSION_STR LINUX_XKERNVERSTR(LINUX_KVERSION.LINUX_KPATCHLEVEL.LINUX_KSUBLEVEL) #define LINUX_KERNVER_2004000 LINUX_KERNVER(2,4,0) +#define LINUX_KERNVER_2006026 LINUX_KERNVER(2,6,26) #define LINUX_KERNVER_2006030 LINUX_KERNVER(2,6,30) #define LINUX_KERNVER_2006039 LINUX_KERNVER(2,6,39) #define LINUX_KERNVER_5004000 LINUX_KERNVER(5,4,0) From nobody Thu Jun 29 08:20:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG05THhz4knYX; Thu, 29 Jun 2023 08:20: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 4QsBG028WBz3sx2; Thu, 29 Jun 2023 08:20:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=H8aPOlLs1YDFmK4foj6yHjmGtTUvKQOJSNnjtl9zfMc=; b=F/d3GHS7js4KbaGCxE06pRsYuLsMcZWUPTTPry4gbaDu7mcsqa+ebzeYWbGXbK22u9k4n2 1u5G4iePb1vygISu5eS+dLoC64fCMYWUIIEuGznnc5c4Pa9mx8IKXIDFT+XSRR1wpTSFRE N/BTTXdFaYdwT69kD/5O9/pAbhMIrXsjKd9K3BnhHCQOZX0TYjUKS+B3GhddhqKrhHm0tC O55yMhOCNg5NbtAclPTwqrf76WnTSkNyY+WTWtCS1tz38Z14QxAZ+ORADwzYwBl+mBPA7x TWp7w4XL5JygmUzFasxEDXCRp8AsFd7/S9MQKzGG49ZKS85fAg4nVYMRaR15KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=H8aPOlLs1YDFmK4foj6yHjmGtTUvKQOJSNnjtl9zfMc=; b=GsGqDJN80I+puYJHAJ5z4lA7RNFipzTKfXNAikHe9enRTPTNfdL0DDDTJHFawrt1KMRg7b 9v9mkSXfigtGK+/28yCog1OY1fSaSadU8z4Ir6DGAjGGw/qUQc9OLqPjJLdTZCgcVl1d5v g8kVUswpDk53cCopeuFOlrPjCMOud3o04G4HHvoP16VJRtQFZ8n+obzha8ShH7pnlqtKFR /nr7Dnelc5OooPd9eQCpb7TcpEI0J37ENrhC1rSTdOgd5ZHv4wu7PKjB2FtRaNLaogDIth UZKbwjkA7OMRfhk4zmaOkl0YavUczMDoiVbRn2ITXqe/B+O/LvGMMLylKTymZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026808; a=rsa-sha256; cv=none; b=jjnxKSk2f+o1pcHLvAkhvDjrSgYy7RfHXK8hpzJYLvm/qY6ObaDbY0IM7u23X0cgyMYZe2 /dHdwTvqR+9s0Mrsfxi9egdbqy9oo5j5N5Ebx9CkEKR3O83eGjflrrfh6ImwDXkrxt7QP+ AzI2a8mMwepEr+lhhBmAiHI5nnt8Y9WFDdPT0W4YqfQd2E4Yhgk1LdGmeCQmA6kW+xURxl 9uaBLtSBO2QwJrXuIDt1UrXsoZRq9rJd9tpk2hHZu1T6ue3v7dwLCgU1eCKeqDNTUSkS2v P50J87q3SCvqq+aHlEjHpnQJfRRrDmBCyWmUDH0FLIvoDksULObk63QvW7Hg9g== 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 4QsBG019s6z17dZ; Thu, 29 Jun 2023 08:20:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K8Vf078006; Thu, 29 Jun 2023 08:20:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K893078003; Thu, 29 Jun 2023 08:20:08 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:08 GMT Message-Id: <202306290820.35T8K893078003@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 8dc4c073cdd1 - stable/13 - linux(4): Export the AT_MINSIGSTKSZ depending on the process osreldata List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 8dc4c073cdd1e2452dd725bc324977038366f3e6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=8dc4c073cdd1e2452dd725bc324977038366f3e6 commit 8dc4c073cdd1e2452dd725bc324977038366f3e6 Author: Dmitry Chagin AuthorDate: 2023-04-22 19:17:52 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:27 +0000 linux(4): Export the AT_MINSIGSTKSZ depending on the process osreldata AT_MINSIGSTKSZ has appeared in the 5.13.0 Linux kernel first time. Differential Revision: https://reviews.freebsd.org/D39648 MFC after: 1 month (cherry picked from commit b7a6bcdd1319b4e5da0bfc5e7790cbf26efe9892) --- sys/compat/linux/linux_elf.c | 3 ++- sys/compat/linux/linux_mib.h | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index a1a04e23d43d..9db599d83bac 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -533,7 +533,8 @@ __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) AUXARGS_ENTRY(pos, LINUX_AT_EXECFN, PTROUT(imgp->execpathp)); if (args->execfd != -1) AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); - AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, LINUX_MINSIGSTKSZ); + if (p->p_osrel >= LINUX_KERNVER_5013000 || p->p_osrel == 0) + AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, LINUX_MINSIGSTKSZ); AUXARGS_ENTRY(pos, AT_NULL, 0); free(imgp->auxargs, M_TEMP); diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index 05068bbf1029..ae650934273e 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -62,6 +62,7 @@ int linux_kernver(struct thread *td); #define LINUX_KERNVER_2006030 LINUX_KERNVER(2,6,30) #define LINUX_KERNVER_2006039 LINUX_KERNVER(2,6,39) #define LINUX_KERNVER_5004000 LINUX_KERNVER(5,4,0) +#define LINUX_KERNVER_5013000 LINUX_KERNVER(5,13,0) #define linux_use54(t) (linux_kernver(t) >= LINUX_KERNVER_5004000) From nobody Thu Jun 29 08:20:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG150n4z4knYf; Thu, 29 Jun 2023 08:20: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 4QsBG12ns8z3t9S; Thu, 29 Jun 2023 08:20:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026809; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l4VA2N4vGbVwTLjc0mdEPC2b3OAWYlyWZBXAmvWZ/gw=; b=Tanfyusw2m2SSRQ2O4pgAzky7MIyxawnRXp01NXwB2w4KxDYYeYa29b/f4jZYZnV6vSkqV bQKIpx9LZR8hMfFx8BXMWntc+I3AosgKVOvCk9oc/MSp779P3bsk/y6B5QjPCXT+3t4h4H 83VDGZGTKCHz3HVjqFNIYXsvZzwVZ+uX4iNdmeTLmiWlWoUINDiDmV18IrvxsQMO3lF6Vg fXgFg8m0SDRHeP7cEHGTQcgGHMyk49TSO/nCXkmZpNqCx3NpJBrbucOx+c050ZngXMTGmm 2/V4H69ga/SJFJYaNfS3tmKbAXqmSmO8rbEB3VFDg1kOJQ44UOx1wXfQ33/nUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026809; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l4VA2N4vGbVwTLjc0mdEPC2b3OAWYlyWZBXAmvWZ/gw=; b=Ux87Op5BHkzd3MbOkpwoN/+RrN72d3o3uiqiKv8T8qN6bs+j2aCmdyHPVgllsRml7uNMLe zjoRiORrqgpdfaYeblfRGACVziGsHykOacftdTZ8IoyC3RxRdbkQdnjEDiYoYaT2C4bwUB ienFujjMgSNSN86SyTm06UCBJYJhpVRpiKBs16vrx5UkkLBNbqkUxToDWM0yooXedN2hsD 1Mayx8u41drOjmLp4nGAT5+TbmRo08Bbyr6k6TKW526i7yops9jKJmgK+zbZzdVmoPEnFL G4H5kTFyFsYASoxz9Uh4mniC9MVJHvMRIfyn22oqybBP4t/bNEu61Q9Zw5vTaA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026809; a=rsa-sha256; cv=none; b=WJRDJIuYQaqxAAs9HfoxjO8le/cGs0YxIHrRMp7YT1KO2GMtK0AmonVjXCbUDUDgfO2+wi lY7MqoGA0RWIuKV64mmm3itSr9qoDjwqilxBIbywMoVYkFD2f5u7Thghl/DFYwOfvxsgsR T3ioh4RyOYLxUJTCg1lFDJ4zHq5kDEWK3TN7WKjEcGmj8LR9StqHBi0UCHZd4aL9IlAdAJ ckwtJsNCUe0BosjzQ17606Vkadvv1XnKInF2QwzCnSptc5kKREpYR6JI1qB28dW0F0D6MD L0LrFWDJPuNFjHHE6MEQXXdSF35RKVeQz3QPETltxke/ftb9Y51RZi08AuPk+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 4QsBG11Rdmz17gg; Thu, 29 Jun 2023 08:20:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8K9s0078477; Thu, 29 Jun 2023 08:20:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8K99O078471; Thu, 29 Jun 2023 08:20:09 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:09 GMT Message-Id: <202306290820.35T8K99O078471@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 93cac961f46a - stable/13 - linux(4): Bump osrelease to 5.15.0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 93cac961f46a244866daa9c52fa43868b162b792 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=93cac961f46a244866daa9c52fa43868b162b792 commit 93cac961f46a244866daa9c52fa43868b162b792 Author: Dmitry Chagin AuthorDate: 2023-04-22 19:18:08 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:27 +0000 linux(4): Bump osrelease to 5.15.0 Linux kernel version 5.15 named Trick or Treat is a 22nd LTS release. Reviewed by: trasz, emaste Differential Revision: https://reviews.freebsd.org/D39649 MFC after: 1 month (cherry picked from commit 0ef30b5d6b75596e087a86c3cb01a0b2c611e7e6) --- sys/compat/linux/linux_mib.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index ae650934273e..41b53d40da3a 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -46,8 +46,8 @@ int linux_get_oss_version(struct thread *td); int linux_kernver(struct thread *td); -#define LINUX_KVERSION 4 -#define LINUX_KPATCHLEVEL 4 +#define LINUX_KVERSION 5 +#define LINUX_KPATCHLEVEL 15 #define LINUX_KSUBLEVEL 0 #define LINUX_KERNVER(a,b,c) (((a) << 16) + ((b) << 8) + (c)) From nobody Thu Jun 29 08:20:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG244d5z4knbk; Thu, 29 Jun 2023 08:20: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 4QsBG23Bg3z3t7f; Thu, 29 Jun 2023 08:20:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026810; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PfUMA0AJd/7COcnJROC6hQI1hYe2bqxTUnz/EKUHU04=; b=eCMSrOIVV0jw4gRS+hkcWftdaQYWu8jlqRXORyB0AZeb1/NArEy/o4Ullr7U0k8rjL5zVD AzWOhCYHjK/msp3mnJ2cB7pk96TYgVX3c4svMRFrDBGa23eBmcYFvGhIOSkJfiDPrie2As S/yJmdotP5nS7M3Sy83paRh9TtL82IpV3jfZT3EZMcqfJNxJ9e4PotMRXUkVPQwHifri9G +jCtrYeI8qg/HV+wcGyfrn1GKVfoT+C4tUGuM5dWAPMHPpY+lYXRnNLLMjyO4R83g4q8lv 2YAIx9VEnTpzG9PwQaK1hklSZmnNBvpP2V2gOihX/N+mBqiDCmhu6vgwpioIBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026810; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PfUMA0AJd/7COcnJROC6hQI1hYe2bqxTUnz/EKUHU04=; b=aEHBXVHqC3skH0uF1hGnHFMX1o1bI7vA9YdAqLbxMq72Lw0TLYsiM6YWV4/hvi+tNX+5KN xm0+50EUuluJle/2tJ9rQbJPvCUnf0ROfnNSOVYW0h/XsMATq9dMt+HcdJ+Jm9r5ZQU5TJ SwFlkE8zf1/aKmpMPCu6jhgEAAwAll10SfqzR+ohrSbAST0Xusak6RoGHIbEN+nlYiXq/1 UqtImwvWOt7//m7+/wffu/XfAdHobepZhZqaECbX2cjomUJC6kk5+I7K+J/C+VCz7UVgNU lu0DRB56EaJMLeOQvn1xD9G8GNeFfXdOcTYipVkWW8cS5sKUDViNZA1RNUrDRQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026810; a=rsa-sha256; cv=none; b=nNwddxSRXxhR9Fu182yUv9oGYNhLg4Naqw+aJGfPfapdrRmcBt0p0vj0H1c9/fBJuyDP21 0Zzbr7o0k6HGEQ+u+M0+ytTCBSXgW5usSpwI1AvY5HHXp0JK4Kf4OMPTiLeNxMq1Loy3fi yWvBzPtm5y9Vn5bhpt1IGCdJJb5F9zS5po2lp+l30R7+ry4+/hzAqtwvN5yrPSZkmuMOOa CH9CITMqpQccJTdnUX0aeqSvO8pYRexmYYD0D6D6fFoJc1t3HBWAdbYiPF+xHVxUyoT8hU OCRJ8tv/gVQB8PfnZJDmkeLbDiPPl3MjBFS+5w/RvIV6mbri7JdFpyyilTUrZA== 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 4QsBG21z1Sz17gh; Thu, 29 Jun 2023 08:20:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KAn9079070; Thu, 29 Jun 2023 08:20:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KA74079064; Thu, 29 Jun 2023 08:20:10 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:10 GMT Message-Id: <202306290820.35T8KA74079064@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 276bc96ff331 - stable/13 - linux(4): Fix arm64 build after b7a6bcdd, missed chunk added List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 276bc96ff331f3706b36b72e08f5c55f56784b46 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=276bc96ff331f3706b36b72e08f5c55f56784b46 commit 276bc96ff331f3706b36b72e08f5c55f56784b46 Author: Dmitry Chagin AuthorDate: 2023-04-22 22:41:12 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:28 +0000 linux(4): Fix arm64 build after b7a6bcdd, missed chunk added MFC after: 1 month (cherry picked from commit 66e8f1f7d37b5f657086437f5411a63c9080e25c) --- sys/compat/linux/linux_elf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index 9db599d83bac..f335f18e252f 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -534,7 +534,8 @@ __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) if (args->execfd != -1) AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); if (p->p_osrel >= LINUX_KERNVER_5013000 || p->p_osrel == 0) - AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, LINUX_MINSIGSTKSZ); + AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, + imgp->sysent->sv_minsigstksz); AUXARGS_ENTRY(pos, AT_NULL, 0); free(imgp->auxargs, M_TEMP); From nobody Thu Jun 29 08:20:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG351Ffz4knWR; Thu, 29 Jun 2023 08:20: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 4QsBG33gpPz3tTm; Thu, 29 Jun 2023 08:20:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026811; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6Q7PPBkAs17GKCZ3LpE5Wh7QfEaGnEsUYlEhiL7SyfY=; b=R/a4Rz+XP9EIklhXA1vC9HqKxc4YVt2UJVH4IG6H9J8KEzs43sG5NDH3QkAOH9uEaIwCjX Xr/iZeHemw/gIExQcQYhty+mTLDyHWSDImMdEDPb0h2g2uz2cqj1CGX+drWPQtT77TwPwt Mzoa7H6DeLfJcJUSpCgIojhEz5/kfmvnCgrCYVaW8mP9Mw3Xs/8e7MRb9owmIwq4L0NM4u govw0wJcjE1rufRxnrfqp0CLB3VjQnp1eEXYeuOUzN8Bifbjfv7MFZwKyVYGKWW1JOcJFB oC69l/oSprfhy4IpYyGTe2K3Vj4C/6fHhR0K9fN08+dKPr/BDVNjjdPOKLOLGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026811; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6Q7PPBkAs17GKCZ3LpE5Wh7QfEaGnEsUYlEhiL7SyfY=; b=n0GA7FSUD1dT66KTi1WjtjQi6EVvZ5tKJDxOn7UqUsL+TEyvVQSOy4WdNurZyH1/Avq2aV ezSQ/nkEMxSebK6/uSzyTn0gLVy6SeVceAT0faluM8vK3bPmN2ikh94/3dV/PV27vlLf/x ePGgRq1PB46f5uRNTGCGkPxIz87zwn5m+6FPA7a6yY8/yicvGjWodhFhuHY9VcFMl72Xdi oN56NwH9BGx/m5f47S2w5CIP3eJ+vU7OIAeOy5EXAi50uyH/5+gNMBauQxivwevaoWT2gW DLt69Q9kdEfv8/9jPaKBk4kehnSCgod6CyDB0NKhlLdwjZGvvmoxPS7y1wMH2w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026811; a=rsa-sha256; cv=none; b=adoDXlad2QMXKAbBfO8v3+u6326nUlx2AXYDQxNtj9Zj3RpWWiDDwxeEW0lUzaiCDbpy/8 FhyzOTL1HI7+BVqAXWUE6THm1b9saM1PmvwDeWHLOil2jlRrejhkQszyup0pQo57v2Hni2 LhXEF7QB5Dbj3Zdrn72870/Z/vCZUIafKIRskWLThCCLIjrqtB1nm5Idxz/JpmSIyDaurB vE2mj4xsTaSYTx5yMPl75XH5XBVZ4W/PUFjSo3Kd/6DNYrx/vXbgca0WXMBmX6mmthCICN gaCpiBke7TI12OcwGOs7H+bvX0oeGu3hPA/TPUWT0yd+aksOerHFBCIU4ugMUQ== 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 4QsBG32gM1z182t; Thu, 29 Jun 2023 08:20:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KBKY079695; Thu, 29 Jun 2023 08:20:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KBKt079689; Thu, 29 Jun 2023 08:20:11 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:11 GMT Message-Id: <202306290820.35T8KBKt079689@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: dde5ee79d043 - stable/13 - linux(4): Don't relie on process osreldata when testing features List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: dde5ee79d04385222a9704b704d2d2de0b3758a7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=dde5ee79d04385222a9704b704d2d2de0b3758a7 commit dde5ee79d04385222a9704b704d2d2de0b3758a7 Author: Dmitry Chagin AuthorDate: 2023-04-26 13:56:41 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:28 +0000 linux(4): Don't relie on process osreldata when testing features The ELF note identifyies the operating-system ABI that the executable was created for. The note data of the Glibc executable contains the earliest release number of the Linux kernel that supports this ABI. As of a current 2.37 version of Glibc, it is 3.2.0 for x86, 3.7.0 for Aarch64. Glibc does not use this release number and the current kernel's LINUX_VERSION_CODE to detect kernel features, using fallbacks to known previous way in case of ENOSYS or something else instead. A dynamically linked Glibc reads the current kernel's LINUX_VERSION_CODE from the ELF note in the vDSO or fallback to uname syscall if the vDSO can't be located and parse the release field in struct utsname. Glibc uses the current kernel's LINUX_VERSION_CODE for "kernel too old" check. While here use inlined LINUX_KERNVER for tests to improve readability, as suggested by emaste@. MFC after: 1 month (cherry picked from commit 76f8584e49cf7eedaa2e1312593bf46c7225d79a) --- sys/compat/linux/linux_elf.c | 8 ++++---- sys/compat/linux/linux_mib.h | 3 --- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index f335f18e252f..1af861122f81 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -492,6 +492,7 @@ linux_trans_osrel(const Elf_Note *note, int32_t *osrel) int __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) { + struct thread *td = curthread; Elf_Auxargs *args; Elf_Auxinfo *aarray, *pos; struct proc *p; @@ -526,14 +527,13 @@ __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); - if (p->p_osrel >= LINUX_KERNVER_2006030 || p->p_osrel == 0) + if (linux_kernver(td) >= LINUX_KERNVER(2,6,30)) AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); - if ((p->p_osrel >= LINUX_KERNVER_2006026 || p->p_osrel == 0) && - imgp->execpathp != 0) + if (linux_kernver(td) >= LINUX_KERNVER(2,6,26) && imgp->execpathp != 0) AUXARGS_ENTRY(pos, LINUX_AT_EXECFN, PTROUT(imgp->execpathp)); if (args->execfd != -1) AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); - if (p->p_osrel >= LINUX_KERNVER_5013000 || p->p_osrel == 0) + if (linux_kernver(td) >= LINUX_KERNVER(5,13,0)) AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, imgp->sysent->sv_minsigstksz); AUXARGS_ENTRY(pos, AT_NULL, 0); diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index 41b53d40da3a..7022d811959b 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -58,11 +58,8 @@ int linux_kernver(struct thread *td); #define LINUX_VERSION_STR LINUX_XKERNVERSTR(LINUX_KVERSION.LINUX_KPATCHLEVEL.LINUX_KSUBLEVEL) #define LINUX_KERNVER_2004000 LINUX_KERNVER(2,4,0) -#define LINUX_KERNVER_2006026 LINUX_KERNVER(2,6,26) -#define LINUX_KERNVER_2006030 LINUX_KERNVER(2,6,30) #define LINUX_KERNVER_2006039 LINUX_KERNVER(2,6,39) #define LINUX_KERNVER_5004000 LINUX_KERNVER(5,4,0) -#define LINUX_KERNVER_5013000 LINUX_KERNVER(5,13,0) #define linux_use54(t) (linux_kernver(t) >= LINUX_KERNVER_5004000) From nobody Thu Jun 29 08:20:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG508DTz4knWT; Thu, 29 Jun 2023 08:20: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 4QsBG441lhz3tQ7; Thu, 29 Jun 2023 08:20:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026812; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VPNNEWNLkQdjkA1j+GjQkY8Bjom6XTMMLxIKS9OfrFE=; b=cZHpzgrBYZXGaJe+W/fDNmiwusWDtbLFu7J2VUFgd2lfuBVDfd1ZvA7VseJvno1Kx1TCnn EveTrkvO28zna8xZeaej94RFFa0+yCqBVylXxSgbU9x/0T7eH3I/uXYNiK5r5zv5l8xqNP GJigTLc0+93Z7BE82wXdMLkD3fBjxUXb9LvuflN2ZJEPha9arW0HSoGum8rwGXv/LqXOjH 7veOEP1I87cDzYSqZeoVHbKJhnRlGKAH88TBGKIZgkWkuwXCjx4xh/36NEjlK3bcK6ylRp 3uaIRBO8oJTPgyrj1i5CqyN9NoXA4F8bav5vS5RNqWcfGhzbdHJpH6eQRko2Ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026812; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VPNNEWNLkQdjkA1j+GjQkY8Bjom6XTMMLxIKS9OfrFE=; b=EgtNfy+XF8d9aElOD9MJXmRdaltyGktPgvhFrkwlCB1uVZUYk9Q5rlOTiwjtEYE76V5dIn dan2Xufn/tqM1R3XebGPbGFEnWrlptk23ixWjI3Yz5mDdXUdM+/BW/2iMKYj9TxSP8rhA3 0h/xWhWlfuMmuleH90Lwk6kr/4wfdTx906vRr3GPv2JdnfmxscBE5ivrY+G+ruiTFFxaCI 6ni8W/LNFsuYZPQIwCF8uRxZZDwgan3kbrj5k13FEZIikBCJbEUFGxDoqCzPyCX6A+l3/A +Cwre4lBltLcpwZ6oW4bpB+jYAC020GLmiaTxrknweY3/7j6FVm5l8Jdz6xLRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026812; a=rsa-sha256; cv=none; b=eEJv29cYSRB3yATxEgENmw4c8tDUCzIBCdtfyBPM6vQZ9TEHCCjKtnUkrI9NF/mCAj/4VD bzfLGHLGjltVkMbMKMqItdvTG1G6NPcrAoP88oH9xPOwvbH/OXoCNIRJ6ykIyBuIL7FCM3 TSgYGJ2lzgV12fySjzzqMk/o1yFEXqRf9wUDACwXOccslP2HupaPes6/fQA59I7rTzuwJn So1uvAx2dPrYWFYGdjbM3Z+/dfPdmgRUlMqKsImage7X2EdNO7o4lx4LYgiKsf+cLcVW6L bJadR1V0fKh2q4b0s+265YW8xS1U58uoOYV0w/YS1FUzKrmz5DYFiVhYBuh91w== 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 4QsBG437dFz17db; Thu, 29 Jun 2023 08:20:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KCjf080326; Thu, 29 Jun 2023 08:20:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KCjH080320; Thu, 29 Jun 2023 08:20:12 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:12 GMT Message-Id: <202306290820.35T8KCjH080320@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 2c7aac44f5ab - stable/13 - linux(4): Use inlined LINUX_KERNVER for tests to improve readability List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 2c7aac44f5abd751465d5bf854a9ef0f104c5ee0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=2c7aac44f5abd751465d5bf854a9ef0f104c5ee0 commit 2c7aac44f5abd751465d5bf854a9ef0f104c5ee0 Author: Dmitry Chagin AuthorDate: 2023-04-26 13:57:30 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:28 +0000 linux(4): Use inlined LINUX_KERNVER for tests to improve readability MFC after: 1 month (cherry picked from commit e185d83fc48ba0f28896a986104c02203005b533) --- sys/compat/linux/linux_elf.c | 2 +- sys/compat/linux/linux_mib.h | 6 ------ sys/compat/linux/linux_misc.c | 4 ++-- sys/compat/linux/linux_signal.c | 2 +- 4 files changed, 4 insertions(+), 10 deletions(-) diff --git a/sys/compat/linux/linux_elf.c b/sys/compat/linux/linux_elf.c index 1af861122f81..06a384325d14 100644 --- a/sys/compat/linux/linux_elf.c +++ b/sys/compat/linux/linux_elf.c @@ -513,7 +513,7 @@ __linuxN(copyout_auxargs)(struct image_params *imgp, uintptr_t base) * is not present. * Also see linux_times() implementation. */ - if (linux_kernver(curthread) >= LINUX_KERNVER_2004000) + if (linux_kernver(td) >= LINUX_KERNVER(2,4,0)) AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index 7022d811959b..5902f523dfee 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -57,12 +57,6 @@ int linux_kernver(struct thread *td); #define LINUX_XKERNVERSTR(x) LINUX_KERNVERSTR(x) #define LINUX_VERSION_STR LINUX_XKERNVERSTR(LINUX_KVERSION.LINUX_KPATCHLEVEL.LINUX_KSUBLEVEL) -#define LINUX_KERNVER_2004000 LINUX_KERNVER(2,4,0) -#define LINUX_KERNVER_2006039 LINUX_KERNVER(2,6,39) -#define LINUX_KERNVER_5004000 LINUX_KERNVER(5,4,0) - -#define linux_use54(t) (linux_kernver(t) >= LINUX_KERNVER_5004000) - extern int linux_debug; extern int linux_default_openfiles; extern int linux_default_stacksize; diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c index bc62c6b24d2c..ba0ac190a946 100644 --- a/sys/compat/linux/linux_misc.c +++ b/sys/compat/linux/linux_misc.c @@ -384,7 +384,7 @@ struct l_times_argv { #define CONVOTCK(r) (r.tv_sec * CLK_TCK + r.tv_usec / (1000000 / CLK_TCK)) #define CONVNTCK(r) (r.tv_sec * stclohz + r.tv_usec / (1000000 / stclohz)) -#define CONVTCK(r) (linux_kernver(td) >= LINUX_KERNVER_2004000 ? \ +#define CONVTCK(r) (linux_kernver(td) >= LINUX_KERNVER(2,4,0) ? \ CONVNTCK(r) : CONVOTCK(r)) int @@ -850,7 +850,7 @@ linux_waitid(struct thread *td, struct linux_waitid_args *args) idtype = P_PID; break; case LINUX_P_PGID: - if (linux_use54(td) && args->id == 0) { + if (linux_kernver(td) >= LINUX_KERNVER(5,4,0) && args->id == 0) { p = td->td_proc; PROC_LOCK(p); id = p->p_pgid; diff --git a/sys/compat/linux/linux_signal.c b/sys/compat/linux/linux_signal.c index 5a3cb97c385f..89f0f38d7b6c 100644 --- a/sys/compat/linux/linux_signal.c +++ b/sys/compat/linux/linux_signal.c @@ -776,7 +776,7 @@ lsiginfo_to_siginfo(struct thread *td, const l_siginfo_t *lsi, switch (lsi->lsi_code) { case LINUX_SI_TKILL: - if (linux_kernver(td) >= LINUX_KERNVER_2006039) { + if (linux_kernver(td) >= LINUX_KERNVER(2,6,39)) { linux_msg(td, "SI_TKILL forbidden since 2.6.39"); return (EPERM); } From nobody Thu Jun 29 08:20:13 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG56TByz4knbw; Thu, 29 Jun 2023 08:20: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 4QsBG54YFcz3tK5; Thu, 29 Jun 2023 08:20:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026813; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IoIzQ/WNtpBrny7lQeIsC0SzFfK54R+m3qQoJBO+qfI=; b=BNRAAkrWoh4oz6ZStQyuOK5wGpInuLfhr6f4s9NpDbryrI3SNT526cQ8b3z1qbp6I/Gnr+ Cn81MP9HZiOnwYGbmxm9hVu99V3bZAQqhzOi92hYBzYlO+GtA7P5KniJXjsXqoOjFMjPVz OJccGQqseXVq12xHypHCgJRr33D2tB+ibah++kjGpbzvlEs/8dJeIFUTLUzh2miouID519 KCELfQomdoH8ftQrJZAWJvr1C7fKbNlWWRBoJvVtu0T636U6F0etnVE0pmGVDIpPsBwOks nS/aIREuhL/lbrodogWkWBdtVHQVY53EDiVm6G2N5oI62nmmMQEefTxLa2LpuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026813; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IoIzQ/WNtpBrny7lQeIsC0SzFfK54R+m3qQoJBO+qfI=; b=wh4TFdbuLKJrz4onm1Qc29P4qOUU1UDSj2mJkQ0sKaDtVc+pwOgqcVKZ2n3FOdjgtMaL1f h1Xydbdei6EIi+U3J3okLhM70IDSVW+Z1XI7sLqKrpDMRhnK8ZTM/TbLaDRt9AL8oOToQL U0rxlo6d/85MAdNXFuA/QoqtG2B/gLRcInO0sboXfNUuNM1zVIsfcEkS7RewAqoasJRu8O 0BHQirbPR5vHH0YLlfcYYQk/vxy8kLPim7UMvJ6FiUGHCMlajMOrhJvNgEtbV6okT40A6O IFzYBdXorU5e76Hbxzo09M6kaG3tivZ+gYQcClDw7ByXBiA9PQCRzsliIv/ROQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026813; a=rsa-sha256; cv=none; b=XHwDPzcTXTvcqe0mthSIhIGOJFCf7m5HhmrNz0HgoaS4VNSpsB3kCj8Yf4XKyaQCx3BAng KvbQcZdpYBYjjLdzHixEjuM2IRAyhL/WmVP8Q/o+h/AeUq3cNXOxsNIvjKOwgcOq29E3Ee iaUSEkjka0bB4a6oZUUPuvSAWQgY8lTbo7gGSedcanQZE90WG7kke32CnGcMeo/ipKFHyq rBZr3F743WLjt+SMiukI/Gghjj46XHPD6+aWl0qr4g2yTTa3J3hi4hLt6x52vSd3FsDmPQ fssTv7RAfIsalpy9DbseW8WKW48TGfHfgCuPTcTlkDrxDk5zl2WncR9mJaNQmw== 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 4QsBG53gMnz182v; Thu, 29 Jun 2023 08:20:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KDYp080977; Thu, 29 Jun 2023 08:20:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KDam080971; Thu, 29 Jun 2023 08:20:13 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:13 GMT Message-Id: <202306290820.35T8KDam080971@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 78c8b272ae7d - stable/13 - linux(4): Sort includes in the linux_stats.c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 78c8b272ae7d856e493d5dd302e0e51e926e2606 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=78c8b272ae7d856e493d5dd302e0e51e926e2606 commit 78c8b272ae7d856e493d5dd302e0e51e926e2606 Author: Dmitry Chagin AuthorDate: 2023-04-28 08:54:58 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:28 +0000 linux(4): Sort includes in the linux_stats.c (cherry picked from commit 2a38f51c5b8a7cf38f0a29a59e7558d8aef91047) --- sys/compat/linux/linux_stats.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index d00888e77e84..79937fd9fa86 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -49,8 +49,8 @@ __FBSDID("$FreeBSD$"); #include #endif -#include #include +#include static void translate_vnhook_major_minor(struct vnode *vp, struct stat *sb) From nobody Thu Jun 29 08:20:14 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG661ljz4knRr; Thu, 29 Jun 2023 08:20: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 4QsBG654N6z3tR3; Thu, 29 Jun 2023 08:20:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026814; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rGfPuvYyOEYGppzTEhnYQpSkBzIRMHwxstc1Oz05Dn8=; b=VhQvvwf0SJ8Ne7+7g48vRAMlAuhGyMskLBijct1vIEpQctj3XSy5fBFEm8kZ8txjmrv/SL MlxdrXk2zPkURkaTdv7X1ylGpPO5IKp2X8waVa8bijP7N4tD0Yo6RF4XtD/hdvKsGCQSJM QgaiB7waAZluabeDfWrwC2fB84BfIfU8m2201iuikwC7Ta3nKOi27uSFVv9B84ktG7wdu6 A7344FcRdezTmp/oJN1n/RjpaHGYWtvV37SPXQZVof7QmUczPteDeTkfgmnBLdNF4gwpBY wzq9ieZ79tdPDJg3GSdS7GcbIWrYgtlpy5P/lp2+10TR7Sm6mYztXb9m4lz6gA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026814; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rGfPuvYyOEYGppzTEhnYQpSkBzIRMHwxstc1Oz05Dn8=; b=GNwPDUlhRNPmLqE+NgbiWbxrlTccQCBjB80QrAjszepT9oyhUJky5sFZwplRu2eim1TsaY 8hmXwSEXvuc7QojeWsmJZfCmJKT/ShQ6dxpIspT4bltu5GrTbtAmV/DMitxqTarBmZyE0Y xvjzb+YIbCdn3QUKu9aSicCEtXvwcM0TPhMSPXCzfVTy61sHfNNahIl9MbYdRmr0CRRWOj 3LP60C73aEaLe5BA9T5o1oJzTHR7LOowFNnNgieEvdQOy/FodcimCQzbw+OioYQrmHWH5Z nNcL5CvM6JkJDDGV+kfGamtr7LH8pEeM8Oh4LbXYT8vnfxClQ3uBsxskUBMNZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026814; a=rsa-sha256; cv=none; b=e/ki8QKD9zvcoG9u8nAC4kVUbWmDXdLvCSVJT8eBMIEMzGLvV+CxYgi9hZs7Rxb6KXUOAv aOauhArJF+G4QsLHgSEW1sYlFqT/leSVRCw7/Q7c+BhVZ7Vt/K9U1sQ05zCwrUQucuP+cz K9dWOD6V+s453WXPiFMUWaPB+k/rcwaDw4rVhSncjPTiZ1WWn7GtCKJ+VQ4H/vrr67An1E Pp6y+r7IYE0Y2Gp05Mfw4Zv2UyZzwhhSmV0KNT9qBov+uFyxQl7x+V9RjOq6Pvnuvgdek+ 9SEZAv7lsHEShUqQ4FC65SzSK56ViUPeOuUveJiqYiTym2u9MIMvyZr40MIU0g== 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 4QsBG63ywNz17NN; Thu, 29 Jun 2023 08:20:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KEU0081643; Thu, 29 Jun 2023 08:20:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KEBs081637; Thu, 29 Jun 2023 08:20:14 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:14 GMT Message-Id: <202306290820.35T8KEBs081637@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: c43f5eb2f4c7 - stable/13 - linux(4): Move translate_vnhook_major_minor() into the Linux common module List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: c43f5eb2f4c7cbfde1873c9d0ece23e719ae312e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=c43f5eb2f4c7cbfde1873c9d0ece23e719ae312e commit c43f5eb2f4c7cbfde1873c9d0ece23e719ae312e Author: Dmitry Chagin AuthorDate: 2023-04-28 08:54:58 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:29 +0000 linux(4): Move translate_vnhook_major_minor() into the Linux common module (cherry picked from commit 6072eea0c375fc3ab0cf5bb494c75d1beac7b8ba) --- sys/compat/linux/linux_stats.c | 24 ------------------------ sys/compat/linux/linux_util.c | 26 ++++++++++++++++++++++++++ sys/compat/linux/linux_util.h | 3 +++ 3 files changed, 29 insertions(+), 24 deletions(-) diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 79937fd9fa86..219f4a602eb4 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -52,30 +52,6 @@ __FBSDID("$FreeBSD$"); #include #include -static void -translate_vnhook_major_minor(struct vnode *vp, struct stat *sb) -{ - int major, minor; - - if (vn_isdisk(vp)) { - sb->st_mode &= ~S_IFMT; - sb->st_mode |= S_IFBLK; - } - - /* - * Return the same st_dev for every devfs instance. The reason - * for this is to work around an idiosyncrasy of glibc getttynam() - * implementation: it checks whether st_dev returned for fd 0 - * is the same as st_dev returned for the target of /proc/self/fd/0 - * symlink, and with linux chroots having their own devfs instance, - * the check will fail if you chroot into it. - */ - if (rootdevmp != NULL && vp->v_mount->mnt_vfc == rootdevmp->mnt_vfc) - sb->st_dev = rootdevmp->mnt_stat.f_fsid.val[0]; - - if (linux_vn_get_major_minor(vp, &major, &minor) == 0) - sb->st_rdev = (major << 8 | minor); -} static int linux_kern_statat(struct thread *td, int flag, int fd, const char *path, diff --git a/sys/compat/linux/linux_util.c b/sys/compat/linux/linux_util.c index 2a21fdc10bd7..5995ac5e18af 100644 --- a/sys/compat/linux/linux_util.c +++ b/sys/compat/linux/linux_util.c @@ -42,6 +42,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -225,6 +226,31 @@ linux_vn_get_major_minor(const struct vnode *vp, int *major, int *minor) return (error); } +void +translate_vnhook_major_minor(struct vnode *vp, struct stat *sb) +{ + int major, minor; + + if (vn_isdisk(vp)) { + sb->st_mode &= ~S_IFMT; + sb->st_mode |= S_IFBLK; + } + + /* + * Return the same st_dev for every devfs instance. The reason + * for this is to work around an idiosyncrasy of glibc getttynam() + * implementation: it checks whether st_dev returned for fd 0 + * is the same as st_dev returned for the target of /proc/self/fd/0 + * symlink, and with linux chroots having their own devfs instance, + * the check will fail if you chroot into it. + */ + if (rootdevmp != NULL && vp->v_mount->mnt_vfc == rootdevmp->mnt_vfc) + sb->st_dev = rootdevmp->mnt_stat.f_fsid.val[0]; + + if (linux_vn_get_major_minor(vp, &major, &minor) == 0) + sb->st_rdev = (major << 8 | minor); +} + char * linux_get_char_devices(void) { diff --git a/sys/compat/linux/linux_util.h b/sys/compat/linux/linux_util.h index 37445ad0af27..f61aeea99136 100644 --- a/sys/compat/linux/linux_util.h +++ b/sys/compat/linux/linux_util.h @@ -105,6 +105,8 @@ struct linux_device_handler { int linux_char_device; }; +struct stat; + int linux_device_register_handler(struct linux_device_handler *h); int linux_device_unregister_handler(struct linux_device_handler *h); char *linux_driver_get_name_dev(device_t dev); @@ -112,6 +114,7 @@ int linux_driver_get_major_minor(const char *node, int *major, int *minor); int linux_vn_get_major_minor(const struct vnode *vn, int *major, int *minor); char *linux_get_char_devices(void); void linux_free_get_char_devices(char *string); +void translate_vnhook_major_minor(struct vnode *vp, struct stat *sb); #if defined(KTR) From nobody Thu Jun 29 08:20:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG76VFkz4knVD; Thu, 29 Jun 2023 08:20: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 4QsBG75ZnFz3tWq; Thu, 29 Jun 2023 08:20:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026815; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2wk2thw8jyUVIo1GZ8oPLYy/DHKU1ZrF01qp5jWW7FQ=; b=KmiAefGe8/55fDnBbwk4LAgmCGa8vaQL90P6gluWa8XCJ9C2g9LSqP8tNVnNYg21wjU++G JWdO0k+87XmbHQbVBILf+ftnBfGgrEu2ZZlpewAmVAS9xTY34ksv+eOXYpwbWbh7VtBXFw wLjvgWZZ9cZ7eBIRT0BAN8IbyMGePuHvvJACN2jMA3tx8ewVqjdGByuOTHrwnmOebe+7p6 3BcG5hZ0MXzyonN60ys01yPBNvgvp0siskaVeTmJh/XIkeyXm3jAKfJjIRYUF83rTLQ6wf 5JoQUb6Pu1/BkOi1W6lPIWtHoRUqqR/NkrxF5QHdihyQqSuRi4EZ28+1Q08U4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026815; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2wk2thw8jyUVIo1GZ8oPLYy/DHKU1ZrF01qp5jWW7FQ=; b=lvUm+vo8PX8BIr/shJToosrsQgMZWj34lJR+lewtGuvayIrgZO5IfgOlbYrAD0iXkfUunb sQfMq+zyjuodcbUHAg24b6vMJ2AgZdD1CI+F5+dxaCU9EpFw3qmdkLzT2pprY/9aL6TJJU 1qhedLIfe/6FNRHe3HEwoi93Dc1zcETnWHoRuKKZdtUEehyOKMmv6Gx3/1rKaFOYa0FGBj j0/sJwXdNrlbDIqaxJpy9haNu4y6zxIEIKYmZo2zdIHyUwyF67dp7BGXbQQauY3QNGDFpB Ty1NObnENJciQm+xU+COsSi+ywWrvlzo3qap8flTeASnrENXURx9LAoK8rD86w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026815; a=rsa-sha256; cv=none; b=tqWVCM+VRxG+RMvvFX40Oz4pf2965rdn2bCUeJz1oN1rCRQjvzcjEs9tVmh1PiXDeR7Ccm Oyz/cIdGKyhJcIGOBCtN0w+cpN71NxyeAqGop9+TMhSTSrXtR9ud/t226XxwGt3STMgLTO Bapj4ndRkQVC45gkLZ0gtGZCQs1hLWuGTqoG4R3sbeb4biH9p0UdLphgtl9acwiEgu1mvG 7HVX5tXltXNJKrf/T2okn1wZOiYehqx+UCsCOJ3KR7C2/P4xD2TAVcZkyT04IKDfhKxmak xuMVBo2whapGiDQdi0TjX8bUx/U+L8WbCafmHrCAIwFuLXb7F8kT0jvThRb0Mg== 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 4QsBG74g9Jz182w; Thu, 29 Jun 2023 08:20:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KFho082287; Thu, 29 Jun 2023 08:20:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KFKG082284; Thu, 29 Jun 2023 08:20:15 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:15 GMT Message-Id: <202306290820.35T8KFKG082284@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 815a433165a0 - stable/13 - linux(4): Move statx_copyout() close to linux_statx() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 815a433165a0406a88e70931db6a40e2e1e74c2e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=815a433165a0406a88e70931db6a40e2e1e74c2e commit 815a433165a0406a88e70931db6a40e2e1e74c2e Author: Dmitry Chagin AuthorDate: 2023-04-28 08:54:59 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:29 +0000 linux(4): Move statx_copyout() close to linux_statx() Just for future changes of the conditional Linuxulator build. We need a small refactoring of the MI code to help porting Linuxulator to other platforms. (cherry picked from commit e9204c5c2c5c471ad2182ec6358a46be74c9ebb6) --- sys/compat/linux/linux_stats.c | 67 +++++++++++++++++++++--------------------- 1 file changed, 34 insertions(+), 33 deletions(-) diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 219f4a602eb4..04589c33547b 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -165,39 +165,6 @@ newstat_copyout(struct stat *buf, void *ubuf) return (copyout(&tbuf, ubuf, sizeof(tbuf))); } -static int -statx_copyout(struct stat *buf, void *ubuf) -{ - struct l_statx tbuf; - - bzero(&tbuf, sizeof(tbuf)); - tbuf.stx_mask = STATX_ALL; - tbuf.stx_blksize = buf->st_blksize; - tbuf.stx_attributes = 0; - tbuf.stx_nlink = buf->st_nlink; - tbuf.stx_uid = buf->st_uid; - tbuf.stx_gid = buf->st_gid; - tbuf.stx_mode = buf->st_mode; - tbuf.stx_ino = buf->st_ino; - tbuf.stx_size = buf->st_size; - tbuf.stx_blocks = buf->st_blocks; - - tbuf.stx_atime.tv_sec = buf->st_atim.tv_sec; - tbuf.stx_atime.tv_nsec = buf->st_atim.tv_nsec; - tbuf.stx_btime.tv_sec = buf->st_birthtim.tv_sec; - tbuf.stx_btime.tv_nsec = buf->st_birthtim.tv_nsec; - tbuf.stx_ctime.tv_sec = buf->st_ctim.tv_sec; - tbuf.stx_ctime.tv_nsec = buf->st_ctim.tv_nsec; - tbuf.stx_mtime.tv_sec = buf->st_mtim.tv_sec; - tbuf.stx_mtime.tv_nsec = buf->st_mtim.tv_nsec; - - tbuf.stx_rdev_major = buf->st_rdev >> 8; - tbuf.stx_rdev_minor = buf->st_rdev & 0xff; - tbuf.stx_dev_major = buf->st_dev >> 8; - tbuf.stx_dev_minor = buf->st_dev & 0xff; - - return (copyout(&tbuf, ubuf, sizeof(tbuf))); -} #ifdef LINUX_LEGACY_SYSCALLS int @@ -753,6 +720,40 @@ linux_syncfs(struct thread *td, struct linux_syncfs_args *args) return (error); } +static int +statx_copyout(struct stat *buf, void *ubuf) +{ + struct l_statx tbuf; + + bzero(&tbuf, sizeof(tbuf)); + tbuf.stx_mask = STATX_ALL; + tbuf.stx_blksize = buf->st_blksize; + tbuf.stx_attributes = 0; + tbuf.stx_nlink = buf->st_nlink; + tbuf.stx_uid = buf->st_uid; + tbuf.stx_gid = buf->st_gid; + tbuf.stx_mode = buf->st_mode; + tbuf.stx_ino = buf->st_ino; + tbuf.stx_size = buf->st_size; + tbuf.stx_blocks = buf->st_blocks; + + tbuf.stx_atime.tv_sec = buf->st_atim.tv_sec; + tbuf.stx_atime.tv_nsec = buf->st_atim.tv_nsec; + tbuf.stx_btime.tv_sec = buf->st_birthtim.tv_sec; + tbuf.stx_btime.tv_nsec = buf->st_birthtim.tv_nsec; + tbuf.stx_ctime.tv_sec = buf->st_ctim.tv_sec; + tbuf.stx_ctime.tv_nsec = buf->st_ctim.tv_nsec; + tbuf.stx_mtime.tv_sec = buf->st_mtim.tv_sec; + tbuf.stx_mtime.tv_nsec = buf->st_mtim.tv_nsec; + + tbuf.stx_rdev_major = buf->st_rdev >> 8; + tbuf.stx_rdev_minor = buf->st_rdev & 0xff; + tbuf.stx_dev_major = buf->st_dev >> 8; + tbuf.stx_dev_minor = buf->st_dev & 0xff; + + return (copyout(&tbuf, ubuf, sizeof(tbuf))); +} + int linux_statx(struct thread *td, struct linux_statx_args *args) { From nobody Thu Jun 29 08:20:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBG91kdPz4knVF; Thu, 29 Jun 2023 08:20: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 4QsBG85wZsz3tqJ; Thu, 29 Jun 2023 08:20:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DqI0h4RAJo9rWy5KY5M51Ep+jgQfRSvcSy17WmhQaiU=; b=iYrAoC5bJBKiDpDklPh+krMvx40YF6BphPmqg1VMOLu56NibdOBFQYg/QbhAARlP7Vb/oJ 6zrC8yehX65iHzgKVN49ZeC72SVOyb2e/ajcCEaPA9jXHdPVPjyBV8w50gzuH7Ju0G1fk7 hIJvMLYv9Vx0nos+/iWqjQK4q8N8uAKdH1REGLnZFo+DdJoOM57qRGW3ni5tBl/zWgoGWj X+aN9JOPupf64i7fw/0PJ4gPf2yuNKBsZlUgjn38hIGH1LuXGhfebEUJCF0ohu4T4abEDA 6y0+EBvUrii1haO5G3r13qQj0km9Vpl2Qs2gCLE3qUgN9wUtHsrouvjmnubWxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DqI0h4RAJo9rWy5KY5M51Ep+jgQfRSvcSy17WmhQaiU=; b=gP1B5f93SojnJqZP1KzgsVuqDP/ouyubCAF5y550mYnb+rqa9tJB23MCiMv3ElJH3BAR8f fd1d9GNWhbjSVLV08udZH+3/Qg2eR3MFx/0aBcscMqNaSRavp9NoP4tPp1gAWx38LAovxM ncC1Obt5XBK3/xXq15XYvZZylu6g+jOGRDK1FJ+Yw7Em9NYLYtwIK0Q+qRjQXlEiccb5F5 vTOBJ3pPA6gTVOxAZk3ABJPfLFuD1OT0l8JaAgfWqZ9j7hZ5YGGU5EAjxW2vPo8k1KQ3SR SiCASif7VR6qfI2yvTBTc0D0Rek/jkwAv/kvzaDWvtQQ167BpUQMM6DbPoic+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026816; a=rsa-sha256; cv=none; b=oN6x38VESf5Ez0NZ18EXxt0FYyGO7UbX09xe6KjmEXtVc440N0N7/mItIonu0sUP+GubUn LLrRGibgYEmOyB0MTCENNcx9ZGCqLQLERRZGOm0sqzXi41CMY+GYJXvRdQfdZfDaxTcF8j xYnnZCkaV/C6Qm7YHxZk5TuMVFzKAgf7s/xMX4CbZBssutDpCfYTgIJX/Eaf/ZblinqVMi nCKFkDThZITMkXTtsHxD5wKluDWXU25Z2Uc46YdrnKzlEhG2k4TPmkZB0pifMEAKxzmUIJ ql0M2pb8984RFQOnx8Xyz+1qs6YWUs5MHNhvkCk5CZJ/cIuZqvbFpB3wlaeFLw== 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 4QsBG852Mwz17sR; Thu, 29 Jun 2023 08:20:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KG1r082884; Thu, 29 Jun 2023 08:20:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KGT4082879; Thu, 29 Jun 2023 08:20:16 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:16 GMT Message-Id: <202306290820.35T8KGT4082879@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: aaf17ef31c38 - stable/13 - linux(4): Rename obsolete old struct l_stat to struct l_old_stat List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: aaf17ef31c383e357dd622353002fb07a88ae518 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=aaf17ef31c383e357dd622353002fb07a88ae518 commit aaf17ef31c383e357dd622353002fb07a88ae518 Author: Dmitry Chagin AuthorDate: 2023-04-28 08:54:59 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:29 +0000 linux(4): Rename obsolete old struct l_stat to struct l_old_stat (cherry picked from commit a408fc097f43b80fd1477196e595edc796804520) --- sys/amd64/linux32/linux.h | 3 ++- sys/compat/linux/linux_stats.c | 8 ++++---- sys/i386/linux/linux.h | 3 ++- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index d0c966ad3c92..4552c60e260b 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -199,7 +199,8 @@ struct l_newstat { l_ulong __unused5; }; -struct l_stat { +/* __old_kernel_stat now */ +struct l_old_stat { l_ushort st_dev; l_ulong st_ino; l_ushort st_mode; diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 04589c33547b..58c378d6bc08 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -222,9 +222,9 @@ linux_newfstat(struct thread *td, struct linux_newfstat_args *args) #if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) static int -stat_copyout(struct stat *buf, void *ubuf) +old_stat_copyout(struct stat *buf, void *ubuf) { - struct l_stat lbuf; + struct l_old_stat lbuf; bzero(&lbuf, sizeof(lbuf)); lbuf.st_dev = dev_to_ldev(buf->st_dev); @@ -266,7 +266,7 @@ linux_stat(struct thread *td, struct linux_stat_args *args) if (error) { return (error); } - return (stat_copyout(&buf, args->up)); + return (old_stat_copyout(&buf, args->up)); } int @@ -286,7 +286,7 @@ linux_lstat(struct thread *td, struct linux_lstat_args *args) if (error) { return (error); } - return (stat_copyout(&buf, args->up)); + return (old_stat_copyout(&buf, args->up)); } #endif /* __i386__ || (__amd64__ && COMPAT_LINUX32) */ diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index c4b70b2a6aaa..7e10ff357e00 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -172,7 +172,8 @@ struct l_newstat { l_ulong __unused5; }; -struct l_stat { +/* __old_kernel_stat now */ +struct l_old_stat { l_ushort st_dev; l_ulong st_ino; l_ushort st_mode; From nobody Thu Jun 29 08:20:17 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGB0qGSz4knPL; Thu, 29 Jun 2023 08:20: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 4QsBG96vhvz3tfH; Thu, 29 Jun 2023 08:20:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JMYrq+vnHyMZG8vVykILfSNDj6YhLWoUT1Y1Zvtt9Qw=; b=EuXgvYJcS+pSw5UjWbV+Q5oYGMt2ieNKfZ8xTTo4nm1lorfsuY5geCRA+KqMneXQlTDz5g B5YDGcOIdWbrDuAGRbcd0zPaR4ZomwX3JTqOVD9s0/l49s6LQtOPU/LOunezcAsjpP9U+c uSRmJ9kqxPieTf4uZ+Q7g+UqHiL41t48akYyiaFMv4+OAtRbn59NIv9BA7KnkWUu3yuERM l4phB6lT3uENpORsd8FjJ5U3YX9fphgiiSAw7Ey5b++958wXq1QHCTCq9Q5NKQIeHK8uZf mYYRx1FKpiv7PwbFe17sgpzztPTil0c6331a3s8dA8JAvZ2ad1rHuNqxEnZ13g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JMYrq+vnHyMZG8vVykILfSNDj6YhLWoUT1Y1Zvtt9Qw=; b=fceU33E6AkQ1XJdiwKRY1y7fXo0yGf2VGKaKWEPcgMN+d/aSvknyDJ0JeeXhAa+lDG1huV NLNi4XDjIbejNMfaN/fiHXgFeA2b/rf6L07gx2H8qjMy86YqzH00X21zIGHkuAXSyV0ukC Rgq2jrlN7GYpx3ZgDzuRtN/HiQiqbZFro0nt7L1Q2dRpD6gUeMqiE0nEnG6rgKUctr2oCK VUsmXjz+soYK/tGT9FEG3ghLAmQCf78ejUWfiNI9+jy6P4XnZQFS2ggqiDLpmqF3GKYh/g oLu2pDdZpP338TRtmatbnvhUBC407qc7u7f3SQciUovMT8MsGLqLPtItOCdLeQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026818; a=rsa-sha256; cv=none; b=xVIy9sk0BzWeSH1uKnRvSEYnTbjU+aW8z47YBeUN5O95nNyfeRwq1UJF8FwYbe9SKBs0Y5 HRHInrrdRk+hrwuVggV5dxNaGtHRtM+T+1ekawiZqs4k9n8TqSTolM6AZU38BGNmC80TCF VL/Dx3r3D34txcyBU5E8PO11kZWpqVibV1Pf4Nq6aOsudADOhcSNTRxTgHV2ueXRMXJ9e3 bqQjies0RjmNn+z3QqDx5EcFwGScqeuQf9bseWer6TtZUCZv2pbG9mRVVZXweTUC582Yq/ xltUgtbwI+xWM/2sZFNlmP9eap+P7qC/t0Ue6jd6ghfFUp+UWF4fhJafa8caNw== 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 4QsBG95zQKz17sS; Thu, 29 Jun 2023 08:20:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KHka083291; Thu, 29 Jun 2023 08:20:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KHKu083290; Thu, 29 Jun 2023 08:20:17 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:17 GMT Message-Id: <202306290820.35T8KHKu083290@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 361f6ce4a675 - stable/13 - linux(4): Mark old fstat syscal as unimplemented List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 361f6ce4a67533e433e43d34fbc79a48b5edeb43 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=361f6ce4a67533e433e43d34fbc79a48b5edeb43 commit 361f6ce4a67533e433e43d34fbc79a48b5edeb43 Author: Dmitry Chagin AuthorDate: 2023-04-28 08:54:59 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:30 +0000 linux(4): Mark old fstat syscal as unimplemented It looks like the old fstat system call never been implemented. (cherry picked from commit 391fd1e1a1e8d360d4ebaceecf1ab7c46063b257) --- sys/amd64/linux32/linux32_dummy_machdep.c | 1 + sys/i386/linux/linux_dummy_machdep.c | 2 +- sys/i386/linux/syscalls.master | 7 +------ 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/sys/amd64/linux32/linux32_dummy_machdep.c b/sys/amd64/linux32/linux32_dummy_machdep.c index bc7a3c0aa69b..4dc0f6ffc0bd 100644 --- a/sys/amd64/linux32/linux32_dummy_machdep.c +++ b/sys/amd64/linux32/linux32_dummy_machdep.c @@ -44,6 +44,7 @@ LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE); UNIMPLEMENTED(break); UNIMPLEMENTED(ftime); +UNIMPLEMENTED(fstat); UNIMPLEMENTED(gtty); UNIMPLEMENTED(stty); UNIMPLEMENTED(lock); diff --git a/sys/i386/linux/linux_dummy_machdep.c b/sys/i386/linux/linux_dummy_machdep.c index 7f29d2a6808c..87edfed4a17d 100644 --- a/sys/i386/linux/linux_dummy_machdep.c +++ b/sys/i386/linux/linux_dummy_machdep.c @@ -50,6 +50,7 @@ LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE); UNIMPLEMENTED(break); UNIMPLEMENTED(ftime); +UNIMPLEMENTED(fstat); UNIMPLEMENTED(gtty); UNIMPLEMENTED(stty); UNIMPLEMENTED(lock); @@ -59,7 +60,6 @@ UNIMPLEMENTED(profil); UNIMPLEMENTED(ulimit); DUMMY(bdflush); -DUMMY(fstat); DUMMY(olduname); DUMMY(stime); DUMMY(uname); diff --git a/sys/i386/linux/syscalls.master b/sys/i386/linux/syscalls.master index a5b246c0822a..98143e300e6c 100644 --- a/sys/i386/linux/syscalls.master +++ b/sys/i386/linux/syscalls.master @@ -189,12 +189,7 @@ l_uint secs ); } -28 AUE_FSTAT STD { - int linux_fstat( - l_uint fd, - struct linux_stat *up - ); - } +28 AUE_NULL UNIMPL fstat 29 AUE_NULL STD { int linux_pause(void); } From nobody Thu Jun 29 08:20:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGC106Hz4knVS; Thu, 29 Jun 2023 08:20: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 4QsBGC078qz3tqy; Thu, 29 Jun 2023 08:20:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026819; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7iCh72hxwlD8rZNHF93nQzp+xf32WmF2VMbprKesA4Y=; b=gooRsa/+mQGD0BtN1djIK0umpcPHTN1uLe1+orKJkmy/l+9yAdG/jKRVIL99RkNip4LK9y pJPqtcM5fh/QUMAq1JV5hHOuWWD0GmA64X1zP5ExaKAtcuHabnlI/kUyW6B0HqlvMXR4kF myrcXBypvKKHfHbR29/aWw6Xq6S0D/MWC3Tpise/m48N58EKT/tMmyXN0gmESuu70GqdOR 4tNhrojCtCkoWjr1ViiG9Gl83buVvppTTHg+5I4QogaDYINwN7SWAF7R8Saem8zrdLT8Gn B6t3AD5yeS6wLWgU6hXyIgUyEqfZK0xxDbwheOGw8j+GapfnsWyCkg6AQ7vwoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026819; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7iCh72hxwlD8rZNHF93nQzp+xf32WmF2VMbprKesA4Y=; b=tPdGI5Pi+7EjvrbGJ/J0l8O9SkILzDs+F+6HxclRu3MstE23iSfQym9u2V57pesiXUsgNG 36l6BjwvvwFEql2+C3+GNBufW/9OkirfPmz0sfYOLnT5HuI7irv8fqV8HX710OjXvFR8Fr uMBjOMiKBDYtG72fbKgMjSL20XQ202Qmz8EFssjk3Y/7Lj5OTtcnsHx27nHIBy3sPsxkoZ LqB7EwxcYU225JeQRLUChVVtMFXMcFLwmDcYlGeymleHkv3SfWSmJF51G45ihFjGijxrUh hdip5dFFRvzZz/L8m0fd6/GJn2fhcfXOE2YTjlAh8CATVbKL5hFjlkwTQX8Vow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026819; a=rsa-sha256; cv=none; b=HV7BGBmBKaORXv9TnC8X/qsJ3eLkal22R/XaxrK/0+mtYzdslkoQN4riVKfRayDICr6ucV epYvNIeg5HtYY58L1Bb2Y/z4l/c2P2xyP8c3xDJgUNvv14Sx/kbVopM9Fqb3xboK9dvDSv 5IHzVWzdxky2MZ6G7wRAt9nVkceVHrCnAzqd8MeWDtzx+1UG4KU7pkjr/Y0YFi/woJgthW 9SuGWVKriYw/bOhnjuEhKQtBwdPu3K9yzn7IL5U2v7KCoPPtH3A2/b97Gd5nBVdZFmkvHc MjtzfNHmtE/7X4UUX1lrsetXTtDq7dJZukTDdFbr8SccQY40A9/ddFGaPNGqYg== 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 4QsBGB6Kyxz17sT; Thu, 29 Jun 2023 08:20:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KIUU083316; Thu, 29 Jun 2023 08:20:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KIlU083315; Thu, 29 Jun 2023 08:20:18 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:18 GMT Message-Id: <202306290820.35T8KIlU083315@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 69a2984e3c88 - stable/13 - linux(4): Update syscalls.master to reflect struct l_old_stat List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 69a2984e3c889577332b389f2098671b4e1b4337 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=69a2984e3c889577332b389f2098671b4e1b4337 commit 69a2984e3c889577332b389f2098671b4e1b4337 Author: Dmitry Chagin AuthorDate: 2023-04-28 08:54:59 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:30 +0000 linux(4): Update syscalls.master to reflect struct l_old_stat (cherry picked from commit 2370c7321fd392cfd23059760a816e852c921cde) --- sys/amd64/linux32/syscalls.master | 4 ++-- sys/i386/linux/syscalls.master | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master index 4561667dc3cc..497e0e42da92 100644 --- a/sys/amd64/linux32/syscalls.master +++ b/sys/amd64/linux32/syscalls.master @@ -138,7 +138,7 @@ 18 AUE_STAT STD { int linux_stat( char *path, - struct linux_stat *up + struct l_old_stat *up ); } 19 AUE_LSEEK STD { @@ -450,7 +450,7 @@ 84 AUE_LSTAT STD { int linux_lstat( char *path, - struct linux_lstat *up + struct l_old_stat *up ); } 85 AUE_READLINK STD { diff --git a/sys/i386/linux/syscalls.master b/sys/i386/linux/syscalls.master index 98143e300e6c..4827e1eca2df 100644 --- a/sys/i386/linux/syscalls.master +++ b/sys/i386/linux/syscalls.master @@ -138,7 +138,7 @@ 18 AUE_STAT STD { int linux_stat( char *path, - struct linux_stat *up + struct l_old_stat *up ); } 19 AUE_LSEEK STD { @@ -450,7 +450,7 @@ 84 AUE_LSTAT STD { int linux_lstat( char *path, - struct l_stat *up + struct l_old_stat *up ); } 85 AUE_READLINK STD { From nobody Thu Jun 29 08:20:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGD2FPbz4knVT; Thu, 29 Jun 2023 08:20: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 4QsBGD1H2yz3trQ; Thu, 29 Jun 2023 08:20:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026820; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tG4VuCRNkekNxvvfAhCLFcnqljo7XLNCLNmHClnLyD4=; b=p5i4HmPAPdb939/FG4u2BiDXZKn1vCWSk3hknLUjJIvdQOtUAkhGuZoQG/g6xlH6pqZFRR VS8k0Qcqs9Rz1V+6qsqvXHtIZxsB4IcJYytornS9h8iuwTyX5P2xbhyMSP1asWjnKi1WkK d6FA+/6a/QvJHcLSzUVu/8SBdc44i1BVVeLko3ZVHXGjIVYPwi1DXAVdLiGP6kvq/drdos YMNBg2V03dwHxGnuYbA1ZCDLje/ApBn9J/XHOAD7ycjZa5CwKHzXZr4vkDbO32uQwZtVK3 FBStv5WI8to8zqJNy14nCcXlLK6beNyu7t85AG2ugSiNqGJXY8WKL0d7dGuJSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026820; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tG4VuCRNkekNxvvfAhCLFcnqljo7XLNCLNmHClnLyD4=; b=fQiPdyknYuPMXe5oCFDVmrKy1boqezCLEwN3B7Pu4yiLw0l8HY9eubFtKvom0eMqqVMfNe k8yhxhcfF6sSLWICbGbvthjCuxZCbO1mQGxPbutFLC/Gs/uBb+p6AReTp54AnyEDAwr3tq ibdoItV0g2dPEQ3Mk7InzutdNhlG60zgCHr8PewQSS0oFM5CkoV0EnLErKcZZRiY2C1g3s bgYCqTJOiG0lw/fISnG+79ooVNgLFQ7Qi/+YHrv3QTIiAOtHANKB9vtUqdrwphPxQ7D/tv RmFXKz5OVm9LmKIfL2jQvJ4/ps+b+EdIFShg/9vNozuaTVQXYXitn2foWoiGEQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026820; a=rsa-sha256; cv=none; b=Y8BAy00A7jXsGFQ3Zx20RMfxNLfL73pMtumZ2FJDFCP4jlCuqMF5OUodcGDuZBJebQFRsc n4lw3lkyhmSh/PS1ngdDEawivGVdeUCqMEhLaVzV2j2oO9dhy5VqSZNanvpdF6ATGfqBpg BYYSyDcr67AUtjU/3tbwR9z6B9l4aVG6NXn41osEgsEhWxpm2OZK83OW3K9c8ynk8MHmwn MS2LYU39memmmlVbYEVNC6NOlC9N9PW/bGVth//qr31c+wom/lQ6ABBvBD6jxvFsNlyuxK TEKkR9S3YYJSgRfDnXyOlvGV6TAY6mNeCI46+paSFr1+Kp3/0SOGJYJggxgLkw== 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 4QsBGD0NGrz17sV; Thu, 29 Jun 2023 08:20:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KJx6083335; Thu, 29 Jun 2023 08:20:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KJpO083334; Thu, 29 Jun 2023 08:20:19 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:19 GMT Message-Id: <202306290820.35T8KJpO083334@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 5e43a15ba4d9 - stable/13 - linux(4): Regen for struct l_old_stat changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 5e43a15ba4d9e5f039f1a0ecbcbb86b3ba8c1159 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=5e43a15ba4d9e5f039f1a0ecbcbb86b3ba8c1159 commit 5e43a15ba4d9e5f039f1a0ecbcbb86b3ba8c1159 Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:01 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:33 +0000 linux(4): Regen for struct l_old_stat changes (cherry picked from commit 023e6884967d0cb0b330eb15264d159619b0533b) --- sys/amd64/linux32/linux32_proto.h | 4 ++-- sys/amd64/linux32/linux32_systrace_args.c | 8 ++++---- sys/i386/linux/linux_proto.h | 10 ++------- sys/i386/linux/linux_syscall.h | 1 - sys/i386/linux/linux_syscalls.c | 2 +- sys/i386/linux/linux_sysent.c | 2 +- sys/i386/linux/linux_systrace_args.c | 34 ++++--------------------------- 7 files changed, 14 insertions(+), 47 deletions(-) diff --git a/sys/amd64/linux32/linux32_proto.h b/sys/amd64/linux32/linux32_proto.h index d76b685b17e6..79a7f54b8ce9 100644 --- a/sys/amd64/linux32/linux32_proto.h +++ b/sys/amd64/linux32/linux32_proto.h @@ -89,7 +89,7 @@ struct linux_lchown16_args { }; struct linux_stat_args { char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; - char up_l_[PADL_(struct linux_stat *)]; struct linux_stat * up; char up_r_[PADR_(struct linux_stat *)]; + char up_l_[PADL_(struct l_old_stat *)]; struct l_old_stat * up; char up_r_[PADR_(struct l_old_stat *)]; }; struct linux_lseek_args { char fdes_l_[PADL_(l_uint)]; l_uint fdes; char fdes_r_[PADR_(l_uint)]; @@ -273,7 +273,7 @@ struct linux_symlink_args { }; struct linux_lstat_args { char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; - char up_l_[PADL_(struct linux_lstat *)]; struct linux_lstat * up; char up_r_[PADR_(struct linux_lstat *)]; + char up_l_[PADL_(struct l_old_stat *)]; struct l_old_stat * up; char up_r_[PADR_(struct l_old_stat *)]; }; struct linux_readlink_args { char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)]; diff --git a/sys/amd64/linux32/linux32_systrace_args.c b/sys/amd64/linux32/linux32_systrace_args.c index 8dd85ea9720a..fa5a50a0dd86 100644 --- a/sys/amd64/linux32/linux32_systrace_args.c +++ b/sys/amd64/linux32/linux32_systrace_args.c @@ -143,7 +143,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) case 18: { struct linux_stat_args *p = params; uarg[0] = (intptr_t)p->path; /* char * */ - uarg[1] = (intptr_t)p->up; /* struct linux_stat * */ + uarg[1] = (intptr_t)p->up; /* struct l_old_stat * */ *n_args = 2; break; } @@ -562,7 +562,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) case 84: { struct linux_lstat_args *p = params; uarg[0] = (intptr_t)p->path; /* char * */ - uarg[1] = (intptr_t)p->up; /* struct linux_lstat * */ + uarg[1] = (intptr_t)p->up; /* struct l_old_stat * */ *n_args = 2; break; } @@ -3480,7 +3480,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "userland char *"; break; case 1: - p = "userland struct linux_stat *"; + p = "userland struct l_old_stat *"; break; default: break; @@ -4086,7 +4086,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "userland char *"; break; case 1: - p = "userland struct linux_lstat *"; + p = "userland struct l_old_stat *"; break; default: break; diff --git a/sys/i386/linux/linux_proto.h b/sys/i386/linux/linux_proto.h index f877c94a73fb..1957c8d0c1b3 100644 --- a/sys/i386/linux/linux_proto.h +++ b/sys/i386/linux/linux_proto.h @@ -89,7 +89,7 @@ struct linux_lchown16_args { }; struct linux_stat_args { char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; - char up_l_[PADL_(struct linux_stat *)]; struct linux_stat * up; char up_r_[PADR_(struct linux_stat *)]; + char up_l_[PADL_(struct l_old_stat *)]; struct l_old_stat * up; char up_r_[PADR_(struct l_old_stat *)]; }; struct linux_lseek_args { char fdes_l_[PADL_(l_uint)]; l_uint fdes; char fdes_r_[PADR_(l_uint)]; @@ -127,10 +127,6 @@ struct linux_ptrace_args { struct linux_alarm_args { char secs_l_[PADL_(l_uint)]; l_uint secs; char secs_r_[PADR_(l_uint)]; }; -struct linux_fstat_args { - char fd_l_[PADL_(l_uint)]; l_uint fd; char fd_r_[PADR_(l_uint)]; - char up_l_[PADL_(struct linux_stat *)]; struct linux_stat * up; char up_r_[PADR_(struct linux_stat *)]; -}; struct linux_pause_args { register_t dummy; }; @@ -265,7 +261,7 @@ struct linux_symlink_args { }; struct linux_lstat_args { char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; - char up_l_[PADL_(struct l_stat *)]; struct l_stat * up; char up_r_[PADR_(struct l_stat *)]; + char up_l_[PADL_(struct l_old_stat *)]; struct l_old_stat * up; char up_r_[PADR_(struct l_old_stat *)]; }; struct linux_readlink_args { char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)]; @@ -1716,7 +1712,6 @@ int linux_getuid16(struct thread *, struct linux_getuid16_args *); int linux_stime(struct thread *, struct linux_stime_args *); int linux_ptrace(struct thread *, struct linux_ptrace_args *); int linux_alarm(struct thread *, struct linux_alarm_args *); -int linux_fstat(struct thread *, struct linux_fstat_args *); int linux_pause(struct thread *, struct linux_pause_args *); int linux_utime(struct thread *, struct linux_utime_args *); int linux_access(struct thread *, struct linux_access_args *); @@ -2130,7 +2125,6 @@ int linux_mount_setattr(struct thread *, struct linux_mount_setattr_args *); #define LINUX_SYS_AUE_linux_stime AUE_SETTIMEOFDAY #define LINUX_SYS_AUE_linux_ptrace AUE_PTRACE #define LINUX_SYS_AUE_linux_alarm AUE_NULL -#define LINUX_SYS_AUE_linux_fstat AUE_FSTAT #define LINUX_SYS_AUE_linux_pause AUE_NULL #define LINUX_SYS_AUE_linux_utime AUE_UTIME #define LINUX_SYS_AUE_linux_access AUE_ACCESS diff --git a/sys/i386/linux/linux_syscall.h b/sys/i386/linux/linux_syscall.h index a3a6fe680a7c..a77c91896fd6 100644 --- a/sys/i386/linux/linux_syscall.h +++ b/sys/i386/linux/linux_syscall.h @@ -31,7 +31,6 @@ #define LINUX_SYS_linux_stime 25 #define LINUX_SYS_linux_ptrace 26 #define LINUX_SYS_linux_alarm 27 -#define LINUX_SYS_linux_fstat 28 #define LINUX_SYS_linux_pause 29 #define LINUX_SYS_linux_utime 30 #define LINUX_SYS_linux_access 33 diff --git a/sys/i386/linux/linux_syscalls.c b/sys/i386/linux/linux_syscalls.c index 95e44584ef2c..1454490c9318 100644 --- a/sys/i386/linux/linux_syscalls.c +++ b/sys/i386/linux/linux_syscalls.c @@ -35,7 +35,7 @@ const char *linux_syscallnames[] = { "linux_stime", /* 25 = linux_stime */ "linux_ptrace", /* 26 = linux_ptrace */ "linux_alarm", /* 27 = linux_alarm */ - "linux_fstat", /* 28 = linux_fstat */ + "#28", /* 28 = fstat */ "linux_pause", /* 29 = linux_pause */ "linux_utime", /* 30 = linux_utime */ "#31", /* 31 = stty */ diff --git a/sys/i386/linux/linux_sysent.c b/sys/i386/linux/linux_sysent.c index de0493a6dda6..3d92ce04eb52 100644 --- a/sys/i386/linux/linux_sysent.c +++ b/sys/i386/linux/linux_sysent.c @@ -45,7 +45,7 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_stime, .sy_auevent = AUE_SETTIMEOFDAY, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 25 = linux_stime */ { .sy_narg = AS(linux_ptrace_args), .sy_call = (sy_call_t *)linux_ptrace, .sy_auevent = AUE_PTRACE, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 26 = linux_ptrace */ { .sy_narg = AS(linux_alarm_args), .sy_call = (sy_call_t *)linux_alarm, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 27 = linux_alarm */ - { .sy_narg = AS(linux_fstat_args), .sy_call = (sy_call_t *)linux_fstat, .sy_auevent = AUE_FSTAT, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 28 = linux_fstat */ + { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 28 = fstat */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_pause, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 29 = linux_pause */ { .sy_narg = AS(linux_utime_args), .sy_call = (sy_call_t *)linux_utime, .sy_auevent = AUE_UTIME, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 30 = linux_utime */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 31 = stty */ diff --git a/sys/i386/linux/linux_systrace_args.c b/sys/i386/linux/linux_systrace_args.c index 27d277e98aa3..72c6ba134b26 100644 --- a/sys/i386/linux/linux_systrace_args.c +++ b/sys/i386/linux/linux_systrace_args.c @@ -143,7 +143,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) case 18: { struct linux_stat_args *p = params; uarg[0] = (intptr_t)p->path; /* char * */ - uarg[1] = (intptr_t)p->up; /* struct linux_stat * */ + uarg[1] = (intptr_t)p->up; /* struct l_old_stat * */ *n_args = 2; break; } @@ -213,14 +213,6 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 1; break; } - /* linux_fstat */ - case 28: { - struct linux_fstat_args *p = params; - iarg[0] = p->fd; /* l_uint */ - uarg[1] = (intptr_t)p->up; /* struct linux_stat * */ - *n_args = 2; - break; - } /* linux_pause */ case 29: { *n_args = 0; @@ -570,7 +562,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) case 84: { struct linux_lstat_args *p = params; uarg[0] = (intptr_t)p->path; /* char * */ - uarg[1] = (intptr_t)p->up; /* struct l_stat * */ + uarg[1] = (intptr_t)p->up; /* struct l_old_stat * */ *n_args = 2; break; } @@ -3519,7 +3511,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "userland char *"; break; case 1: - p = "userland struct linux_stat *"; + p = "userland struct l_old_stat *"; break; default: break; @@ -3621,19 +3613,6 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; - /* linux_fstat */ - case 28: - switch (ndx) { - case 0: - p = "l_uint"; - break; - case 1: - p = "userland struct linux_stat *"; - break; - default: - break; - }; - break; /* linux_pause */ case 29: break; @@ -4138,7 +4117,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "userland char *"; break; case 1: - p = "userland struct l_stat *"; + p = "userland struct l_old_stat *"; break; default: break; @@ -8737,11 +8716,6 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_fstat */ - case 28: - if (ndx == 0 || ndx == 1) - p = "int"; - break; /* linux_pause */ case 29: /* linux_utime */ From nobody Thu Jun 29 08:20:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGF4Fycz4kng9; Thu, 29 Jun 2023 08:20:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBGF2hfPz3tjp; Thu, 29 Jun 2023 08:20:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026821; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CaCA1Qb6LlqvwNCspI/sGzvtQx2+uLaDwgvSTL9GPM0=; b=e7qCwcKwJtdaD7HjPXzRjiMiw/TUksvN7b4JmTUheS6l/IwS9ytuRiDYROGrTkFJz5LRKG fuOPR0Sn7QO21gPRImhUf6MS9zIxAfbPiiNNl2NnADeWi8iPoweAl4ovxxfo3MWqp/YeJS b3gK/BI5m/YKBLl8d/h64Bx95/Aq8UwAMPINezcGZzc9fyELyRoa6kOKerjHw2xgmUdCJY 7Kx0GEvK5hWnmqkSnxHQHZPQRL73Skw86DqiwqM/VDO+39qz20NHCxu4JXZm+3Q8jONgMp JBdTdr8j94Ry/Ur6y0hfSnXaFlaaOCSFeRXWqLU8LUXhpxj4C457NmoiHjrD7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026821; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CaCA1Qb6LlqvwNCspI/sGzvtQx2+uLaDwgvSTL9GPM0=; b=T3MS5qsOEGaOtT6KvYha7yb5xL7JCgXPxHIBHo6ew4uKo0fmJKLEzwCfC5VvXcoRdfK54F H5kmjuZwM0Z5BZdejU3zbMQIUQpITCbHTgix2aTuWkUfoNxjrISCHJvfw4W3f0hD5Ba1K1 jooo8bpBNvS+d6GbwH8tSMZbg4/41nAxzFNQufc6wC6DTKgeqJb1EkAqiXtLsmTQvM59HB vtAf7U206VpTHfJwYqdDBg7FgQoMtrDIpKVXrn16rQYJSva1sZ98XHhxRx0W7BEP7Tzf8k sMdI466iCcJJ9kFzUPyuPRHBF7L1ZlZmt8z2Y4/NTqel8L/8v2SbwMC4Hzl8+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026821; a=rsa-sha256; cv=none; b=R1xuBiC7vqN2iq8QrMtXQNobP3lvTNbZLUf/cpbBYBzQfb3IQBANwwg+F6r6JZtzftkWkk CMNWRqrEw+HAkhrVjotTYKZLYxfaTNIDS9Em6XjrBLWO26JLK1dTlg+1YpWe7TxtLt3iJ0 qZOFlM5faznzS+2g5FqrWDs/X6pbyGzhA7R+ODj3ntT3en1TBJcMrcKEBOurGHvYJDJYJd M2NBbTeOzWWJ7WHMgyc8mUlQXTlR7o2ncQ3vcW/C1K1dCpA7cVBO+okANLYJGd30qr1aMg GDYrrT6WhruhGhpGF/Py7fQ9ASxnCeDX9VPP/HXW+OB9ePDIlrbo9YnmEHcMGw== 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 4QsBGF11kNz182x; Thu, 29 Jun 2023 08:20:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KLXE083354; Thu, 29 Jun 2023 08:20:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KLmk083353; Thu, 29 Jun 2023 08:20:21 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:21 GMT Message-Id: <202306290820.35T8KLmk083353@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 38e5a2a185bc - stable/13 - linux(4): Make struct newstat to match actual Linux one List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 38e5a2a185bc87d6775b96f07055263ca3377bcd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=38e5a2a185bc87d6775b96f07055263ca3377bcd commit 38e5a2a185bc87d6775b96f07055263ca3377bcd Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:01 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:36 +0000 linux(4): Make struct newstat to match actual Linux one In the struct stat the st_dev, st_rdev are unsigned long. (cherry picked from commit e0bfe0d62ca708c8c6173296cc05f6bbfb79b2ee) --- sys/amd64/linux/linux.h | 6 +++--- sys/amd64/linux32/linux.h | 6 ++---- sys/arm64/linux/linux.h | 4 ++-- sys/i386/linux/linux.h | 6 ++---- 4 files changed, 9 insertions(+), 13 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index 0cf7d02c5833..81d9f48f6271 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -134,14 +134,14 @@ struct l_timespec { }; struct l_newstat { - l_dev_t st_dev; + l_ulong st_dev; l_ino_t st_ino; l_ulong st_nlink; l_uint st_mode; l_uid_t st_uid; l_gid_t st_gid; - l_uint __st_pad1; - l_dev_t st_rdev; + l_uint __st_pad0; + l_ulong st_rdev; l_off_t st_size; l_long st_blksize; l_long st_blocks; diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index 4552c60e260b..02fcd320152d 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -180,15 +180,13 @@ struct l_timespec64 { }; struct l_newstat { - l_ushort st_dev; - l_ushort __pad1; + l_ulong st_dev; l_ulong st_ino; l_ushort st_mode; l_ushort st_nlink; l_ushort st_uid; l_ushort st_gid; - l_ushort st_rdev; - l_ushort __pad2; + l_ulong st_rdev; l_ulong st_size; l_ulong st_blksize; l_ulong st_blocks; diff --git a/sys/arm64/linux/linux.h b/sys/arm64/linux/linux.h index bee97691b744..a20b3c90a066 100644 --- a/sys/arm64/linux/linux.h +++ b/sys/arm64/linux/linux.h @@ -128,7 +128,7 @@ struct l_timespec { #define LINUX_O_LARGEFILE 000400000 struct l_newstat { - l_dev_t st_dev; + l_ulong st_dev; l_ino_t st_ino; l_uint st_mode; l_uint st_nlink; @@ -136,7 +136,7 @@ struct l_newstat { l_uid_t st_uid; l_gid_t st_gid; - l_dev_t st_rdev; + l_ulong st_rdev; l_ulong __st_pad1; l_off_t st_size; l_int st_blksize; diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 7e10ff357e00..2ccb2f92ef22 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -153,15 +153,13 @@ struct l_timespec64 { }; struct l_newstat { - l_ushort st_dev; - l_ushort __pad1; + l_ulong st_dev; l_ulong st_ino; l_ushort st_mode; l_ushort st_nlink; l_ushort st_uid; l_ushort st_gid; - l_ushort st_rdev; - l_ushort __pad2; + l_ulong st_rdev; l_ulong st_size; l_ulong st_blksize; l_ulong st_blocks; From nobody Thu Jun 29 08:20:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGG5H2Mz4knlK; Thu, 29 Jun 2023 08:20: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 4QsBGG3b0Sz3tsN; Thu, 29 Jun 2023 08:20:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026822; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J6cDstRouRl1KrvStcEameLgyMkDcF4okWReC3Ss53M=; b=e7QWWRsPTQWAC307t8j9FntCQeoFGmf50BxuifgpKMVxcMHmgzOn3JNI+nUI5nlSKezM4c MyF+T2YdG7/jKEmGF2MvkjDZmMvQi0qHpZLP7al+lYYojevyF39DYC0n7lBa++GK5PPgxh lMtnw2w6FUYymzzwZSLe6f6fOmhq946HvuLr5kfmfL38sdFeaHcdbJPk0DYsBVkJPiLcnf xAZeKLyCF1zMDRoEItdng9IpNfeJy0ouaFkS69M6jwTaP/is87to2pb08FfbgUxglsDvgE UN+053PkOsvfk06ya46ap3XnA4fNHwXpVYpSSQlIyHcl9HVTP4FPKALy8oG3ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026822; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J6cDstRouRl1KrvStcEameLgyMkDcF4okWReC3Ss53M=; b=hfKpd1O4eORSRIT80TFgNknTvvYw+hPWtTxyYZ+de/2S6WjyeZkYQs9zFW8Nqy3oJQB3ms n7KWOfpWk+rLEeeCwaoU6ajeGXTPEETiTuW8K1n4FoVe2dcy5iN7DQX7Er4NwDRJden+4k YshxJYfWTqMoB3DhrROkbLFzAAAxgS5WGxvoW5ua/3X5TVBPIHG+N51zU32Ky5jN7bzJFd Wd99uhsJ5TlWhfYHxFUKSdsFbdxfAMr/fVdWsImTnFWYIoNVhnnVz3Q4p7q+iwZgctr69L Da1zrB334o/r/c3T3tkYRfcuOAXSVL7OTXzlUVr/3aUKOSGwYynlxMM+whCluw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026822; a=rsa-sha256; cv=none; b=X3B8RtwmdlNUzKnXLOle8L2rEK7JvLErCgg3OTpx0J0YwCh973g4vRuz/mMDoWssDEDVfA jp6CdUWeZxtyohdJ1iiNnfuvek57GswPiDUXOTJbHgOmZGPw3rIszedka78wqWG85g2tn3 8z2wQAdY9ELfgWl0SJDUS654oZZwhbLcmLfHisDEsByE3gJAWL73zfgVpGvtR7zS8I+bRF xue6Vahkeev4TWd2O9fGPOB6oFzAGj2ozZ4RJkD8d8kvVjLHE/XZYiC2bEnmk1Akbb/Bfx aMM2KGWpOE/GTwCtaOsIEtuPeWcBosw9r4iklqOqylvsu/0Nbk9b/xmfWaJ79g== 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 4QsBGG1qgVz17sW; Thu, 29 Jun 2023 08:20:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KM84083373; Thu, 29 Jun 2023 08:20:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KMBg083372; Thu, 29 Jun 2023 08:20:22 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:22 GMT Message-Id: <202306290820.35T8KMBg083372@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 4d7a9535977f - stable/13 - linux(4): Move dev_t type declaration under /compat/linux List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 4d7a9535977fb450b97ec112d739d5563fbc166b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=4d7a9535977fb450b97ec112d739d5563fbc166b commit 4d7a9535977fb450b97ec112d739d5563fbc166b Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:02 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:36 +0000 linux(4): Move dev_t type declaration under /compat/linux As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit unsigned integer on all platforms. Move it into the MI linux.h under /compat/linux. (cherry picked from commit 19973638bee2205be2a7eb07bc154b8afb1e44a3) --- sys/amd64/linux/linux.h | 1 - sys/amd64/linux32/linux.h | 1 - sys/arm64/linux/linux.h | 1 - sys/compat/linux/linux.h | 5 +++++ sys/i386/linux/linux.h | 1 - 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index 81d9f48f6271..a5682c6a980d 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -54,7 +54,6 @@ typedef uint16_t l_ushort; typedef l_ulong l_uintptr_t; typedef l_long l_clock_t; typedef l_int l_daddr_t; -typedef l_ulong l_dev_t; typedef l_uint l_gid_t; typedef l_ushort l_gid16_t; typedef l_uint l_uid_t; diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index 02fcd320152d..9ad288e339df 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -63,7 +63,6 @@ typedef unsigned short l_ushort; typedef l_ulong l_uintptr_t; typedef l_long l_clock_t; typedef l_int l_daddr_t; -typedef l_ushort l_dev_t; typedef l_uint l_gid_t; typedef l_ushort l_gid16_t; typedef l_ulong l_ino_t; diff --git a/sys/arm64/linux/linux.h b/sys/arm64/linux/linux.h index a20b3c90a066..5a391c3543d3 100644 --- a/sys/arm64/linux/linux.h +++ b/sys/arm64/linux/linux.h @@ -49,7 +49,6 @@ typedef uint16_t l_ushort; typedef l_ulong l_uintptr_t; typedef l_long l_clock_t; typedef l_int l_daddr_t; -typedef l_ulong l_dev_t; typedef l_uint l_gid_t; typedef l_ushort l_gid16_t; /* XXX */ typedef l_uint l_uid_t; diff --git a/sys/compat/linux/linux.h b/sys/compat/linux/linux.h index 055d8e3b9cf6..9061548399e4 100644 --- a/sys/compat/linux/linux.h +++ b/sys/compat/linux/linux.h @@ -28,6 +28,11 @@ #ifndef _LINUX_MI_H_ #define _LINUX_MI_H_ +/* + * Machine independent set of types for the Linux types. + */ +typedef uint32_t l_dev_t; + /* * Private Brandinfo flags */ diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 2ccb2f92ef22..32f92d8c637b 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -55,7 +55,6 @@ typedef char *l_caddr_t; typedef l_ulong l_uintptr_t; typedef l_long l_clock_t; typedef l_int l_daddr_t; -typedef l_ushort l_dev_t; typedef l_uint l_gid_t; typedef l_ushort l_gid16_t; typedef l_ulong l_ino_t; From nobody Thu Jun 29 08:20:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGH54yNz4knXF; Thu, 29 Jun 2023 08:20: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 4QsBGH3NBBz3v34; Thu, 29 Jun 2023 08:20:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026823; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i78ckU4QW1jIs/2YuTz+RfznNYeyJqdYtKdE+fL8tr4=; b=NaETSyy2qnWq9lzVxuSi7nGRLeDWwcpvZBJ4Hd0HzDdzI+NzgF12E4a+miEImh6nqe1JiS Dcv/pS8G4FGG4qE2m2R9UUbCamcK6VYkKGHqNwFUDo3F+Jy6NUuDAjiv07uKz76uxC54FL A6+U+LQJBB9xhChy+cHwJhMMg9XOwlxLRZToCExqY2ibDK8Bz8NHCM8vHkndQ7qqfSXd7l pbbWMAuPVivekTOZngIQsgv7dF7v0vEhWtxAd/8RLpLPaV2cnGc+QN4/IcTGYCfYotaDzg Jwxpdvktj8/ENAeC7CQLjl/z8k10L1sfyXdyd1VMm61wGBUzpYPpe3V8dKQc8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026823; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i78ckU4QW1jIs/2YuTz+RfznNYeyJqdYtKdE+fL8tr4=; b=DULZshCscBwbrZs9+l5PkIl8T7K3IB5XmkVnyFazt+1J0YJkelmTZYECwCR2qD0MN21f32 M4Kq9rcx5QtzLQ8BtnruNrumHU6bEUoVZCEZUvo6m5ciyItRZJp+R1lFMBCFcOWHBDXsCh XbaJpS3vcgLfsENaojb87u7dXsMSg9aLIlm7ZsS25E2HkGbtEX+OC7e1NstQWoUjeFFHpl cipvlnpzXhlflM7dmdg4NPWoOZPCYvhRwMCj8zQJmWC9CUd4lV3UsaqlkEDShqwUZqeEoP Wg4KrbfITwydW+6QN46E/aHobOQh4ZGWkxZ0Jnc7AtOX5kJDKlnbwOCYN3n34g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026823; a=rsa-sha256; cv=none; b=Z8TefxiUX8TXVdq9o/FOxTDrUH2+DA+UZ+g0Z93vtdBMcyiRUWNESftO6QID+v3kmJzwP3 TqptrYj0h54vtIBiNRBEZ9HxCvJ+bxqYZha1M29Up+oiL/kDbfWbfd5ttp8wzmPqeeUsDc 91ICtt+/JbJ6h1EDeTxmuqzOkweoyKdWqgFO4YQ4e/zuMkYlOVinaif3p5fFZab9DcPmyr fB8+SCi+QBklESVm3y8LnBuoIFprDO5TNp4mE2gfrL53KUSIUyjJoa7NiqHiXzDQFvg16W VLejfSbwPTylipTTcYNYXJ5Dn24C5ZSoeKWp6JVVvAGDvXCy7mINohU3/ekbSg== 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 4QsBGH2RZpz17sX; Thu, 29 Jun 2023 08:20:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KNPi083392; Thu, 29 Jun 2023 08:20:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KN9Z083391; Thu, 29 Jun 2023 08:20:23 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:23 GMT Message-Id: <202306290820.35T8KN9Z083391@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 71d26d149f05 - stable/13 - linux(4): Use Linux dev_t type for mknod syscalls dev argument List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 71d26d149f055305e89e8ee35501e5bd0447ce6a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=71d26d149f055305e89e8ee35501e5bd0447ce6a commit 71d26d149f055305e89e8ee35501e5bd0447ce6a Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:02 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:37 +0000 linux(4): Use Linux dev_t type for mknod syscalls dev argument As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit unsigned integer on all platforms. Prior the 2.6 kernel dev_t type was an unsigned short. However, since the firs commit of the Linuxulator, mknod syscall get int dev argument. Also, there is some confusion here, while the kernel declares a dev_t type as a 32-bit sized, the user-space dev_t type can be size of 64 bits, e.g., in the Glibc library. To avoid confusion and to help porting of the Linuxulator to other platforms use explicit l_dev_t for dev argument of mknod syscalls. (cherry picked from commit ca3333dd4a3bef7b615d5df104c525f8cac51b26) --- sys/amd64/linux/syscalls.master | 4 ++-- sys/amd64/linux32/syscalls.master | 2 +- sys/arm64/linux/syscalls.master | 2 +- sys/i386/linux/syscalls.master | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/amd64/linux/syscalls.master b/sys/amd64/linux/syscalls.master index 90476b15433f..d4e7212c5ba6 100644 --- a/sys/amd64/linux/syscalls.master +++ b/sys/amd64/linux/syscalls.master @@ -872,7 +872,7 @@ int linux_mknod( char *path, l_mode_t mode, - l_uint dev + l_dev_t dev ); } 134 AUE_USELIB UNIMPL uselib @@ -1501,7 +1501,7 @@ l_int dfd, const char *filename, l_mode_t mode, - l_uint dev + l_dev_t dev ); } 260 AUE_FCHOWNAT STD { diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master index 497e0e42da92..097c1ca4a86c 100644 --- a/sys/amd64/linux32/syscalls.master +++ b/sys/amd64/linux32/syscalls.master @@ -1614,7 +1614,7 @@ l_int dfd, const char *filename, l_int mode, - l_uint dev + l_dev_t dev ); } 298 AUE_FCHOWNAT STD { diff --git a/sys/arm64/linux/syscalls.master b/sys/arm64/linux/syscalls.master index 647fd0262e8c..19ec0ee6c590 100644 --- a/sys/arm64/linux/syscalls.master +++ b/sys/arm64/linux/syscalls.master @@ -200,7 +200,7 @@ l_int dfd, const char *filename, l_int mode, - l_uint dev + l_dev_t dev ); } 34 AUE_MKDIRAT STD { diff --git a/sys/i386/linux/syscalls.master b/sys/i386/linux/syscalls.master index 4827e1eca2df..655c44da2fb8 100644 --- a/sys/i386/linux/syscalls.master +++ b/sys/i386/linux/syscalls.master @@ -1631,7 +1631,7 @@ l_int dfd, const char *filename, l_int mode, - l_uint dev + l_dev_t dev ); } 298 AUE_FCHOWNAT STD { From nobody Thu Jun 29 08:20:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGJ68pyz4knnq; Thu, 29 Jun 2023 08:20: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 4QsBGJ4qF9z3v8C; Thu, 29 Jun 2023 08:20:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026824; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=THd7Tb0KPms2/B8LR9n0PBZLNy++zGoydLdyd1AKSao=; b=JjJgTK/La00k+inaQAAtu9KIKfKdjHsVEmJC/CQIbj8RTQMU8t5kNM+3W2qO6zMCJFzglK 4w90sZxhxWLWr9MzhDLVcMeVoybR8Ed1ApPPqD2WimgCjh9zezAPmkAjNhbGMKGJ1B07lu XMcCM5H7hSDuJK+7m6v5IhDAudAxct2dMahwkFVWqVRvKuzHNx9IlGiRAw62jT56gbPhyk fhgUt49E+J3jVqMyZHPr6D2UshARt2fRcxWrx+BAvQbeS2ybIA0g6KziLwzEvydFWNKDHn FocFVGK+aHBlnyFjfJEbFH3w9LAGeEGdAcI9YGHqW2eHtPXgkR7vVlWjEIgjJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026824; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=THd7Tb0KPms2/B8LR9n0PBZLNy++zGoydLdyd1AKSao=; b=cm/2ZWbOZtnbDEkQm/2r4nzn79guK+sX+8muUKIFCs2yfNYgKhq9KlNxp6o9vVRf0s/OCm lsfy+8KF3vYKasJxgmZvs9YszBPwW25Bp9dfD80TTzPtjlSOCzmT878iygIqqurKHoU61Z sMV1kNxosNWkqxlQMtwZbDf+BwmXVyBxjse268RsxiioGp9gCbYgHIOmorK1pR+f88aDq/ CzBr0XRTYgBGdIaZwTqW2wvlb8OVUU8UQm8pa7pKH1WWlSLbOwpRf6xOtj5yH7pKwO9SpH YPqP8R1hXfubng43y/pIKmYcHCCQmnCDzhxi1STN+x0QkrSxFkLsp7g95m4Vbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026824; a=rsa-sha256; cv=none; b=RQsKdWY3w0HES1gZsnccsDdthn8eX1KdFdYXugnosyiLa3ymO5tZ8NHcknEMX14rpuv6FJ d6J4QYX/YVD8aXXnJv1ZrWCBY2ldLn4lyyZ+HLToRY8YbdMQVxDXbCxjDNFDo73pFJLb4j 2je80F7nDhUIsDAQabMdpbydhyb5D7R+5gLZWh+rNca6JVYF5podi3Wk6wqYaMXn/MZ+Pr efN1bcF9QGqnsNhGYstyxnFMzY1hEXNHFcH7mZYsryvSoxeMvTqPHfzf+QiA7Q4nJ3BBfO KgdfMU9EvjVG32Y13zcBq4i9zqB/JzEL1VZLuuEtfdnaWxJ3ZX6g7ZUcLznXOg== 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 4QsBGJ3QwGz17NP; Thu, 29 Jun 2023 08:20:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KO8D083417; Thu, 29 Jun 2023 08:20:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KOKk083416; Thu, 29 Jun 2023 08:20:24 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:24 GMT Message-Id: <202306290820.35T8KOKk083416@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 46d2b34e1422 - stable/13 - linux(4): Regen for mknod syscall changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 46d2b34e1422b518073503aebe10d7e8dc923f8f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=46d2b34e1422b518073503aebe10d7e8dc923f8f commit 46d2b34e1422b518073503aebe10d7e8dc923f8f Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:04 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:40 +0000 linux(4): Regen for mknod syscall changes (cherry picked from commit cd0fca82bb86e9287d7eacefead1b02766986762) --- sys/amd64/linux/linux_proto.h | 4 ++-- sys/amd64/linux/linux_systrace_args.c | 8 ++++---- sys/amd64/linux32/linux32_proto.h | 2 +- sys/amd64/linux32/linux32_systrace_args.c | 4 ++-- sys/arm64/linux/linux_proto.h | 2 +- sys/arm64/linux/linux_systrace_args.c | 4 ++-- sys/i386/linux/linux_proto.h | 2 +- sys/i386/linux/linux_systrace_args.c | 4 ++-- 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/sys/amd64/linux/linux_proto.h b/sys/amd64/linux/linux_proto.h index fcb4a718a665..cacaf2b64ac2 100644 --- a/sys/amd64/linux/linux_proto.h +++ b/sys/amd64/linux/linux_proto.h @@ -501,7 +501,7 @@ struct linux_utime_args { struct linux_mknod_args { char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; char mode_l_[PADL_(l_mode_t)]; l_mode_t mode; char mode_r_[PADR_(l_mode_t)]; - char dev_l_[PADL_(l_uint)]; l_uint dev; char dev_r_[PADR_(l_uint)]; + char dev_l_[PADL_(l_dev_t)]; l_dev_t dev; char dev_r_[PADR_(l_dev_t)]; }; struct linux_personality_args { char per_l_[PADL_(l_uint)]; l_uint per; char per_r_[PADR_(l_uint)]; @@ -926,7 +926,7 @@ struct linux_mknodat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; char mode_l_[PADL_(l_mode_t)]; l_mode_t mode; char mode_r_[PADR_(l_mode_t)]; - char dev_l_[PADL_(l_uint)]; l_uint dev; char dev_r_[PADR_(l_uint)]; + char dev_l_[PADL_(l_dev_t)]; l_dev_t dev; char dev_r_[PADR_(l_dev_t)]; }; struct linux_fchownat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; diff --git a/sys/amd64/linux/linux_systrace_args.c b/sys/amd64/linux/linux_systrace_args.c index d03f99f10f26..d22d8b55fa43 100644 --- a/sys/amd64/linux/linux_systrace_args.c +++ b/sys/amd64/linux/linux_systrace_args.c @@ -1113,7 +1113,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) struct linux_mknod_args *p = params; uarg[0] = (intptr_t)p->path; /* char * */ iarg[1] = p->mode; /* l_mode_t */ - iarg[2] = p->dev; /* l_uint */ + iarg[2] = p->dev; /* l_dev_t */ *n_args = 3; break; } @@ -1949,7 +1949,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) iarg[0] = p->dfd; /* l_int */ uarg[1] = (intptr_t)p->filename; /* const char * */ iarg[2] = p->mode; /* l_mode_t */ - iarg[3] = p->dev; /* l_uint */ + iarg[3] = p->dev; /* l_dev_t */ *n_args = 4; break; } @@ -4578,7 +4578,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "l_mode_t"; break; case 2: - p = "l_uint"; + p = "l_dev_t"; break; default: break; @@ -5831,7 +5831,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "l_mode_t"; break; case 3: - p = "l_uint"; + p = "l_dev_t"; break; default: break; diff --git a/sys/amd64/linux32/linux32_proto.h b/sys/amd64/linux32/linux32_proto.h index 79a7f54b8ce9..e575fcebd235 100644 --- a/sys/amd64/linux32/linux32_proto.h +++ b/sys/amd64/linux32/linux32_proto.h @@ -1000,7 +1000,7 @@ struct linux_mknodat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; char mode_l_[PADL_(l_int)]; l_int mode; char mode_r_[PADR_(l_int)]; - char dev_l_[PADL_(l_uint)]; l_uint dev; char dev_r_[PADR_(l_uint)]; + char dev_l_[PADL_(l_dev_t)]; l_dev_t dev; char dev_r_[PADR_(l_dev_t)]; }; struct linux_fchownat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; diff --git a/sys/amd64/linux32/linux32_systrace_args.c b/sys/amd64/linux32/linux32_systrace_args.c index fa5a50a0dd86..9ef4330a27f3 100644 --- a/sys/amd64/linux32/linux32_systrace_args.c +++ b/sys/amd64/linux32/linux32_systrace_args.c @@ -2067,7 +2067,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) iarg[0] = p->dfd; /* l_int */ uarg[1] = (intptr_t)p->filename; /* const char * */ iarg[2] = p->mode; /* l_int */ - iarg[3] = p->dev; /* l_uint */ + iarg[3] = p->dev; /* l_dev_t */ *n_args = 4; break; } @@ -6512,7 +6512,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "l_int"; break; case 3: - p = "l_uint"; + p = "l_dev_t"; break; default: break; diff --git a/sys/arm64/linux/linux_proto.h b/sys/arm64/linux/linux_proto.h index edfd1d088654..89d5954f0f37 100644 --- a/sys/arm64/linux/linux_proto.h +++ b/sys/arm64/linux/linux_proto.h @@ -163,7 +163,7 @@ struct linux_mknodat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; char mode_l_[PADL_(l_int)]; l_int mode; char mode_r_[PADR_(l_int)]; - char dev_l_[PADL_(l_uint)]; l_uint dev; char dev_r_[PADR_(l_uint)]; + char dev_l_[PADL_(l_dev_t)]; l_dev_t dev; char dev_r_[PADR_(l_dev_t)]; }; struct linux_mkdirat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; diff --git a/sys/arm64/linux/linux_systrace_args.c b/sys/arm64/linux/linux_systrace_args.c index d57ad97796cd..2d1cb2286ab1 100644 --- a/sys/arm64/linux/linux_systrace_args.c +++ b/sys/arm64/linux/linux_systrace_args.c @@ -251,7 +251,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) iarg[0] = p->dfd; /* l_int */ uarg[1] = (intptr_t)p->filename; /* const char * */ iarg[2] = p->mode; /* l_int */ - iarg[3] = p->dev; /* l_uint */ + iarg[3] = p->dev; /* l_dev_t */ *n_args = 4; break; } @@ -2776,7 +2776,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "l_int"; break; case 3: - p = "l_uint"; + p = "l_dev_t"; break; default: break; diff --git a/sys/i386/linux/linux_proto.h b/sys/i386/linux/linux_proto.h index 1957c8d0c1b3..3cf91e19e659 100644 --- a/sys/i386/linux/linux_proto.h +++ b/sys/i386/linux/linux_proto.h @@ -993,7 +993,7 @@ struct linux_mknodat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; char mode_l_[PADL_(l_int)]; l_int mode; char mode_r_[PADR_(l_int)]; - char dev_l_[PADL_(l_uint)]; l_uint dev; char dev_r_[PADR_(l_uint)]; + char dev_l_[PADL_(l_dev_t)]; l_dev_t dev; char dev_r_[PADR_(l_dev_t)]; }; struct linux_fchownat_args { char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)]; diff --git a/sys/i386/linux/linux_systrace_args.c b/sys/i386/linux/linux_systrace_args.c index 72c6ba134b26..2ca52683c4e6 100644 --- a/sys/i386/linux/linux_systrace_args.c +++ b/sys/i386/linux/linux_systrace_args.c @@ -2102,7 +2102,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) iarg[0] = p->dfd; /* l_int */ uarg[1] = (intptr_t)p->filename; /* const char * */ iarg[2] = p->mode; /* l_int */ - iarg[3] = p->dev; /* l_uint */ + iarg[3] = p->dev; /* l_dev_t */ *n_args = 4; break; } @@ -6580,7 +6580,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) p = "l_int"; break; case 3: - p = "l_uint"; + p = "l_dev_t"; break; default: break; From nobody Thu Jun 29 08:20:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGK6GQqz4knXK; Thu, 29 Jun 2023 08:20: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 4QsBGK5JMxz3v95; Thu, 29 Jun 2023 08:20:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iIshxLIEhLZrRgZvjwZTfV8/Fni8+/FcBzJb1uPxcXE=; b=RXeeUt5Tdh5p+YayMTPRpcvLEHIc8v5GBVu6eu1XEcaN2KOnLqhHNOxT3I60lngsrU5+q5 AAExfx0RKt1ZiAjoHGlWyzLeP4H0rbWNcAHn+QNXPktSbqEtfOycYnrxuma9pEn6AOvqvH VyfPb8p/nMyIL7keRi7ptYvq92tFDZ1915ijuTy2dK215VTlM9HYTX5BROdRmn/C9ZjKNK L0J+eMAN/Z25AkTXXnXnO6SsM5mapUckM3qPyLuV5mdfHeKYT0xeB3DrAe+s2k/iw1RZC2 54ko25ed8mbeWP43GZSm7/lx95Fff+awoYsn1IwGPRAT4zF+58pFHY4VweOsaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iIshxLIEhLZrRgZvjwZTfV8/Fni8+/FcBzJb1uPxcXE=; b=xWCoPkY8bZvxFeywrvMgSXp1zsJjcPLqIw5bE8bgzuVXMBHYN2EJsN6IqJkPfxExY7Ji5S 8SQbLlKg2cFJLcScMsNIzGl/BZRDAVpEF3jEU5uBwobnpMXfdhT5Dytyn/xOJlXCU4Zq0d zE0HPsCiYexhK2RCTaiXCAawBiZ94HsOAHl53JxJG7l9RcIpj5FjpzDX/iKwMarpawDa3u mDvLt6H5SgcZLXB8BoraAytaZ8L7qaJmdZf9VTWToQ5OpumBiU3LhkStZ5VoFNhprXN2M+ ZFAd060ZZqgQx8Nen0rts9X4GUIsqsuas/E8Chz5zkhxsOm6sTVnOwBmemY/MQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026825; a=rsa-sha256; cv=none; b=c8y8Lmn1x5DN8eCHn/tzVZ0IvEPRGiSL29qhhE5ZVpY3oh2a2NYboJ+2qUUS9nDVL+9JOw 5QGky8e3yQ+fQbn/D1UpHdmj1YmvP7iGHZLi/4+FZ6wxPWRB4MlRIiDzXit7OD5P91e7Aw IafYd8piQNz/mFlmJU1aCUPvNbErOrD9rAb83fRGydFdte1s6zqD7DmYYoYpzbbQLc1Vf/ mwEDNExwQe38n1rjR0/ek+36DLAD0VgbVT8yHP1QLPyt+zD0EpypLJbPIMqxV2OGISy4BE zeoaAMhoOIJv0nyCq3hVoFcQ0CcEa1bDfAxmC1el95d8ILkyslMw+6uF7Mdwqw== 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 4QsBGK4PFhz17q2; Thu, 29 Jun 2023 08:20:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KPFW083436; Thu, 29 Jun 2023 08:20:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KPSW083435; Thu, 29 Jun 2023 08:20:25 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:25 GMT Message-Id: <202306290820.35T8KPSW083435@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 86fde4e64528 - stable/13 - linux(4): Make struct stat64 to match Linux actual one List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 86fde4e64528d9e5979623f61207c690631ff1ee Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=86fde4e64528d9e5979623f61207c690631ff1ee commit 86fde4e64528d9e5979623f61207c690631ff1ee Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:04 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:43 +0000 linux(4): Make struct stat64 to match Linux actual one (cherry picked from commit 80d8a4a0030849229cb9ebd434682ef927bc9963) --- sys/amd64/linux32/linux.h | 11 +++++------ sys/i386/linux/linux.h | 11 +++++------ 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index 9ad288e339df..32f2f42b0108 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -216,19 +216,18 @@ struct l_old_stat { }; struct l_stat64 { - l_ushort st_dev; - u_char __pad0[10]; + l_ulonglong st_dev; + u_char __pad0[4]; l_ulong __st_ino; l_uint st_mode; l_uint st_nlink; l_ulong st_uid; l_ulong st_gid; - l_ushort st_rdev; - u_char __pad3[10]; + l_ulonglong st_rdev; + u_char __pad3[4]; l_longlong st_size; l_ulong st_blksize; - l_ulong st_blocks; - l_ulong __pad4; + l_ulonglong st_blocks; struct l_timespec st_atim; struct l_timespec st_mtim; struct l_timespec st_ctim; diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 32f92d8c637b..91102eeaa2be 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -189,19 +189,18 @@ struct l_old_stat { }; struct l_stat64 { - l_ushort st_dev; - u_char __pad0[10]; + l_ulonglong st_dev; + u_char __pad0[4]; l_ulong __st_ino; l_uint st_mode; l_uint st_nlink; l_ulong st_uid; l_ulong st_gid; - l_ushort st_rdev; - u_char __pad3[10]; + l_ulonglong st_rdev; + u_char __pad3[4]; l_longlong st_size; l_ulong st_blksize; - l_ulong st_blocks; - l_ulong __pad4; + l_ulonglong st_blocks; struct l_timespec st_atim; struct l_timespec st_mtim; struct l_timespec st_ctim; From nobody Thu Jun 29 08:20:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGM0G4hz4knrY; Thu, 29 Jun 2023 08:20: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 4QsBGL6GJNz3vGQ; Thu, 29 Jun 2023 08:20:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026826; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=maw9p+u8KYPITaFd5J3lsSs8/W8uPI8BL0Nqh8V/mCw=; b=VPbpHhwG4jZhi8j8kLuNVVvcpVXyslIa6iIjnCGMXaXeq/GeZMx6uusIwuU9mu5sfzWdqE 4Rs/KDNx9HDHTP8ugvGcqkBFxp8gErHnpqJ6PdNeC7o2qxnoTVNuzAysJ4S7fcKEWDwHPX 5Vvks5FLESO8gzid0RigDZxnjKL+RNjG3Jorxtnzv8yWBDPtXyye6xkncZNT565eEo05tV 5Sbs7org+/Eg4jU8ANg8aiHNum218/lopA+MS5e0hml6fHksPsGptSzppQVp8F0SOg9R/H +5oEWt3P+1TaZZ7Zjwa1atlAsiErO8kykpaVGj3pRNAOBn4YjgkHJgWQH4AGBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026826; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=maw9p+u8KYPITaFd5J3lsSs8/W8uPI8BL0Nqh8V/mCw=; b=KR8Sm4Bf0Gg9zTQ2bnQwPEx98w6O0OEeo8GVVqf2dkJXjaZHmR3l2oJRb7XeDcFsNU5eaD XSF0Ta1tGoUhnSXCkG5NH0FEYHOXLYH9+gtjaiFLLh5TfhUlWUpK+fJHUR9zNOrnOwkopU LaTVSLqS40fhMfBaTLihY4DRwCixu98CX77Rbs+0FlJLTXJ1S830r7ljdk07kjs3f+jMYI c/QTwwL0CKM3s1fA5iML1BIP8fyWeo15jhP0IK0bswG02HQDfYa70SKcaUo2iR0EHEGsCC ZupyiZqq/0ic3h0KNqvtWipv1EUGybeHfYUnsTMgoWeabSYlzN31+HBFLnMVIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026826; a=rsa-sha256; cv=none; b=JFPRNCEpKU+c+qKGw+/U7jrAlJdIupRjQpL8lEqBmLuO9fs+Og67F/LctrzHSzSM5gYfre 3v51ug0chg9PbFaH7DnZCHX+sxL65TgOd1dXriJCSBaKYgXiLj/7PjBCvnJ38sENns3EEF Bva+isEJvmR/diufYz8mbtvDMNXepc5vp/czC45oiJH+EgZPlwidyYYoYbgkCXqMCPsaJJ 9adn2TspvS1Fu+N604dVyd+WRJr80z5qbMsWIX1DPOyaf7RUsVkuFZ/IR87qghEwe/XwZt KykKhQ8C12ZhymtFbgW6i+5SkNvRhXLDahbjE6WMwavnPSl68s+ADUWDMLdsuA== 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 4QsBGL5Lwkz17q3; Thu, 29 Jun 2023 08:20:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KQpP083455; Thu, 29 Jun 2023 08:20:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KQii083454; Thu, 29 Jun 2023 08:20:26 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:26 GMT Message-Id: <202306290820.35T8KQii083454@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 6c324fb645e6 - stable/13 - linux(4): Add a dedicated statat() implementation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 6c324fb645e64e0090e16a5846eafdeb723f4105 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=6c324fb645e64e0090e16a5846eafdeb723f4105 commit 6c324fb645e64e0090e16a5846eafdeb723f4105 Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:04 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:45 +0000 linux(4): Add a dedicated statat() implementation Get rid of calling Linux stat translation hook and specific to Linux handling of non-vnode dirfd from kern_statat(), Reviewed by: kib, mjg Differential revision: https://reviews.freebsd.org/D35474 (cherry picked from commit cb858340dcbf214cc4c4d78dbb741620d7b3a252) --- sys/compat/cloudabi/cloudabi_file.c | 2 +- sys/compat/freebsd32/freebsd32_misc.c | 13 ++++++------- sys/compat/linux/linux_file.c | 8 ++++---- sys/compat/linux/linux_stats.c | 34 ++++++++++++++++++++++++++++++++-- sys/kern/vfs_mountroot.c | 2 +- sys/kern/vfs_syscalls.c | 34 +++++++++++----------------------- sys/sys/syscallsubr.h | 4 ++-- 7 files changed, 57 insertions(+), 40 deletions(-) diff --git a/sys/compat/cloudabi/cloudabi_file.c b/sys/compat/cloudabi/cloudabi_file.c index 83987b79aa0c..1a1def879977 100644 --- a/sys/compat/cloudabi/cloudabi_file.c +++ b/sys/compat/cloudabi/cloudabi_file.c @@ -659,7 +659,7 @@ cloudabi_sys_file_stat_get(struct thread *td, error = kern_statat(td, (uap->fd.flags & CLOUDABI_LOOKUP_SYMLINK_FOLLOW) != 0 ? 0 : - AT_SYMLINK_NOFOLLOW, uap->fd.fd, path, UIO_SYSSPACE, &sb, NULL); + AT_SYMLINK_NOFOLLOW, uap->fd.fd, path, UIO_SYSSPACE, &sb); cloudabi_freestr(path); if (error != 0) return (error); diff --git a/sys/compat/freebsd32/freebsd32_misc.c b/sys/compat/freebsd32/freebsd32_misc.c index 70eece0311f4..9fd24a91080f 100644 --- a/sys/compat/freebsd32/freebsd32_misc.c +++ b/sys/compat/freebsd32/freebsd32_misc.c @@ -2251,8 +2251,7 @@ ofreebsd32_stat(struct thread *td, struct ofreebsd32_stat_args *uap) struct ostat32 sb32; int error; - error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, - &sb, NULL); + error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, &sb); if (error) return (error); copy_ostat(&sb, &sb32); @@ -2301,7 +2300,7 @@ freebsd32_fstatat(struct thread *td, struct freebsd32_fstatat_args *uap) int error; error = kern_statat(td, uap->flag, uap->fd, uap->path, UIO_USERSPACE, - &ub, NULL); + &ub); if (error) return (error); copy_stat(&ub, &ub32); @@ -2318,7 +2317,7 @@ ofreebsd32_lstat(struct thread *td, struct ofreebsd32_lstat_args *uap) int error; error = kern_statat(td, AT_SYMLINK_NOFOLLOW, AT_FDCWD, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error) return (error); copy_ostat(&sb, &sb32); @@ -2437,7 +2436,7 @@ freebsd11_freebsd32_stat(struct thread *td, int error; error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, - &sb, NULL); + &sb); if (error != 0) return (error); error = freebsd11_cvtstat32(&sb, &sb32); @@ -2472,7 +2471,7 @@ freebsd11_freebsd32_fstatat(struct thread *td, int error; error = kern_statat(td, uap->flag, uap->fd, uap->path, UIO_USERSPACE, - &sb, NULL); + &sb); if (error != 0) return (error); error = freebsd11_cvtstat32(&sb, &sb32); @@ -2490,7 +2489,7 @@ freebsd11_freebsd32_lstat(struct thread *td, int error; error = kern_statat(td, AT_SYMLINK_NOFOLLOW, AT_FDCWD, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error != 0) return (error); error = freebsd11_cvtstat32(&sb, &sb32); diff --git a/sys/compat/linux/linux_file.c b/sys/compat/linux/linux_file.c index db4b1151bc60..249318a2e619 100644 --- a/sys/compat/linux/linux_file.c +++ b/sys/compat/linux/linux_file.c @@ -732,7 +732,7 @@ linux_unlink(struct thread *td, struct linux_unlink_args *args) if (error == EPERM) { /* Introduce POSIX noncompliant behaviour of Linux */ if (kern_statat(td, 0, AT_FDCWD, args->path, - UIO_USERSPACE, &st, NULL) == 0) { + UIO_USERSPACE, &st) == 0) { if (S_ISDIR(st.st_mode)) error = EISDIR; } @@ -742,8 +742,8 @@ linux_unlink(struct thread *td, struct linux_unlink_args *args) error = kern_funlinkat(td, AT_FDCWD, path, FD_NONE, UIO_SYSSPACE, 0, 0); if (error == EPERM) { /* Introduce POSIX noncompliant behaviour of Linux */ - if (kern_statat(td, 0, AT_FDCWD, path, UIO_SYSSPACE, &st, - NULL) == 0) { + if (kern_statat(td, 0, AT_FDCWD, path, UIO_SYSSPACE, + &st) == 0) { if (S_ISDIR(st.st_mode)) error = EISDIR; } @@ -769,7 +769,7 @@ linux_unlinkat_impl(struct thread *td, enum uio_seg pathseg, const char *path, if (error == EPERM && !(args->flag & LINUX_AT_REMOVEDIR)) { /* Introduce POSIX noncompliant behaviour of Linux */ if (kern_statat(td, AT_SYMLINK_NOFOLLOW, dfd, path, - pathseg, &st, NULL) == 0 && S_ISDIR(st.st_mode)) + pathseg, &st) == 0 && S_ISDIR(st.st_mode)) error = EISDIR; } return (error); diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 58c378d6bc08..934fc6e5e740 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -29,17 +29,23 @@ #include __FBSDID("$FreeBSD$"); +#include "opt_ktrace.h" + #include #include #include #include #include #include +#include #include #include #include #include #include +#ifdef KTRACE +#include +#endif #ifdef COMPAT_LINUX32 #include @@ -57,9 +63,33 @@ static int linux_kern_statat(struct thread *td, int flag, int fd, const char *path, enum uio_seg pathseg, struct stat *sbp) { + struct nameidata nd; + int error; + + if ((flag & ~(AT_SYMLINK_NOFOLLOW | AT_RESOLVE_BENEATH | + AT_EMPTY_PATH)) != 0) + return (EINVAL); + + NDINIT_ATRIGHTS(&nd, LOOKUP, at2cnpflags(flag, AT_RESOLVE_BENEATH | + AT_SYMLINK_NOFOLLOW | AT_EMPTY_PATH) | LOCKSHARED | LOCKLEAF | + AUDITVNODE1, pathseg, path, fd, &cap_fstat_rights, td); - return (kern_statat(td, flag, fd, path, pathseg, sbp, - translate_vnhook_major_minor)); + if ((error = namei(&nd)) != 0) { + if (error == ENOTDIR && + (nd.ni_resflags & NIRES_EMPTYPATH) != 0) + error = kern_fstat(td, fd, sbp); + return (error); + } + error = VOP_STAT(nd.ni_vp, sbp, td->td_ucred, NOCRED, td); + if (error == 0) + translate_vnhook_major_minor(nd.ni_vp, sbp); + NDFREE_PNBUF(&nd); + vput(nd.ni_vp); +#ifdef KTRACE + if (KTRPOINT(td, KTR_STRUCT)) + ktrstat_error(sbp, error); +#endif + return (error); } #ifdef LINUX_LEGACY_SYSCALLS diff --git a/sys/kern/vfs_mountroot.c b/sys/kern/vfs_mountroot.c index 1886d3b7aca3..8a4b67836206 100644 --- a/sys/kern/vfs_mountroot.c +++ b/sys/kern/vfs_mountroot.c @@ -595,7 +595,7 @@ parse_dir_md(char **conf) free(tok, M_TEMP); /* Get file status. */ - error = kern_statat(td, 0, AT_FDCWD, path, UIO_SYSSPACE, &sb, NULL); + error = kern_statat(td, 0, AT_FDCWD, path, UIO_SYSSPACE, &sb); if (error) goto out; diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 3b3947b2ccb7..89f45e898d8e 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -109,7 +109,7 @@ static int kern_readlink_vp(struct vnode *vp, char *buf, enum uio_seg bufseg, static int kern_linkat_vp(struct thread *td, struct vnode *vp, int fd, const char *path, enum uio_seg segflag); -static uint64_t +uint64_t at2cnpflags(u_int at_flags, u_int mask) { u_int64_t res; @@ -2187,8 +2187,7 @@ ostat(struct thread *td, struct ostat_args *uap) struct ostat osb; int error; - error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, - &sb, NULL); + error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, &sb); if (error != 0) return (error); cvtstat(&sb, &osb); @@ -2212,7 +2211,7 @@ olstat(struct thread *td, struct olstat_args *uap) int error; error = kern_statat(td, AT_SYMLINK_NOFOLLOW, AT_FDCWD, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error != 0) return (error); cvtstat(&sb, &osb); @@ -2330,8 +2329,7 @@ freebsd11_stat(struct thread *td, struct freebsd11_stat_args* uap) struct freebsd11_stat osb; int error; - error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, - &sb, NULL); + error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, &sb); if (error != 0) return (error); error = freebsd11_cvtstat(&sb, &osb); @@ -2348,7 +2346,7 @@ freebsd11_lstat(struct thread *td, struct freebsd11_lstat_args* uap) int error; error = kern_statat(td, AT_SYMLINK_NOFOLLOW, AT_FDCWD, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error != 0) return (error); error = freebsd11_cvtstat(&sb, &osb); @@ -2385,7 +2383,7 @@ freebsd11_fstatat(struct thread *td, struct freebsd11_fstatat_args* uap) int error; error = kern_statat(td, uap->flag, uap->fd, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error != 0) return (error); error = freebsd11_cvtstat(&sb, &osb); @@ -2413,7 +2411,7 @@ sys_fstatat(struct thread *td, struct fstatat_args *uap) int error; error = kern_statat(td, uap->flag, uap->fd, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error == 0) error = copyout(&sb, uap->buf, sizeof (sb)); return (error); @@ -2421,8 +2419,7 @@ sys_fstatat(struct thread *td, struct fstatat_args *uap) int kern_statat(struct thread *td, int flag, int fd, const char *path, - enum uio_seg pathseg, struct stat *sbp, - void (*hook)(struct vnode *vp, struct stat *sbp)) + enum uio_seg pathseg, struct stat *sbp) { struct nameidata nd; int error; @@ -2435,17 +2432,9 @@ kern_statat(struct thread *td, int flag, int fd, const char *path, AT_SYMLINK_NOFOLLOW | AT_EMPTY_PATH) | LOCKSHARED | LOCKLEAF | AUDITVNODE1, pathseg, path, fd, &cap_fstat_rights, td); - if ((error = namei(&nd)) != 0) { - if (error == ENOTDIR && - (nd.ni_resflags & NIRES_EMPTYPATH) != 0) - error = kern_fstat(td, fd, sbp); + if ((error = namei(&nd)) != 0) return (error); - } error = VOP_STAT(nd.ni_vp, sbp, td->td_ucred, NOCRED, td); - if (error == 0) { - if (__predict_false(hook != NULL)) - hook(nd.ni_vp, sbp); - } NDFREE_NOTHING(&nd); vput(nd.ni_vp); #ifdef __STAT_TIME_T_EXT @@ -2501,8 +2490,7 @@ freebsd11_nstat(struct thread *td, struct freebsd11_nstat_args *uap) struct nstat nsb; int error; - error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, - &sb, NULL); + error = kern_statat(td, 0, AT_FDCWD, uap->path, UIO_USERSPACE, &sb); if (error != 0) return (error); freebsd11_cvtnstat(&sb, &nsb); @@ -2526,7 +2514,7 @@ freebsd11_nlstat(struct thread *td, struct freebsd11_nlstat_args *uap) int error; error = kern_statat(td, AT_SYMLINK_NOFOLLOW, AT_FDCWD, uap->path, - UIO_USERSPACE, &sb, NULL); + UIO_USERSPACE, &sb); if (error != 0) return (error); freebsd11_cvtnstat(&sb, &nsb); diff --git a/sys/sys/syscallsubr.h b/sys/sys/syscallsubr.h index ae17a10d01da..fb7bbe58a63a 100644 --- a/sys/sys/syscallsubr.h +++ b/sys/sys/syscallsubr.h @@ -80,6 +80,7 @@ struct mmap_req { mmap_check_fp_fn mr_check_fp_fn; }; +uint64_t at2cnpflags(u_int at_flags, u_int mask); int kern___getcwd(struct thread *td, char *buf, enum uio_seg bufseg, size_t buflen, size_t path_max); int kern_accept(struct thread *td, int s, struct sockaddr **name, @@ -312,8 +313,7 @@ int kern_sigqueue(struct thread *td, pid_t pid, int signum, union sigval *value); int kern_socket(struct thread *td, int domain, int type, int protocol); int kern_statat(struct thread *td, int flag, int fd, const char *path, - enum uio_seg pathseg, struct stat *sbp, - void (*hook)(struct vnode *vp, struct stat *sbp)); + enum uio_seg pathseg, struct stat *sbp); int kern_specialfd(struct thread *td, int type, void *arg); int kern_statfs(struct thread *td, const char *path, enum uio_seg pathseg, struct statfs *buf); From nobody Thu Jun 29 08:20:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGN1065z4knrb; Thu, 29 Jun 2023 08:20:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBGM72Rgz3v2F; Thu, 29 Jun 2023 08:20:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ugwlVQzoDUSDvsPqiqRezu2GDzi92kG6STA1pHauaF8=; b=M0Bbxm0/JJdHSXAAMBJkMwzMBJrdevDpLdaASNH8SQUvgpWqA27yPsAI1hGMEKGdk8OUZX K5pg4JgExCILlLHANYAUXJWH14fFJVB8soaaVoKvZrR7DOhTCJ4jHfHlAox+iRAIf/blcS qg9494FMkoZ4DAWAfQlSUg1ezsswcNTZZ685ouo8xbAqkN00tuHQijIo8pm57S30KVy6i0 kLEWMoM0D83GxDUvUiQU/y7iGd3dCEZmYrTeIiw6okdRT2nrW4zb6z3M87yU5qQPqZintb xVWVziiasfcE/OUiQDos9gA4OY5mnJ/amneQAZSICn2QFzYP9ZswhTKCKl6Gug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ugwlVQzoDUSDvsPqiqRezu2GDzi92kG6STA1pHauaF8=; b=HIqUceMllaSlsX3whQQcnOxhzLshMuYmoyAsDWJH1ID/aCQHSjgbpum3FQmcjUOruFKW3N 7jAQPt3iaPg+ejQZMuPW1+6FsBX152i57ChH29RpYlzceJM4HpFyBZmeeykpig+7na99ak R1RXpUBaVODGmiHauOAv1o76aznj0HNdBD2iMe8tSgQ23mX9gJTt5b4NI05xJlLvszvS8f 4JSWnJnlmk1eZ6+ABmSJ9CFB00jcQiB2TVPsgPs7NiEMbm7FTNZ/0fCFHOfDmRrF4QTUhy nCBMq69oYh6tVpFNMjk6wtVpJ2dKvljmNcqQPMI+ehmOB+i3PLLnQcJzSR+6vQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026828; a=rsa-sha256; cv=none; b=TOO6oImA5R6krKRm2MdvKnjqBwNuXj4bp780FxRvGoXvobugXvsH5Ks4iFym+xtEVwfRtQ GVfegVQUAyDVlTQcDg2I73GJwqTQ82BeznL0w7oZK73ruzxHXdDtSZ86Kj+l2x1nR4dcEe tZR1dKcovBGiE1DcbuTJPvM1ROOJzFJ1BJlnhJMlD+/qGZFheYu9rfaNA94HX6QrI+FgkJ XwnZR/DDSzmQTrk3eD72VlYjIMuQCRkexCs98wlKyob7GSTnIaj2yhOPM3k5rzjl2j1mAe Lxogp0X6YR8He9U9kd0NWo8pV7uu0Q4c9abFkTI6ZyydUcFB2W6D7aBEEqABSg== 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 4QsBGM65drz182y; Thu, 29 Jun 2023 08:20:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KR0E083474; Thu, 29 Jun 2023 08:20:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KRgC083473; Thu, 29 Jun 2023 08:20:27 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:27 GMT Message-Id: <202306290820.35T8KRgC083473@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: b971d6aec115 - stable/13 - linux(4): Add a dedicated fstat() implementation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: b971d6aec11597dfdad36a53680c869062b7ba64 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=b971d6aec11597dfdad36a53680c869062b7ba64 commit b971d6aec11597dfdad36a53680c869062b7ba64 Author: Dmitry Chagin AuthorDate: 2023-06-29 08:15:49 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:49 +0000 linux(4): Add a dedicated fstat() implementation In between kern_fstat() and translate_fd_major_minor(), another process having the same filedesc could modify or close fd. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D39763 (cherry picked from commit 994ed958ae0545faa86dd43b6e64bf7b64b9220b) --- sys/compat/linux/linux_stats.c | 75 +++++++++++++++++------------------------- 1 file changed, 31 insertions(+), 44 deletions(-) diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 934fc6e5e740..07ef72706d75 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -47,6 +47,8 @@ __FBSDID("$FreeBSD$"); #include #endif +#include + #ifdef COMPAT_LINUX32 #include #include @@ -59,6 +61,32 @@ __FBSDID("$FreeBSD$"); #include +static int +linux_kern_fstat(struct thread *td, int fd, struct stat *sbp) +{ + struct vnode *vp; + struct file *fp; + int error; + + AUDIT_ARG_FD(fd); + + error = fget(td, fd, &cap_fstat_rights, &fp); + if (__predict_false(error != 0)) + return (error); + + AUDIT_ARG_FILE(td->td_proc, fp); + + error = fo_stat(fp, sbp, td->td_ucred, td); + if (error == 0 && (vp = fp->f_vnode) != NULL) + translate_vnhook_major_minor(vp, sbp); + fdrop(fp, td); +#ifdef KTRACE + if (KTRPOINT(td, KTR_STRUCT)) + ktrstat_error(sbp, error); +#endif + return (error); +} + static int linux_kern_statat(struct thread *td, int flag, int fd, const char *path, enum uio_seg pathseg, struct stat *sbp) @@ -77,7 +105,7 @@ linux_kern_statat(struct thread *td, int flag, int fd, const char *path, if ((error = namei(&nd)) != 0) { if (error == ENOTDIR && (nd.ni_resflags & NIRES_EMPTYPATH) != 0) - error = kern_fstat(td, fd, sbp); + error = linux_kern_fstat(td, fd, sbp); return (error); } error = VOP_STAT(nd.ni_vp, sbp, td->td_ucred, NOCRED, td); @@ -111,45 +139,6 @@ linux_kern_lstat(struct thread *td, const char *path, enum uio_seg pathseg, } #endif -static void -translate_fd_major_minor(struct thread *td, int fd, struct stat *buf) -{ - struct file *fp; - struct vnode *vp; - struct mount *mp; - int major, minor; - - /* - * No capability rights required here. - */ - if ((!S_ISCHR(buf->st_mode) && !S_ISBLK(buf->st_mode)) || - fget(td, fd, &cap_no_rights, &fp) != 0) - return; - vp = fp->f_vnode; - if (vp != NULL && vn_isdisk(vp)) { - buf->st_mode &= ~S_IFMT; - buf->st_mode |= S_IFBLK; - } - if (vp != NULL && rootdevmp != NULL) { - mp = vp->v_mount; - __compiler_membar(); - if (mp != NULL && mp->mnt_vfc == rootdevmp->mnt_vfc) - buf->st_dev = rootdevmp->mnt_stat.f_fsid.val[0]; - } - if (linux_vn_get_major_minor(vp, &major, &minor) == 0) { - buf->st_rdev = (major << 8 | minor); - } else if (fp->f_type == DTYPE_PTS) { - struct tty *tp = fp->f_data; - - /* Convert the numbers for the slave device. */ - if (linux_driver_get_major_minor(devtoname(tp->t_dev), - &major, &minor) == 0) { - buf->st_rdev = (major << 8 | minor); - } - } - fdrop(fp, td); -} - /* * l_dev_t has the same encoding as dev_t in the latter's low 16 bits, so * truncation of a dev_t to 16 bits gives the same result as unpacking @@ -242,8 +231,7 @@ linux_newfstat(struct thread *td, struct linux_newfstat_args *args) struct stat buf; int error; - error = kern_fstat(td, args->fd, &buf); - translate_fd_major_minor(td, args->fd, &buf); + error = linux_kern_fstat(td, args->fd, &buf); if (!error) error = newstat_copyout(&buf, args->buf); @@ -634,8 +622,7 @@ linux_fstat64(struct thread *td, struct linux_fstat64_args *args) struct stat buf; int error; - error = kern_fstat(td, args->fd, &buf); - translate_fd_major_minor(td, args->fd, &buf); + error = linux_kern_fstat(td, args->fd, &buf); if (!error) error = stat64_copyout(&buf, args->statbuf); From nobody Thu Jun 29 08:20:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGP2vHLz4knXb; Thu, 29 Jun 2023 08:20: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 4QsBGP1DRFz3vHW; Thu, 29 Jun 2023 08:20:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026829; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1iv7gju3PTNTunH5ntJuhLEqftnG0tlaQ3NWr5bpD+U=; b=poi8CMRGpJ4UNZU+Q6NH5cXN+F1YQW55XPy2pnGuRbKZq4euW8iaqMkdFZqfpg3u8dsBGv nC8u9jISm6g4JCU5weUqguVtpy3O3mcwl60ru69S0Wpw3HnO6F9fIdGfGyLkAhS1Ou1oMS uZtJe4OR6y0wRVztLh4e4nlxb0knixNtQLQ11pem0R4ppguf9xHQhcj55NVHgRx8tjRAEa hu+KCuPTe+b2qyE/yqi3tJ7HzE3k+jAwRQQmuq++gmHVplPbtKSVYaDmOH6sXl1MzQiURZ DoxWC5dKXV7+eazuC6LKA8ANn9wfjuBiy70mQ5zn7eoqDVRMaAExSuTu0H2Ysg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026829; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1iv7gju3PTNTunH5ntJuhLEqftnG0tlaQ3NWr5bpD+U=; b=RRswWdh1YiqFvKrNItyRlgH/HWu2jcRN1Qwxmr76q8zY/9xtC4yoMWEl1SVHbV/I2zgF4t Dlf9EdofmxyxPXuObCxKBtix0dLuyDWehAMxNsNjsDr+LHLcS2lGXCsx5cHK2THBz0bdPT jy2XIRwF/+I/kKSrqJV0UcTHc9RdFW45ZmIpObhxGgYGOjxeKtTMrybbRzKUzxWQbK6oY7 PaTsfD3vM//HIaZH3Flxwx5ghkHTOW+Ut0zodlkcUxbtRE6Iy3NlUB/SQ9J6/hvtLGdVVs n1s/Q1KVHItRFGgksWtT1sFUYv7KxwGWwX/q7LUJsEi/CasXw3QgOMLiTo88wQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026829; a=rsa-sha256; cv=none; b=Q0SCy0o3sTvTjhJAPnpNNy88kzYMpD5GoRBGQ+G0liaxGvAvBAkMLjOJ3FaHTPdQNd0jW9 Unc/ZJs97m/V7ri1ViFKE4uWpK16V3/NewKPhpmryXa1ErUcnCoIHndb8IeMdT7UhVIGym oILmtdK8cJrWw7543j5APfXurFsA4p88FCtE44uaI7bppW9/0XyQc+IKh0BlOy5KdLVN7m L47Y7t5ofJZAwwBt35KLeD9TU8MV0MOE4EUbeD0PKhftrt0JKgQ4dJM0o264hg8Zw+nZtj cC94Xq8pPfEUlZfX4ibE96GVS0J1tx3N4k5RdOYGnaTlTJdcHg/mW9v9sbaWTg== 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 4QsBGN6fYvz17gj; Thu, 29 Jun 2023 08:20:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KS9J083497; Thu, 29 Jun 2023 08:20:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KSEh083496; Thu, 29 Jun 2023 08:20:28 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:28 GMT Message-Id: <202306290820.35T8KSEh083496@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 5e424fec72aa - stable/13 - linux(4): Uniformly dev_t arguments translation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 5e424fec72aafe1154ae23cd0674193e757a4d2a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=5e424fec72aafe1154ae23cd0674193e757a4d2a commit 5e424fec72aafe1154ae23cd0674193e757a4d2a Author: Dmitry Chagin AuthorDate: 2023-04-28 08:55:05 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:49 +0000 linux(4): Uniformly dev_t arguments translation The two main uses of dev_t are in struct stat and as a parameter of the mknod system calls. As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit quantity with 12 bits set asaid for the major number and 20 for the minor number. The in-kernel dev_t encoded as MMMmmmmm, where M is a hex digit of the major number and m is a hex digit of the minor number. The user-space dev_t encoded as mmmM MMmm, where M and m is the major and minor numbers accordingly. This is downward compatible with legacy systems where dev_t is 16 bits wide, encoded as MMmm. In glibc dev_t is a 64-bit quantity, with 32-bit major and minor numbers, encoded as MMMM Mmmm mmmM MMmm. This is downward compatible with the Linux kernel and with legacy systems where dev_t is 16 bits wide. In the FreeBSD dev_t is a 64-bit quantity. The major and minor numbers are encoded as MMMmmmMm, therefore conversion of the device numbers between Linux user-space and FreeBSD kernel required. (cherry picked from commit 166e2e5a9e87d32dbfc7838903904673873f1e71) --- sys/compat/linux/linux.h | 68 ++++++++++++++++++++++++++++++++++++++++++ sys/compat/linux/linux_misc.c | 4 +-- sys/compat/linux/linux_stats.c | 49 ++++++++++++------------------ sys/compat/linux/linux_util.c | 3 +- 4 files changed, 91 insertions(+), 33 deletions(-) diff --git a/sys/compat/linux/linux.h b/sys/compat/linux/linux.h index 9061548399e4..bb70007cfc5b 100644 --- a/sys/compat/linux/linux.h +++ b/sys/compat/linux/linux.h @@ -33,6 +33,74 @@ */ typedef uint32_t l_dev_t; +/* + * Linux dev_t conversion routines. + * + * As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit quantity + * with 12 bits set asaid for the major number and 20 for the minor number. + * The in-kernel dev_t encoded as MMMmmmmm, where M is a hex digit of the + * major number and m is a hex digit of the minor number. + * The user-space dev_t encoded as mmmM MMmm, where M and m is the major + * and minor numbers accordingly. This is downward compatible with legacy + * systems where dev_t is 16 bits wide, encoded as MMmm. + * In glibc dev_t is a 64-bit quantity, with 32-bit major and minor numbers, + * encoded as MMMM Mmmm mmmM MMmm. This is downward compatible with the Linux + * kernel and with legacy systems where dev_t is 16 bits wide. + * + * In the FreeBSD dev_t is a 64-bit quantity. The major and minor numbers + * are encoded as MMMmmmMm, therefore conversion of the device numbers between + * Linux user-space and FreeBSD kernel required. + */ +static __inline l_dev_t +linux_encode_dev(int _major, int _minor) +{ + + return ((_minor & 0xff) | ((_major & 0xfff) << 8) | + (((_minor & ~0xff) << 12) & 0xfff00000)); +} + +static __inline l_dev_t +linux_new_encode_dev(dev_t _dev) +{ + + return (_dev == NODEV ? 0 : linux_encode_dev(major(_dev), minor(_dev))); +} + +static __inline int +linux_encode_major(dev_t _dev) +{ + + return (_dev == NODEV ? 0 : major(_dev) & 0xfff); +} + +static __inline int +linux_encode_minor(dev_t _dev) +{ + + return (_dev == NODEV ? 0 : minor(_dev) & 0xfffff); +} + +static __inline int +linux_decode_major(l_dev_t _dev) +{ + + return ((_dev & 0xfff00) >> 8); +} + +static __inline int +linux_decode_minor(l_dev_t _dev) +{ + + return ((_dev & 0xff) | ((_dev & 0xfff00000) >> 12)); +} + +static __inline dev_t +linux_decode_dev(l_dev_t _dev) +{ + + return (makedev(linux_decode_major(_dev), linux_decode_minor(_dev))); +} + /* * Private Brandinfo flags */ diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c index ba0ac190a946..bc6ff9559493 100644 --- a/sys/compat/linux/linux_misc.c +++ b/sys/compat/linux/linux_misc.c @@ -901,7 +901,7 @@ linux_mknod(struct thread *td, struct linux_mknod_args *args) case S_IFCHR: case S_IFBLK: error = kern_mknodat(td, AT_FDCWD, path, seg, - args->mode, args->dev); + args->mode, linux_decode_dev(args->dev)); break; case S_IFDIR: @@ -956,7 +956,7 @@ linux_mknodat(struct thread *td, struct linux_mknodat_args *args) case S_IFCHR: case S_IFBLK: error = kern_mknodat(td, dfd, path, seg, args->mode, - args->dev); + linux_decode_dev(args->dev)); break; case S_IFDIR: diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 07ef72706d75..a5c1949a4d28 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -57,6 +57,7 @@ __FBSDID("$FreeBSD$"); #include #endif +#include #include #include @@ -139,38 +140,19 @@ linux_kern_lstat(struct thread *td, const char *path, enum uio_seg pathseg, } #endif -/* - * l_dev_t has the same encoding as dev_t in the latter's low 16 bits, so - * truncation of a dev_t to 16 bits gives the same result as unpacking - * using major() and minor() and repacking in the l_dev_t format. This - * detail is hidden in dev_to_ldev(). Overflow in conversions of dev_t's - * are not checked for, as for other fields. - * - * dev_to_ldev() is only used for translating st_dev. When we convert - * st_rdev for copying it out, it isn't really a dev_t, but has already - * been translated to an l_dev_t in a nontrivial way. Translating it - * again would be illogical but would have no effect since the low 16 - * bits have the same encoding. - * - * The nontrivial translation for st_rdev renumbers some devices, but not - * ones that can be mounted on, so it is consistent with the translation - * for st_dev except when the renumbering or truncation causes conflicts. - */ -#define dev_to_ldev(d) ((uint16_t)(d)) - static int newstat_copyout(struct stat *buf, void *ubuf) { struct l_newstat tbuf; bzero(&tbuf, sizeof(tbuf)); - tbuf.st_dev = dev_to_ldev(buf->st_dev); + tbuf.st_dev = linux_new_encode_dev(buf->st_dev); tbuf.st_ino = buf->st_ino; tbuf.st_mode = buf->st_mode; tbuf.st_nlink = buf->st_nlink; tbuf.st_uid = buf->st_uid; tbuf.st_gid = buf->st_gid; - tbuf.st_rdev = buf->st_rdev; + tbuf.st_rdev = linux_new_encode_dev(buf->st_rdev); tbuf.st_size = buf->st_size; tbuf.st_atim.tv_sec = buf->st_atim.tv_sec; tbuf.st_atim.tv_nsec = buf->st_atim.tv_nsec; @@ -239,19 +221,27 @@ linux_newfstat(struct thread *td, struct linux_newfstat_args *args) } #if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) + +static __inline uint16_t +linux_old_encode_dev(dev_t _dev) +{ + + return (_dev == NODEV ? 0 : linux_encode_dev(major(_dev), minor(_dev))); +} + static int old_stat_copyout(struct stat *buf, void *ubuf) { struct l_old_stat lbuf; bzero(&lbuf, sizeof(lbuf)); - lbuf.st_dev = dev_to_ldev(buf->st_dev); + lbuf.st_dev = linux_old_encode_dev(buf->st_dev); lbuf.st_ino = buf->st_ino; lbuf.st_mode = buf->st_mode; lbuf.st_nlink = buf->st_nlink; lbuf.st_uid = buf->st_uid; lbuf.st_gid = buf->st_gid; - lbuf.st_rdev = buf->st_rdev; + lbuf.st_rdev = linux_old_encode_dev(buf->st_rdev); lbuf.st_size = MIN(buf->st_size, INT32_MAX); lbuf.st_atim.tv_sec = buf->st_atim.tv_sec; lbuf.st_atim.tv_nsec = buf->st_atim.tv_nsec; @@ -550,13 +540,13 @@ stat64_copyout(struct stat *buf, void *ubuf) struct l_stat64 lbuf; bzero(&lbuf, sizeof(lbuf)); - lbuf.st_dev = dev_to_ldev(buf->st_dev); + lbuf.st_dev = linux_new_encode_dev(buf->st_dev); lbuf.st_ino = buf->st_ino; lbuf.st_mode = buf->st_mode; lbuf.st_nlink = buf->st_nlink; lbuf.st_uid = buf->st_uid; lbuf.st_gid = buf->st_gid; - lbuf.st_rdev = buf->st_rdev; + lbuf.st_rdev = linux_new_encode_dev(buf->st_rdev); lbuf.st_size = buf->st_size; lbuf.st_atim.tv_sec = buf->st_atim.tv_sec; lbuf.st_atim.tv_nsec = buf->st_atim.tv_nsec; @@ -762,11 +752,10 @@ statx_copyout(struct stat *buf, void *ubuf) tbuf.stx_ctime.tv_nsec = buf->st_ctim.tv_nsec; tbuf.stx_mtime.tv_sec = buf->st_mtim.tv_sec; tbuf.stx_mtime.tv_nsec = buf->st_mtim.tv_nsec; - - tbuf.stx_rdev_major = buf->st_rdev >> 8; - tbuf.stx_rdev_minor = buf->st_rdev & 0xff; - tbuf.stx_dev_major = buf->st_dev >> 8; - tbuf.stx_dev_minor = buf->st_dev & 0xff; + tbuf.stx_rdev_major = linux_encode_major(buf->st_rdev); + tbuf.stx_rdev_minor = linux_encode_minor(buf->st_rdev); + tbuf.stx_dev_major = linux_encode_major(buf->st_dev); + tbuf.stx_dev_minor = linux_encode_minor(buf->st_dev); return (copyout(&tbuf, ubuf, sizeof(tbuf))); } diff --git a/sys/compat/linux/linux_util.c b/sys/compat/linux/linux_util.c index 5995ac5e18af..498320937fd3 100644 --- a/sys/compat/linux/linux_util.c +++ b/sys/compat/linux/linux_util.c @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include +#include #include #include #include @@ -248,7 +249,7 @@ translate_vnhook_major_minor(struct vnode *vp, struct stat *sb) sb->st_dev = rootdevmp->mnt_stat.f_fsid.val[0]; if (linux_vn_get_major_minor(vp, &major, &minor) == 0) - sb->st_rdev = (major << 8 | minor); + sb->st_rdev = makedev(major, minor); } char * From nobody Thu Jun 29 08:20:29 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGQ2ngDz4knpM; Thu, 29 Jun 2023 08:20:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBGQ1dvMz3vcW; Thu, 29 Jun 2023 08:20:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026830; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OhC5bTfoGAzDh3MgRtXCcQr0Q0+0bIfJYaZLEtDf8gI=; b=v8UjzMmRt3zePrQqCSEcuLh+UnCoKFDOJEHdZGdbxCmHplKL09S9Z1B8ILHkIyFDDA0v3+ WhfvVz9kw0DAHtPsuVHxtky2hmtyqDZ+0IFe69fC2EQWjj7uPRoJm+zxKbBgpINIwN9LqS zlUvTMrpibi5B49AsvljBoGvzCFSRy1zYRKLFlDSfuFcxJCQ6rVTOfCHoO+MC3UNafDagL el5sS/oIgUHykRBK2vhsWWBmHcg2NqZ8g0sR5+HOq9MC95PnJma01jdsBpjqBUwoWAL84N hjZ3ddE1uxHnfnMfyUrKc6MsGjAP5SoGhkjISuV/r6oyuvrRkKngeDca7287Pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026830; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OhC5bTfoGAzDh3MgRtXCcQr0Q0+0bIfJYaZLEtDf8gI=; b=Cch/JVE9UVX1Tid9IAaKDxf99YEJpSjSZQFO/uZ2EVbEsWlhkRJa1Pj71PMJMssRbBC3L/ r+bIHxYuu7w/Z4Qe61SmoofbQ98rbTzevOhBof+VXlVHdTWnRkP4N2uB3kE5ArWsGWrRc0 +ei6JnZIWkBmWqZ41OUEe1lJxP+gLLtSndUVuAPZNiVyglo1xEtk49wWYpO9b45vi5gARx ET3xl4Xc+AoY6KVgBQ2NUMdJoC285GNu586W7ju53NaP+Wg3OItX9f3F4KmYNpWla1GvOc kBLqBu4gOG4ggIqqk73xqkyrFX9WJoteUP2PtpzPUoN9fKwBUhVN+zvGyXG0Nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026830; a=rsa-sha256; cv=none; b=eEX3qyBe+y9JY8hXwyNGOKonXpJ5hKUdt6O8fnQNjjgo9ssEZScekc9o+w+ZPTbnM8diEM fr+khqAFffcL+ZPYt0jTaIQXbYMnmfLNxjjIVMjrfAtKXG44wrlpzxOY4RPpd5SFhEzji4 MfB2Y6rPifjiVg1267rVmCwJovctZRWCn5BBviQFP20OrWfOqoXSJ+VfL4a7rZCAkZghZo HuT72Z7GvV4ClAyPSlIIgwt43/E3pOzClx65ecr8g3cRCQN1o0k/eGyEZbS0gVsbV0obb1 UAPpmE9+vtNapIDjZDklFKErF93zVn5pjVquz4+PFcQjqceo99AXPVaqR/t6cA== 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 4QsBGQ0Ykfz17sY; Thu, 29 Jun 2023 08:20:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KTWZ083522; Thu, 29 Jun 2023 08:20:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KTji083521; Thu, 29 Jun 2023 08:20:29 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:29 GMT Message-Id: <202306290820.35T8KTji083521@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 4d1134a54c85 - stable/13 - fstatat(2): restore AT_EMPTY_PATH handling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 4d1134a54c85ae8926eb43b7e51aee6e65b71816 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=4d1134a54c85ae8926eb43b7e51aee6e65b71816 commit 4d1134a54c85ae8926eb43b7e51aee6e65b71816 Author: Konstantin Belousov AuthorDate: 2023-05-02 15:11:39 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:50 +0000 fstatat(2): restore AT_EMPTY_PATH handling Fixes: cb858340dcbf214cc4c4d78dbb741620d7b3a252 Reported by: markj Sponsored by: The FreeBSD Foundation (cherry picked from commit a1d71cebc05ccfeedf95f2db3e94b17270167888) --- sys/kern/vfs_syscalls.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 89f45e898d8e..7f7836450811 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -2432,8 +2432,12 @@ kern_statat(struct thread *td, int flag, int fd, const char *path, AT_SYMLINK_NOFOLLOW | AT_EMPTY_PATH) | LOCKSHARED | LOCKLEAF | AUDITVNODE1, pathseg, path, fd, &cap_fstat_rights, td); - if ((error = namei(&nd)) != 0) + if ((error = namei(&nd)) != 0) { + if (error == ENOTDIR && + (nd.ni_resflags & NIRES_EMPTYPATH) != 0) + error = kern_fstat(td, fd, sbp); return (error); + } error = VOP_STAT(nd.ni_vp, sbp, td->td_ucred, NOCRED, td); NDFREE_NOTHING(&nd); vput(nd.ni_vp); From nobody Thu Jun 29 08:20:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGR5MWTz4knpP; Thu, 29 Jun 2023 08:20: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 4QsBGR2Jjsz3vPc; Thu, 29 Jun 2023 08:20:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/38UW8dMTAzb+vX1014HTpyg/EoCSy80t053MOi5sZQ=; b=NL5+VtR/5/n5DCbjyczccSRy1jEq7pQiizct+3PGqTOfCPwgwRnUYLQhEwo2LMheIuI+m6 UQAKcmH60WcfIFmWgOwKGfrbLhfULuu1Ie6A7lDVwxbmtxbsIZ1Yz/q/Vc43TXU6SJPdd+ J4A9UcrJBRP5AtEP86kwlV7M2Fx+ccLkGfCnE9gqozv96jUDwGXjZi1kJs5qafDRBHiJom AXvmcT1zG5mkp2KLnot1BblRMtDUcxbAaojR6lMm3uPuHnX6Y6r46DEQ1P5yrJeA5gSisD xJna0CH84thwswuiJ6aTjUAEM9RXDAGO9SW1F0vZpeNMpEe0Maewj2LFqAPHWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/38UW8dMTAzb+vX1014HTpyg/EoCSy80t053MOi5sZQ=; b=Sox2Yo2wG5WE5ZoKN158njg527CjZaiue2K/a86i5etmGMxF009W0hkLky4WCcRm1GGF+S Cbldu4w6bHlI6HfKnUxkbQ4aMrisZqSbwei6lKhSaW+5vWhz+gbtevo64+9UhkjhNrR/zs qprhjtx4lR3ogiVkP7ceZfdTvp7YESo5XPDu8hg6lccQvie4np7dwkhOAX8dfDqYralytI AIlmVVxVj9auEEOGUwbvaCCPFS48rL6n2MmqUYselGZetuXI/yqH8j7d5HLptsijPsU7yL kAhnHG+1HDJoxaxPrjD+Y+x+1+FtzuZFqGeAY7dHo666WCQAAsgxgQPHj/jzQA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026831; a=rsa-sha256; cv=none; b=RO8vluNopLfdr/gGtQQ7HTNnJxxMMKNAO3hLkgtGPs3Q+IZ1TRPshfqoZyNwIJKWmUIUIu +QYJ5qLX7iYbPzZUSTLeYeospnrjAMPfdy+jt/d+GFQ0IGh7FEwQQFSBIErd0GItURFoIL tzcddw9Muu05yn+eailGYqZr6n541GgBXBcKx7F/X4yXSGP//DzdICiwbakhx9Tb6Bs7Pk BOKXKqyjIBdVr4gxiXCpXGKwYH4v9FPDC32W2aoeIv3rVC61AlbzemWlRMDjiYMCA1FD1w KMftc2AXBEh8g3rLIwEts+KZRhq3To9mOK7gn0UsSAtz54K8YfBHAU25dfNkeg== 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 4QsBGR1JcHz17gk; Thu, 29 Jun 2023 08:20:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KVA8083541; Thu, 29 Jun 2023 08:20:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KVHZ083540; Thu, 29 Jun 2023 08:20:31 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:31 GMT Message-Id: <202306290820.35T8KVHZ083540@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: cdbdd15ecd8d - stable/13 - ktrace: Fix syscall number on a child return path from fork List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: cdbdd15ecd8de38f6b460330d046e8b94c010f86 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=cdbdd15ecd8de38f6b460330d046e8b94c010f86 commit cdbdd15ecd8de38f6b460330d046e8b94c010f86 Author: Dmitry Chagin AuthorDate: 2023-05-14 21:23:50 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:57 +0000 ktrace: Fix syscall number on a child return path from fork Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D40078 MFC after 1 week (cherry picked from commit ae6ac58745b58c0a3424b3714be1205821d93c51) --- sys/kern/kern_fork.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c index 068dfdb097d3..eebe2e2259f2 100644 --- a/sys/kern/kern_fork.c +++ b/sys/kern/kern_fork.c @@ -1118,6 +1118,9 @@ fork_exit(void (*callout)(void *, struct trapframe *), void *arg, void fork_return(struct thread *td, struct trapframe *frame) { +#ifdef KTRACE + struct syscall_args *sa; +#endif struct proc *p; p = td->td_proc; @@ -1160,7 +1163,9 @@ fork_return(struct thread *td, struct trapframe *frame) userret(td, frame); #ifdef KTRACE - if (KTRPOINT(td, KTR_SYSRET)) - ktrsysret(SYS_fork, 0, 0); + if (KTRPOINT(td, KTR_SYSRET)) { + sa = &td->td_sa; + ktrsysret(sa->code, 0, 0); + } #endif } From nobody Thu Jun 29 08:20:32 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGT1Gkkz4kntr; Thu, 29 Jun 2023 08:20:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBGS3Sbzz3vTx; Thu, 29 Jun 2023 08:20:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7gtkhJjd1vdbvowMpoFnzZ/fEF7/Oewg7KIiYYDuXcw=; b=N5AYtZGibPQRDI+pwjhe/ORRNyzNi5Q5xbOam1MpEod4bYTSDSIi/QcAznwVc9XiuprUCk A6h1MZuQ+7wudqMGomDRDumptSWvRtFwzqo+9qz6d3c6LkgPTnEli618oxNCap5akSatHZ OqUBhunm9iNwtHLIT8fQ+zDIA91+1fYgig9NFPKJD6PgMw4Y4bcCvrTyk4IKUqEzmlEnKB 2m2Ryr9DjPvD76v1RDZOOVPfk9W+RkogfZThE76ViC0SfboGxKVzq4cmgny6rmVNwKlkDD 0g7cXj256i4MV19x/TH87/JWZ2F9CyzbviglYI2VY+185FQyi2sLkqvFmM0kfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7gtkhJjd1vdbvowMpoFnzZ/fEF7/Oewg7KIiYYDuXcw=; b=MGEHktQ4ZaG5+EcwAl07OX1jGxYqDsRfjZA+I+eVFz535OeAg3QtgZXFui1QYJT01APmKq TqQhfy/PfoZBNvNhSZU3mHk8jcLxiHtbhr2/Tk2kKCMxAdhlfP0MLGzdwTvPeE279awUm1 j8Ahcm4BibehiPceekjLHGHhtrJSmmiX6WGwFX8lq0oNixhWjkfKUGSdwdGg3edI0vSJrd 8z9rs/opaUOwYnFQBN2XwtADLGdvi8qdiT+KVpbM5qcNo+oZuRdSDEp1PZWOLf2CDTeRoY l+jx8tVlprdeQHk1sXFE97VgVgCtZZfRcVGVxcp3dp04to2CPTP53saUpcEOmg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026832; a=rsa-sha256; cv=none; b=vWAI9q93GaedDX+RN5LuLmPwa4Wa+f6i1I3eVlmmZkkIYVxDDfhys6P99HVXnGzYFvyWI2 Ub58Fg1Eq+JdsilIPtYBQta528Oqdcb6Tl0UOblf74ABPy235JUFf9htxliOFZw/pLKIgl tzHmdR7Le2bRmueVr7kf8ThCycPuWosyt2sT+Mh+yL6Mz/FCFnF1W/poouHxsIAv0ssRxE RNKvYLd6NL44adbYKYD4Xwn6UJtkcJkbQqq6drg6F3ftDfOvkq19d39k7JBL69+Qpxoekb DaujVdTgPBsRErtyn7S3nulVnCLWNAumVWTceFSRZaHVZ1dJuMzkj4yQw0sQVg== 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 4QsBGS2ZGxz181f; Thu, 29 Jun 2023 08:20:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KW6s083560; Thu, 29 Jun 2023 08:20:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KWJA083559; Thu, 29 Jun 2023 08:20:32 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:32 GMT Message-Id: <202306290820.35T8KWJA083559@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 8975a63ad5c2 - stable/13 - ktrace: Simplify ae6ac587, drop the sa var declaration List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 8975a63ad5c283a0a7ca05964826b2db799a79d2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=8975a63ad5c283a0a7ca05964826b2db799a79d2 commit 8975a63ad5c283a0a7ca05964826b2db799a79d2 Author: Dmitry Chagin AuthorDate: 2023-05-16 19:46:26 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:58 +0000 ktrace: Simplify ae6ac587, drop the sa var declaration Suggested by: kib MFC after: 5 days (cherry picked from commit 0282f87530b33ebba890794b07f75a2874357e3a) --- sys/kern/kern_fork.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c index eebe2e2259f2..2d7e7bc0de4a 100644 --- a/sys/kern/kern_fork.c +++ b/sys/kern/kern_fork.c @@ -1118,9 +1118,6 @@ fork_exit(void (*callout)(void *, struct trapframe *), void *arg, void fork_return(struct thread *td, struct trapframe *frame) { -#ifdef KTRACE - struct syscall_args *sa; -#endif struct proc *p; p = td->td_proc; @@ -1163,9 +1160,7 @@ fork_return(struct thread *td, struct trapframe *frame) userret(td, frame); #ifdef KTRACE - if (KTRPOINT(td, KTR_SYSRET)) { - sa = &td->td_sa; - ktrsysret(sa->code, 0, 0); - } + if (KTRPOINT(td, KTR_SYSRET)) + ktrsysret(td->td_sa.code, 0, 0); #endif } From nobody Thu Jun 29 08:20:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGT6Fz3z4knrq; Thu, 29 Jun 2023 08:20:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBGT4rdKz3vQ4; Thu, 29 Jun 2023 08:20:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026833; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y5cBMYC8aOrjC7pnb70/Oc/V8N0GMFMZGwwTbdNWtuk=; b=GoGViS1CrHQqH2qZZ/6iMQI88rGb+mzUp2Dssl2NBThmUjB9lOx67CmwCaKGica0A5OYul 1BL5z9i3Yw4oWzrPgtMYfAuEqI/bIh4J3r4tSjUkXLQYZTU4k6mbs6On40S2VstNtv80kK WohkSoOqU5S9xW0lpqfCX6Qa2kTrHLBmeSAMrj9mY7/RMtpHKAGFW4AmXP6ckxn9bwD+Be HO8Hbpl1o/S+G5PWRwqYEhaljIhs4hUNYON9FRvhiAQuhHVeE682Zuy0nrhbs1j8sNc1F+ EJR45bRS1dqkstfmpmFPT3UaKZLZFHSkvikW46Qpqdg86+OW8VbgeZLPbydJ2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026833; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y5cBMYC8aOrjC7pnb70/Oc/V8N0GMFMZGwwTbdNWtuk=; b=lUwQlwqCTkFjezmaqkvHLVzQmndMi1C2s8ZSHkIZ7jA9ES3FSJmkA6UsRi9iscsHrbn9wA x9hiLSMHY8xryCFzY7+z1fiBpUB9LIJsd4nWJfFBHbx4Bp5Im3bM18d9d2XALc3syXe0uz 0/OP5BK6OmnKk+VbSeocv4RXHKnVojBSqGASkhF/gx7TLQXI3aiuU5B0neiFO0ZvnQVXyM AK+fOljRmuFTn8ajUQOf+S7CKEq576hu51Dp6HUG1RnLMA0dpK0BIXAB/QJORZ7NbW2O3d PyWxweghHE3s8y7j88JIeDHta4qLtLsDWGdjevftS1sF/MW/Khe3E7aKkiGOBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026833; a=rsa-sha256; cv=none; b=brkCOv+Qm4Ppp2bnXx1vR9ruY4Y4JPWNQqupbhNN0H9T60ztb+zomyg0KLL8uxBoJdgs8Y 3fgUif01ouw5V6VLcX5DuPE+4FslKSKhxHPm/ygkOVrpGQj5fUaQCwRxXvRxhusIxYRNKp 4qH2JeIA9yq9xqYILo9N2Odg71w7MPi38BIDSCHIHnuxi/iR7HqDiSKgdaCpFY9oFv0qcX nBhYMLaNEJ437Hn3+g+JGzN3NiBtcEYAYRWKML8X5oJc5peQuseTCVl9bvgTMMtGhyo4iG EHllSG8P9szdQF/f11EbpMTYoVeT0Sw0ZxcjXqSQ3SW9SBDqarzkgz6l9uVJBA== 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 4QsBGT3f8Lz17gm; Thu, 29 Jun 2023 08:20:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KXYB083579; Thu, 29 Jun 2023 08:20:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KXCn083578; Thu, 29 Jun 2023 08:20:33 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:33 GMT Message-Id: <202306290820.35T8KXCn083578@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: addf706f6ff0 - stable/13 - linux(4): Check fd passed to unlockpt() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: addf706f6ff0214cc19fb6ad17b9994e91292065 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=addf706f6ff0214cc19fb6ad17b9994e91292065 commit addf706f6ff0214cc19fb6ad17b9994e91292065 Author: Dmitry Chagin AuthorDate: 2023-05-18 07:55:39 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:58 +0000 linux(4): Check fd passed to unlockpt() In our implementation, grantpt() and unlockpt() don't actually have any use, because PTY's are created on the fly and already have proper permissions upon creation. Atleast check that a proper fd passed to unlockpt(). For grantpt() Glibc calls TIOCGPTN ioctl which would fail if fd is not a master. Differential Revision: https://reviews.freebsd.org/D40100 MFC after: 1 week (cherry picked from commit 0f62290e7f749b7a453d413dd72c406129a9aba5) --- sys/compat/linux/linux_ioctl.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/compat/linux/linux_ioctl.c b/sys/compat/linux/linux_ioctl.c index fd4afd3004be..25f5e6d8df0b 100644 --- a/sys/compat/linux/linux_ioctl.c +++ b/sys/compat/linux/linux_ioctl.c @@ -1010,8 +1010,12 @@ linux_ioctl_termio(struct thread *td, struct linux_ioctl_args *args) error = ENOIOCTL; break; case LINUX_TIOCSPTLCK: - /* Our unlockpt() does nothing. */ - error = 0; + /* + * Our unlockpt() does nothing. Check that fd refers + * to a pseudo-terminal master device. + */ + args->cmd = TIOCPTMASTER; + error = (sys_ioctl(td, (struct ioctl_args *)args)); break; default: error = ENOIOCTL; From nobody Thu Jun 29 08:20:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGV6G50z4knh9; Thu, 29 Jun 2023 08:20: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 4QsBGV5Sybz3vK0; Thu, 29 Jun 2023 08:20:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NDIKggNDxdKtAC/d7A5KM8gTWtmgPwi5FwrCDRBDCRo=; b=PCmCT8d5V8kA9f5uJal1ye0/63I01Pmo2ujD44bdVcixrsusbnXHHbG91mZk98Kd9KjBpm obcDvOykNdeaAP5D6slwIzB/yhpyB6rkXauu0UIiZyZOOm7TOSBJWVqyTqQStwYYtKrpp1 irUN+Q1WzOvWipeDFEd6ZrGwrmcjm+DE7JvbUdaq1VPLP31rjOqSNnmZMDUoSgKlxIhHxy gxqevxo2UtTa3tx1fMhDiXxiW4eYLapWPboHC5jAFUUk3ORkJk+fecBWMIV+sXuXx4H0Bk fR41hNAq/gJKe9gXJEbwMrCBG6phr5fPDZnq99FHJztDTpnY9sh8ZTMQXGhT3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NDIKggNDxdKtAC/d7A5KM8gTWtmgPwi5FwrCDRBDCRo=; b=L4VFUECuh57e/aVVWxFAFieXl18N6fTiMELOzJOcRbWs0r+v81euM2rwWxg6jejdxM7Ma8 SWITFmC9shsUqnDxlkpaFZucmzsvCMb1Z1Q4TS/iEwUorb5CDt7dQNodRUNhXbp6d9rS8R wZA1Onrpl+pUvShmJ+uw3D22Cq6KeBm/qe2y4bOil5uUSlTh/82p+udf/x9RMz7T2wykpA cx8fzlPHGIQGYSEyImWA0l+6T3gdbZyKc9PgPr5rl7+8pGB1JqBuLg1QwPnrLH7FML8RY2 VQxka9yuRq6GPRbKouSXS6gQKxkYhS8hADst3OUyxB0S+RCLAe+LxKKwXUvQow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026834; a=rsa-sha256; cv=none; b=eYhCV0VuwYmlNiJuYMYs5lofPuFLqqXHX5oqdehh3IuN+1mnMEs6lS0d25VYCPM9Uunh6X eSQtsBLEQeRQHN7Z3ert9678JqvzRg/9L0hdqxYdzfRqr2XGXzJbxVs1FGsb3V4CTF4Y2l yKIuvbC7UGhXNN/NhrclTx9WRAIyFzLlv1V2o1q4e/WSlsUntE9HVFDOUY9RJosCfViXe2 8DhnxkwivVMLJVzWVI2a2A8/qBJht/BnJiJsXO6DNBGGFISsOmeyBhXTPaoLLfHHTQRtbT NaNDj916O5sr06tw2cT/HOcMcqeyWPxaHgcYZp8+la8dDLSo+PaFUUX8ho6lww== 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 4QsBGV4TCRz1832; Thu, 29 Jun 2023 08:20:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KY0D083740; Thu, 29 Jun 2023 08:20:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KYN3083729; Thu, 29 Jun 2023 08:20:34 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:34 GMT Message-Id: <202306290820.35T8KYN3083729@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: cdae95d79825 - stable/13 - linux(4): Move linux_debug decalration to linux_util.h List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: cdae95d7982553ebf902df42787d20cc9273c3de Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=cdae95d7982553ebf902df42787d20cc9273c3de commit cdae95d7982553ebf902df42787d20cc9273c3de Author: Dmitry Chagin AuthorDate: 2023-05-18 16:58:23 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:58 +0000 linux(4): Move linux_debug decalration to linux_util.h To avoid inclusion of linux_mib.h with linux_util.h in cases where we need rate limiting macro. MFC after: 1 week (cherry picked from commit 38a137f416203494f183cb2b309524102680105e) --- sys/compat/linux/linux_mib.h | 1 - sys/compat/linux/linux_util.h | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_mib.h b/sys/compat/linux/linux_mib.h index 5902f523dfee..4d7f32a55646 100644 --- a/sys/compat/linux/linux_mib.h +++ b/sys/compat/linux/linux_mib.h @@ -57,7 +57,6 @@ int linux_kernver(struct thread *td); #define LINUX_XKERNVERSTR(x) LINUX_KERNVERSTR(x) #define LINUX_VERSION_STR LINUX_XKERNVERSTR(LINUX_KVERSION.LINUX_KPATCHLEVEL.LINUX_KSUBLEVEL) -extern int linux_debug; extern int linux_default_openfiles; extern int linux_default_stacksize; extern int linux_dummy_rlimits; diff --git a/sys/compat/linux/linux_util.h b/sys/compat/linux/linux_util.h index f61aeea99136..bd364e61e90f 100644 --- a/sys/compat/linux/linux_util.h +++ b/sys/compat/linux/linux_util.h @@ -38,6 +38,8 @@ #include +extern int linux_debug; + MALLOC_DECLARE(M_LINUX); MALLOC_DECLARE(M_EPOLL); From nobody Thu Jun 29 08:20:35 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGX4b9fz4knkH; Thu, 29 Jun 2023 08:20: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 4QsBGX1Zjnz3vW2; Thu, 29 Jun 2023 08:20:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026836; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i+8D8ulyVy5JvFnCNcwXH/hqPT+yYTUH1BizUNA4KXk=; b=VhKKk5jAa2Nd9qnbn//G5mP1jjMxpFbcQs9p3zWnvWnqM1DC8bX/yI1Hqp3qRrS9VUlCXl NbYVj5FEA9pKbeMxS4WCDG8jHHCj58psN+reLXNfEMqqzVQeQ3KyQe9CJ6DP9Oxxx4c6XZ +iGAe25JiAIBPWCu8FQtzMhD2ET5T8aQ0kciI+X/YK26XA7iBxFXqcGwpBMkhpjkG/PvUn SS8m/E/1z1caFgztqeu9e5PNhGJxxLK8eOpx1CLOXPvkic1y+VRgHEEQQSjUcOwm9MSISs d09gGa+evogOOukxAF8BFrTz2xgHy7b0+x6JJQPzTJGK9k3mJNLfMwjekLS/OQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026836; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i+8D8ulyVy5JvFnCNcwXH/hqPT+yYTUH1BizUNA4KXk=; b=cAJQ64fAQE8TvEC/I06ckXt2Jz0unVMIektF5vvvrL6r6u3mGbv2wzbobCxKew+JSDfujt 0OMhCF50EPg7dbDnP+0KWVd/UwImUJgn0KvQMkh2INYu0Xcs371H0aUqoQ5R1B1+iwxaiD BIyiFInk7TJK7XqQBWeEW20l5JHTOuAySALq5x1vyEZGgUD0XqANfCAjGuxmAwwO0q9rzV YjRtuIWDpBAcVIxxdtmMkEo/teSt1DCs/znnhOPxeytCNBy54IggzM4dMPluK1jCe82mJQ C09di72qoSiK6EzpQKSseXqQDPFDWbHHDo1S0/8OOKPXhPw+J8zh6Z6Sc4zS8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026836; a=rsa-sha256; cv=none; b=DtyEbZfkxasEQNEbaahC+RSKGFBtLwAbblYawPrAKJCTGuaE2THVui2SdXjKk/K+3QkMgJ NDYVxILzOA5ryGheyHb9RUwsAuggDt4aSBde2FE1KGuKYGM8HAw94V9mVcW/xFT1i+GIcZ VtVC+m0Xv0Rd747qP3Wt9Ahj9FAv+nka7W7EN3yq/x0wqjduRLTXaiKGyCp1ZzolUsss0I JXprM9Tc1S5CzWH3BNn7fwXgfzFE2Tm+AjQI4RcgRcAFkN3pB689Kgd7EgqXlEz8P4OoBG L+YhSYhSVbsKj6EoQXt5uqyeRMKAY1iOD+pZOffzMEGg3mS91kP+3V2VCj8Gqw== 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 4QsBGW5N67z17QP; Thu, 29 Jun 2023 08:20:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KZot084510; Thu, 29 Jun 2023 08:20:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KZsT084509; Thu, 29 Jun 2023 08:20:35 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:35 GMT Message-Id: <202306290820.35T8KZsT084509@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 9480640957ff - stable/13 - linux(4): Make ptrace_peekusr machine dependend List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 9480640957ff48c6bc7c0ea5d4f3eb5930f417e3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=9480640957ff48c6bc7c0ea5d4f3eb5930f417e3 commit 9480640957ff48c6bc7c0ea5d4f3eb5930f417e3 Author: Dmitry Chagin AuthorDate: 2023-05-18 17:00:12 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:59 +0000 linux(4): Make ptrace_peekusr machine dependend And partially implement it for x86_64. Differential Revision: https://reviews.freebsd.org/D40095 MFC after: 1 week (cherry picked from commit dd2a6cd701aea5a6ced59b9947e087304f7d7238) --- sys/amd64/linux/linux.h | 2 ++ sys/amd64/linux/linux_machdep.c | 31 ++++++++++++++++++++++++++ sys/amd64/linux32/linux.h | 2 ++ sys/amd64/linux32/linux32_machdep.c | 9 ++++++++ sys/arm64/linux/linux.h | 2 ++ sys/arm64/linux/linux_machdep.c | 8 +++++++ sys/compat/linux/linux_ptrace.c | 43 ------------------------------------- 7 files changed, 54 insertions(+), 43 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index a5682c6a980d..57f1ee0115e6 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -322,6 +322,8 @@ void linux_ptrace_get_syscall_info_machdep(const struct reg *reg, struct syscall_info *si); int linux_ptrace_getregs_machdep(struct thread *td, pid_t pid, struct linux_pt_regset *l_regset); +int linux_ptrace_peekuser(struct thread *td, pid_t pid, + void *addr, void *data); #endif /* _KERNEL */ #endif /* !_AMD64_LINUX_H_ */ diff --git a/sys/amd64/linux/linux_machdep.c b/sys/amd64/linux/linux_machdep.c index 6c96dd496fdc..233d66a40899 100644 --- a/sys/amd64/linux/linux_machdep.c +++ b/sys/amd64/linux/linux_machdep.c @@ -367,3 +367,34 @@ linux_ptrace_getregs_machdep(struct thread *td, pid_t pid, return (0); } + +#define LINUX_URO(a,m) ((uintptr_t)a == offsetof(struct linux_pt_regset, m)) + +int +linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) +{ + struct linux_pt_regset reg; + struct reg b_reg; + uint64_t val; + int error; + + if ((uintptr_t)addr & (sizeof(data) -1) || (uintptr_t)addr < 0) + return (EIO); + if ((uintptr_t)addr >= sizeof(struct linux_pt_regset)) { + LINUX_RATELIMIT_MSG_OPT1("PTRACE_PEEKUSER offset %ld " + "not implemented; returning EINVAL", (uintptr_t)addr); + return (EINVAL); + } + + if (LINUX_URO(addr, fs_base)) + return (kern_ptrace(td, PT_GETFSBASE, pid, data, 0)); + if (LINUX_URO(addr, gs_base)) + return (kern_ptrace(td, PT_GETGSBASE, pid, data, 0)); + if ((error = kern_ptrace(td, PT_GETREGS, pid, &b_reg, 0)) != 0) + return (error); + bsd_to_linux_regset(&b_reg, ®); + val = *(®.r15 + ((uintptr_t)addr / sizeof(reg.r15))); + return (copyout(&val, data, sizeof(val))); +} + +#undef LINUX_URO diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index 32f2f42b0108..a98777adeaf5 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -465,6 +465,8 @@ struct reg32; void bsd_to_linux_regset32(const struct reg32 *b_reg, struct linux_pt_regset32 *l_regset); +int linux_ptrace_peekuser(struct thread *td, pid_t pid, + void *addr, void *data); extern bool linux32_emulate_i386; #endif /* _KERNEL */ diff --git a/sys/amd64/linux32/linux32_machdep.c b/sys/amd64/linux32/linux32_machdep.c index 0bd398042c3f..afc60fb7e822 100644 --- a/sys/amd64/linux32/linux32_machdep.c +++ b/sys/amd64/linux32/linux32_machdep.c @@ -742,3 +742,12 @@ DEFINE_IFUNC(, int, futex_xorl, (int, uint32_t *, int *)) return ((cpu_stdext_feature & CPUID_STDEXT_SMAP) != 0 ? futex_xorl_smap : futex_xorl_nosmap); } + +int +linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) +{ + + LINUX_RATELIMIT_MSG_OPT1("PTRACE_PEEKUSER offset %ld not implemented; " + "returning EINVAL", (uintptr_t)addr); + return (EINVAL); +} diff --git a/sys/arm64/linux/linux.h b/sys/arm64/linux/linux.h index 5a391c3543d3..be6733c81d97 100644 --- a/sys/arm64/linux/linux.h +++ b/sys/arm64/linux/linux.h @@ -238,6 +238,8 @@ void linux_ptrace_get_syscall_info_machdep(const struct reg *reg, struct syscall_info *si); int linux_ptrace_getregs_machdep(struct thread *td, pid_t pid, struct linux_pt_regset *l_regset); +int linux_ptrace_peekuser(struct thread *td, pid_t pid, + void *addr, void *data); #endif /* _KERNEL */ #endif /* _ARM64_LINUX_H_ */ diff --git a/sys/arm64/linux/linux_machdep.c b/sys/arm64/linux/linux_machdep.c index 4b12476f7865..2e472869eedb 100644 --- a/sys/arm64/linux/linux_machdep.c +++ b/sys/arm64/linux/linux_machdep.c @@ -152,3 +152,11 @@ linux_ptrace_getregs_machdep(struct thread *td __unused, pid_t pid __unused, return (0); } +int +linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) +{ + + LINUX_RATELIMIT_MSG_OPT1("PTRACE_PEEKUSER offset %ld not implemented; " + "returning EINVAL", (uintptr_t)addr); + return (EINVAL); +} diff --git a/sys/compat/linux/linux_ptrace.c b/sys/compat/linux/linux_ptrace.c index 151355d2bb3f..c1c7abf70a9d 100644 --- a/sys/compat/linux/linux_ptrace.c +++ b/sys/compat/linux/linux_ptrace.c @@ -100,11 +100,6 @@ __FBSDID("$FreeBSD$"); #define LINUX_PTRACE_SYSCALL_INFO_ENTRY 1 #define LINUX_PTRACE_SYSCALL_INFO_EXIT 2 -#define LINUX_PTRACE_PEEKUSER_ORIG_RAX 120 -#define LINUX_PTRACE_PEEKUSER_RIP 128 -#define LINUX_PTRACE_PEEKUSER_CS 136 -#define LINUX_PTRACE_PEEKUSER_DS 184 - static int map_signum(int lsig, int *bsigp) { @@ -179,44 +174,6 @@ linux_ptrace_peek(struct thread *td, pid_t pid, void *addr, void *data) return (error); } -static int -linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) -{ - struct reg b_reg; - uint64_t val; - int error; - - error = kern_ptrace(td, PT_GETREGS, pid, &b_reg, 0); - if (error != 0) - return (error); - - switch ((uintptr_t)addr) { -#ifdef __amd64__ - case LINUX_PTRACE_PEEKUSER_ORIG_RAX: - val = b_reg.r_rax; - break; - case LINUX_PTRACE_PEEKUSER_RIP: - val = b_reg.r_rip; - break; - case LINUX_PTRACE_PEEKUSER_CS: - val = b_reg.r_cs; - break; - case LINUX_PTRACE_PEEKUSER_DS: - val = b_reg.r_ds; - break; -#endif /* __amd64__ */ - default: - linux_msg(td, "PTRACE_PEEKUSER offset %ld not implemented; " - "returning EINVAL", (uintptr_t)addr); - return (EINVAL); - } - - error = copyout(&val, data, sizeof(val)); - td->td_retval[0] = error; - - return (error); -} - static int linux_ptrace_pokeuser(struct thread *td, pid_t pid, void *addr, void *data) { From nobody Thu Jun 29 08:20:36 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGY0mWXz4knXy; Thu, 29 Jun 2023 08:20: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 4QsBGY047wz3vpf; Thu, 29 Jun 2023 08:20:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026837; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NHTHvG08uQuYdZosVAToz/RkYMBS2huyoV85hUoYKc8=; b=GCMa+uye7Wzj6D2IoQZQ/B6VEyjV7ebK6hc8PCFx1rdiSZPMOtNSd9cubrIBDTk5pzSvB6 +2zjcsFNgpKUTSGDjEpg8evo2btL19AYwW6uCpKFlol1YX6Oi20JavSqjSWzR7jO0emN56 6L2dCKVW5MiTfJcjQGoobsAKo4Ki2rifW6WFi36R3Cnmjuds28mxJkYwNmD0xk62Bsdd+f 0uUS20H27pLi8QaGVeMg2RytgvKywh9W9j/WlKXhfKKSlL3XMmJoTeAQHFgn9/jNswHGU4 FtiHhFMTLUjEuVjVMFE4GpflMV0Xg5NDTO+Ni/8npF6/gzCxL+pO8gBu6DqUMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026837; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NHTHvG08uQuYdZosVAToz/RkYMBS2huyoV85hUoYKc8=; b=ukNmrxR5+X85qBujEgJdcvWZC5Vlkh0/Na1d/neAgZHFizEQWHqw1QWM6do0Gv/NmrUwrm c79F8n1Gu08XYtRjKATfDX6sYFB8q7X9te5GOAL7tL5zm/Vh/pue/tEiczthHk7O9k5WpF NiF6XbOdSQLsYJIW4k5ovazLAKzqiEEpKpw+H6RrX+QZCfkxGjIlllGUQSQMzF6m/Mhs3M iSjBNajWisvvpgbraIdtlmRUGXTYTsluESwPleG3JkcV+6BHQrT4i7ENImN5yQK/Wwm3QQ mJhlchiBZEbN3fQ+grf++6GsYsAwAPN7ezit5LZEQWDdN2pu+SjcLqGLjl40aQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026837; a=rsa-sha256; cv=none; b=OpSfOd/VPwGH6Xg1ByyAnKlOsH25+0U81SYWok+/wEt9RdcDdBbva2Eziu/4o3wYNTw3/e wPrPS75J7qhwlGJO4mEYBJ2KYuh1RbDJ3zG2aPbiVEp/hU1SDEEB9eA2/wpqmF/iOhP+gL sZxJWoHOUmXinHNwSHJQK1XcHx0iY4WfpGH2Ex8Oic4ZnevVLrUjaM3ZVlpZsu80pCm5EO CQQRIrCSM1cul/ILtB0NWbp5CajkGsVMjOYG+cEGjYtkE0zh1A16oL3oxv9iOSSXZFz/GJ tqNKNuxFTNbtKEFXBEw1E5oa93oUo98zZuhHKXKr99KXAftL8GQY6S3t9XSPsw== 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 4QsBGX6HTZz1837; Thu, 29 Jun 2023 08:20:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KaEU084529; Thu, 29 Jun 2023 08:20:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Kauh084528; Thu, 29 Jun 2023 08:20:36 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:36 GMT Message-Id: <202306290820.35T8Kauh084528@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: d056fef82aef - stable/13 - linux(4): Make ptrace_pokeusr machine dependent List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: d056fef82aefb703441a33af719db9182ab566bc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=d056fef82aefb703441a33af719db9182ab566bc commit d056fef82aefb703441a33af719db9182ab566bc Author: Dmitry Chagin AuthorDate: 2023-05-18 17:01:12 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:59 +0000 linux(4): Make ptrace_pokeusr machine dependent Differential Revision: https://reviews.freebsd.org/D40096 MFC after: 1 week (cherry picked from commit 3d0addcd35193461e927db6cfe4b6d9b579eed6b) --- sys/amd64/linux/linux.h | 2 ++ sys/amd64/linux/linux_machdep.c | 8 ++++++++ sys/amd64/linux32/linux.h | 2 ++ sys/amd64/linux32/linux32_machdep.c | 9 +++++++++ sys/arm64/linux/linux.h | 2 ++ sys/arm64/linux/linux_machdep.c | 9 +++++++++ sys/compat/linux/linux_ptrace.c | 8 -------- 7 files changed, 32 insertions(+), 8 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index 57f1ee0115e6..a2fb6c94466e 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -324,6 +324,8 @@ int linux_ptrace_getregs_machdep(struct thread *td, pid_t pid, struct linux_pt_regset *l_regset); int linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data); +int linux_ptrace_pokeuser(struct thread *td, pid_t pid, + void *addr, void *data); #endif /* _KERNEL */ #endif /* !_AMD64_LINUX_H_ */ diff --git a/sys/amd64/linux/linux_machdep.c b/sys/amd64/linux/linux_machdep.c index 233d66a40899..ddb291169a03 100644 --- a/sys/amd64/linux/linux_machdep.c +++ b/sys/amd64/linux/linux_machdep.c @@ -397,4 +397,12 @@ linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) return (copyout(&val, data, sizeof(val))); } +int +linux_ptrace_pokeuser(struct thread *td, pid_t pid, void *addr, void *data) +{ + + LINUX_RATELIMIT_MSG_OPT1("PTRACE_POKEUSER offset %ld " + "not implemented; returning EINVAL", (uintptr_t)addr); + return (EINVAL); +} #undef LINUX_URO diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h index a98777adeaf5..0553fe2cae45 100644 --- a/sys/amd64/linux32/linux.h +++ b/sys/amd64/linux32/linux.h @@ -467,6 +467,8 @@ void bsd_to_linux_regset32(const struct reg32 *b_reg, struct linux_pt_regset32 *l_regset); int linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data); +int linux_ptrace_pokeuser(struct thread *td, pid_t pid, + void *addr, void *data); extern bool linux32_emulate_i386; #endif /* _KERNEL */ diff --git a/sys/amd64/linux32/linux32_machdep.c b/sys/amd64/linux32/linux32_machdep.c index afc60fb7e822..23d8f8767282 100644 --- a/sys/amd64/linux32/linux32_machdep.c +++ b/sys/amd64/linux32/linux32_machdep.c @@ -751,3 +751,12 @@ linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) "returning EINVAL", (uintptr_t)addr); return (EINVAL); } + +int +linux_ptrace_pokeuser(struct thread *td, pid_t pid, void *addr, void *data) +{ + + LINUX_RATELIMIT_MSG_OPT1("PTRACE_POKEUSER offset %ld " + "not implemented; returning EINVAL", (uintptr_t)addr); + return (EINVAL); +} diff --git a/sys/arm64/linux/linux.h b/sys/arm64/linux/linux.h index be6733c81d97..700a97045dd1 100644 --- a/sys/arm64/linux/linux.h +++ b/sys/arm64/linux/linux.h @@ -240,6 +240,8 @@ int linux_ptrace_getregs_machdep(struct thread *td, pid_t pid, struct linux_pt_regset *l_regset); int linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data); +int linux_ptrace_pokeuser(struct thread *td, pid_t pid, + void *addr, void *data); #endif /* _KERNEL */ #endif /* _ARM64_LINUX_H_ */ diff --git a/sys/arm64/linux/linux_machdep.c b/sys/arm64/linux/linux_machdep.c index 2e472869eedb..87014950497e 100644 --- a/sys/arm64/linux/linux_machdep.c +++ b/sys/arm64/linux/linux_machdep.c @@ -160,3 +160,12 @@ linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) "returning EINVAL", (uintptr_t)addr); return (EINVAL); } + +int +linux_ptrace_pokeuser(struct thread *td, pid_t pid, void *addr, void *data) +{ + + LINUX_RATELIMIT_MSG_OPT1("PTRACE_POKEUSER offset %ld " + "not implemented; returning EINVAL", (uintptr_t)addr); + return (EINVAL); +} diff --git a/sys/compat/linux/linux_ptrace.c b/sys/compat/linux/linux_ptrace.c index c1c7abf70a9d..5b971bbfb497 100644 --- a/sys/compat/linux/linux_ptrace.c +++ b/sys/compat/linux/linux_ptrace.c @@ -174,14 +174,6 @@ linux_ptrace_peek(struct thread *td, pid_t pid, void *addr, void *data) return (error); } -static int -linux_ptrace_pokeuser(struct thread *td, pid_t pid, void *addr, void *data) -{ - - linux_msg(td, "PTRACE_POKEUSER not implemented; returning EINVAL"); - return (EINVAL); -} - static int linux_ptrace_setoptions(struct thread *td, pid_t pid, l_ulong data) { From nobody Thu Jun 29 08:20:37 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGZ1f4kz4knkL; Thu, 29 Jun 2023 08:20: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 4QsBGZ11vZz3vff; Thu, 29 Jun 2023 08:20:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+oAVEwyEn5ejVGU54Rc3hkUC+mcdiOaSH8JVxdsUIhM=; b=ywp5B4i5kh+PtG3l4xPakJKp6k+5aVpj4FHdRIITQudEThTyuuxelk5GxA2xbpUT45OYHX 6wswtVmZBpBGWdriSZFH4rP553pL/gaH4whigmdJGpiEyB6ne22zmTxpy1zV/MWVSyeUiu CRf3zPTbfSvEdP76Nz9WIeXUv2AcZl9UkwgvshfF3xLGDjWXtH2HnYEydxuO4TMydooc96 7wjfO28HFO2regAVT16IUQPZ65eTAplid/sHv3qzGK3apmbYO/AHP9mYJH7sljzxBanwXG ZAjKw2JjV9ANJTXKzYHPTzlqQLlztAEL1rm7XQG/iDcc1UIcX9FZh5sfTN9gkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+oAVEwyEn5ejVGU54Rc3hkUC+mcdiOaSH8JVxdsUIhM=; b=fw8I5HB5vSUDlXQ4PlduZGGZR9lP4KJYcxy6Ia5MoTuKGDcJ+ludlRHPA4YDxysmUY4y7e lNiglHBt9duBtOAverX2E/VSJo2JuZIZisNJQC6P/8oLGcTa4Sx1NTorBc8wTtnaa1ep1p dgvaLPyp5I10ZoKle+ksTOv5uWwIhUgjv/MFWIxgxnwWK3rcLfu4+gmX2vJjkDX86nRN/i Wcl3pknMVeU6K0TEBeW+baHyUZ4XMIGY5ugcWPkQrRuP7lRDVFlT831rJKHQ54Sc6lnx3X rLjZnZzMAtkp3tgPTMS/kUCTHjkxjs0fGZkI6I91011r4w/Lv97j9BLz7Vls+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026838; a=rsa-sha256; cv=none; b=tOu62MnGv2pcGRmV7HFnYpbCP4cALzT6jNSz7/HTOT6FMgqFZvZLR3Pg56zQXMzwNtffzW EoXPcol/23bSMM3+fHjiGE6UBnKyeFnOJPwdUasH9+nt3YgW099KPqO6/P/ej/dsuDmsPo qyddaz4vhSVl5Tgs7WOpAzarOny/rt/sQkl00CpGHoF/JeNC70yxo3I8Z93kdhOuPcVE0e G7Py7dgdHulzJazF8N60xP7EawauNc1ATLykHJye57KauKO7rjhOQBZ8ARJV3LhJTQp/Pf MgmjXfJQp5xaF3CMeqIJM2da1aJj+MBrvh/G3C5JZUvtVWhCkiUAaPbNpKxq5Q== 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 4QsBGZ06rMz181j; Thu, 29 Jun 2023 08:20:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8Kb9K084548; Thu, 29 Jun 2023 08:20:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Kb3K084547; Thu, 29 Jun 2023 08:20:37 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:37 GMT Message-Id: <202306290820.35T8Kb3K084547@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 050cd99a65a5 - stable/13 - linux(4): Implement ptrace_pokeusr for x86_64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 050cd99a65a565b678d47c0e6980e14f4fca9112 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=050cd99a65a565b678d47c0e6980e14f4fca9112 commit 050cd99a65a565b678d47c0e6980e14f4fca9112 Author: Dmitry Chagin AuthorDate: 2023-05-18 17:02:35 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:59 +0000 linux(4): Implement ptrace_pokeusr for x86_64 Differential Revision: https://reviews.freebsd.org/D40097 MFC after: 1 week (cherry picked from commit 1d76741520c031730319ed976a6c394213991504) --- sys/amd64/linux/linux_machdep.c | 73 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 70 insertions(+), 3 deletions(-) diff --git a/sys/amd64/linux/linux_machdep.c b/sys/amd64/linux/linux_machdep.c index ddb291169a03..6ac0ab0cd3d7 100644 --- a/sys/amd64/linux/linux_machdep.c +++ b/sys/amd64/linux/linux_machdep.c @@ -397,12 +397,79 @@ linux_ptrace_peekuser(struct thread *td, pid_t pid, void *addr, void *data) return (copyout(&val, data, sizeof(val))); } +static inline bool +linux_invalid_selector(u_short val) +{ + + return (val != 0 && ISPL(val) != SEL_UPL); +} + +struct linux_segreg_off { + uintptr_t reg; + bool is0; +}; + +const struct linux_segreg_off linux_segregs_off[] = { + { + .reg = offsetof(struct linux_pt_regset, gs), + .is0 = true, + }, + { + .reg = offsetof(struct linux_pt_regset, fs), + .is0 = true, + }, + { + .reg = offsetof(struct linux_pt_regset, ds), + .is0 = true, + }, + { + .reg = offsetof(struct linux_pt_regset, es), + .is0 = true, + }, + { + .reg = offsetof(struct linux_pt_regset, cs), + .is0 = false, + }, + { + .reg = offsetof(struct linux_pt_regset, ss), + .is0 = false, + }, +}; + int linux_ptrace_pokeuser(struct thread *td, pid_t pid, void *addr, void *data) { + struct linux_pt_regset reg; + struct reg b_reg, b_reg1; + int error, i; - LINUX_RATELIMIT_MSG_OPT1("PTRACE_POKEUSER offset %ld " - "not implemented; returning EINVAL", (uintptr_t)addr); - return (EINVAL); + if ((uintptr_t)addr & (sizeof(data) -1) || (uintptr_t)addr < 0) + return (EIO); + if ((uintptr_t)addr >= sizeof(struct linux_pt_regset)) { + LINUX_RATELIMIT_MSG_OPT1("PTRACE_POKEUSER offset %ld " + "not implemented; returning EINVAL", (uintptr_t)addr); + return (EINVAL); + } + + if (LINUX_URO(addr, fs_base)) + return (kern_ptrace(td, PT_SETFSBASE, pid, data, 0)); + if (LINUX_URO(addr, gs_base)) + return (kern_ptrace(td, PT_SETGSBASE, pid, data, 0)); + for (i = 0; i < nitems(linux_segregs_off); i++) { + if ((uintptr_t)addr == linux_segregs_off[i].reg) { + if (linux_invalid_selector((uintptr_t)data)) + return (EIO); + if (!linux_segregs_off[i].is0 && (uintptr_t)data == 0) + return (EIO); + } + } + if ((error = kern_ptrace(td, PT_GETREGS, pid, &b_reg, 0)) != 0) + return (error); + bsd_to_linux_regset(&b_reg, ®); + *(®.r15 + ((uintptr_t)addr / sizeof(reg.r15))) = (uint64_t)data; + linux_to_bsd_regset(&b_reg1, ®); + b_reg1.r_err = b_reg.r_err; + b_reg1.r_trapno = b_reg.r_trapno; + return (kern_ptrace(td, PT_SETREGS, pid, &b_reg, 0)); } #undef LINUX_URO From nobody Thu Jun 29 08:20:39 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGb4lMkz4knvJ; Thu, 29 Jun 2023 08:20: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 4QsBGb1Y87z3vyN; Thu, 29 Jun 2023 08:20:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SBKzVRAUo59GPL3ZH78lebY7+nxqBJSk3HsM2i9K/5Y=; b=RfKUek/Z+HIAu5WImJRXJ5H9wzs/2lrtRy//5bnw1bMOe+vN+4YBOOQLF9jSkhTW2xfjK5 DoaBeL/6dgrNIGFrXik+Fnf6SaNUG5O60i6MzSfZlscdO/sMwvKtgleZ1UUhCQ/UqX7v4P 9Q64nd19aRVPISbBhI2pvApOTLnZZT9ruwWr9Q3JhtQ/Y9VSlVyEEg41OmWErJdBGiS8Re JC4v3Zky9RrycpFk9cSfCSy7ujvvvKT9sWHJTDJWFcP840CXjE5aR7LEMwuvRZpZZypAPo jT087fcw/a9Xmlz3V6TSm77iTK7hEysfsnYwRhyVS1+NE1u/qRtmQXx+xyz2pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SBKzVRAUo59GPL3ZH78lebY7+nxqBJSk3HsM2i9K/5Y=; b=PiR7MpKT64H3QB3aayH4CIxvgb98Cl+DeTqntogr9tMUb7L4qXHbP2drwrWD/ZwEVk2Nrx jEe3fw0xMcmk08keUvLvZbDM3vuOpD3x1S271n+gUPoRLcnTmyXoTp/9fqxYnRZIAcmXRu qh5DqctBYRp8mlN2z/bBfSkKHMgTm0Hd77QSw4EHAiXVmd+BAX+PPfb/psrSGyrXejcQ5F s8ImXMiMc0e1JwD/FGefTmVFMM0QjpgfagLvuHRuCP1pffKvOJVXkLOdAHax/tvmr13jav WpWDQDjnMG4u/rGVFlbCblk5b1jOkT3JSzVoW6gEZ3aTAjMvSUqXYgUKOJ6FCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026839; a=rsa-sha256; cv=none; b=r2px3QmKlGr/9bFUCvEkg04ytwk+UuMYBufpr7tlmVmYjxJj+Pp4AzXQ+PWR4JwQ2/5BvG j97Jbk9TC6L2JtA1dnaAe0iLcFN1b5CQnHz61q9JLgTn3S/4BkkJBIwZbYEl5z3Thx2nI1 u3do6+wUtz7t7+yDOpyxfz8JcJ3+vUZnjId1QiDkCSa5JZDSRHk1nyvtT5CB0jNFnbF6Rf J46Ar4QKNB46xj21ZMjQ7JItquCIckSw8EsvJd2XPGcJqz9zu3U8LQkh2E41u4hbNdBJCh VcVsSK9IrJlGZpBFIaRqxLd9dybN6OLNauOdCtV5jfyZG5Z6qvk1V2bxnH/OBA== 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 4QsBGb0fWNz181l; Thu, 29 Jun 2023 08:20:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8Kdma084567; Thu, 29 Jun 2023 08:20:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KdUr084566; Thu, 29 Jun 2023 08:20:39 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:39 GMT Message-Id: <202306290820.35T8KdUr084566@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: ac9d194f493f - stable/13 - linux(4): Guard linux_fork.h by _KERNEL for use by libsysdecode List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: ac9d194f493f3cc3bf161bc8e42f6e359081171b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=ac9d194f493f3cc3bf161bc8e42f6e359081171b commit ac9d194f493f3cc3bf161bc8e42f6e359081171b Author: Dmitry Chagin AuthorDate: 2023-05-26 16:31:47 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:15:59 +0000 linux(4): Guard linux_fork.h by _KERNEL for use by libsysdecode Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40149 MFC after: 1 month (cherry picked from commit 3f1bfc136f8fb8c6a7c4dcccebd27962bc104670) --- sys/compat/linux/linux_fork.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linux/linux_fork.h b/sys/compat/linux/linux_fork.h index bdc201bce57e..2a6e2a158241 100644 --- a/sys/compat/linux/linux_fork.h +++ b/sys/compat/linux/linux_fork.h @@ -62,6 +62,7 @@ #define LINUX_CSIGNAL 0x000000ff +#if defined(_KERNEL) /* * User-space clone3 args layout. */ @@ -97,5 +98,6 @@ struct l_clone_args { int linux_set_upcall(struct thread *, register_t); int linux_set_cloned_tls(struct thread *, void *); void linux_thread_detach(struct thread *); +#endif /* defined(_KERNEL) */ #endif /* _LINUX_FORK_H_ */ From nobody Thu Jun 29 08:20:40 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGc4ltjz4knkT; Thu, 29 Jun 2023 08:20: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 4QsBGc2Vj7z3vwb; Thu, 29 Jun 2023 08:20:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o7IuetUPXilDlxmWBJHnagTywHU+Fkxa3WDXurYvmQk=; b=bmWB5LIodruKQHN43P+RpC81/p68TL3rifG/S+qiKVID1PaOJnMKic04eiUz0sccOsqLe/ upXBCgizlEMfLLD0tZaM2LmuhxGRSWYX3zNs510ACN/VBw70f6jJGOdbWxaJlGaJZgO/Ly FLm50KtGGPv1Pq6nZtNo4+2ietnULjE8wq31/ndNvhyW3rMCd/GuOAVpSfcL/UMh/Oc+hj 0BAWwitxe0bQ+qn2e9BpjgOQ2lgzCnHCl5Pi0PJhQUK6kmmi0Si/Ym0HEi8c0m34Arn8ZP aOieMs5Q6ebcNKb8jsws42UMDJKC/5N+JDj4cQqqyzBuSNULKrBrTMmGZpwC2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o7IuetUPXilDlxmWBJHnagTywHU+Fkxa3WDXurYvmQk=; b=xBVoCADo5dlgX15Y+Be3f7AWQsXyg151AvpnyUGz2VuV9SwPPpgAA13tg1AR3Ak8LFx1yf j8+t2ZrGLtW+ufNiJtPU9RiAxk4nUduNhm/N5ClX5zR8FKWCoa/SONOWkiybER0T22wBfX Dre0gxYBrOcCLXdmh8uC/ysbefltAWOM/REN7Fa+ePUn9XLdjyla1M7LDReGD0listasQk MLN6EUPsXWsRbkaIuFrCZgLFEGfSEWFMMKvMQmTWrejv36121Z4IkoCdl5qqJ/vSjUkBFy SrmMGX+dC+3j09THxTmDkjB/93VPA7prpg7TvxCkmNJscYhpyGEy+7wOPC2GCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026840; a=rsa-sha256; cv=none; b=khC3gSPMzGYRFrxXsVqQbUMYjYPer/MnZz3t4FCbZiemqbOi+HN96x75mUvI5LUQx2IJzO INhakadUsO+dbWwZveIehGNHIxd3SKByBXLVpncOI6p6PJVgXWxB6nSmp4VReTfc3tAzdI vhr5oqP5GVl+YTZRLhUS41hQ/jnhTmCCexnTqZcEhSJAwAwVJbaDO47ODqYedflsGmhtdY I4DT0rhZGEfK2a/dyXhBWNNBpt0i1JlQQHA5O5nn4gAqNIfmncxvKfehIp1TRAA/eqHzAp R/WudeSwE1iCRDCWZ+fzPT5Y023dkJJFljv2X532r5e9o5g+qQFM3pFDQLvhVQ== 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 4QsBGc1VLqz17gs; Thu, 29 Jun 2023 08:20:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KeiO084586; Thu, 29 Jun 2023 08:20:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KebC084585; Thu, 29 Jun 2023 08:20:40 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:40 GMT Message-Id: <202306290820.35T8KebC084585@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: a6ad662abfd9 - stable/13 - libsysdecode: Decode linux_clone syscall flags List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: a6ad662abfd92ee9eb6ce24b21192fef8cea5f70 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=a6ad662abfd92ee9eb6ce24b21192fef8cea5f70 commit a6ad662abfd92ee9eb6ce24b21192fef8cea5f70 Author: Dmitry Chagin AuthorDate: 2023-05-26 16:32:20 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:00 +0000 libsysdecode: Decode linux_clone syscall flags Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40150 MFC after: 1 week (cherry picked from commit bd35e83bcf03a3650b5574f81201e8e55af4cdd7) --- lib/libsysdecode/linux.c | 18 ++++++++++++++++++ lib/libsysdecode/mklinuxtables | 1 + lib/libsysdecode/sysdecode.h | 1 + 3 files changed, 20 insertions(+) diff --git a/lib/libsysdecode/linux.c b/lib/libsysdecode/linux.c index 4b6aab478a33..44de91ef66cb 100644 --- a/lib/libsysdecode/linux.c +++ b/lib/libsysdecode/linux.c @@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #define X(a,b) { a, #b }, @@ -240,3 +241,20 @@ sysdecode_linux_open_flags(FILE *fp, int flags, int *rem) *rem = val | mode; return (printed); } + +bool +sysdecode_linux_clone_flags(FILE *fp, int flags, int *rem) +{ + uintmax_t val; + bool printed; + int sig; + + sig = flags & LINUX_CSIGNAL; + if (sig != 0) + fprintf(fp, "(%s)", sysdecode_linux_signal(sig)); + val = (unsigned)flags & ~LINUX_CSIGNAL; + print_mask_part(fp, cloneflags, &val, &printed); + if (rem != NULL) + *rem = val; + return (printed); +} diff --git a/lib/libsysdecode/mklinuxtables b/lib/libsysdecode/mklinuxtables index eebdadd03613..70490321cc68 100644 --- a/lib/libsysdecode/mklinuxtables +++ b/lib/libsysdecode/mklinuxtables @@ -94,6 +94,7 @@ gen_table "clockflags" "LINUX_TIMER_[A-Z_]+[[:space:]]+0x[0-9]+" "compat gen_table "clockcpuids" "LINUX_CPUCLOCK_[A-Z_]+[[:space:]]+[0-9]+" "compat/linux/linux_time.h" "_MASK|_MAX" gen_table "openflags" "LINUX_O_[A-Z_]+[[:space:]]+[0-9]+" "compat/linux/linux_file.h" "O_RDONLY|O_RDWR|O_WRONLY|O_ACCMODE" gen_table "sigprocmaskhow" "LINUX_SIG_[A-Z]+[[:space:]]+[0-9]+" "compat/linux/linux.h" +gen_table "cloneflags" "LINUX_CLONE_[A-Z_]+[[:space:]]+[[:alnum:]]+" "compat/linux/linux_fork.h" "LINUX_CLONE_LEGACY_FLAGS|LINUX_CLONE_CLEAR_SIGHAND|LINUX_CLONE_INTO_CGROUP|LINUX_CLONE_NEWTIME" # Generate a .depend file for our output file if [ -n "$output_file" ]; then diff --git a/lib/libsysdecode/sysdecode.h b/lib/libsysdecode/sysdecode.h index 4ea2989ca185..15bc404dc986 100644 --- a/lib/libsysdecode/sysdecode.h +++ b/lib/libsysdecode/sysdecode.h @@ -144,6 +144,7 @@ bool sysdecode_shmflags(FILE *_fp, int _flags, int *_rem); bool sysdecode_linux_atflags(FILE *_fp, int _flag, int *_rem); void sysdecode_linux_clockid(FILE *_fp, clockid_t _which); bool sysdecode_linux_clock_flags(FILE *_fp, int _flags, int *_rem); +bool sysdecode_linux_clone_flags(FILE *_fp, int _flags, int *_rem); bool sysdecode_linux_open_flags(FILE *_fp, int _flags, int *_rem); const char *sysdecode_linux_signal(int _sig); const char *sysdecode_linux_sigprocmask_how(int _how); From nobody Thu Jun 29 08:20:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGd4J3cz4kp0c; Thu, 29 Jun 2023 08:20: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 4QsBGd3Ls7z3w4Z; Thu, 29 Jun 2023 08:20:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026841; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QUmn4/4lFKiI8iazS0oBYDhpRzs+K/YXs5J6Bbv5VHY=; b=xqxmrzIdsXvOF7RiP22QGqobAQ7uCOkeoN0y2H/IGx4YgHzFbQNWJTXHDonnha2lCMPN4X C/+uGbDFmhaU8IWUpIgZHD6UkXSyCEy2v1HYYCR47kJS4MOUj0O6ko8ePKzu289f0c8KVr uPPPj2zQF76OvAXcnLA7280cas3Rfq7PrFx6yVPO5vYvjKuOzbyi2sUcAGAvqSJoeGyyoA VwdEqUskGV2itLMiQwk9sIJBHxcX4UJJOA/HZVHuMyxkoi1UCSayLTSU2ri1D8faZ6Z7qe fGuCsptKKC0dBhGWHDRScqDzmCCOSuwk2Skby0HeTU9FlrAiIS1DXK1cRq/Lcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026841; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QUmn4/4lFKiI8iazS0oBYDhpRzs+K/YXs5J6Bbv5VHY=; b=GWCCQgQJtQnscCdtjls1P3Yyt9JUkDEcjkelLijJ22mRpYHC/1yaqrwTmO/zk6KXgxiP97 dDhjPBnvXM+sozkCEwTSUG0Y+dqQJ9XnbDQx0osAK4QtFm6V9kgcJE2HQnmojaBX7wIzyG tbFBBMocRndl1MNNwyzhbEgbVa6/Jl9/qvv3XQ36TLCdA2jF66Dxz5WA1VJ2Sa3wve/XQI mKtixF67NHK84ZKPMF0TyC3zwpjsoQwiPuTWbwQ3kZHO+evm5+bGuUa3/P1epQB4Y2v8B6 4CdOU7Htt5acflHbr5bZqFoKMOMZjC2lumOVpjdkl9KR4sSwAUiO/CEUPDs2LA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026841; a=rsa-sha256; cv=none; b=g5JwcERnICEqUcd2WGL+Yg+c9IaP24L2EdIPpS3h4FkGxoOm0d4YOFNP1U2y95sWisvbWl a22sWffBivSdVJd8g1ogO8ixY23KpRKWHAysQ09XR2pZq6YIYTvczqC8nErLBAS5NjCblo 6N19AXmHX+1JOkM2CFR9mmcSW9MQQvDQ99I6obDvJzXAni/AwGmIhhS/EOwSY14nM6Uz7Q hW/tLht3bnQ4BDMtvIzi7hiZ3VuEzbOF/WxEA4h5+c2jM8Qvy+pX9hY2Sk/XFFxYgJ3puw Df+Ls2dLG81r7C/rXolIaEsrwrpmqtj9LE8TLHXBA5lMwCNTuW+ne0deMZmi2g== 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 4QsBGd2PMwz185N; Thu, 29 Jun 2023 08:20:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KfRL084611; Thu, 29 Jun 2023 08:20:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Kf0r084610; Thu, 29 Jun 2023 08:20:41 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:41 GMT Message-Id: <202306290820.35T8Kf0r084610@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 5b81d9f7f02e - stable/13 - kdump: Decode linux_clone syscall flags List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 5b81d9f7f02ef91a8708fd9502d9bc2d3371638a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=5b81d9f7f02ef91a8708fd9502d9bc2d3371638a commit 5b81d9f7f02ef91a8708fd9502d9bc2d3371638a Author: Dmitry Chagin AuthorDate: 2023-05-26 16:34:33 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:00 +0000 kdump: Decode linux_clone syscall flags Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40151 MFC after: 1 week (cherry picked from commit 829f3d7d2640490ea3dc4180aa96041f440fd743) --- usr.bin/kdump/linux.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/usr.bin/kdump/linux.c b/usr.bin/kdump/linux.c index 109f7b84e622..57f89f9e2faf 100644 --- a/usr.bin/kdump/linux.c +++ b/usr.bin/kdump/linux.c @@ -192,6 +192,13 @@ ktrsyscall_linux(struct ktr_syscall *ktr, register_t **resip, ip++; narg--; break; + case LINUX_SYS_linux_clone: + putchar('('); + print_mask_arg(sysdecode_linux_clone_flags, *ip); + ip++; + narg--; + c = ','; + break; case LINUX_SYS_linux_kill: case LINUX_SYS_linux_tkill: case LINUX_SYS_linux_rt_sigqueueinfo: @@ -394,6 +401,13 @@ ktrsyscall_linux32(struct ktr_syscall *ktr, register_t **resip, ip++; narg--; break; + case LINUX32_SYS_linux_clone: + putchar('('); + print_mask_arg(sysdecode_linux_clone_flags, *ip); + ip++; + narg--; + c = ','; + break; case LINUX32_SYS_linux_kill: case LINUX32_SYS_linux_tkill: case LINUX32_SYS_linux_rt_sigqueueinfo: From nobody Thu Jun 29 08:20:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGf5ZYvz4knvX; Thu, 29 Jun 2023 08:20: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 4QsBGf4LsBz3w58; Thu, 29 Jun 2023 08:20:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026842; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uzabykX2n+qOJR5r6koFgoOSaL50ezX2b5I+/PWhCCI=; b=EDZJ5lRxD8GTlFtNgkMNBlDnJMf0nZi6tF12VDT9EnJFgHq/5i41hKg/Y7LUNj6OXBk7Ps 8wK+ccUGLLR+ttRqE9YY7jomvojjOP/COx3MiFai+nXOr6P2GlUMbMyS0CuwqiEO2Gi+gT rrzBCpB8HmHGmt4yQFYtopBDhGoMOWb6mov+fgYWD3Iv7vAEdVXsgKOAunwN4RZNzyJcZK n4MzjkL7bq8DfOI80kcWTXOadoJfatDerLoZIsaip/QJKD4GNur5UTqr1CuB0Rt+aqxypi olRYboyA5jJLxY0edzoKOib9yYY0CmK9yGReqdt7kCQVPJfzEna3CRhDQHxvyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026842; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uzabykX2n+qOJR5r6koFgoOSaL50ezX2b5I+/PWhCCI=; b=hNXchIhypk40yPd6VCrOYuhYZmYjnOfWgkOuKdYPSy9aZv7o0WZhy2ksOpm85lksx/4th3 n8D7BW+mKvMEXr2xBX+9aldzy1zSAmg+k2WnKXM4fVNiHkA/FgodfKbIOi9IlcE2wdxYrl flOtiA0WSJvkk+gjpp8fJMsg7rG+fuYaQWxhYscQCHLqQjASV+kQoDa6CFcNvEyr4Qjk+L UOhUl1L5S+kO75XqxRh7L49bwrX843pdmuGeiIV9TOez3c/rPsjOHBrcVvZUa1+Z5BDLYn /JFzIWArYuiEJtIORbm0ccuZVa02RXGMn4o23fl5u8C+ydv7mpi4phQm4jxGjQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026842; a=rsa-sha256; cv=none; b=saEZ9r5xp8UX/3PPbdbAtTIBn1+AHMuRXP1GQGsFGg00J0wuDsiHjqd5zYaV1EQThtzukA Xd0hisr7qO+GXR5uwOwKNed73ecqn4kHIhql8x90AcktxLBsMb+vqzFRdP52/8myYjYSg7 N3TylWFSXZ79Y+A3TggDP0tyYbiE3KRqVtOH6oKQmCu7kkD+edTh6/jpt2tX2P+fUPo01w GnFGjCj0e3aP1vyHI9qgGofi3b6iN9i5LdQRez++8TivNbqKRbzyTefzGASoBMGDpeAf5k J1Oxkq8nCVULdn3RaUfCwnVxJtvDGGTrcK/jXfM0KhQl68cuOG58qpsSi4Qvlw== 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 4QsBGf3FjYz17sm; Thu, 29 Jun 2023 08:20:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KgKI084630; Thu, 29 Jun 2023 08:20:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KgMq084629; Thu, 29 Jun 2023 08:20:42 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:42 GMT Message-Id: <202306290820.35T8KgMq084629@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 8bfdf839270b - stable/13 - kdump: Add a facility to print numbers in decimal format always List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 8bfdf839270b3c9be013ec4b51ef8fdc1fe80636 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=8bfdf839270b3c9be013ec4b51ef8fdc1fe80636 commit 8bfdf839270b3c9be013ec4b51ef8fdc1fe80636 Author: Dmitry Chagin AuthorDate: 2023-05-26 16:35:08 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:00 +0000 kdump: Add a facility to print numbers in decimal format always To help grepping kdump output by pid or tid it makes sence to print some numbers in decimal format always. Eg, process or thread identifier at least, as they already printed in decimal format. Switch to print pid/tid arguments of some Linux signal related syscalls in decimal format. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D40099 MFC after: 1 week (cherry picked from commit c2c9ac88c2bb62423ae91beeee4083b596922adc) --- usr.bin/kdump/kdump.h | 13 +++++++++---- usr.bin/kdump/linux.c | 12 ++++++------ 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/usr.bin/kdump/kdump.h b/usr.bin/kdump/kdump.h index f5b9b85f9779..1d3e9be2b6e0 100644 --- a/usr.bin/kdump/kdump.h +++ b/usr.bin/kdump/kdump.h @@ -34,7 +34,7 @@ extern bool decimal, fancy, resolv; -#define print_number64(first,i,n,c) do { \ +#define _print_number64(first,i,n,c,d) do { \ uint64_t __v; \ \ if (quad_align && (((ptrdiff_t)((i) - (first))) & 1) == 1) { \ @@ -46,7 +46,7 @@ extern bool decimal, fancy, resolv; ((uint64_t)(uint32_t)(i)[1]) << 32; \ else \ __v = (uint64_t)*(i); \ - if (decimal) \ + if (d) \ printf("%c%jd", (c), (intmax_t)__v); \ else \ printf("%c%#jx", (c), (uintmax_t)__v); \ @@ -55,8 +55,8 @@ extern bool decimal, fancy, resolv; (c) = ','; \ } while (0) -#define print_number(i,n,c) do { \ - if (decimal) \ +#define _print_number(i,n,c,d) do { \ + if (d) \ printf("%c%jd", c, (intmax_t)*i); \ else \ printf("%c%#jx", c, (uintmax_t)(u_register_t)*i); \ @@ -65,6 +65,11 @@ extern bool decimal, fancy, resolv; c = ','; \ } while (0) +#define print_number(i,n,c) _print_number(i,n,c,decimal) +#define print_decimal_number(i,n,c) _print_number(i,n,c,true) +#define print_number64(first,i,n,c) _print_number64(first,i,n,c,decimal) +#define print_decimal_number64(first,i,n,c) _print_number64(first,i,n,c,true) + void decode_filemode(int value); void print_integer_arg(const char *(*decoder)(int), int value); void print_integer_arg_valid(const char *(*decoder)(int), int value); diff --git a/usr.bin/kdump/linux.c b/usr.bin/kdump/linux.c index 57f89f9e2faf..df400f554c23 100644 --- a/usr.bin/kdump/linux.c +++ b/usr.bin/kdump/linux.c @@ -202,7 +202,7 @@ ktrsyscall_linux(struct ktr_syscall *ktr, register_t **resip, case LINUX_SYS_linux_kill: case LINUX_SYS_linux_tkill: case LINUX_SYS_linux_rt_sigqueueinfo: - print_number(ip, narg, c); + print_decimal_number(ip, narg, c); putchar(','); print_linux_signal(*ip); ip++; @@ -210,8 +210,8 @@ ktrsyscall_linux(struct ktr_syscall *ktr, register_t **resip, break; case LINUX_SYS_linux_tgkill: case LINUX_SYS_linux_rt_tgsigqueueinfo: - print_number(ip, narg, c); - print_number(ip, narg, c); + print_decimal_number(ip, narg, c); + print_decimal_number(ip, narg, c); putchar(','); print_linux_signal(*ip); ip++; @@ -411,7 +411,7 @@ ktrsyscall_linux32(struct ktr_syscall *ktr, register_t **resip, case LINUX32_SYS_linux_kill: case LINUX32_SYS_linux_tkill: case LINUX32_SYS_linux_rt_sigqueueinfo: - print_number(ip, narg, c); + print_decimal_number(ip, narg, c); putchar(','); print_linux_signal(*ip); ip++; @@ -419,8 +419,8 @@ ktrsyscall_linux32(struct ktr_syscall *ktr, register_t **resip, break; case LINUX32_SYS_linux_tgkill: case LINUX32_SYS_linux_rt_tgsigqueueinfo: - print_number(ip, narg, c); - print_number(ip, narg, c); + print_decimal_number(ip, narg, c); + print_decimal_number(ip, narg, c); putchar(','); print_linux_signal(*ip); ip++; From nobody Thu Jun 29 08:20:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGh2tj9z4knkj; Thu, 29 Jun 2023 08:20:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QsBGg5jtYz3w0y; Thu, 29 Jun 2023 08:20:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026843; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rMVeiHLnpYjWr1tAUg0EzvD1Wv0poQPEscQfj2hMT1o=; b=oREiaIgWoFOvYU90HCSpO9FNWO8oFWiQCSRGez0nn/hBoKiSc0u8tJUqZiiH9Tyt8gyx62 Ffhqdy0vuQjVl5iYzzWV0ieEYuSTrw9kZZ9UzBRsJhuj28zMptRekgP48iGaDWLGZgBTb2 frRO3UwJORO5YOwXHGuEvH7c213An1w9RLeblqjyg9S4RKkbd2zGZDTlC6fOKX/TA46/CZ 8GcHbq2A34qN86DJDmFhiGDIpR6YrMPDXWQLnFA41HYNP0FggAgNqcUse9+PmI0uqqrLjm UJNmNcn6L1Fx+McWJHzP4W3VkPkX2jCzTpL3QGkzxriU2dXT9P9TkoIL9nX6Dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026843; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rMVeiHLnpYjWr1tAUg0EzvD1Wv0poQPEscQfj2hMT1o=; b=sGqA0aVGAE/r+tR+SQ600SlRVJ4R/LWHEIqLa2/Ds+izJCjU9zFtOH/gPQvS6574EvJVM5 m4uyDu2c6Ujy4SFY0rQ55qFqXTP9NN3fNwmKVm5LGaEVQvmhS1WhEzHE7xWl4M4s/U+6Hg ++CV5cTs4UC6bC9B707NIFb6GNiypHr59KtN4XojrBURPCjAtMf0SUgCke30cyx/vmYc2B CM1w2R1S6fGA39j36QFIyytvUm2FrCNREdroFZHzOTGIkaaDeJyCyz6ABxJxEA3GHBDDQb fWcWRDFTKmYUJ47tDDy7TSusDBKOrU3gBgmfB5UxwHsMpvHTulXeCYu4RQt1LQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026843; a=rsa-sha256; cv=none; b=vK0cQ4pdW7T50BTkRIJNczc+Km0amOK85/jJYxyveCCsBoTXE7PXAnotNyKTefNDJtsKyw 5gHODxoYg3qsFxDGGbr7XMeXnwh9g+DA2ttzny1O2mTaYuE3+0e3u60/zmeGRatXfuRohp NvnC1TxN7xV8pvWvq2if98FpA5knnSHvwUGk+20Z0NyGHrbD5YLuTntVAkohqk8ElYAcsv U7dzLlps33+3SoB+LNhrb1M4HC37aVVOrpT+LQk0ch2LISS7SZinDKVbQBgBn6xn3Ba8M4 rT0Ogm6c9f57QbVaLRDisgJu87Hn3ZJBXTn3I7nMdh3TAzJjTlEN9OZA0Hi7sg== 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 4QsBGg48v3z17sp; Thu, 29 Jun 2023 08:20:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KhcO084649; Thu, 29 Jun 2023 08:20:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Kh1Y084648; Thu, 29 Jun 2023 08:20:43 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:43 GMT Message-Id: <202306290820.35T8Kh1Y084648@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: d56be4992dc7 - stable/13 - linux(4): Drop a weird comment from linux_set_syscall_retval on amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: d56be4992dc753bc08c10223996501be46aceb64 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=d56be4992dc753bc08c10223996501be46aceb64 commit d56be4992dc753bc08c10223996501be46aceb64 Author: Dmitry Chagin AuthorDate: 2023-05-28 14:05:44 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:01 +0000 linux(4): Drop a weird comment from linux_set_syscall_retval on amd64 I agree, it would be great to avoid PCB_FULL_IRET, however we should follow Linux system call ABI. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D40152 MFC after: 1 month (cherry picked from commit a99b890ecd26131e0c91e5693b55f5700c40a847) --- sys/amd64/linux/linux_sysvec.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 5e7bc96d0148..f43e7d3a02bc 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -191,9 +191,6 @@ linux_set_syscall_retval(struct thread *td, int error) * and %r11 values are not preserved across the syscall. * Require full context restore to get all registers except * those two restored at return to usermode. - * - * XXX: Would be great to be able to avoid PCB_FULL_IRET - * for the error == 0 case. */ set_pcb_flags(td->td_pcb, PCB_FULL_IRET); } From nobody Thu Jun 29 08:20:44 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGj0r6Jz4knvd; Thu, 29 Jun 2023 08:20: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 4QsBGh5ymMz3w16; Thu, 29 Jun 2023 08:20:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026844; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ewWEfFn2eid9Dq9seBvcIX8cOHBpSA3i8XWQD7GyqE0=; b=YvUQGHp+i7FlJoavRtS4pVijENuiw6xtaLoQsLSvzZyqjlxl7g3olmfPMz0tyPcRJNgDot WZ7QAoze5FeHTFBadrk5+Fu8aDTxWIExx/74U+ZCwpniuySxNW4oI8m/hBLeNzstC7eChT RM/vJCyBBoz+F3U49U08eS0Ee11ZjYVoViPp3c3k3U2JjcSSrgdnCDPqZdCVU5M3kga3ZJ 0Im4uEs0uYzvGLGpdzry4XqlVncqU5I0jIU7UJQxz5FW0QnshTMBr72gMrld/jXglBzhgL /FJTXwbP2qo7Y7EY/WiVt/WTgBvj1LjftdaPqT67Wzi0EJu/e0QIUKX966UWoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026844; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ewWEfFn2eid9Dq9seBvcIX8cOHBpSA3i8XWQD7GyqE0=; b=YbWFzbkKSNwdV97VnTHi8A1qfewqfvq32KtLdo3mQXwImqTtllzxvR1v6SBg+YFuZcEugo sSblCrjB3hjB5hHRCTMEvbArX4Sq6tox07Cz3GSDhrRxQiy85+5p3/UHlB+N8i/Nzl6AHF DNLqOfkvncvOAxTDUNEpJ4LBGrxFNQ+YzqXfqAbphzelZiz+Cqi8tzw/Y6T2N3z5uuHVCK S0ZsCpTJIot516H7Iz7UiWek+W6668ODySyydap+tmTw9aN8IVKYJh1gghKhMlZVkCrpWA D8oqRG6VZj2lBjhP3EljnNNNFg5HdoMa/SxvGnpWx3q8hxX7m9mAdKMe4odLow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026844; a=rsa-sha256; cv=none; b=NeNCJQStzAZH/JCZP4u1Z9+MnD8nT4UDOryphkYB6jjxlFHoV1SvQuafv9GPtsc4rpu4E8 8/yB6khe+Jdwej4p7QM37ncYR89v4HSYDbXR4cu8hyi7vlZWY99aPoSqia6YHjkJqnZxPF Ew9A6bRixyQ7koZVNsBN+oxWEYphBumvjKeQfRpMc8TEWsipyG/RWBFBzfA3h2ZGdO8oKO ow1jiH+nztLEYz5aGvxYbsnvUTa1fSDvoSYGWssyW8DkDM5EPirPGokmIZzFKDL0mxXX9j uoBapWdLvdeZFEjI/LrsIuHSPnvWT/J7wjyqkGAnlYmz6jjVhXvyV8Ea1ggTcQ== 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 4QsBGh54lQz17q8; Thu, 29 Jun 2023 08:20:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KiGU084668; Thu, 29 Jun 2023 08:20:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KiTM084667; Thu, 29 Jun 2023 08:20:44 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:44 GMT Message-Id: <202306290820.35T8KiTM084667@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: d0117d06e9e3 - stable/13 - linux(4): Add a comment explaining registers at syscall entry point on amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: d0117d06e9e3588a902119b7a011c3613ef4545c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=d0117d06e9e3588a902119b7a011c3613ef4545c commit d0117d06e9e3588a902119b7a011c3613ef4545c Author: Dmitry Chagin AuthorDate: 2023-05-28 14:06:05 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:01 +0000 linux(4): Add a comment explaining registers at syscall entry point on amd64 Differential Revision: https://reviews.freebsd.org/D40153 MFC after: 1 month (cherry picked from commit a463dd810851fdae5efcb8f8205d742ebf221bc8) --- sys/amd64/linux/linux_sysvec.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index f43e7d3a02bc..3681dc881485 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -124,6 +124,23 @@ LINUX_VDSO_SYM_INTPTR(kern_timekeep_base); LINUX_VDSO_SYM_INTPTR(kern_tsc_selector); LINUX_VDSO_SYM_INTPTR(kern_cpu_selector); +/* + * According to the Intel x86 ISA 64-bit syscall + * saves %rip to %rcx and rflags to %r11. Registers on syscall entry: + * %rax system call number + * %rcx return address + * %r11 saved rflags + * %rdi arg1 + * %rsi arg2 + * %rdx arg3 + * %r10 arg4 + * %r8 arg5 + * %r9 arg6 + * + * Then FreeBSD fast_syscall() move registers: + * %rcx -> trapframe.tf_rip + * %r10 -> trapframe.tf_rcx + */ static int linux_fetch_syscall_args(struct thread *td) { From nobody Thu Jun 29 08:20:45 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGk0XlWz4knf2; Thu, 29 Jun 2023 08: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 4QsBGj6vDFz3wJk; Thu, 29 Jun 2023 08:20:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Yx/hVHcc/HDaZe0CcUc3dEWtJjwwNJq2MwSzqGMH5E=; b=YlYvJgXxvzOzNtpMLN+XXgpFsSzep+BtL6aF427l3w58YmLEaogG2zf8Bk6VvRCydIPoyZ uBXOOG1QFqRIilsz79uC0JTfa1D9kq4if1H8sKveRQkO567rjjQ/3D54pcBC8EBOie+U1F k8IvP7Dwkch4VCRYa0U4c1+vP9ehf32veZIpa+W5yV75HrRHaknt39U5vT1UX9G0/4P6FI X/gv/wgG5l3sV4lQuVl25ZiSjkkUBFVjoR2Ibr8yxFE3PZVn4ANvSDmL5+oxHFwgORJV/i jqD/svwo0/wRCTjdHyjXFiNWg6gGp0yLa7NGT1N0cbK9utHxBW1bM7q4FUNDeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Yx/hVHcc/HDaZe0CcUc3dEWtJjwwNJq2MwSzqGMH5E=; b=HNQhcsJDxZMwEjsPs4bCXgEpf+kh6Pb0IPqVbaSAWwffefB1nytRw0cyQoml+T4UXi2zZc nVWPGX4EihpKet8bWFYl0E/F+sYFxdmYh934Xnn/Rll8AsI28+xDB9wAu0DTJXLksAc08V fNu1av7ZxCKhHGcyHY4tm3hlJFRjqEQRuPV9pSiyZbioR9uSWBOuKfUuLZoz4JWEwHyh+E Z6s5dmyYTlrV+Nk1Ktsm18e/j4IxtWn8zFTxuHLX7+3yJ1fo70oU8CUg/5s+qIM4G8vrkV F/YSXfl3UPv4X5WObW8iqnYieUBsTh9y1xxHMvkTqbeh5tkI3NIUjvVOkxbObg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026846; a=rsa-sha256; cv=none; b=JxwvQnoSS8A3F2Uc4wECbdmA1PFd3NSGk+335ZUpfscLEaAMFjAecXVOAFlftg53biIAaw lHIruQn33FmAFyWrL1Fo42JUKYB9CgEsupgKPjgB5kBcAlRZq4Q7104DjNLNyIYfzra9th 5rjO2fUz5R7QhneI8R5fHzaNSgs3AGDltke59hQCEE2/T+JJiMeY9LU88lf9T+5kG0zP9w PDqqt6FPq5ZkKuOwzEhKqaVkUwJ0i7pDWP/R+oeSwAKzhNn51qJZNu7E+ACfXhg+MlDH/w VAkrP4cbOgvRZieQd+wsHO40EHNQ2lw3s3Q8Xqgclmx/CAhmYFY24Fb9pAdO+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 4QsBGj5pCTz17q9; Thu, 29 Jun 2023 08:20:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KjQi085284; Thu, 29 Jun 2023 08:20:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KjCs085269; Thu, 29 Jun 2023 08:20:45 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:45 GMT Message-Id: <202306290820.35T8KjCs085269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 053cbecd29f8 - stable/13 - linux(4): Simplify %r10 restoring on amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 053cbecd29f8f167628f5316d064557323af6ee8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=053cbecd29f8f167628f5316d064557323af6ee8 commit 053cbecd29f8f167628f5316d064557323af6ee8 Author: Dmitry Chagin AuthorDate: 2023-05-28 14:06:23 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:01 +0000 linux(4): Simplify %r10 restoring on amd64 Restore %r10 at system call entry to avoid doing this multiply times. Differential Revision: https://reviews.freebsd.org/D40154 MFC after: 1 month (cherry picked from commit 185bd9fa3096595350ebe7bcd7e0ddcf17773030) --- sys/amd64/linux/linux_machdep.c | 6 ------ sys/amd64/linux/linux_sysvec.c | 6 +++--- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/sys/amd64/linux/linux_machdep.c b/sys/amd64/linux/linux_machdep.c index 6ac0ab0cd3d7..155ea918cd0a 100644 --- a/sys/amd64/linux/linux_machdep.c +++ b/sys/amd64/linux/linux_machdep.c @@ -350,12 +350,6 @@ linux_ptrace_getregs_machdep(struct thread *td, pid_t pid, linux_msg(td, "PT_LWPINFO failed with error %d", error); return (error); } - if ((lwpinfo.pl_flags & PL_FLAG_SCE) != 0) { - /* - * Undo the mangling done in exception.S:fast_syscall_common(). - */ - l_regset->r10 = l_regset->rcx; - } if ((lwpinfo.pl_flags & (PL_FLAG_SCE | PL_FLAG_SCX)) != 0) { /* * In Linux, the syscall number - passed to the syscall diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 3681dc881485..fea1e274ac95 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -166,6 +166,9 @@ linux_fetch_syscall_args(struct thread *td) else sa->callp = &p->p_sysent->sv_table[sa->code]; + /* Restore r10 earlier to avoid doing this multiply times. */ + frame->tf_r10 = frame->tf_rcx; + td->td_retval[0] = 0; return (0); } @@ -180,7 +183,6 @@ linux_set_syscall_retval(struct thread *td, int error) switch (error) { case 0: frame->tf_rax = td->td_retval[0]; - frame->tf_r10 = frame->tf_rcx; break; case ERESTART: @@ -191,7 +193,6 @@ linux_set_syscall_retval(struct thread *td, int error) * */ frame->tf_rip -= frame->tf_err; - frame->tf_r10 = frame->tf_rcx; break; case EJUSTRETURN: @@ -199,7 +200,6 @@ linux_set_syscall_retval(struct thread *td, int error) default: frame->tf_rax = bsd_to_linux_errno(error); - frame->tf_r10 = frame->tf_rcx; break; } From nobody Thu Jun 29 08:20:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGl2vsZz4knsl; Thu, 29 Jun 2023 08: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 4QsBGl05pLz3w3s; Thu, 29 Jun 2023 08: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=1688026847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LVEOLmii+PN6j20OycVOLtWt68pXHfG0dFWkXNTwTUM=; b=jnPe2HvvOuf+kUGwZOCmIhmBRmL4lZZ76WfpF0tXqWnQgUKt13QMu6GpvwUs0DO44ZQhYC dHFMH83dMmIm275NKPv8kZGmf2TcV+LWARw2FV+mIDxNoRxmF4c/uq/pq/aAW940nLGUhr 8bgxk+aWw3zBMwQuvSlyFGEsqjDhbtK3p0sEOvhdDm4vQHzDcfKIQidgXpCTwu3RqiuMvm M+KxY6Ws6l0gy+lC14nkobyOeavlEnom+M/k5oKxV+klYwOC3DPplkTmDp1i1J6SmZ/SX6 PV3nHtDI/0KyCrN8ckobhWIhsyLEFnc1Oy3+3MJyLhIvnd/gpexlwD9GQ+np9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LVEOLmii+PN6j20OycVOLtWt68pXHfG0dFWkXNTwTUM=; b=X1aU2x0lX5bbB6p1hev7Wj7o7iumP1a0csUMEX5M7+VXWEWpwAsqqBD6nfls6r82/JPz4Z tF9qTR8XKE72/5AinPx1UXNcAIhyEODRchd3OrNe6xxb5zG/36AGRM52RW3Z4cq4jTXFrG gMnrEVPF8zSWOuEZLQyB4G1+q6NmQ5GmjvXEYUhAjR13YQSaQfazfH4JjmltDH3Jmtlx+N mhu7/ciu5zZJDUw/CTtqApK9VMUBFggu2ZwknFFYwg6EiBUHQkWtMtArirN9z/PEydXUHc hiw0dg1R5LX+2/LKpX7dHLlQo3C1JSo4ii25WssKYneXZiYxKxcchf8IB7+S1g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026847; a=rsa-sha256; cv=none; b=qqhtP+wr8Af8lL7BMY14U6HJ4j/KqaoTJv6xf3Ar6Kxc3az8Ni86GcQE6SL6gvJGjx3Ckj cs+epHYDf0zGcnu++36nmKGlkejkU0Jb/TibdWQLzhnn7yqolsuPBfXL5ne5FOfBS/2Y/D lG73DdNPIY87bD4tIZgasR0boWigY1H7Z8jpIhNsqdpFZw3dyBxBfGwDH8w7tcz2e7TF5/ iujyBul719EssijIHbIC2p5iieojMEuYu+xlDS78+ZO9JJAQs+iuiT5z77wVEAjAOmW/6m 6HMWDfGRN46/xUNl71hNEumVFh3FFmUOrwzIRP5IZ/jW2C7lbTJH26LmviTUzQ== 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 4QsBGk6Gs0z17NW; Thu, 29 Jun 2023 08:20:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8Kk9w085708; Thu, 29 Jun 2023 08:20:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KkAV085707; Thu, 29 Jun 2023 08:20:46 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:46 GMT Message-Id: <202306290820.35T8KkAV085707@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: fa3d164dd9ef - stable/13 - linux(4): Preserve %rcx (return address) like a Linux do List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: fa3d164dd9ef6fadac6ed4f747ffb09657c5ae76 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=fa3d164dd9ef6fadac6ed4f747ffb09657c5ae76 commit fa3d164dd9ef6fadac6ed4f747ffb09657c5ae76 Author: Dmitry Chagin AuthorDate: 2023-05-28 14:06:47 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:02 +0000 linux(4): Preserve %rcx (return address) like a Linux do Perhaps, this does not makes much sense as destroyng %rcx declared by the x86_64 Linux syscall ABI. However,: a) if we get a signal while we are in the kernel, we should restore tf_rcx when preparing machine context for signal handlers. b) the Linux world is strange, someone can depend on %rcx value after syscall, something like go. Differential Revision: https://reviews.freebsd.org/D40155 MFC after: 1 month (cherry picked from commit 037b60fb0fbcb2dd6b6cbb632b05a2939ff4ff29) --- sys/amd64/linux/linux_sysvec.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index fea1e274ac95..53eda1cbc7c0 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -168,6 +168,8 @@ linux_fetch_syscall_args(struct thread *td) /* Restore r10 earlier to avoid doing this multiply times. */ frame->tf_r10 = frame->tf_rcx; + /* Restore %rcx for machine context. */ + frame->tf_rcx = frame->tf_rip; td->td_retval[0] = 0; return (0); From nobody Thu Jun 29 08:20:47 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGm4xLRz4kp13; Thu, 29 Jun 2023 08:20: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 4QsBGm2KLdz3wKK; Thu, 29 Jun 2023 08:20:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8jW/0WaCCD0J68carQC8I7SBeg7LAqG5PbLqvMBS1hI=; b=qFxH3+aXVeB2Fe+h2/rCQnIUViKOFixVIeSFEPl0jc8yGuL6t5x0intB2O+GJbH166Nxr2 ug/E4AIFiIdTnVk2lcULc/tWJE9ldCsUXwDLVvVJBL1pv6F7guRwnwKZHpBG6e18zqlYMk cXteuggBzFQ5Hi7zc7/4irkLA78XBMmfVE70+HlwwEY1UwC1JVwsvv0LKclkO4q/jjbEbX ZmebW/U4OGa0FMQZyiyf/rq3SQWek/f+4dRCc2ecbw28eiqTmqQvCkdVWnclV0t+ijVzI8 YUkY0TYzH27QLvsXrXatbRbf/LspNc/b8n5qCHR10h1AozL3657nqkcvHyF6pA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8jW/0WaCCD0J68carQC8I7SBeg7LAqG5PbLqvMBS1hI=; b=MA4twU5/a+V6ut0zFOLSBQh5Owqac1ALdGcoAH5DWjbPvtK4SJem2CLmEmXmuP+op1ykAz 8DSsfN8vy8mwkrsiI/rJXqHbACQ6FAqhbquZl/M0LVOldjhZ/EdHIW/i/lJe2VKUKhy9Yz WzuW4CEI3BE/pq1seeYpQNYDdfoNEFQVN4D5RI+HUawiMZJbz7GishWgxXTu63mM4e8ZBb 4fVbQ1HpxMJ+GtF+uhaF7PqcZkp3sUPEBQy1kA8iHgF1SmXqd+7gGmRjAFf/n7awi0ylRl mo2GrnH0Gkh67boHrgLau+RVevRUGVfvdnT5UbMqr1I7O/cJu6fsd2LiWZotXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026848; a=rsa-sha256; cv=none; b=CD/G/wovp94bI9qH9F00FbxZd+UfK09cCKfIV6K/tQfsltf4nTlmboFphlv2MWxekzeUDB ej72rs6px5gY14f8Q2rJJ4Rvvux2RmzAemSsCRLsuksuuW4QYfkk6Em4NI8pkM/61WEysT IUCTnojb91M6czzk26L1EgpKJYVulX7n8dPNTFva2Gca6qsXynXkFAQNwCmSjaHs/+vuM3 Oq/yEChVx/VhdIPWQzKc34s0PQk1QcpKGw5cCU7bKiYleH25Wszq0VIsuwJBY4b1SzWyp0 RwU+PMqJM1M8rJUKo/Um2Z5byO/X7H42BLeAmZERYERWZQ70MFKpyKhb/ZGMkw== 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 4QsBGm04Ytz17NX; Thu, 29 Jun 2023 08:20:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KlbD085727; Thu, 29 Jun 2023 08:20:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Kl69085726; Thu, 29 Jun 2023 08:20:47 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:47 GMT Message-Id: <202306290820.35T8Kl69085726@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 2df4032d7e8c - stable/13 - linux(4): Fix stack unwinding across signal frame on x86_64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 2df4032d7e8c5bdd2a0f498771787fae6b358811 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=2df4032d7e8c5bdd2a0f498771787fae6b358811 commit 2df4032d7e8c5bdd2a0f498771787fae6b358811 Author: Dmitry Chagin AuthorDate: 2023-05-28 14:07:28 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:02 +0000 linux(4): Fix stack unwinding across signal frame on x86_64 Get rid of using register numbers which is undefined in libunwind on x86_64. Differential Revision: https://reviews.freebsd.org/D40156 MFC after: 1 month (cherry picked from commit 78c2e58fa5b0aa4518d79d8155c0513b9a04f531) --- sys/amd64/linux/linux_locore.asm | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/amd64/linux/linux_locore.asm b/sys/amd64/linux/linux_locore.asm index f26996980007..2d7dff839b6f 100644 --- a/sys/amd64/linux/linux_locore.asm +++ b/sys/amd64/linux/linux_locore.asm @@ -60,8 +60,6 @@ ENTRY(linux_rt_sigcode) .cfi_offset %rax, L_SC_RAX .cfi_offset %rcx, L_SC_RCX .cfi_offset %rip, L_SC_RIP - .cfi_offset 49, L_SC_RFLAGS - .cfi_offset %cs, L_SC_CS .cfi_offset %rsp, L_SC_RSP movq %rsp, %rbx /* rt_sigframe for rt_sigreturn */ From nobody Thu Jun 29 08:20:49 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGn2ZJLz4knl2; Thu, 29 Jun 2023 08:20: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 4QsBGn23fzz3wWB; Thu, 29 Jun 2023 08:20:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZC9mohJWBJ4tmBTMKttWJd+wTZ5f8rybEADC+kjqX9c=; b=D678LgVA228bAo3Obaa46bpXQnk7lZsQ5i5psP/s6sZYH3/4v163lx6LfOAYRfUZvargbZ fUWlSSc8JjXataM400ceugAQkfoKAxOFaLst8yqUIVVUcstuqTcfcMd20y6kNGiEtPMVxg CLlcN3Na2epZQyVpdHHQkmChi3XG5H6PreZJSl+pzpwoz+PUY0ytC65psQrP7IS7xxiU9W qezYtqoF7YBightWp9ZxrwXDExschRWCVUhNsS2l9e6LW9leylQpub7zzIp+YfPHpqxNOz jgb8ulpSyKrzjeSSauUJVe9iXUtd4A7awAsHSD9jnWkr6rHF8gUCSyI5rI8RVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZC9mohJWBJ4tmBTMKttWJd+wTZ5f8rybEADC+kjqX9c=; b=os/BLuy7M1F3EzNB8eEDUxE9yktboIWlaSj7IvQ8SUVQ8B8Mwos7s8mj7xPzjn3i2V070v bYHZYBx7Xh0M38xWv6fnBIoOREk+l85w2im9Al9uqZe7/yPJ1s4v9qI9gjsDE6bPxAnJa7 YXqSxjngQfI8bwAkMhmoLMK9qcGIFE1WhddVHrwxvXF1aAOyqReNfyombKsHn9UQv0cmd0 guCsw3FOYiCRzXcdKvaCkgKJ8ZwTZ8bEZWMO2xlkMvlGrYzFdOnXaSHbjGw92POk+2wY2r gY7l33mICX9eQlJeAfFeq2hDUS+FZISUdpHoM7QsTBfpEbF//CwPnaXQ72GrWg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026849; a=rsa-sha256; cv=none; b=qfmh3ZjVgajvl+E83+zX4ZxNjfsYobJORellOv1yNLtOep6sZdaxgy1ovlE1KMF9/sSXpt dM2ztCIiY890tiwH4ZF7sH7OYl7dvymHc5kVSIPlPXm0js5y3pECEXVZu+lTc31ptYeRv/ XEGBJhD5lKw0/IDP+1/TjsNgPfcSh52f/dVBZqIBJyXKF0+7/yR78Z31/JIAZbv+K93u+w X+vczJ908h6H33jEgbpNZNpgCcmvwcRLBqwPy4osl0JWHCjFma6kFOr+FqCDaF3xlrzMw9 dR/2VL1cLtGYV/pJ8jyWILtpSFZG6XVLnJshHigyJMg6EDtpDLLMfiC9OKW1+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 4QsBGn10Kkz17QW; Thu, 29 Jun 2023 08:20:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8Knuj085746; Thu, 29 Jun 2023 08:20:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KnsR085745; Thu, 29 Jun 2023 08:20:49 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:49 GMT Message-Id: <202306290820.35T8KnsR085745@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 0aa326f7b384 - stable/13 - linux(4) rt_sendsig: Remove the use of caddr_t List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 0aa326f7b3842178986a3c7a8889965505c61856 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=0aa326f7b3842178986a3c7a8889965505c61856 commit 0aa326f7b3842178986a3c7a8889965505c61856 Author: Dmitry Chagin AuthorDate: 2023-06-06 20:01:39 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:02 +0000 linux(4) rt_sendsig: Remove the use of caddr_t Replace caddr_t by more appropriate char *. MFC after: 2 weeks (cherry picked from commit 84617f6fccd45505f3eeebad1c8cdce1140b7f8e) --- sys/amd64/linux/linux_sysvec.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 53eda1cbc7c0..2383a4dd6632 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -409,7 +409,7 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) struct proc *p; struct thread *td; struct sigacts *psp; - caddr_t sp; + char *sp; struct trapframe *regs; struct savefpu *svfp; mcontext_t mc; @@ -439,9 +439,9 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && SIGISMEMBER(psp->ps_sigonstack, sig)) { - sp = (caddr_t)td->td_sigstk.ss_sp + td->td_sigstk.ss_size; + sp = (char *)td->td_sigstk.ss_sp + td->td_sigstk.ss_size; } else - sp = (caddr_t)regs->tf_rsp - 128; + sp = (char *)regs->tf_rsp - 128; mtx_unlock(&psp->ps_mtx); PROC_UNLOCK(p); @@ -496,7 +496,7 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) for (i = 0; i < nitems(svfp->sv_xmm); ++i) bcopy(svfp->sv_xmm[i].xmm_bytes, &sf.sf_fs.xmm[i], sizeof(svfp->sv_xmm[i].xmm_bytes)); - sf.sf_uc.uc_mcontext.sc_fpstate = (struct l_fpstate *)((caddr_t)sfp + + sf.sf_uc.uc_mcontext.sc_fpstate = (struct l_fpstate *)((char *)sfp + offsetof(struct l_rt_sigframe, sf_fs)); /* Translate the signal. */ From nobody Thu Jun 29 08:20:50 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGp3K0Sz4kp1B; Thu, 29 Jun 2023 08:20: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 4QsBGp2qGbz3wRK; Thu, 29 Jun 2023 08:20:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y9vXC0ucCNjHb5I28gp4XWb06Wn4PDRKSTyNBaXfF2c=; b=a097hbDBaPYwldCYbTahF7nBk4SHV0733QAtPnCjEltNGM/OhlDq/imVqY2h1F4iM48u+0 dQFwSrc0A/B1nBAhUyCCWTno5DR/xAE2O7XTfGsrftDKAGbK7Xgb8Ka7o32pqkJROjjMZS WXBgB2ToDqI81w+srBuxPTeyKLezEyDB+4rXNj2m0uB6QvE7MQNGOVKYIeqQKRd9rtWX/N Pa5fVUHewNCnJDhgAH7uzlGsS8oDOP4mCnnxXeLdAmKgl+JkPbczXZQsSfQOxmjmM657rR YaghdAhrKE1ZDe9QrPCPUjlHHFYc37Plkqkj/8hU85x+uoxzcHawoUYwGuwHkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y9vXC0ucCNjHb5I28gp4XWb06Wn4PDRKSTyNBaXfF2c=; b=MgMuAcyCTSKk2vvFBRvHuWF2V6R3Du/4IyeAVWzRRmPKRMZ8hzWzgNjrSoZoW8cIoG8Oem xDPfbkFxsxZWu8Fey/e5sUo5PbFJE6NnUGQqpQqZGuArCSOk75GcGblQwoBBVKmmTp/BrN T9JuXVf7F6U8KTdKD7183u2Zu0tgtiwYpJsrjr/rLBW1fDJE6Qi9C3lRYuCuBmiQ9Nc/u4 ZdXgqQzjf6eZKJ5Oo/L/iJEm4S6AjIPphZU1B7H+dnA0xhpDs+QuKpV2oAmUq+VDm8NxSf TNjpZqSwHqA8mHNnJIOIhvKND0DLOC1tsQV1cwuz5RURQVzr/7FqSlkE+G4vOQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026850; a=rsa-sha256; cv=none; b=LHX8eHlZTwp2JeHIROkB746B9T8dA6ZA569jo628OSo+S7FGGOc9BwLkO7SWIB0Cji9f3K esVgGawsxi0t6lgnUAtOy0LujFtORu2yYnIHJIoeZE1ynEhrmRrPmixwxFQbVRJ4ZDZeOB 9rgkTTHKe6a8e89Q3lZWRRnAOHSCZOlU+c51LI45GR5eXg9wvudPe5bHFrFdnILM/2Zq9z N1roF4cZA61dLx6zxo423HUd98B2SjVrG4jBs3nqkpH3cmMJdaxR09m54h3VqfJSEpgSIo q6dPDQB94ZgvTMxrfikvcyld9Wo5H8KDvHTu981avIcQSkLp6CCO3t1YlTJuUg== 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 4QsBGp1vrcz183H; Thu, 29 Jun 2023 08:20:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8Korm085768; Thu, 29 Jun 2023 08:20:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8Ko3c085767; Thu, 29 Jun 2023 08:20:50 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:50 GMT Message-Id: <202306290820.35T8Ko3c085767@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 4b6a3ed70d8c - stable/13 - linux(4): In preparation for xsave refactor fxsave code on amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 4b6a3ed70d8cda6463320c464d4eff11f4aaf526 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=4b6a3ed70d8cda6463320c464d4eff11f4aaf526 commit 4b6a3ed70d8cda6463320c464d4eff11f4aaf526 Author: Dmitry Chagin AuthorDate: 2023-06-08 22:32:46 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:02 +0000 linux(4): In preparation for xsave refactor fxsave code on amd64 Due to fxsave area is os independent reimplement fxsave handmade code using copying of a whole area. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D40443 MFC after: 2 weeks (cherry picked from commit 920184ed6e43b19f4b71253b55fd3ba66a7f0bb2) --- sys/amd64/linux/linux_sysvec.c | 126 ++++++++++++++++++++----------------- sys/x86/linux/linux_x86_sigframe.h | 9 ++- 2 files changed, 76 insertions(+), 59 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 2383a4dd6632..97f49f8a7727 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -79,6 +79,10 @@ __FBSDID("$FreeBSD$"); #include +_Static_assert(sizeof(struct l_fpstate) == + sizeof(__typeof(((mcontext_t *)0)->mc_fpstate)), + "fxsave area size incorrect"); + MODULE_VERSION(linux64, 1); #define LINUX_VDSOPAGE_SIZE PAGE_SIZE * 2 @@ -277,6 +281,31 @@ linux_exec_setregs(struct thread *td, struct image_params *imgp, fpstate_drop(td); } +static int +linux_fxrstor(struct thread *td, mcontext_t *mcp, struct l_sigcontext *sc) +{ + struct savefpu *fp = (struct savefpu *)&mcp->mc_fpstate[0]; + int error; + + error = copyin(PTRIN(sc->sc_fpstate), fp, sizeof(mcp->mc_fpstate)); + if (error != 0) + return (error); + bzero(&fp->sv_pad[0], sizeof(fp->sv_pad)); + return (set_fpcontext(td, mcp, NULL, 0)); +} + +static int +linux_copyin_fpstate(struct thread *td, struct l_ucontext *uc) +{ + mcontext_t mc; + + bzero(&mc, sizeof(mc)); + mc.mc_ownedfp = _MC_FPOWNED_FPU; + mc.mc_fpformat = _MC_FPFMT_XMM; + + return (linux_fxrstor(td, &mc, &uc->uc_mcontext)); +} + /* * Copied from amd64/amd64/machdep.c */ @@ -287,10 +316,9 @@ linux_rt_sigreturn(struct thread *td, struct linux_rt_sigreturn_args *args) struct l_rt_sigframe sf; struct l_sigcontext *context; struct trapframe *regs; - mcontext_t mc; unsigned long rflags; sigset_t bmask; - int error, i; + int error; ksiginfo_t ksi; regs = td->td_frame; @@ -362,41 +390,42 @@ linux_rt_sigreturn(struct thread *td, struct linux_rt_sigreturn_args *args) regs->tf_err = context->sc_err; regs->tf_rflags = rflags; - if (sf.sf_uc.uc_mcontext.sc_fpstate != NULL) { - struct savefpu *svfp = (struct savefpu *)mc.mc_fpstate; - - bzero(&mc, sizeof(mc)); - mc.mc_ownedfp = _MC_FPOWNED_FPU; - mc.mc_fpformat = _MC_FPFMT_XMM; - - svfp->sv_env.en_cw = sf.sf_fs.cwd; - svfp->sv_env.en_sw = sf.sf_fs.swd; - svfp->sv_env.en_tw = sf.sf_fs.twd; - svfp->sv_env.en_opcode = sf.sf_fs.fop; - svfp->sv_env.en_rip = sf.sf_fs.rip; - svfp->sv_env.en_rdp = sf.sf_fs.rdp; - svfp->sv_env.en_mxcsr = sf.sf_fs.mxcsr; - svfp->sv_env.en_mxcsr_mask = sf.sf_fs.mxcsr_mask; - /* FPU registers */ - for (i = 0; i < nitems(svfp->sv_fp); ++i) - bcopy(&sf.sf_fs.st[i], svfp->sv_fp[i].fp_acc.fp_bytes, - sizeof(svfp->sv_fp[i].fp_acc.fp_bytes)); - /* SSE registers */ - for (i = 0; i < nitems(svfp->sv_xmm); ++i) - bcopy(&sf.sf_fs.xmm[i], svfp->sv_xmm[i].xmm_bytes, - sizeof(svfp->sv_xmm[i].xmm_bytes)); - error = set_fpcontext(td, &mc, NULL, 0); - if (error != 0) { - uprintf("pid %d comm %s linux can't restore fpu state %d\n", - p->p_pid, p->p_comm, error); - return (error); - } + error = linux_copyin_fpstate(td, &sf.sf_uc); + if (error != 0) { + uprintf("pid %d comm %s linux can't restore fpu state %d\n", + p->p_pid, p->p_comm, error); + return (error); } set_pcb_flags(td->td_pcb, PCB_FULL_IRET); return (EJUSTRETURN); } +static int +linux_fxsave(mcontext_t *mcp, void *ufp) +{ + struct l_fpstate *fx = (struct l_fpstate *)&mcp->mc_fpstate[0]; + + bzero(&fx->reserved2[0], sizeof(fx->reserved2)); + return (copyout(fx, ufp, sizeof(*fx))); +} + +static int +linux_copyout_fpstate(struct thread *td, struct l_ucontext *uc, char **sp) +{ + mcontext_t mc; + char *ufp = *sp; + + get_fpcontext(td, &mc, NULL, NULL); + KASSERT(mc.mc_fpformat != _MC_FPFMT_NODEV, ("fpu not present")); + + /* fxsave area */ + ufp -= sizeof(struct l_fpstate); + *sp = ufp = (char *)((unsigned long)ufp & ~0x3Ful); + + return (linux_fxsave(&mc, ufp)); +} + /* * copied from amd64/amd64/machdep.c * @@ -411,10 +440,8 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) struct sigacts *psp; char *sp; struct trapframe *regs; - struct savefpu *svfp; - mcontext_t mc; int sig, code; - int oonstack, issiginfo, i; + int oonstack, issiginfo; td = curthread; p = td->td_proc; @@ -446,6 +473,14 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) mtx_unlock(&psp->ps_mtx); PROC_UNLOCK(p); + if (linux_copyout_fpstate(td, &sf.sf_uc, &sp) != 0) { + uprintf("pid %d comm %s linux can't save fpu state, killing\n", + p->p_pid, p->p_comm); + PROC_LOCK(p); + sigexit(td, SIGILL); + } + sf.sf_uc.uc_mcontext.sc_fpstate = (register_t)sp; + /* Make room, keeping the stack aligned. */ sp -= sizeof(struct l_rt_sigframe); sfp = (struct l_rt_sigframe *)((unsigned long)sp & ~0xFul); @@ -476,29 +511,6 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) sf.sf_uc.uc_mcontext.sc_trapno = bsd_to_linux_trapcode(code); sf.sf_uc.uc_mcontext.sc_cr2 = (register_t)ksi->ksi_addr; - get_fpcontext(td, &mc, NULL, NULL); - KASSERT(mc.mc_fpformat != _MC_FPFMT_NODEV, ("fpu not present")); - svfp = (struct savefpu *)mc.mc_fpstate; - - sf.sf_fs.cwd = svfp->sv_env.en_cw; - sf.sf_fs.swd = svfp->sv_env.en_sw; - sf.sf_fs.twd = svfp->sv_env.en_tw; - sf.sf_fs.fop = svfp->sv_env.en_opcode; - sf.sf_fs.rip = svfp->sv_env.en_rip; - sf.sf_fs.rdp = svfp->sv_env.en_rdp; - sf.sf_fs.mxcsr = svfp->sv_env.en_mxcsr; - sf.sf_fs.mxcsr_mask = svfp->sv_env.en_mxcsr_mask; - /* FPU registers */ - for (i = 0; i < nitems(svfp->sv_fp); ++i) - bcopy(svfp->sv_fp[i].fp_acc.fp_bytes, &sf.sf_fs.st[i], - sizeof(svfp->sv_fp[i].fp_acc.fp_bytes)); - /* SSE registers */ - for (i = 0; i < nitems(svfp->sv_xmm); ++i) - bcopy(svfp->sv_xmm[i].xmm_bytes, &sf.sf_fs.xmm[i], - sizeof(svfp->sv_xmm[i].xmm_bytes)); - sf.sf_uc.uc_mcontext.sc_fpstate = (struct l_fpstate *)((char *)sfp + - offsetof(struct l_rt_sigframe, sf_fs)); - /* Translate the signal. */ sig = bsd_to_linux_signal(sig); /* Fill in POSIX parts. */ diff --git a/sys/x86/linux/linux_x86_sigframe.h b/sys/x86/linux/linux_x86_sigframe.h index 74e7a36e2e71..e5687069651f 100644 --- a/sys/x86/linux/linux_x86_sigframe.h +++ b/sys/x86/linux/linux_x86_sigframe.h @@ -170,7 +170,13 @@ struct l_sigcontext { l_ulong sc_trapno; l_sigset_t sc_mask; l_ulong sc_cr2; - struct l_fpstate *sc_fpstate; + /* + * On Linux sc_fpstate is (struct l_fpstate *) or (struct l_xstate *) + * depending on the FP_XSTATE_MAGIC1 encoded in the sw_reserved + * bytes of (struct l_fpstate) and FP_XSTATE_MAGIC2 present at the end + * of extended memory layout. + */ + l_uintptr_t sc_fpstate; l_ulong sc_reserved1[8]; }; @@ -189,7 +195,6 @@ struct l_ucontext { struct l_rt_sigframe { struct l_ucontext sf_uc; struct l_siginfo sf_si; - struct l_fpstate sf_fs; }; #endif /* __i386__ || (__amd64__ && COMPAT_LINUX32) */ From nobody Thu Jun 29 08:20:51 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGr04fWz4knqd; Thu, 29 Jun 2023 08:20: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 4QsBGq51v4z3wXT; Thu, 29 Jun 2023 08:20:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026851; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7Dzuf2I9ixo0yQE22q0Tii9CrzssTSIBPOwmOpOwF60=; b=u3BNRqAn0kjOy17bRgwSbZYYZviZ4+OGKluCTaboz9GrmDFBnsYAYN278InnxU8OkOCLPJ M0//F68n2g6gOB5GB+sc6mk2VVMb0mapDxY5D2KUMB9KePpCMhU7Uu/ijeUP+fVaAi2ehq P1olaJqwa+pyaQDlM9cDVRw9P2cG6ntIONzxwgupJ1VlU67wMW4yVtA4QJqI42d6ek5yA3 h+R7PJZ222dADqGL0K4DjNPh7QR1nEfnx6ky2O/ZkhLhc0tCCaNNpbIQvvnqE3daUmuNya pNF6/gIfLpFA5gorfAJ0QRSEgx00SozJYqjl9770q7fTdReJWlsruJ4W2aDW+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026851; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7Dzuf2I9ixo0yQE22q0Tii9CrzssTSIBPOwmOpOwF60=; b=PHm4tL7qZxgBG/sxK1dYlIqBYxQUtLZA7xG5OXENZfrmJIv/1GZFDSSBJfLGur5TO9bi1j CaXkYZfHYJwUFb81MMvslfF6lv8MvYTgfO736W8VhYJ3xSeRYQ+cFMtrwDH4sgPeLvUO8u /AuG0Dk1s9t0wsfcYUixR07C9ZIDDCWrDrPBxQg6ebidA3u2UpodMaBujBIXxIofcE7vIU pzN3R+Fb83sVpmi5MQpe8vpXDJuIK36eBzA0TRI8t87zKaepwyEE0GSEkad2DIpsxynKlt cWzSXO1JICLcH/XBFnsdrHI59RdGf2A3PLPR8gK1rwhlB4XgWNSZ3HGnaEMEQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026851; a=rsa-sha256; cv=none; b=uHlRYraI1HNUIGp0sD/evTzDKZ4DtM+1508os9PA9bXoazxLC2w4TFKL3iEdIygxFDQEuI l5ljI0BZ5wZ75btEE42Mj74v5lM9T8F/k+AJATwRVlC5o0M+whHVZhthCXeP8VJaGi83VT X79oiaL2kB5schQpkOq6oQd35Li2xsCkEyLfl7gyA1w9T3ZhkGCIoza38Cyd+dUj7Ne2yF 9W0a+Ih/Zq57OuWFWx3NEyKGwX1pexVhn86nnWPISlbislkbbpoBijKfnn/Y7U7njRIUnm XqrX3lwNLRw0Rc+QtnWwmgoNzMX3vXmCl7CNHY4gmiB+6q0AhmlJzGLS6+8ajw== 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 4QsBGq2qTrz183J; Thu, 29 Jun 2023 08:20:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KpOx085787; Thu, 29 Jun 2023 08:20:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KpGL085786; Thu, 29 Jun 2023 08:20:51 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:51 GMT Message-Id: <202306290820.35T8KpGL085786@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: e40bcfdff7cc - stable/13 - linux(4): Preserve fpu xsave state across signal delivery on amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: e40bcfdff7cc0596cd4e748e42a1947fd9f5d430 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=e40bcfdff7cc0596cd4e748e42a1947fd9f5d430 commit e40bcfdff7cc0596cd4e748e42a1947fd9f5d430 Author: Dmitry Chagin AuthorDate: 2023-06-08 22:33:26 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:03 +0000 linux(4): Preserve fpu xsave state across signal delivery on amd64 PR: 270247 Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D40444 MFC after: 2 weeks (cherry picked from commit cbbac560911521c0ded3e06e713107176855fae4) --- sys/amd64/linux/linux_sysvec.c | 99 ++++++++++++++++++++++++++++++++++++-- sys/x86/linux/linux_x86_sigframe.h | 20 +++++++- 2 files changed, 114 insertions(+), 5 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 97f49f8a7727..290e21247b0d 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -294,6 +294,54 @@ linux_fxrstor(struct thread *td, mcontext_t *mcp, struct l_sigcontext *sc) return (set_fpcontext(td, mcp, NULL, 0)); } +static int +linux_xrstor(struct thread *td, mcontext_t *mcp, struct l_sigcontext *sc) +{ + struct savefpu *fp = (struct savefpu *)&mcp->mc_fpstate[0]; + char *xfpustate; + struct proc *p; + uint32_t magic2; + int error; + + p = td->td_proc; + mcp->mc_xfpustate_len = cpu_max_ext_state_size - sizeof(struct savefpu); + + /* Legacy region of an xsave area. */ + error = copyin(PTRIN(sc->sc_fpstate), fp, sizeof(mcp->mc_fpstate)); + if (error != 0) + return (error); + bzero(&fp->sv_pad[0], sizeof(fp->sv_pad)); + + /* Extended region of an xsave area. */ + sc->sc_fpstate += sizeof(mcp->mc_fpstate); + xfpustate = (char *)fpu_save_area_alloc(); + error = copyin(PTRIN(sc->sc_fpstate), xfpustate, mcp->mc_xfpustate_len); + if (error != 0) { + fpu_save_area_free((struct savefpu *)xfpustate); + uprintf("pid %d (%s): linux xrstor failed\n", p->p_pid, + td->td_name); + return (error); + } + + /* Linux specific end of xsave area marker. */ + sc->sc_fpstate += mcp->mc_xfpustate_len; + error = copyin(PTRIN(sc->sc_fpstate), &magic2, LINUX_FP_XSTATE_MAGIC2_SIZE); + if (error != 0 || magic2 != LINUX_FP_XSTATE_MAGIC2) { + fpu_save_area_free((struct savefpu *)xfpustate); + uprintf("pid %d (%s): sigreturn magic2 0x%x error %d\n", + p->p_pid, td->td_name, magic2, error); + return (error); + } + + error = set_fpcontext(td, mcp, xfpustate, mcp->mc_xfpustate_len); + fpu_save_area_free((struct savefpu *)xfpustate); + if (error != 0) { + uprintf("pid %d (%s): sigreturn set_fpcontext error %d\n", + p->p_pid, td->td_name, error); + } + return (error); +} + static int linux_copyin_fpstate(struct thread *td, struct l_ucontext *uc) { @@ -303,7 +351,10 @@ linux_copyin_fpstate(struct thread *td, struct l_ucontext *uc) mc.mc_ownedfp = _MC_FPOWNED_FPU; mc.mc_fpformat = _MC_FPFMT_XMM; - return (linux_fxrstor(td, &mc, &uc->uc_mcontext)); + if ((uc->uc_flags & LINUX_UC_FP_XSTATE) != 0) + return (linux_xrstor(td, &mc, &uc->uc_mcontext)); + else + return (linux_fxrstor(td, &mc, &uc->uc_mcontext)); } /* @@ -410,20 +461,60 @@ linux_fxsave(mcontext_t *mcp, void *ufp) return (copyout(fx, ufp, sizeof(*fx))); } +static int +linux_xsave(mcontext_t *mcp, char *xfpusave, char *ufp) +{ + struct l_fpstate *fx = (struct l_fpstate *)&mcp->mc_fpstate[0]; + uint32_t magic2; + int error; + + /* Legacy region of an xsave area. */ + fx->sw_reserved.magic1 = LINUX_FP_XSTATE_MAGIC1; + fx->sw_reserved.xstate_size = mcp->mc_xfpustate_len + sizeof(*fx); + fx->sw_reserved.extended_size = fx->sw_reserved.xstate_size + + LINUX_FP_XSTATE_MAGIC2_SIZE; + fx->sw_reserved.xfeatures = xsave_mask; + + error = copyout(fx, ufp, sizeof(*fx)); + if (error != 0) + return (error); + ufp += sizeof(*fx); + + /* Extended region of an xsave area. */ + error = copyout(xfpusave, ufp, mcp->mc_xfpustate_len); + if (error != 0) + return (error); + + /* Linux specific end of xsave area marker. */ + ufp += mcp->mc_xfpustate_len; + magic2 = LINUX_FP_XSTATE_MAGIC2; + return (copyout(&magic2, ufp, LINUX_FP_XSTATE_MAGIC2_SIZE)); +} + static int linux_copyout_fpstate(struct thread *td, struct l_ucontext *uc, char **sp) { + size_t xfpusave_len; + char *xfpusave; mcontext_t mc; char *ufp = *sp; - get_fpcontext(td, &mc, NULL, NULL); + get_fpcontext(td, &mc, &xfpusave, &xfpusave_len); KASSERT(mc.mc_fpformat != _MC_FPFMT_NODEV, ("fpu not present")); - /* fxsave area */ + /* Room for fxsave area. */ ufp -= sizeof(struct l_fpstate); + if (xfpusave != NULL) { + /* Room for xsave area. */ + ufp -= (xfpusave_len + LINUX_FP_XSTATE_MAGIC2_SIZE); + uc->uc_flags |= LINUX_UC_FP_XSTATE; + } *sp = ufp = (char *)((unsigned long)ufp & ~0x3Ful); - return (linux_fxsave(&mc, ufp)); + if (xfpusave != NULL) + return (linux_xsave(&mc, xfpusave, ufp)); + else + return (linux_fxsave(&mc, ufp)); } /* diff --git a/sys/x86/linux/linux_x86_sigframe.h b/sys/x86/linux/linux_x86_sigframe.h index e5687069651f..c748073a3457 100644 --- a/sys/x86/linux/linux_x86_sigframe.h +++ b/sys/x86/linux/linux_x86_sigframe.h @@ -35,6 +35,20 @@ #ifndef _X86_LINUX_SIGFRAME_H_ #define _X86_LINUX_SIGFRAME_H_ +#define LINUX_UC_FP_XSTATE 0x1 + +#define LINUX_FP_XSTATE_MAGIC1 0x46505853U +#define LINUX_FP_XSTATE_MAGIC2 0x46505845U +#define LINUX_FP_XSTATE_MAGIC2_SIZE sizeof(uint32_t) + +struct l_fpx_sw_bytes { + uint32_t magic1; + uint32_t extended_size; + uint64_t xfeatures; + uint32_t xstate_size; + uint32_t padding[7]; +}; + #if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) /* The Linux sigcontext, pretty much a standard 386 trapframe. */ @@ -140,7 +154,11 @@ struct l_fpstate { u_int32_t mxcsr_mask; u_int8_t st[8][16]; u_int8_t xmm[16][16]; - u_int32_t reserved2[24]; + u_int32_t reserved2[12]; + union { + u_int32_t reserved3[12]; + struct l_fpx_sw_bytes sw_reserved; + }; } __aligned(16); struct l_sigcontext { From nobody Thu Jun 29 08:20:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsBGr73yRz4knqh; Thu, 29 Jun 2023 08:20: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 4QsBGr4c8Rz3wP5; Thu, 29 Jun 2023 08:20:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DYSGYTjp/MzZHcCKo851KJZmweJ7W1boPYi3b8D9IFg=; b=HHA0vaz/uO45WbbVl2hERt545Ew0EUvLkzf2OM8InkqvALVh/+h218ALDIhVHIFlf7OlBY qmgVkj2QvWrWFeQ8bxla1qGQjjxM+RJZlrbDDzcOtSrVpKOc786O/DY+Ard7COUbKF2R4W gTdFR9rZj0aloNL9PiUkYheB8VqnXLUncqlGWuyKFjDnv5nRQREYC/SzR9yJHwcGgPJkP0 fK0BR3kokN5W2BPMFJ52UFUVwpr1DH4ytg3LLf8k3Cl1Ys0Emd+NZRRxIELFh7mBtl4CeL UX+OtwuZmfrBH5C9gyLaJ6d22iAgzUGco9ZX6CAGMP90jaIgtm1stxbFzrXbfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688026852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DYSGYTjp/MzZHcCKo851KJZmweJ7W1boPYi3b8D9IFg=; b=apDV8Pnbe3KmSA4ccCNbQNX2Cxmd4QrtBS55/CN1i88HOwfqiSp1tcBvzxv4zE9r4ZtD0U g8+xgcKG+tp7n2qfbAWu7JbcPTVMUT1beXyHU06yzwVg4YgXhCMIWp2Qw+jPQy/FKCxajr TD/TOjt7As3cTLhjwAANCWu/PyZdEmB9d3ILLzEcN7wJwquSob4LbkFZ0FagCmGWrh3dWE om8nM5v3Ex8unEoBjYcC08AQnCUcaF3dmvi10axvpW28ZFTkDq4xgdodEz1si5wdA3fjKz /FqFzyypvApxs5VZr61uhMdizBXUtYCiSkPQzNa2a5obDPxL7sLH3kOpGr35jQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688026852; a=rsa-sha256; cv=none; b=Z1Q+TiVq2irvPSYcrtYLA02GQzizqKZQCJQiNM2LexNPo759wh7Fuvln0/22eCcgKY7HQU Y0JCTcefSo1qVwcybNc/yYFpJVwavg7w8UIcMMTQa9LniCBYe8wwD6b9OrtRa2xrNgUQgi ZtHjpQTEHhzh3Yw7ZPfYLQWNxd6brPRoEnqWTFLRKD4xALy5RpWfoUA+A4Vvx1SXiDW8AL s3zAiQrZVaeqIHP/DM3RtNRV/AMbe6iXOMz6qr3XJimUw5ptUHqePdnxHB0ObgYrACWaXS m1z4hFh7cbTUMptXA6MgTU/R1rxOR65QiqelDkWU/w6HJfPE3R+Layr+i73BqQ== 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 4QsBGr3kJVz17gx; Thu, 29 Jun 2023 08:20:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35T8KqTD085822; Thu, 29 Jun 2023 08:20:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35T8KqkE085820; Thu, 29 Jun 2023 08:20:52 GMT (envelope-from git) Date: Thu, 29 Jun 2023 08:20:52 GMT Message-Id: <202306290820.35T8KqkE085820@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 4a1f66b81f24 - stable/13 - Revert "linux(4): The futex_wait operation should restart." List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 4a1f66b81f24c4ae0207e2898eba145299609308 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=4a1f66b81f24c4ae0207e2898eba145299609308 commit 4a1f66b81f24c4ae0207e2898eba145299609308 Author: Dmitry Chagin AuthorDate: 2023-06-11 09:47:27 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 08:16:03 +0000 Revert "linux(4): The futex_wait operation should restart." This reverts commit 5eec19c8eb0e1afafd7290325c61611c9a13b621 due to its wrong. Linux interrupts futex syscall on signal and return EINTR. (cherry picked from commit 486459056822f080b1ae24600a4c6a7d8ff6f7d6) --- sys/compat/linux/linux_futex.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linux/linux_futex.c b/sys/compat/linux/linux_futex.c index 74f89e3d49fb..d265b015b799 100644 --- a/sys/compat/linux/linux_futex.c +++ b/sys/compat/linux/linux_futex.c @@ -786,6 +786,8 @@ linux_futex_wait(struct thread *td, struct linux_futex_args *args) } umtxq_unlock(&uq->uq_key); umtx_key_release(&uq->uq_key); + if (error == ERESTART) + error = EINTR; return (error); } From nobody Thu Jun 29 10:56:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QsFkS13kZz4k00Y; Thu, 29 Jun 2023 10:56: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 4QsFkS0M1Cz3Lcn; Thu, 29 Jun 2023 10:56:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688036192; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IHnm/ry2Ca+85iLk+Jfkv5Jv+yJ+T7hNPLOl03zKdPU=; b=mAz7PDL2puSwsTI5Laq9Uwqwo+mI2kkNpegFDcMKnstsLwJxo7ZE+BJ0GwDsxZWD0ZfqH1 G8ua040y4P8ozyIvdH7iXf6SMyQzctW8QBpZ2DzAGZtfoYXNf53f1y93ia1eAaN74CL57P JBt/vHFFFP87Trb9ZC8ViZMiT8RjyzS1pcjrK/1s5WHtzii0ujfjNksm7cqb2B8nAk4pnb Spt33dejXLWBrrKStczATsmGUTScgfNmGklVFQs5WlVgB21WndfNJi7nuFyQko3hX9YSnm 95yR1Q0BrlLJKucplsHyO0/K3bdP21MHMC4QcXdtoM3QnjYPj8e6wkKm629b0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688036192; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IHnm/ry2Ca+85iLk+Jfkv5Jv+yJ+T7hNPLOl03zKdPU=; b=G+XvhI4aBrLVAB4oKdt2u4ogrJPmbfqf8PnbngnIY+qlCY8d4MYDX25ZdLWP3vuAcd4774 f+wC5h1rV/sTfH/Nxt/BAK63tpa06O2eAXBeIZiltpec+z020NZewO03lMVoP8hgtmrrVS ntE2GK+VyzPTeh/ZHAe5qOhtT9/4XIznq4utyDp6VhDwhZeZVXYtTkpu1fQqiLoKb7uogJ ATctYTDVEO2JNE9IR3R8isaXylDPs342Ht3jQYPzDokXVxUn5xb5KbUIK+OoZrcMWANSrQ mOj7b2MCoDx7bQbp+of3j9IKRZdl/lF7WmGCkiXx4MH6VAyv8wt7qtXZCIIeyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688036192; a=rsa-sha256; cv=none; b=CvysQIC79jiaNJl0uai5PUO50NoVDfso+sN1iYARg9v9hx1YT/mmHeeRGM7cSFA8pQXend I3GQNrBPONky8/dl4AdB6L6Rwgeq9f1eQ96Y8gD3XZ/OJr+n6yc6SOTIAeQqTLr16in9kc bt5ihnElRcv7C34+8f35bolvJAOTyrkEpu8OTUxmLCn6w75wJ4lofy53FQzOES0Ajw08+K sLPlzZ1Ic71HgK/AY1mgnnwAl9w2yiJbD8Q3jk+sDRO5UbOwV+EoPCY2oS/TeRHqgdqgng sJhHC/NGn4z4D6ujFtxsQEUgNN66R4xJ/RSpE1zCGgfAuacGoEJXv3TPheTGnQ== 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 4QsFkR6WVDz1CtK; Thu, 29 Jun 2023 10:56:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35TAuVrI038771; Thu, 29 Jun 2023 10:56:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35TAuVAd038770; Thu, 29 Jun 2023 10:56:31 GMT (envelope-from git) Date: Thu, 29 Jun 2023 10:56:31 GMT Message-Id: <202306291056.35TAuVAd038770@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 0f287f6a96ca - stable/13 - linux(4): Implement close_range over native List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 0f287f6a96cacda32ee17447987add3e05aa5fc6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=0f287f6a96cacda32ee17447987add3e05aa5fc6 commit 0f287f6a96cacda32ee17447987add3e05aa5fc6 Author: Dmitry Chagin AuthorDate: 2023-04-04 20:24:04 +0000 Commit: Dmitry Chagin CommitDate: 2023-06-29 10:50:41 +0000 linux(4): Implement close_range over native Handling of the CLOSE_RANGE_UNSHARE flag is not implemented due to difference in fd unsharing mechanism in the Linux and FreeBSD. Reviewed by: mjg Differential revision: https://reviews.freebsd.org/D39398 MFC after: 2 weeks (cherry picked from commit 71bc17803edfaad545f0c1f1111ca892aed7a5c4) --- sys/compat/linux/linux_dummy.c | 1 - sys/compat/linux/linux_file.c | 26 ++++++++++++++++++++++++++ sys/compat/linux/linux_file.h | 7 +++++++ 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/sys/compat/linux/linux_dummy.c b/sys/compat/linux/linux_dummy.c index 45b0db6d6dde..e3812218514c 100644 --- a/sys/compat/linux/linux_dummy.c +++ b/sys/compat/linux/linux_dummy.c @@ -135,7 +135,6 @@ DUMMY(fsconfig); DUMMY(fsmount); DUMMY(fspick); DUMMY(pidfd_open); -DUMMY(close_range); DUMMY(openat2); DUMMY(pidfd_getfd); DUMMY(process_madvise); diff --git a/sys/compat/linux/linux_file.c b/sys/compat/linux/linux_file.c index 249318a2e619..4ce0a2cb4c0e 100644 --- a/sys/compat/linux/linux_file.c +++ b/sys/compat/linux/linux_file.c @@ -2083,3 +2083,29 @@ linux_splice(struct thread *td, struct linux_splice_args *args) */ return (EINVAL); } + +int +linux_close_range(struct thread *td, struct linux_close_range_args *args) +{ + u_int flags = 0; + + /* + * Implementing close_range(CLOSE_RANGE_UNSHARE) allows Linux to + * unshare filedesc table of the calling thread from others threads + * in a thread group (i.e., process in the FreeBSD) or others processes, + * which shares the same table, before closing the files. FreeBSD does + * not have compatible unsharing mechanism due to the fact that sharing + * process resources, including filedesc table, is at thread level in the + * Linux, while in the FreeBSD it is at the process level. + * Return EINVAL for now if the CLOSE_RANGE_UNSHARE flag is specified + * until this new Linux API stabilizes. + */ + + if ((args->flags & ~(LINUX_CLOSE_RANGE_CLOEXEC)) != 0) + return (EINVAL); + if (args->first > args->last) + return (EINVAL); + if ((args->flags & LINUX_CLOSE_RANGE_CLOEXEC) != 0) + flags |= CLOSE_RANGE_CLOEXEC; + return (kern_close_range(td, flags, args->first, args->last)); +} diff --git a/sys/compat/linux/linux_file.h b/sys/compat/linux/linux_file.h index 3f885f915411..061bd1fc2c24 100644 --- a/sys/compat/linux/linux_file.h +++ b/sys/compat/linux/linux_file.h @@ -197,4 +197,11 @@ struct l_file_handle { unsigned char f_handle[0]; }; +/* + * Look at linux_close_range() for an explanation. + * + * #define LINUX_CLOSE_RANGE_UNSHARE (1U << 1) + */ +#define LINUX_CLOSE_RANGE_CLOEXEC (1U << 2) + #endif /* !_LINUX_FILE_H_ */ From nobody Fri Jun 30 08:17:35 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qsp8b6W1Jz4jsqB; Fri, 30 Jun 2023 08:17: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 4Qsp8b5zgvz4Qsj; Fri, 30 Jun 2023 08:17:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688113055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a4NQapghSRIoM871m190P5HX0sC+7zdeS7FY63q6moM=; b=VlpOMY5YxxVhhDJEXrsQxTItfUIqdWDP0+BJs0v2XVefALUao6wcYMiWkeU/SQhLcnwZiV aTPvMZ1CkJ0qq5PBC5eLS8yeVKbyaLpQMtrLLi/3l6Hxv09KZssw6XqSXGgPAKEF5wWTG+ 8YJDmXOibWdfyd53SA6e3e+qCr8IZf/jObqoF/dYtYszzZVEjpReA/vnC8dt2TVzYT5OPX fl/sQdWdKCku2Bp/EuCoOU3hLLd22z/vxlGb0HDfeneP//Luuiq+Z8w1TUQBgTUlT1uwMs i5twoHbS9j6q6CJL0U5CvRz9qnEm74bsewhEuC2q9+13RNuNl9o4uS9BT9f5/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688113055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a4NQapghSRIoM871m190P5HX0sC+7zdeS7FY63q6moM=; b=Gh79PVoW0dWU36/jRRfemAPNTdj7dvm0ZCa8DsThWAmh1IrSOm0Yn+JD4ZyPuLlcy+aymF I43VS9IzZabo2GAtJBX8tvDQCbLGCHFma0anbsaAOfZmSnbta+P+PNaRvskBiZqeH+LSxW wynCgiKI0tt5/laba1zoK2osVnoHZrCk9YqeI1BeG8aOc08YDF09WPrakKz0BNHCU8NSBT fls5dbH2iuCqggxO+w8v+ybTFTHdzmCfHtMPLWTU70T+8bVD0NitkKgzLD3UKaIMb2eoza s6tSonTtpK6A333IaqAor36/u9X0cbNrNpnc3o96eXL8Jq0WFG7TX80hw1h6WA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688113055; a=rsa-sha256; cv=none; b=XX/gn9lQm2r9GDlyrqbWDAj6ASHEC21xoJB6+wum5oSW+ikQNshTc+9fKj86RnuO2vitRn uVXtp6s6DeOqogGD20YUGIHgHxe90+mCHFJcMOwxNCVCkh7kpfcM8uJiTJLBYzEA1+ZMpJ 7Dq3UqdTvucVM2p9QNyFX8jWQyVcPtnt1q7O/Nsf0Rrnvw7UvYA7rFUBa4z8QWxD9WIrgw dM3J94SftL62fbrs0vSFPtm7UaKRuB5QobyuJo9vXBSu/8ki6JHOxsRjpMjKQPGk6W3Y4Y /zlXLBKIGUyb/U+KBWLBQ+6mXuaGHY1XIqTtLG4vQlVIdCHLiUZkIJG6RMgcJw== 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 4Qsp8b4wgNzrhD; Fri, 30 Jun 2023 08:17:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 35U8HZZS070233; Fri, 30 Jun 2023 08:17:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 35U8HZtX070232; Fri, 30 Jun 2023 08:17:35 GMT (envelope-from git) Date: Fri, 30 Jun 2023 08:17:35 GMT Message-Id: <202306300817.35U8HZtX070232@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 0aeee1f074a7 - stable/13 - pf: fix some cc --analyze warnings List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 0aeee1f074a7a5e53d5a8f1c2eb61bd5285f4fae Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=0aeee1f074a7a5e53d5a8f1c2eb61bd5285f4fae commit 0aeee1f074a7a5e53d5a8f1c2eb61bd5285f4fae Author: Mateusz Guzik AuthorDate: 2021-10-19 11:57:47 +0000 Commit: Kristof Provost CommitDate: 2023-06-30 07:06:44 +0000 pf: fix some cc --analyze warnings Reviewed by: kp Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit bcd4c17ccaacf995224882dc1d05e2a51867bdf2) --- sys/netpfil/pf/if_pfsync.c | 2 +- sys/netpfil/pf/pf_ioctl.c | 2 +- sys/netpfil/pf/pf_norm.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index b05e1ae9550a..9cf1071b3248 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -2545,7 +2545,7 @@ VNET_SYSINIT(vnet_pfsync_init, SI_SUB_PROTO_FIREWALL, SI_ORDER_ANY, static void vnet_pfsync_uninit(const void *unused __unused) { - int ret; + int ret __diagused; pfsync_pointers_uninit(); diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index 00021655605b..07463ecbbcf3 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -5639,7 +5639,7 @@ hook_pf(void) { struct pfil_hook_args pha; struct pfil_link_args pla; - int ret; + int ret __diagused; if (V_pf_pfil_hooked) return; diff --git a/sys/netpfil/pf/pf_norm.c b/sys/netpfil/pf/pf_norm.c index 56b30faf7e52..cac9c1fe391f 100644 --- a/sys/netpfil/pf/pf_norm.c +++ b/sys/netpfil/pf/pf_norm.c @@ -1002,7 +1002,7 @@ pf_refragment6(struct ifnet *ifp, struct mbuf **m0, struct m_tag *mtag) DPFPRINTF(("refragment error %d\n", error)); action = PF_DROP; } - for (t = m; m; m = t) { + for (; m; m = t) { t = m->m_nextpkt; m->m_nextpkt = NULL; m->m_flags |= M_SKIP_FIREWALL; From nobody Sat Jul 1 18:42:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QtgzW3QpBz4kkPB; Sat, 1 Jul 2023 18:42: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 4QtgzW1bX5z4L3h; Sat, 1 Jul 2023 18:42:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688236967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YENblSDn6LccMqUIQ2LPlzsy5M27H6K742rpM+QmqEA=; b=UjDS2gXwgn54icVZV6e2GSdqtIhjAARvC+rR2jExwqoN90z5n+M/NX0v+nJSLoIF/kS8Kr hKCiH/26vcDIHiK62snudROv2VickjUsUn1IKHCcoYJCAb49IHQidReTvoTnLZzlYSuZcM GSYrwmBElnA/nBPGAvB2urYgb4neRM6keg0+4FwwzrKpYEFMQtSoFQMq1Uw+Y5edoHuNCH BXoWITi0rcWAIZ7oVTK6WxcMMVYrdzuO0BtbOuYy7pzUi5IfVOXn2xQpls69GNJNOwpNGs Pu94BmmPYixlY2B7ZXFgSjL7U57XKFHAd3HaGYSkErJXXOnpgjRg0lmaZ9Po2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688236967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YENblSDn6LccMqUIQ2LPlzsy5M27H6K742rpM+QmqEA=; b=yAwuNjvad5aGGydRg6zhn64EiXu1ZKTOQBBEXiiX3Yxk7FjUHnNDVudW8+GgbC8pN5RHo1 wiF24Omu136krUsB7izKBl4QpcU7IM9gMJZaI370eJc5Kt6HskvuXPh68KAqxMQhW7XIyI kRL1pYZ8m7nbhUpvFkDmQx66ZhkpIGBTABCGdQrDyZoURPi+Pp3Pffjxa5QInYrlaar5zP KSwKL3QrhJgrZqb6Emvwi76MDq0lmKzemsdPvBJ2vFOyL6d3JbDbbUlPsxNibbsKtNRaKx 2YDaQd8SjKCb4LDQhQJdqBQ1Nx0Eodiq/QyguRjwnsFlY8ZFb4oAMQoDnzDzfQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688236967; a=rsa-sha256; cv=none; b=N27iI60AOIvCQzzw+q03P3nEAb7PIFnGD3I4PSgOGTIQfWw1zMbP0rvOvbGQMYqqmNfUND yn2LeQe4Vd3f42IWB7wdtVcGGMC2I9PmYzCivlCnmqisRiSSd7MtD+/0U6Jb1ZC0tcSkgc /5tAe3us8QHCCYpNPhLrE4IE2rnR6SmSzfPcX+BsS6tEUKrbmm5Vw59qxqhL3JUw1i1X5Q mVQUuzNkDbGx7AT8WWycus1I0ScZsPcnQeYSdsBUGjobee/khas+NwMJNucsG9tWZ/Qlem 21GC3BAoXdwL+uwlJGsGPh5OKvTEsoCXoPQPSoRcojdoYzdrMN/Q19/uhVS/oQ== 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 4QtgzW0gwZzccS; Sat, 1 Jul 2023 18:42:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 361Iglrj003419; Sat, 1 Jul 2023 18:42:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 361Igkdb003418; Sat, 1 Jul 2023 18:42:46 GMT (envelope-from git) Date: Sat, 1 Jul 2023 18:42:46 GMT Message-Id: <202307011842.361Igkdb003418@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ka Ho Ng Subject: git: 3fe7f9a357be - stable/13 - SYSCALL_MODULE(9): fix references to modfind(2) and modstat(2) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: khng X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3fe7f9a357be6b665f0f19613dac1ff1fa451389 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by khng: URL: https://cgit.FreeBSD.org/src/commit/?id=3fe7f9a357be6b665f0f19613dac1ff1fa451389 commit 3fe7f9a357be6b665f0f19613dac1ff1fa451389 Author: Ka Ho Ng AuthorDate: 2023-06-15 19:37:53 +0000 Commit: Ka Ho Ng CommitDate: 2023-07-01 18:42:34 +0000 SYSCALL_MODULE(9): fix references to modfind(2) and modstat(2) Sponsored by: Juniper Networks, Inc. Reviewed by: delphij MFC after: 1 week (cherry picked from commit 9f135336f5057ae5a3f54fd9b1aa517cff0f9d3b) --- share/man/man9/SYSCALL_MODULE.9 | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/share/man/man9/SYSCALL_MODULE.9 b/share/man/man9/SYSCALL_MODULE.9 index aec57a89e9b3..cd4eeb65724d 100644 --- a/share/man/man9/SYSCALL_MODULE.9 +++ b/share/man/man9/SYSCALL_MODULE.9 @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 24, 2015 +.Dd June 15, 2023 .Dt SYSCALL_MODULE 9 .Os .Sh NAME @@ -78,10 +78,10 @@ event handler when it is called. .El .Pp The syscall number assigned to the module can be retrieved using the -.Xr modstat 3 +.Xr modstat 2 and -.Xr modfind 3 -library functions in libc. +.Xr modfind 2 +system calls. The MACRO .Fn SYSCALL_MODULE_HELPER includes From nobody Sat Jul 1 18:43:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Qth0L3PH7z4klGL; Sat, 1 Jul 2023 18:43:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Qth0L2XM7z4LZK; Sat, 1 Jul 2023 18:43:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688237010; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9zLfgEySOGMNrDBCiOIGEqz9MICnjhHSgxIUxWugeyk=; b=GQU3vE0iTvCfXRAW4ujnzNe8UKR8f4xAzgSdvuznA4SM0obfB2Wc7TT0JM5+E9Oksgce++ 9kRZ/lnjmlicCPt2Uofs2nj/iB/48vJoP1jJp7VLfUCYlabWWhpH8wiE0u2omC5/ENE5Ty LqiT7SlNRO1ANinm2cOKAxIBJZf8ZFcZObVKegG9//veQhPzhWjbtf7hpbvp1cWT/6s+KJ ZtPQvxTblocK0b/lcve+gomzK3Y3K/X5TuW2z6ayzu7obo4U3eKQPDx2LKV0NIYJXGJ64p offLuayZThiHKtL4WZbXeygfCOM9Ub9Yqw5WAQEOGq+ura0FpegJqemFzNE1Rw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1688237010; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9zLfgEySOGMNrDBCiOIGEqz9MICnjhHSgxIUxWugeyk=; b=xlr9QkFA2Qf4ZQAzaJuARAODySD51eHwSj0VYevvUQ+6GFc2dXwrWyBK1Ei4lW++90mnI9 MMlhiDpaAZKK8NAg6GxafqU9IXgHHspsPTyvy8GBn+nH9sOMCcF9xNg1PsGplMpgys96Mi LF4OApernTe7vg3eY1VhMGDbdq0vrqKrkfGNtXjlT0G9fXkNwwCSKFuLzf3l+BfxHwegzA uyTstN8EaDKGOXrIf/2rOZYu7ce1/5DS0FiM44Y1ZF9KILbxqKesawjWPkgM/Wn5iQYpJe 7AmFwDRsFweyyWL4MGTRHDUtxlcdO7AtgNgWgK4apDCh4D8Fk8Cxc9Oj0rmxeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1688237010; a=rsa-sha256; cv=none; b=KvI0urfzEU1cQacHDCHJuUN0ZXYpGdIed9QL5iK7Sy3XEXNzpXF3NdRqqBLVInFTBTcBhi Y8htsZpbpczL+pILhECgV6YS4hjganbgDG49Fmre7qtyxXCjyAwBA3pVM29xz4TnWIag7X TcT3dGBCcwv7JpxbOAo60yn54VSgaDq9pCVJPX4M0Ow8yPIZqm/33+t9jOmunwDrX0Pm1r UDOZ/pxAAXWN9idB/WkMngeRjRMlzSatnBtN0+4kTyC/5j+KE2irZPj0eoZfnH6S6p/Cb7 bmHy2x5Tneoi3DkhG8pnuXoZ/G2duD8i7Xg0hCzJtWbVCIKZNJuciMvkG//WuQ== 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 4Qth0L1cXczcWy; Sat, 1 Jul 2023 18:43:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 361IhUKw003612; Sat, 1 Jul 2023 18:43:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 361IhUqx003611; Sat, 1 Jul 2023 18:43:30 GMT (envelope-from git) Date: Sat, 1 Jul 2023 18:43:30 GMT Message-Id: <202307011843.361IhUqx003611@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ka Ho Ng Subject: git: 593211cc71ad - stable/12 - SYSCALL_MODULE(9): fix references to modfind(2) and modstat(2) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: khng X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 593211cc71adef3a0691a0bcb8afc5d7f6199d82 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by khng: URL: https://cgit.FreeBSD.org/src/commit/?id=593211cc71adef3a0691a0bcb8afc5d7f6199d82 commit 593211cc71adef3a0691a0bcb8afc5d7f6199d82 Author: Ka Ho Ng AuthorDate: 2023-06-15 19:37:53 +0000 Commit: Ka Ho Ng CommitDate: 2023-07-01 18:43:15 +0000 SYSCALL_MODULE(9): fix references to modfind(2) and modstat(2) Sponsored by: Juniper Networks, Inc. Reviewed by: delphij MFC after: 1 week (cherry picked from commit 9f135336f5057ae5a3f54fd9b1aa517cff0f9d3b) --- share/man/man9/SYSCALL_MODULE.9 | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/share/man/man9/SYSCALL_MODULE.9 b/share/man/man9/SYSCALL_MODULE.9 index aec57a89e9b3..cd4eeb65724d 100644 --- a/share/man/man9/SYSCALL_MODULE.9 +++ b/share/man/man9/SYSCALL_MODULE.9 @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 24, 2015 +.Dd June 15, 2023 .Dt SYSCALL_MODULE 9 .Os .Sh NAME @@ -78,10 +78,10 @@ event handler when it is called. .El .Pp The syscall number assigned to the module can be retrieved using the -.Xr modstat 3 +.Xr modstat 2 and -.Xr modfind 3 -library functions in libc. +.Xr modfind 2 +system calls. The MACRO .Fn SYSCALL_MODULE_HELPER includes